Gemini API

API взаимодействия Gemini — это экспериментальный API, позволяющий разработчикам создавать приложения генеративного ИИ с использованием моделей Gemini. Gemini — наша самая мощная модель, разработанная с нуля для мультимодального взаимодействия. Она способна обобщать и беспрепятственно понимать, обрабатывать и комбинировать различные типы информации, включая язык, изображения, аудио, видео и код. Вы можете использовать API Gemini для таких задач, как рассуждения на основе текста и изображений, генерация контента, диалоговые агенты, системы суммирования и классификации и многое другое.

Создание взаимодействия

публикация https://generativelanguage.googleapis.com/v1beta/interactions

Создает новое взаимодействие.

Текст запроса

Тело запроса содержит данные следующей структуры:

модель ModelOption (необязательно)

Название модели, использованной для генерации взаимодействия.
Обязательно, если параметр `agent` не указан.

Возможные значения:

  • gemini-2.5-computer-use-preview-10-2025

    Модель агентных возможностей, разработанная для прямого взаимодействия через интерфейс, позволяющая Gemini воспринимать цифровую среду и перемещаться в ней.

  • gemini-2.5-flash

    Наша первая гибридная модель рассуждений, поддерживающая контекстное окно в 1 миллион токенов и имеющая бюджеты мышления.

  • gemini-2.5-flash-image

    Наша собственная модель генерации изображений, оптимизированная для скорости, гибкости и контекстного понимания. Стоимость ввода и вывода текста такая же, как у 2,5-дюймовой версии Flash.

  • gemini-2.5-flash-lite

    Наша самая компактная и экономичная модель, предназначенная для масштабного использования.

  • gemini-2.5-flash-lite-preview-09-2025

    Новейшая модель на базе Gemini 2.5 Flash lite, оптимизированная для экономичности, высокой производительности и высокого качества.

  • gemini-2.5-flash-native-audio-preview-12-2025

    Наши собственные аудиомодели оптимизированы для более высокого качества звука с улучшенным темпом, естественностью голоса, детализацией и передачей настроения.

  • gemini-2.5-flash-preview-09-2025

    Новейшая модель, основанная на версии 2.5 Flash. Версия 2.5 Flash Preview лучше всего подходит для крупномасштабной обработки, задач с низкой задержкой и большим объемом данных, требующих аналитического мышления, а также для сценариев использования агентных вычислений.

  • gemini-2.5-flash-preview-tts

    Наша модель преобразования текста в речь 2.5 Flash оптимизирована для мощной, управляемой генерации речи с низкой задержкой.

  • gemini-2.5-pro

    Наша передовая многоцелевая модель, превосходно справляющаяся с задачами программирования и сложным логическим мышлением.

  • gemini-2.5-pro-preview-tts

    Наша аудиомодель преобразования текста в речь 2.5 Pro оптимизирована для мощного генерирования речи с низкой задержкой, что обеспечивает более естественный результат и упрощает управление голосовыми подсказками.

  • gemini-3-flash-preview

    Наша самая интеллектуальная модель, созданная для скорости, сочетает в себе передовые методы разведки с превосходными возможностями поиска и посадки на землю.

  • gemini-3-pro-image-preview

    Современная модель генерации и редактирования изображений.

  • gemini-3-pro-preview

    Наша самая интеллектуальная модель с передовыми методами рассуждения и многомодальным пониманием, а также мощными возможностями агентного и эмоциональных кодирований.

  • gemini-3.1-pro-preview

    Наша новейшая, передовая модель логического мышления с беспрецедентной глубиной и детализацией, а также мощными возможностями многомодального понимания и кодирования.

  • gemini-3.1-flash-image-preview

    Профессиональный уровень визуального интеллекта с эффективностью, сравнимой со скоростью Flash, и возможностями генерации, основанной на реальных данных.

  • gemini-3.1-flash-lite-preview

    Наша наиболее экономичная модель, оптимизированная для выполнения больших объемов агентских задач, перевода и простой обработки данных.

  • gemini-3.1-flash-tts-preview

    Gemini 3.1 Flash TTS: Мощная система генерации речи с низкой задержкой. Наслаждайтесь естественным звучанием, управляемыми подсказками и новыми выразительными аудиотегами для точного управления озвучиванием.

  • lyria-3-clip-preview

    Наша модель генерации музыки с низкой задержкой оптимизирована для высококачественных аудиоклипов и точного контроля ритма.

  • lyria-3-pro-preview

    Наша передовая генеративная модель, способная обрабатывать целые композиции и обладающая глубоким пониманием композиции, оптимизирована для точного структурного контроля и сложных переходов между различными музыкальными стилями.

Модель, которая выполнит ваш запрос.\n\nДополнительную информацию см. в разделе [модели](https://ai.google.dev/gemini-api/docs/models).

агент AgentOption (необязательно)

Имя агента, использованного для генерации взаимодействия.
Обязательно, если параметр `model` не указан.

Возможные значения:

  • deep-research-pro-preview-12-2025

    Агент по глубоким исследованиям компании Gemini

  • deep-research-preview-04-2026

    Агент по глубоким исследованиям компании Gemini

  • deep-research-max-preview-04-2026

    Gemini Deep Research Max Agent

Агент, с которым необходимо взаимодействовать.

Входные данные: Content или array ( Content ) или array ( Turn ) или string (обязательно)

Входные данные для взаимодействия (общие для модели и агента).

строка системной инструкции (необязательно)

Системная инструкция для взаимодействия.

массив инструментов ( Инструмент ) (необязательно)

Список объявлений инструментов, которые модель может вызывать во время взаимодействия.

объект response_format (необязательно)

Обеспечивает, чтобы сгенерированный ответ представлял собой объект JSON, соответствующий схеме JSON, указанной в этом поле.

response_mime_type строка (необязательно)

MIME-тип ответа. Это необходимо, если задан параметр response_format.

потоковое логическое значение (необязательно)

Только ввод данных. Будет ли взаимодействие передаваться в потоковом режиме.

хранить логическое значение (необязательно)

Только ввод. Следует ли сохранять ответ и запрос для последующего получения.

фоновое логическое значение (необязательно)

Только ввод данных. Следует ли запускать взаимодействие с моделью в фоновом режиме.

generation_config GenerationConfig (необязательно)

Конфигурация модели
Параметры конфигурации для взаимодействия модели.
Альтернатива `agent_config`. Применимо только при заданном `model`.

Параметры конфигурации для взаимодействия моделей.

Поля

числовое значение температуры (необязательно)

Управляет степенью случайности выходных данных.

top_p число (необязательно)

Максимальная кумулятивная вероятность токенов, которые следует учитывать при выборке.

Начальное целое число (необязательно)

Исходные данные используются при декодировании для обеспечения воспроизводимости.

массив stop_sequences (строка) (необязательно)

Список последовательностей символов, которые прекратят взаимодействие с выводом.

thinking_level ThinkingLevel (необязательно)

Уровень мыслительных токенов, которые должна генерировать модель.

Возможные значения:

  • minimal
  • low
  • medium
  • high

thinking_summaries ThinkingSummaries (необязательно)

Стоит ли включать в ответ краткое изложение мыслей?

Возможные значения:

  • auto
  • none

max_output_tokens — целое число (необязательно)

Максимальное количество токенов, которые можно включить в ответ.

speech_config SpeechConfig (необязательно)

Настройка для речевого взаимодействия.

Настройки для речевого взаимодействия.

Поля

голосовая строка (необязательно)

Голос говорящего.

языковая строка (необязательно)

Язык речи.

Кабель для подключения динамика (опционально)

Имя выступающего должно совпадать с именем выступающего, указанным в задании.

image_config ImageConfig (необязательно)

Настройки для взаимодействия с изображениями.

Настройки взаимодействия с изображениями.

Поля

aspect_ratio enum (string) (optional)

Описание отсутствует.

Возможные значения:

  • 1:1
  • 2:3
  • 3:2
  • 3:4
  • 4:3
  • 4:5
  • 5:4
  • 9:16
  • 16:9
  • 21:9
  • 1:8
  • 8:1
  • 1:4
  • 4:1
Перечисление image_size (строка) (необязательно)

Описание отсутствует.

Возможные значения:

  • 1K
  • 2K
  • 4K
  • 512
tool_choice ToolChoiceConfig или ToolChoiceType (необязательно)

Конфигурация выбора инструмента.

объект agent_config (необязательно)

Конфигурация агента
Настройки агента.
Альтернатива `generation_config`. Применимо только при заданном `agent`.

Возможные типы

Полиморфный дискриминатор: type

DynamicAgentConfig

Настройка для динамических агентов.

тип объекта (обязательно)

Описание отсутствует.

Всегда устанавливайте значение "dynamic" .

DeepResearchAgentConfig

Настройки агента Deep Research.

тип объекта (обязательно)

Описание отсутствует.

Всегда устанавливайте значение "deep-research" .

thinking_summaries ThinkingSummaries (необязательно)

Стоит ли включать в ответ краткое изложение мыслей?

Возможные значения:

  • auto
  • none

перечисление визуализации (строка) (необязательно)

Стоит ли включать визуализации в ответ.

Возможные значения:

  • off
  • auto
collaborative_planning логическое значение (необязательно)

Включает планирование с участием человека для агента Deep Research. Если установлено значение true, агент Deep Research предоставит план исследования в своем ответе. Затем агент продолжит работу только в том случае, если пользователь подтвердит план на следующем ходу.

previous_interaction_id строка (необязательно)

Идентификатор предыдущего взаимодействия, если таковое имелось.

response_modalities ResponseModality (необязательно)

Требуемые форматы ответа (ТЕКСТ, ИЗОБРАЖЕНИЕ, АУДИО).

Возможные значения:

  • text
  • image
  • audio
  • video
  • document

перечисление service_tier (строка) (необязательно)

Уровень обслуживания для данного взаимодействия.

Возможные значения:

  • flex
  • standard
  • priority

Ответ

Возвращает ресурс " Взаимодействие" .

Простая просьба

Пример ответа

{
  "created": "2025-11-26T12:25:15Z",
  "id": "v1_ChdPU0F4YWFtNkFwS2kxZThQZ05lbXdROBIXT1NBeGFhbTZBcEtpMWU4UGdOZW13UTg",
  "model": "gemini-3-flash-preview",
  "object": "interaction",
  "outputs": [
    {
      "text": "Hello! I'm functioning perfectly and ready to assist you.\n\nHow are you doing today?",
      "type": "text"
    }
  ],
  "role": "model",
  "status": "completed",
  "updated": "2025-11-26T12:25:15Z",
  "usage": {
    "input_tokens_by_modality": [
      {
        "modality": "text",
        "tokens": 7
      }
    ],
    "total_cached_tokens": 0,
    "total_input_tokens": 7,
    "total_output_tokens": 20,
    "total_thought_tokens": 22,
    "total_tokens": 49,
    "total_tool_use_tokens": 0
  }
}

Многооборотный

Пример ответа

{
  "id": "v1_ChdPU0F4YWFtNkFwS2kxZThQZ05lbXdROBIXT1NBeGFhbTZBcEtpMWU4UGdOZW13UTg",
  "model": "gemini-3-flash-preview",
  "status": "completed",
  "object": "interaction",
  "created": "2025-11-26T12:22:47Z",
  "updated": "2025-11-26T12:22:47Z",
  "role": "model",
  "outputs": [
    {
      "type": "text",
      "text": "The capital of France is Paris."
    }
  ],
  "usage": {
    "input_tokens_by_modality": [
      {
        "modality": "text",
        "tokens": 50
      }
    ],
    "total_cached_tokens": 0,
    "total_input_tokens": 50,
    "total_output_tokens": 10,
    "total_thought_tokens": 0,
    "total_tokens": 60,
    "total_tool_use_tokens": 0
  }
}

Ввод изображения

Пример ответа

{
  "id": "v1_ChdPU0F4YWFtNkFwS2kxZThQZ05lbXdROBIXT1NBeGFhbTZBcEtpMWU4UGdOZW13UTg",
  "model": "gemini-3-flash-preview",
  "status": "completed",
  "object": "interaction",
  "created": "2025-11-26T12:22:47Z",
  "updated": "2025-11-26T12:22:47Z",
  "role": "model",
  "outputs": [
    {
      "type": "text",
      "text": "A white humanoid robot with glowing blue eyes stands holding a red skateboard."
    }
  ],
  "usage": {
    "input_tokens_by_modality": [
      {
        "modality": "text",
        "tokens": 10
      },
      {
        "modality": "image",
        "tokens": 258
      }
    ],
    "total_cached_tokens": 0,
    "total_input_tokens": 268,
    "total_output_tokens": 20,
    "total_thought_tokens": 0,
    "total_tokens": 288,
    "total_tool_use_tokens": 0
  }
}

Вызов функции

Пример ответа

{
  "id": "v1_ChdPU0F4YWFtNkFwS2kxZThQZ05lbXdROBIXT1NBeGFhbTZBcEtpMWU4UGdOZW13UTg",
  "model": "gemini-3-flash-preview",
  "status": "requires_action",
  "object": "interaction",
  "created": "2025-11-26T12:22:47Z",
  "updated": "2025-11-26T12:22:47Z",
  "role": "model",
  "outputs": [
    {
      "type": "function_call",
      "id": "gth23981",
      "name": "get_weather",
      "arguments": {
        "location": "Boston, MA"
      }
    }
  ],
  "usage": {
    "input_tokens_by_modality": [
      {
        "modality": "text",
        "tokens": 100
      }
    ],
    "total_cached_tokens": 0,
    "total_input_tokens": 100,
    "total_output_tokens": 25,
    "total_thought_tokens": 0,
    "total_tokens": 125,
    "total_tool_use_tokens": 50
  }
}

Глубокое исследование

Пример ответа

{
  "id": "v1_ChdPU0F4YWFtNkFwS2kxZThQZ05lbXdROBIXT1NBeGFhbTZBcEtpMWU4UGdOZW13UTg",
  "agent": "deep-research-pro-preview-12-2025",
  "status": "completed",
  "object": "interaction",
  "created": "2025-11-26T12:22:47Z",
  "updated": "2025-11-26T12:22:47Z",
  "role": "agent",
  "outputs": [
    {
      "type": "text",
      "text": "Here is a comprehensive research report on the current state of cancer research..."
    }
  ],
  "usage": {
    "input_tokens_by_modality": [
      {
        "modality": "text",
        "tokens": 20
      }
    ],
    "total_cached_tokens": 0,
    "total_input_tokens": 20,
    "total_output_tokens": 1000,
    "total_thought_tokens": 500,
    "total_tokens": 1520,
    "total_tool_use_tokens": 0
  }
}

Получение информации о взаимодействии

получить https://generativelanguage.googleapis.com/v1beta/interactions/{id}

Получает полную информацию об одном взаимодействии на основе его `Interaction.id`.

Путь / Параметры запроса

строковый идентификатор (обязательно)

Уникальный идентификатор взаимодействия, который необходимо получить.

потоковое логическое значение (необязательно)

Если установить значение true, сгенерированный контент будет передаваться потоком инкрементально.

Значение по умолчанию: False

last_event_id строка (необязательно)

Необязательный параметр. Если задан, возобновляет поток взаимодействия со следующего фрагмента после события, отмеченного идентификатором события. Может использоваться только в том случае, если `stream` имеет значение true.

include_input boolean (необязательно)

Если установлено значение true, то введенные данные включаются в ответ.

Значение по умолчанию: False

api_version строка (необязательно)

Какую версию API использовать?

Ответ

Возвращает ресурс " Взаимодействие" .

Получить взаимодействие

Пример ответа

{
  "id": "v1_ChdPU0F4YWFtNkFwS2kxZThQZ05lbXdROBIXT1NBeGFhbTZBcEtpMWU4UGdOZW13UTg",
  "model": "gemini-3-flash-preview",
  "status": "completed",
  "object": "interaction",
  "created": "2025-11-26T12:25:15Z",
  "updated": "2025-11-26T12:25:15Z",
  "role": "model",
  "outputs": [
    {
      "type": "text",
      "text": "I'm doing great, thank you for asking! How can I help you today?"
    }
  ]
}

Удаление взаимодействия

удалить https://generativelanguage.googleapis.com/v1beta/interactions/{id}

Удаляет взаимодействие по идентификатору.

Путь / Параметры запроса

строковый идентификатор (обязательно)

Уникальный идентификатор взаимодействия, которое необходимо удалить.

api_version строка (необязательно)

Какую версию API использовать?

Ответ

В случае успеха ответ будет пустым.

Удалить взаимодействие

Отмена взаимодействия

post https://generativelanguage.googleapis.com/v1beta/interactions/{id}/cancel

Отменяет взаимодействие по идентификатору. Это относится только к фоновым взаимодействиям, которые все еще выполняются.

Путь / Параметры запроса

строковый идентификатор (обязательно)

Уникальный идентификатор взаимодействия, которое необходимо отменить.

api_version строка (необязательно)

Какую версию API использовать?

Ответ

Возвращает ресурс " Взаимодействие" .

Отменить взаимодействие

Пример ответа

{
  "id": "v1_ChdPU0F4YWFtNkFwS2kxZThQZ05lbXdROBIXT1NBeGFhbTZBcEtpMWU4UGdOZW13UTg",
  "agent": "deep-research-pro-preview-12-2025",
  "status": "cancelled",
  "object": "interaction",
  "created": "2025-11-26T12:25:15Z",
  "updated": "2025-11-26T12:25:15Z",
  "role": "agent"
}

Ресурсы

Взаимодействие

Ресурс "Взаимодействие".

Поля

модель ModelOption (необязательно)

Название модели, использованной для генерации взаимодействия.

Возможные значения:

  • gemini-2.5-computer-use-preview-10-2025

    Модель агентных возможностей, разработанная для прямого взаимодействия через интерфейс, позволяющая Gemini воспринимать цифровую среду и перемещаться в ней.

  • gemini-2.5-flash

    Наша первая гибридная модель рассуждений, поддерживающая контекстное окно в 1 миллион токенов и имеющая бюджеты мышления.

  • gemini-2.5-flash-image

    Наша собственная модель генерации изображений, оптимизированная для скорости, гибкости и контекстного понимания. Стоимость ввода и вывода текста такая же, как у 2,5-дюймовой версии Flash.

  • gemini-2.5-flash-lite

    Наша самая компактная и экономичная модель, предназначенная для масштабного использования.

  • gemini-2.5-flash-lite-preview-09-2025

    Новейшая модель на базе Gemini 2.5 Flash lite, оптимизированная для экономичности, высокой производительности и высокого качества.

  • gemini-2.5-flash-native-audio-preview-12-2025

    Наши собственные аудиомодели оптимизированы для более высокого качества звука с улучшенным темпом, естественностью голоса, детализацией и передачей настроения.

  • gemini-2.5-flash-preview-09-2025

    Новейшая модель, основанная на версии 2.5 Flash. Версия 2.5 Flash Preview лучше всего подходит для крупномасштабной обработки, задач с низкой задержкой и большим объемом данных, требующих аналитического мышления, а также для сценариев использования агентных вычислений.

  • gemini-2.5-flash-preview-tts

    Наша модель преобразования текста в речь 2.5 Flash оптимизирована для мощной, управляемой генерации речи с низкой задержкой.

  • gemini-2.5-pro

    Наша передовая многоцелевая модель, превосходно справляющаяся с задачами программирования и сложным логическим мышлением.

  • gemini-2.5-pro-preview-tts

    Наша аудиомодель преобразования текста в речь 2.5 Pro оптимизирована для мощного генерирования речи с низкой задержкой, что обеспечивает более естественный результат и упрощает управление голосовыми подсказками.

  • gemini-3-flash-preview

    Наша самая интеллектуальная модель, созданная для скорости, сочетает в себе передовые методы разведки с превосходными возможностями поиска и посадки на землю.

  • gemini-3-pro-image-preview

    Современная модель генерации и редактирования изображений.

  • gemini-3-pro-preview

    Наша самая интеллектуальная модель с передовыми методами рассуждения и многомодальным пониманием, а также мощными возможностями агентного и эмоциональных кодирований.

  • gemini-3.1-pro-preview

    Наша новейшая, передовая модель логического мышления с беспрецедентной глубиной и детализацией, а также мощными возможностями многомодального понимания и кодирования.

  • gemini-3.1-flash-image-preview

    Профессиональный уровень визуального интеллекта с эффективностью, сравнимой со скоростью Flash, и возможностями генерации, основанной на реальных данных.

  • gemini-3.1-flash-lite-preview

    Наша наиболее экономичная модель, оптимизированная для выполнения больших объемов агентских задач, перевода и простой обработки данных.

  • gemini-3.1-flash-tts-preview

    Gemini 3.1 Flash TTS: Мощная система генерации речи с низкой задержкой. Наслаждайтесь естественным звучанием, управляемыми подсказками и новыми выразительными аудиотегами для точного управления озвучиванием.

  • lyria-3-clip-preview

    Наша модель генерации музыки с низкой задержкой оптимизирована для высококачественных аудиоклипов и точного контроля ритма.

  • lyria-3-pro-preview

    Наша передовая генеративная модель, способная обрабатывать целые композиции и обладающая глубоким пониманием композиции, оптимизирована для точного структурного контроля и сложных переходов между различными музыкальными стилями.

Модель, которая выполнит ваш запрос.\n\nДополнительную информацию см. в разделе [модели](https://ai.google.dev/gemini-api/docs/models).

агент AgentOption (необязательно)

Имя агента, использованного для генерации взаимодействия.

Возможные значения:

  • deep-research-pro-preview-12-2025

    Агент по глубоким исследованиям компании Gemini

  • deep-research-preview-04-2026

    Агент по глубоким исследованиям компании Gemini

  • deep-research-max-preview-04-2026

    Gemini Deep Research Max Agent

Агент, с которым необходимо взаимодействовать.

строка идентификатора (необязательно)

Обязательно. Только для вывода. Уникальный идентификатор завершения взаимодействия.

перечисление статуса (строка) (необязательно)

Обязательный параметр. Только вывод. Статус взаимодействия.

Возможные значения:

  • in_progress
  • requires_action
  • completed
  • failed
  • cancelled
  • incomplete
созданная строка (необязательно)

Обязательно. Только для вывода. Время создания ответа в формате ISO 8601 (ГГГГ-ММ-ДДЧч:мм:ссЗ).

обновленная строка (необязательно)

Обязательно. Только для вывода. Время последнего обновления ответа в формате ISO 8601 (ГГГГ-ММ-ДДТЧ:мм:ссЗ).

строка роли (необязательно)

Только вывод. Роль взаимодействия.

Выводит массив ( Содержимое ) (необязательно)

Только выходные данные. Ответы от модели.

строка системной инструкции (необязательно)

Системная инструкция для взаимодействия.

массив инструментов ( Инструмент ) (необязательно)

Список объявлений инструментов, которые модель может вызывать во время взаимодействия.

Использование (необязательно )

Только вывод. Статистика использования токенов в запросе на взаимодействие.

Статистика использования токенов в запросах на взаимодействие.

Поля

total_input_tokens целое число (необязательно)

Количество токенов в подсказке (контексте).

input_tokens_by_modality ModalityTokens (необязательно)

Анализ использования входных токенов в зависимости от модальности ввода.

Количество токенов для одного варианта ответа.

Поля

модальность ResponseModality (необязательно)

Способ отображения количества токенов.

Возможные значения:

  • text
  • image
  • audio
  • video
  • document

токены целое число (необязательно)

Количество токенов для данного режима.

total_cached_tokens — целое число (необязательно)

Количество токенов в кэшированной части запроса (кэшированное содержимое).

cached_tokens_by_modality ModalityTokens (необязательно)

Анализ использования кэшированных токенов по способам доступа.

Количество токенов для одного варианта ответа.

Поля

модальность ResponseModality (необязательно)

Способ отображения количества токенов.

Возможные значения:

  • text
  • image
  • audio
  • video
  • document

токены целое число (необязательно)

Количество токенов для данного режима.

total_output_tokens целое число (необязательно)

Общее количество токенов во всех сгенерированных ответах.

output_tokens_by_modality ModalityTokens (необязательно)

Анализ использования выходных токенов по видам модальностей.

Количество токенов для одного варианта ответа.

Поля

модальность ResponseModality (необязательно)

Способ отображения количества токенов.

Возможные значения:

  • text
  • image
  • audio
  • video
  • document

токены целое число (необязательно)

Количество токенов для данного режима.

total_tool_use_tokens целое число (необязательно)

Количество токенов, присутствующих в подсказках использования инструмента.

tool_use_tokens_by_modality ModalityTokens (необязательно)

Анализ использования токенов инструментов в зависимости от модальности.

Количество токенов для одного варианта ответа.

Поля

модальность ResponseModality (необязательно)

Способ отображения количества токенов.

Возможные значения:

  • text
  • image
  • audio
  • video
  • document

токены целое число (необязательно)

Количество токенов для данного режима.

total_thought_tokens целое число (необязательно)

Количество токенов мыслей для моделей мышления.

total_tokens целое число (необязательно)

Общее количество токенов для запроса на взаимодействие (запрос + ответы + другие внутренние токены).

response_modalities ResponseModality (необязательно)

Требуемые форматы ответа (ТЕКСТ, ИЗОБРАЖЕНИЕ, АУДИО).

Возможные значения:

  • text
  • image
  • audio
  • video
  • document

объект response_format (необязательно)

Обеспечивает, чтобы сгенерированный ответ представлял собой объект JSON, соответствующий схеме JSON, указанной в этом поле.

response_mime_type строка (необязательно)

MIME-тип ответа. Это необходимо, если задан параметр response_format.

previous_interaction_id строка (необязательно)

Идентификатор предыдущего взаимодействия, если таковое имелось.

перечисление service_tier (строка) (необязательно)

Уровень обслуживания для данного взаимодействия.

Возможные значения:

  • flex
  • standard
  • priority
Входные данные: Content или массив ( Content ), массив ( Turn ) или строка (необязательно).

Входные данные для взаимодействия.

объект agent_config (необязательно)

Параметры конфигурации для взаимодействия с агентом.

Возможные типы

Полиморфный дискриминатор: type

DynamicAgentConfig

Настройка для динамических агентов.

тип объекта (обязательно)

Описание отсутствует.

Всегда устанавливайте значение "dynamic" .

DeepResearchAgentConfig

Настройки агента Deep Research.

тип объекта (обязательно)

Описание отсутствует.

Всегда устанавливайте значение "deep-research" .

thinking_summaries ThinkingSummaries (необязательно)

Стоит ли включать в ответ краткое изложение мыслей?

Возможные значения:

  • auto
  • none

перечисление визуализации (строка) (необязательно)

Стоит ли включать визуализации в ответ.

Возможные значения:

  • off
  • auto
collaborative_planning логическое значение (необязательно)

Включает планирование с участием человека для агента Deep Research. Если установлено значение true, агент Deep Research предоставит план исследования в своем ответе. Затем агент продолжит работу только в том случае, если пользователь подтвердит план на следующем ходу.

Примеры

Пример

{
  "created": "2025-12-04T15:01:45Z",
  "id": "v1_ChdXS0l4YWZXTk9xbk0xZThQczhEcmlROBIXV0tJeGFmV05PcW5NMWU4UHM4RHJpUTg",
  "model": "gemini-3-flash-preview",
  "object": "interaction",
  "outputs": [
    {
      "text": "Hello! I'm doing well, functioning as expected. Thank you for asking! How are you doing today?",
      "type": "text"
    }
  ],
  "role": "model",
  "status": "completed",
  "updated": "2025-12-04T15:01:45Z",
  "usage": {
    "input_tokens_by_modality": [
      {
        "modality": "text",
        "tokens": 7
      }
    ],
    "total_cached_tokens": 0,
    "total_input_tokens": 7,
    "total_output_tokens": 23,
    "total_thought_tokens": 49,
    "total_tokens": 79,
    "total_tool_use_tokens": 0
  }
}

Модели данных

Содержание

Содержание ответа.

Возможные типы

Полиморфный дискриминатор: type

Текстовое содержимое

Блок текстового содержимого.

тип объекта (обязательно)

Описание отсутствует.

Всегда устанавливайте значение "text" .

текстовая строка (обязательно)

Обязательно. Текстовое содержимое.

Аннотации (необязательно )

Информация об источниках для контента, сгенерированного моделью.

Информация об источниках для контента, сгенерированного моделью.

Возможные типы

Полиморфный дискриминатор: type

URLCitation

Аннотация URL-адреса.

тип объекта (обязательно)

Описание отсутствует.

Всегда устанавливайте значение "url_citation" .

строка URL (необязательно)

URL.

заголовок (необязательно )

Заголовок URL-адреса.

start_index — целое число (необязательно)

Начало сегмента ответа, который относится к данному источнику. Индекс указывает начало сегмента, измеряемое в байтах.

end_index целое число (необязательно)

Конец выделенного сегмента, без учета каких-либо ограничений.

FileCitation

Аннотация к файлу.

тип объекта (обязательно)

Описание отсутствует.

Всегда устанавливайте значение "file_citation" .

document_uri строка (необязательно)

URI файла.

file_name string (необязательно)

Название файла.

исходная строка (необязательно)

Источник указан для части текста.

start_index — целое число (необязательно)

Начало сегмента ответа, который относится к данному источнику. Индекс указывает начало сегмента, измеряемое в байтах.

end_index целое число (необязательно)

Конец выделенного сегмента, без учета каких-либо ограничений.

PlaceCitation

Аннотация к географическому местоположению.

тип объекта (обязательно)

Описание отсутствует.

Всегда устанавливайте значение "place_citation" .

place_id строка (необязательно)

Идентификатор места в формате `places/{place_id}`.

строковое имя (необязательно)

Название места.

строка URL (необязательно)

URI-ссылка на это место.

review_snippets ReviewSnippet (необязательно)

Фрагменты отзывов, используемые для генерации ответов об особенностях того или иного места в Google Maps.

Представляет собой фрагмент отзыва пользователя, отвечающего на вопрос об особенностях конкретного места на Google Maps.

Поля

заголовок (необязательно )

Заголовок рецензии.

строка URL (необязательно)

Ссылка, соответствующая отзыву пользователя на Google Maps.

review_id строка (необязательно)

Идентификатор фрагмента отзыва.

start_index — целое число (необязательно)

Начало сегмента ответа, который относится к данному источнику. Индекс указывает начало сегмента, измеряемое в байтах.

end_index целое число (необязательно)

Конец выделенного сегмента, без учета каких-либо ограничений.

ImageContent

Блок с графическим содержимым.

тип объекта (обязательно)

Описание отсутствует.

Всегда устанавливайте значение "image" .

строка данных (необязательно)

Содержание изображения.

строка URI (необязательно)

URI изображения.

перечисление mime_type (строка) (необязательно)

MIME-тип изображения.

Возможные значения:

  • image/png
  • image/jpeg
  • image/webp
  • image/heic
  • image/heif
  • image/gif
  • image/bmp
  • image/tiff
разрешение MediaResolution (необязательно)

Разрешение средств массовой информации.

Возможные значения:

  • low
  • medium
  • high
  • ultra_high

Аудиоконтент

Блок аудиоконтента.

тип объекта (обязательно)

Описание отсутствует.

Всегда устанавливайте значение "audio" .

строка данных (необязательно)

Аудиоконтент.

строка URI (необязательно)

URI аудиофайла.

перечисление mime_type (строка) (необязательно)

MIME-тип аудиофайла.

Возможные значения:

  • audio/wav
  • audio/mp3
  • audio/aiff
  • audio/aac
  • audio/ogg
  • audio/flac
  • audio/mpeg
  • audio/m4a
  • audio/l16
  • audio/opus
  • audio/alaw
  • audio/mulaw
скорость целочисленная (необязательно)

Частота дискретизации аудиосигнала.

каналы целое число (необязательно)

Количество аудиоканалов.

Содержимое документа

Блок содержимого документа.

тип объекта (обязательно)

Описание отсутствует.

Всегда устанавливайте значение "document" .

строка данных (необязательно)

Содержание документа.

строка URI (необязательно)

URI документа.

перечисление mime_type (строка) (необязательно)

MIME-тип документа.

Возможные значения:

  • application/pdf
Видеоконтент

Блок видеоконтента.

тип объекта (обязательно)

Описание отсутствует.

Всегда устанавливайте значение "video" .

строка данных (необязательно)

Видеоконтент.

строка URI (необязательно)

URI видео.

перечисление mime_type (строка) (необязательно)

Тип MIME видео.

Возможные значения:

  • video/mp4
  • video/mpeg
  • video/mpg
  • video/mov
  • video/avi
  • video/x-flv
  • video/webm
  • video/wmv
  • video/3gpp
разрешение MediaResolution (необязательно)

Разрешение средств массовой информации.

Возможные значения:

  • low
  • medium
  • high
  • ultra_high

ThoughtContent

Блок мыслей.

тип объекта (обязательно)

Описание отсутствует.

Всегда устанавливать значение "thought" .

строка подписи (необязательно)

Подпись должна соответствовать исходному коду бэкэнда и быть включена в процесс генерации.

Краткое содержание Мысли Краткое содержание Содержание (необязательно)

Краткое изложение мысли.

Возможные типы

Полиморфный дискриминатор: type

Текстовое содержимое

Блок текстового содержимого.

тип объекта (обязательно)

Описание отсутствует.

Всегда устанавливайте значение "text" .

текстовая строка (обязательно)

Обязательно. Текстовое содержимое.

Аннотации (необязательно )

Информация об источниках для контента, сгенерированного моделью.

Информация об источниках для контента, сгенерированного моделью.

Возможные типы

Полиморфный дискриминатор: type

URLCitation

Аннотация URL-адреса.

тип объекта (обязательно)

Описание отсутствует.

Всегда устанавливайте значение "url_citation" .

строка URL (необязательно)

URL.

заголовок (необязательно )

Заголовок URL-адреса.

start_index — целое число (необязательно)

Начало сегмента ответа, который относится к данному источнику. Индекс указывает начало сегмента, измеряемое в байтах.

end_index целое число (необязательно)

Конец выделенного сегмента, без учета каких-либо ограничений.

FileCitation

Аннотация к файлу.

тип объекта (обязательно)

Описание отсутствует.

Всегда устанавливайте значение "file_citation" .

document_uri строка (необязательно)

URI файла.

file_name string (необязательно)

Название файла.

исходная строка (необязательно)

Источник указан для части текста.

start_index — целое число (необязательно)

Начало сегмента ответа, который относится к данному источнику. Индекс указывает начало сегмента, измеряемое в байтах.

end_index целое число (необязательно)

Конец выделенного сегмента, без учета каких-либо ограничений.

PlaceCitation

Аннотация к географическому местоположению.

тип объекта (обязательно)

Описание отсутствует.

Всегда устанавливайте значение "place_citation" .

place_id строка (необязательно)

Идентификатор места в формате `places/{place_id}`.

строковое имя (необязательно)

Название места.

строка URL (необязательно)

URI-ссылка на это место.

review_snippets ReviewSnippet (необязательно)

Фрагменты отзывов, используемые для генерации ответов об особенностях того или иного места в Google Maps.

Представляет собой фрагмент отзыва пользователя, отвечающего на вопрос об особенностях конкретного места на Google Maps.

Поля

заголовок (необязательно )

Заголовок рецензии.

строка URL (необязательно)

Ссылка, соответствующая отзыву пользователя на Google Maps.

review_id строка (необязательно)

Идентификатор фрагмента отзыва.

start_index — целое число (необязательно)

Начало сегмента ответа, который относится к данному источнику. Индекс указывает начало сегмента, измеряемое в байтах.

end_index целое число (необязательно)

Конец выделенного сегмента, без учета каких-либо ограничений.

ImageContent

Блок с графическим содержимым.

тип объекта (обязательно)

Описание отсутствует.

Всегда устанавливайте значение "image" .

строка данных (необязательно)

Содержание изображения.

строка URI (необязательно)

URI изображения.

перечисление mime_type (строка) (необязательно)

MIME-тип изображения.

Возможные значения:

  • image/png
  • image/jpeg
  • image/webp
  • image/heic
  • image/heif
  • image/gif
  • image/bmp
  • image/tiff
разрешение MediaResolution (необязательно)

Разрешение средств массовой информации.

Возможные значения:

  • low
  • medium
  • high
  • ultra_high

FunctionCallContent

Блок содержимого вызова инструмента функции.

тип объекта (обязательно)

Описание отсутствует.

Всегда устанавливайте значение "function_call" .

имя строка (обязательно)

Обязательно. Название вызываемого инструмента.

Объект аргументов (обязательный)

Обязательный параметр. Аргументы, передаваемые функции.

строковый идентификатор (обязательно)

Обязательно. Уникальный идентификатор для данного вызова инструмента.

строка подписи (необязательно)

Хэш подписи для проверки данных на стороне бэкэнда.

CodeExecutionCallContent

Содержимое выполнения кода.

тип объекта (обязательно)

Описание отсутствует.

Всегда устанавливайте значение "code_execution_call" .

аргументы CodeExecutionCallArguments (обязательно)

Обязательный параметр. Аргументы, передаваемые для выполнения кода.

Аргументы, передаваемые для выполнения кода.

Поля

языковой перечисление (строка) (необязательно)

Язык программирования кода.

Возможные значения:

  • python
строка кода (необязательно)

Код, который необходимо выполнить.

строковый идентификатор (обязательно)

Обязательно. Уникальный идентификатор для данного вызова инструмента.

строка подписи (необязательно)

Хэш подписи для проверки данных на стороне бэкэнда.

UrlContextCallContent

Содержимое контекста URL.

тип объекта (обязательно)

Описание отсутствует.

Всегда устанавливайте значение "url_context_call" .

arguments UrlContextCallArguments (required)

Обязательный параметр. Аргументы, передаваемые в контекст URL.

Аргументы, передаваемые в контекст URL.

Поля

массив URL-адресов (строка) (необязательно)

URL-адреса для загрузки.

строковый идентификатор (обязательно)

Обязательно. Уникальный идентификатор для данного вызова инструмента.

строка подписи (необязательно)

Хэш подписи для проверки данных на стороне бэкэнда.

McpServerToolCallContent

Содержимое вызова инструмента MCPServer.

тип объекта (обязательно)

Описание отсутствует.

Всегда устанавливайте значение "mcp_server_tool_call" .

имя строка (обязательно)

Обязательно. Название вызванного инструмента.

server_name — строка (обязательно)

Обязательно. Имя используемого MCP-сервера.

Объект аргументов (обязательный)

Обязательный параметр. JSON-объект с аргументами для функции.

строковый идентификатор (обязательно)

Обязательно. Уникальный идентификатор для данного вызова инструмента.

строка подписи (необязательно)

Хэш подписи для проверки данных на стороне бэкэнда.

GoogleSearchCallContent

Контент поиска Google.

тип объекта (обязательно)

Описание отсутствует.

Всегда устанавливайте значение "google_search_call" .

arguments GoogleSearchCallArguments (обязательно)

Обязательный параметр. Аргументы, которые будут переданы в поиск Google.

Аргументы, которые необходимо передать в поиск Google.

Поля

массив запросов (строка) (необязательно)

Поисковые запросы в интернете для последующего поиска.

search_type enum (string) (optional)

Тип включенной привязки поиска.

Возможные значения:

  • web_search
  • image_search
  • enterprise_web_search
строковый идентификатор (обязательно)

Обязательно. Уникальный идентификатор для данного вызова инструмента.

строка подписи (необязательно)

Хэш подписи для проверки данных на стороне бэкэнда.

FileSearchCallContent

Содержимое поиска файлов.

тип объекта (обязательно)

Описание отсутствует.

Всегда устанавливайте значение "file_search_call" .

строковый идентификатор (обязательно)

Обязательно. Уникальный идентификатор для данного вызова инструмента.

строка подписи (необязательно)

Хэш подписи для проверки данных на стороне бэкэнда.

GoogleКартыСодержаниеВызовов

Контент Google Maps.

тип объекта (обязательно)

Описание отсутствует.

Всегда устанавливайте значение "google_maps_call" .

arguments GoogleMapsCallArguments (необязательно)

Аргументы, передаваемые инструменту Google Maps.

Аргументы, передаваемые инструменту Google Maps.

Поля

массив запросов (строка) (необязательно)

Запросы, подлежащие выполнению.

строковый идентификатор (обязательно)

Обязательно. Уникальный идентификатор для данного вызова инструмента.

строка подписи (необязательно)

Хэш подписи для проверки данных на стороне бэкэнда.

FunctionResultContent

Блок содержимого результатов работы функционального инструмента.

тип объекта (обязательно)

Описание отсутствует.

Всегда устанавливайте значение "function_result" .

строковое имя (необязательно)

Название вызванного инструмента.

is_error логическое значение (необязательно)

Вызвал ли вызов инструмента ошибку?

call_id — строка (обязательно)

Обязательно. Идентификатор, соответствующий идентификатору из блока вызова функции.

строка подписи (необязательно)

Хэш подписи для проверки данных на стороне бэкэнда.

массив результатов ( FunctionResultSubcontent ) или строка (обязательно)

Результат вызова инструмента.

CodeExecutionResultContent

Содержимое результата выполнения кода.

тип объекта (обязательно)

Описание отсутствует.

Всегда устанавливайте значение "code_execution_result" .

строка результата (обязательно)

Обязательно. Результат выполнения кода.

is_error логическое значение (необязательно)

Выполнился ли код с ошибкой?

call_id — строка (обязательно)

Обязательно. Идентификатор, соответствующий идентификатору из блока вызова функции.

строка подписи (необязательно)

Хэш подписи для проверки данных на стороне бэкэнда.

UrlContextResultContent

Содержимое результата контекста URL.

тип объекта (обязательно)

Описание отсутствует.

Всегда устанавливайте значение "url_context_result" .

результат UrlContextResult (обязательно)

Обязательно. Результаты анализа контекста URL.

Результат анализа контекста URL.

Поля

строка URL (необязательно)

URL-адрес, который был получен.

перечисление статуса (строка) (необязательно)

Статус получения URL-адреса.

Возможные значения:

  • success
  • error
  • paywall
  • unsafe
is_error логическое значение (необязательно)

Указывалось, привела ли контекстная информация URL к ошибке.

call_id — строка (обязательно)

Обязательно. Идентификатор, соответствующий идентификатору из блока вызова функции.

строка подписи (необязательно)

Хэш подписи для проверки данных на стороне бэкэнда.

GoogleSearchResultContent

Содержание результатов поиска Google.

тип объекта (обязательно)

Описание отсутствует.

Всегда устанавливайте значение "google_search_result" .

результат GoogleSearchResult (обязательно)

Обязательно. Результаты поиска Google.

Результат поиска в Google.

Поля

строка search_suggestions (необязательно)

Фрагмент веб-контента, который можно встроить в веб-страницу или веб-представление приложения.

is_error логическое значение (необязательно)

Вызвал ли поиск в Google ошибку.

call_id — строка (обязательно)

Обязательно. Идентификатор, соответствующий идентификатору из блока вызова функции.

строка подписи (необязательно)

Хэш подписи для проверки данных на стороне бэкэнда.

McpServerToolResultContent

Содержимое результатов работы инструмента MCPServer.

тип объекта (обязательно)

Описание отсутствует.

Всегда устанавливайте значение "mcp_server_tool_result" .

строковое имя (необязательно)

Название инструмента, который вызывается для данного конкретного вызова инструмента.

server_name строка (необязательно)

Название используемого MCP-сервера.

call_id — строка (обязательно)

Обязательно. Идентификатор, соответствующий идентификатору из блока вызова функции.

строка подписи (необязательно)

Хэш подписи для проверки данных на стороне бэкэнда.

массив результатов ( FunctionResultSubcontent ) или строка (обязательно)

Результат вызова сервера MCP. Может представлять собой простой текст или расширенное содержимое.

FileSearchResultContent

Содержимое результатов поиска файлов.

тип объекта (обязательно)

Описание отсутствует.

Всегда устанавливайте значение "file_search_result" .

результат FileSearchResult (обязательно)

Обязательно. Результаты поиска файлов.

Результат поиска по файлу.

Поля

массив пользовательских метаданных (объект) (необязательно)

Пользователь предоставил метаданные о результатах поиска файлов.

call_id — строка (обязательно)

Обязательно. Идентификатор, соответствующий идентификатору из блока вызова функции.

строка подписи (необязательно)

Хэш подписи для проверки данных на стороне бэкэнда.

GoogleMapsResultContent

Содержимое результатов поиска Google Maps.

тип объекта (обязательно)

Описание отсутствует.

Всегда устанавливайте значение "google_maps_result" .

результат GoogleMapsResult (обязательно)

Обязательно. Результаты поиска в Google Maps.

Результат поиска в Google Maps.

Поля

Места (необязательно )

Места, которые были найдены.

Поля

place_id строка (необязательно)

Идентификатор места в формате `places/{place_id}`.

строковое имя (необязательно)

Название места.

строка URL (необязательно)

URI-ссылка на это место.

review_snippets ReviewSnippet (необязательно)

Фрагменты отзывов, используемые для генерации ответов об особенностях того или иного места в Google Maps.

Представляет собой фрагмент отзыва пользователя, отвечающего на вопрос об особенностях конкретного места на Google Maps.

Поля

заголовок (необязательно )

Заголовок рецензии.

строка URL (необязательно)

Ссылка, соответствующая отзыву пользователя на Google Maps.

review_id строка (необязательно)

Идентификатор фрагмента отзыва.

widget_context_token строка (необязательно)

Имя ресурса контекстного токена виджета Google Maps.

call_id — строка (обязательно)

Обязательно. Идентификатор, соответствующий идентификатору из блока вызова функции.

строка подписи (необязательно)

Хэш подписи для проверки данных на стороне бэкэнда.

Примеры

Текст

{
  "type": "text",
  "text": "Hello, how are you?"
}

Изображение

{
  "type": "image",
  "data": "BASE64_ENCODED_IMAGE",
  "mime_type": "image/png"
}

Аудио

{
  "type": "audio",
  "data": "BASE64_ENCODED_AUDIO",
  "mime_type": "audio/wav"
}

Документ

{
  "type": "document",
  "data": "BASE64_ENCODED_DOCUMENT",
  "mime_type": "application/pdf"
}

Видео

{
  "type": "video",
  "uri": "https://www.youtube.com/watch?v=9hE5-98ZeCg"
}

Мысль

{
  "type": "thought",
  "summary": [
    {
      "type": "text",
      "text": "The user is asking about the weather. I should use the get_weather tool."
    }
  ],
  "signature": "CoMDAXLI2nynRYojJIy6B1Jh9os2crpWLfB0+19xcLsGG46bd8wjkF/6RNlRUdvHrXyjsHkG0BZFcuO/bPOyA6Xh5jANNgx82wPHjGExN8A4ZQn56FlMwyZoqFVQz0QyY1lfibFJ2zU3J87uw26OewzcuVX0KEcs+GIsZa3EA6WwqhbsOd3wtZB3Ua2Qf98VAWZTS5y/tWpql7jnU3/CU7pouxQr/Bwft3hwnJNesQ9/dDJTuaQ8Zprh9VRWf1aFFjpIueOjBRrlT3oW6/y/eRl/Gt9BQXCYTqg/38vHFUU4Wo/d9dUpvfCe/a3o97t2Jgxp34oFKcsVb4S5WJrykIkw+14DzVnTpCpbQNFckqvFLuqnJCkL0EQFtunBXI03FJpPu3T1XU6id8S7ojoJQZSauGUCgmaLqUGdMrd08oo81ecoJSLs51Re9N/lISGmjWFPGpqJLoGq6uo4FHz58hmeyXCgHG742BHz2P3MiH1CXHUT2J8mF6zLhf3SR9Qb3lkrobAh"
}

Вызов функции

{
  "type": "function_call",
  "name": "get_weather",
  "id": "gth23981",
  "arguments": {
    "location": "Boston, MA"
  }
}

Вызов выполнения кода

{
  "type": "code_execution_call",
  "id": "call_123456",
  "arguments": {
    "language": "python",
    "code": "print('hello world')"
  }
}

Вызов контекста URL

{
  "type": "url_context_call",
  "id": "call_123456",
  "arguments": {
    "urls": [
      "https://www.example.com"
    ]
  }
}

Вызов инструмента сервера Mcp

{
  "type": "mcp_server_tool_call",
  "id": "call_123456",
  "name": "get_forecast",
  "server_name": "weather_server",
  "arguments": {
    "city": "London"
  }
}

Поисковый звонок Google

{
  "type": "google_search_call",
  "id": "call_123456",
  "arguments": {
    "queries": [
      "weather in Boston"
    ]
  }
}

Поиск файла Звонок

{
  "type": "file_search_call",
  "id": "call_123456"
}

Звонок Google Maps

{
  "type": "google_maps_call",
  "id": "call_123456",
  "arguments": {
    "query": "best food near me"
  }
}

Результат выполнения функции

{
  "type": "function_result",
  "name": "get_weather",
  "call_id": "gth23981",
  "result": [
    {
      "type": "text",
      "text": "{\"weather\":\"sunny\"}"
    }
  ]
}

Результат выполнения кода

{
  "type": "code_execution_result",
  "call_id": "call_123456",
  "result": "hello world"
}

Результат контекста URL

{
  "type": "url_context_result",
  "call_id": "call_123456",
  "result": [
    {
      "url": "https://www.example.com",
      "status": "SUCCESS"
    }
  ]
}

Результаты поиска Google

{
  "type": "google_search_result",
  "call_id": "call_123456",
  "result": [
    {
      "url": "https://www.google.com/search?q=weather+in+Boston",
      "title": "Weather in Boston"
    }
  ]
}

Результат работы инструмента Mcp Server

{
  "type": "mcp_server_tool_result",
  "name": "get_forecast",
  "server_name": "weather_server",
  "call_id": "call_123456",
  "result": "sunny"
}

Результаты поиска файлов

{
  "type": "file_search_result",
  "call_id": "call_123456",
  "result": [
    {
      "text": "search result chunk",
      "file_search_store": "file_search_store"
    }
  ]
}

Результаты поиска в Google Maps

{
  "type": "google_maps_result",
  "call_id": "call_123456",
  "result": [
    {
      "places": [
        {
          "url": "https://www.google.com/maps/search/best+food+near+me",
          "name": "Tasty Restaurant"
        }
      ]
    }
  ]
}

Инструмент

Инструмент, который может быть использован моделью.

Возможные типы

Полиморфный дискриминатор: type

Функция

Инструмент, который может быть использован моделью.

тип объекта (обязательно)

Описание отсутствует.

Всегда устанавливайте значение "function" .

строковое имя (необязательно)

Название функции.

строка описания (необязательно)

Описание функции.

объект параметров (необязательно)

JSON-схема для параметров функции.

Выполнение кода

Инструмент, который может использоваться моделью для выполнения кода.

тип объекта (обязательно)

Описание отсутствует.

Всегда устанавливайте значение "code_execution" .

UrlContext

Инструмент, который может использоваться моделью для получения контекста URL-адреса.

тип объекта (обязательно)

Описание отсутствует.

Всегда устанавливайте значение "url_context" .

Использование компьютера

Инструмент, который модель может использовать для взаимодействия с компьютером.

тип объекта (обязательно)

Описание отсутствует.

Всегда устанавливайте значение "computer_use" .

Перечисление переменных окружения (строка) (необязательно)

Рабочая среда.

Возможные значения:

  • browser
массив excludedPredefinedFunctions (строка) (необязательно)

Список предопределенных функций, исключенных из вызова модели.

McpServer

MCPServer — это сервер, который может быть вызван моделью для выполнения действий.

тип объекта (обязательно)

Описание отсутствует.

Всегда устанавливайте значение "mcp_server" .

строковое имя (необязательно)

Имя MCPServer.

строка URL (необязательно)

Полный URL-адрес конечной точки MCPServer. Пример: "https://api.example.com/mcp"

объект заголовков (необязательно)

Необязательно: поля для заголовков аутентификации, тайм-аутов и т. д., если необходимо.

allowed_tools AllowedTools (необязательно)

Разрешенные инструменты.

Настройки для разрешенных инструментов.

Поля

режим ToolChoiceType (необязательно)

Способ выбора инструмента.

Возможные значения:

  • auto
  • any
  • none
  • validated

массив инструментов (строка) (необязательно)

Названия разрешенных инструментов.

GoogleПоиск

Инструмент, который модель может использовать для поиска в Google.

тип объекта (обязательно)

Описание отсутствует.

Всегда устанавливайте значение "google_search" .

массив search_types (перечисление (строка)) (необязательно)

Типы поиска, которые необходимо включить.

Возможные значения:

  • web_search
  • image_search
  • enterprise_web_search
Поиск файлов

Инструмент, который может использоваться моделью для поиска файлов.

тип объекта (обязательно)

Описание отсутствует.

Всегда устанавливайте значение "file_search" .

массив file_search_store_names (строка) (необязательно)

Названия хранилищ файлов для поиска.

top_k целое число (необязательно)

Количество фрагментов семантического поиска, которые необходимо извлечь.

metadata_filter строка (необязательно)

Фильтр метаданных, применяемый к документам и фрагментам, полученным в результате семантического поиска.

Google Карты

Инструмент, который модель может использовать для вызова Google Maps.

тип объекта (обязательно)

Описание отсутствует.

Всегда устанавливайте значение "google_maps" .

enable_widget boolean (необязательно)

Следует ли возвращать токен контекста виджета в результате вызова инструмента в ответе.

широта ( необязательно )

Широта местоположения пользователя.

Номер долготы (необязательно)

Долгота местоположения пользователя.

Извлечение

Инструмент, который может использоваться моделью для извлечения файлов.

тип объекта (обязательно)

Описание отсутствует.

Всегда устанавливайте значение "retrieval" .

массив retrieval_types (перечисление (строка)) (необязательно)

Типы извлечения файлов, которые необходимо включить.

Возможные значения:

  • vertex_ai_search
vertex_ai_search_config VertexAISearchConfig (необязательно)

Используется для указания конфигурации VertexAISearch.

Используется для указания конфигурации VertexAISearch.

Поля

двигательный блок (опционально)

Необязательный параметр. Используется для указания поисковой системы Vertex AI.

массив хранилищ данных (строка) (необязательно)

Необязательный параметр. Используется для указания хранилищ данных Vertex AI Search.

Примеры

Функция

Выполнение кода

UrlContext

Использование компьютера

McpServer

GoogleПоиск

Поиск файлов

Google Карты

Извлечение

Примеров для этого типа нет.

Повернуть

Поля

строка роли (необязательно)

Автор этого хода. Для ввода данных должен быть пользователь, для вывода данных — модель.

Массив содержимого ( Content ) или строка (необязательно)

Описание отсутствует.

Примеры

Поворот пользователя

{
  "role": "user",
  "content": [
    {
      "type": "text",
      "text": "user turn"
    }
  ]
}

Модель Поворот

{
  "role": "model",
  "content": [
    {
      "type": "text",
      "text": "model turn"
    }
  ]
}

InteractionSseEvent

Возможные типы

Полиморфный дискриминатор: event_type

InteractionStartEvent

event_type object (обязательно)

Описание отсутствует.

Всегда устанавливайте значение "interaction.start" .

Взаимодействие (обязательно )

Описание отсутствует.

event_id строка (необязательно)

Токен event_id, который будет использоваться для возобновления потока взаимодействия с этого события.

InteractionCompleteEvent

event_type object (обязательно)

Описание отсутствует.

Всегда устанавливайте значение "interaction.complete" .

Взаимодействие (обязательно )

Required. The completed interaction with empty outputs to reduce the payload size. Use the preceding ContentDelta events for the actual output.

event_id string (optional)

The event_id token to be used to resume the interaction stream, from this event.

InteractionStatusUpdate

event_type object (required)

Описание отсутствует.

Always set to "interaction.status_update" .

interaction_id string (required)

Описание отсутствует.

status enum (string) (required)

Описание отсутствует.

Possible values:

  • in_progress
  • requires_action
  • completed
  • failed
  • cancelled
  • incomplete
event_id string (optional)

The event_id token to be used to resume the interaction stream, from this event.

ContentStart

event_type object (required)

Описание отсутствует.

Always set to "content.start" .

index integer (required)

Описание отсутствует.

content Content (required)

Описание отсутствует.

event_id string (optional)

The event_id token to be used to resume the interaction stream, from this event.

ContentDelta

event_type object (required)

Описание отсутствует.

Always set to "content.delta" .

index integer (required)

Описание отсутствует.

delta ContentDeltaData (required)

Описание отсутствует.

The delta content data for a content block.

Possible Types

Polymorphic discriminator: type

TextDelta

type object (required)

Описание отсутствует.

Always set to "text" .

text string (required)

Описание отсутствует.

ImageDelta

type object (required)

Описание отсутствует.

Always set to "image" .

data string (optional)

Описание отсутствует.

uri string (optional)

Описание отсутствует.

mime_type enum (string) (optional)

Описание отсутствует.

Possible values:

  • image/png
  • image/jpeg
  • image/webp
  • image/heic
  • image/heif
  • image/gif
  • image/bmp
  • image/tiff
resolution MediaResolution (optional)

The resolution of the media.

Possible values:

  • low
  • medium
  • high
  • ultra_high

AudioDelta

type object (required)

Описание отсутствует.

Always set to "audio" .

data string (optional)

Описание отсутствует.

uri string (optional)

Описание отсутствует.

mime_type enum (string) (optional)

Описание отсутствует.

Possible values:

  • audio/wav
  • audio/mp3
  • audio/aiff
  • audio/aac
  • audio/ogg
  • audio/flac
  • audio/mpeg
  • audio/m4a
  • audio/l16
  • audio/opus
  • audio/alaw
  • audio/mulaw
rate integer (optional)

The sample rate of the audio.

channels integer (optional)

The number of audio channels.

DocumentDelta

type object (required)

Описание отсутствует.

Always set to "document" .

data string (optional)

Описание отсутствует.

uri string (optional)

Описание отсутствует.

mime_type enum (string) (optional)

Описание отсутствует.

Possible values:

  • application/pdf
VideoDelta

type object (required)

Описание отсутствует.

Always set to "video" .

data string (optional)

Описание отсутствует.

uri string (optional)

Описание отсутствует.

mime_type enum (string) (optional)

Описание отсутствует.

Possible values:

  • video/mp4
  • video/mpeg
  • video/mpg
  • video/mov
  • video/avi
  • video/x-flv
  • video/webm
  • video/wmv
  • video/3gpp
resolution MediaResolution (optional)

The resolution of the media.

Possible values:

  • low
  • medium
  • high
  • ultra_high

ThoughtSummaryDelta

type object (required)

Описание отсутствует.

Always set to "thought_summary" .

content ThoughtSummaryContent (optional)

A new summary item to be added to the thought.

Possible Types

Polymorphic discriminator: type

TextContent

A text content block.

type object (required)

Описание отсутствует.

Always set to "text" .

text string (required)

Required. The text content.

annotations Annotation (optional)

Citation information for model-generated content.

Citation information for model-generated content.

Possible Types

Polymorphic discriminator: type

UrlCitation

A URL citation annotation.

type object (required)

Описание отсутствует.

Always set to "url_citation" .

url string (optional)

The URL.

title string (optional)

The title of the URL.

start_index integer (optional)

Start of segment of the response that is attributed to this source. Index indicates the start of the segment, measured in bytes.

end_index integer (optional)

End of the attributed segment, exclusive.

FileCitation

A file citation annotation.

type object (required)

Описание отсутствует.

Always set to "file_citation" .

document_uri string (optional)

The URI of the file.

file_name string (optional)

The name of the file.

source string (optional)

Source attributed for a portion of the text.

start_index integer (optional)

Start of segment of the response that is attributed to this source. Index indicates the start of the segment, measured in bytes.

end_index integer (optional)

End of the attributed segment, exclusive.

PlaceCitation

A place citation annotation.

type object (required)

Описание отсутствует.

Always set to "place_citation" .

place_id string (optional)

The ID of the place, in `places/{place_id}` format.

name string (optional)

Title of the place.

url string (optional)

URI reference of the place.

review_snippets ReviewSnippet (optional)

Snippets of reviews that are used to generate answers about the features of a given place in Google Maps.

Encapsulates a snippet of a user review that answers a question about the features of a specific place in Google Maps.

Поля

title string (optional)

Title of the review.

url string (optional)

A link that corresponds to the user review on Google Maps.

review_id string (optional)

The ID of the review snippet.

start_index integer (optional)

Start of segment of the response that is attributed to this source. Index indicates the start of the segment, measured in bytes.

end_index integer (optional)

End of the attributed segment, exclusive.

ImageContent

An image content block.

type object (required)

Описание отсутствует.

Always set to "image" .

data string (optional)

The image content.

uri string (optional)

The URI of the image.

mime_type enum (string) (optional)

The mime type of the image.

Possible values:

  • image/png
  • image/jpeg
  • image/webp
  • image/heic
  • image/heif
  • image/gif
  • image/bmp
  • image/tiff
resolution MediaResolution (optional)

The resolution of the media.

Possible values:

  • low
  • medium
  • high
  • ultra_high

ThoughtSignatureDelta

type object (required)

Описание отсутствует.

Always set to "thought_signature" .

signature string (optional)

Signature to match the backend source to be part of the generation.

FunctionCallDelta

type object (required)

Описание отсутствует.

Always set to "function_call" .

name string (required)

Описание отсутствует.

arguments object (required)

Описание отсутствует.

id string (required)

Required. A unique ID for this specific tool call.

signature string (optional)

A signature hash for backend validation.

CodeExecutionCallDelta

type object (required)

Описание отсутствует.

Always set to "code_execution_call" .

arguments CodeExecutionCallArguments (required)

Описание отсутствует.

The arguments to pass to the code execution.

Поля

language enum (string) (optional)

Programming language of the `code`.

Possible values:

  • python
code string (optional)

The code to be executed.

id string (required)

Required. A unique ID for this specific tool call.

signature string (optional)

A signature hash for backend validation.

UrlContextCallDelta

type object (required)

Описание отсутствует.

Always set to "url_context_call" .

arguments UrlContextCallArguments (required)

Описание отсутствует.

The arguments to pass to the URL context.

Поля

urls array (string) (optional)

The URLs to fetch.

id string (required)

Required. A unique ID for this specific tool call.

signature string (optional)

A signature hash for backend validation.

GoogleSearchCallDelta

type object (required)

Описание отсутствует.

Always set to "google_search_call" .

arguments GoogleSearchCallArguments (required)

Описание отсутствует.

The arguments to pass to Google Search.

Поля

queries array (string) (optional)

Web search queries for the following-up web search.

id string (required)

Required. A unique ID for this specific tool call.

signature string (optional)

A signature hash for backend validation.

McpServerToolCallDelta

type object (required)

Описание отсутствует.

Always set to "mcp_server_tool_call" .

name string (required)

Описание отсутствует.

server_name string (required)

Описание отсутствует.

arguments object (required)

Описание отсутствует.

id string (required)

Required. A unique ID for this specific tool call.

signature string (optional)

A signature hash for backend validation.

FileSearchCallDelta

type object (required)

Описание отсутствует.

Always set to "file_search_call" .

id string (required)

Required. A unique ID for this specific tool call.

signature string (optional)

A signature hash for backend validation.

GoogleMapsCallDelta

type object (required)

Описание отсутствует.

Always set to "google_maps_call" .

arguments GoogleMapsCallArguments (optional)

The arguments to pass to the Google Maps tool.

The arguments to pass to the Google Maps tool.

Поля

queries array (string) (optional)

The queries to be executed.

id string (required)

Required. A unique ID for this specific tool call.

signature string (optional)

A signature hash for backend validation.

FunctionResultDelta

type object (required)

Описание отсутствует.

Always set to "function_result" .

name string (optional)

Описание отсутствует.

is_error boolean (optional)

Описание отсутствует.

call_id string (required)

Required. ID to match the ID from the function call block.

signature string (optional)

A signature hash for backend validation.

result array ( FunctionResultSubcontent ) or string (required)

Описание отсутствует.

CodeExecutionResultDelta

type object (required)

Описание отсутствует.

Always set to "code_execution_result" .

result string (required)

Описание отсутствует.

is_error boolean (optional)

Описание отсутствует.

call_id string (required)

Required. ID to match the ID from the function call block.

signature string (optional)

A signature hash for backend validation.

UrlContextResultDelta

type object (required)

Описание отсутствует.

Always set to "url_context_result" .

result UrlContextResult (required)

Описание отсутствует.

The result of the URL context.

Поля

url string (optional)

The URL that was fetched.

status enum (string) (optional)

The status of the URL retrieval.

Possible values:

  • success
  • error
  • paywall
  • unsafe
is_error boolean (optional)

Описание отсутствует.

call_id string (required)

Required. ID to match the ID from the function call block.

signature string (optional)

A signature hash for backend validation.

GoogleSearchResultDelta

type object (required)

Описание отсутствует.

Always set to "google_search_result" .

result GoogleSearchResult (required)

Описание отсутствует.

The result of the Google Search.

Поля

search_suggestions string (optional)

Web content snippet that can be embedded in a web page or an app webview.

is_error boolean (optional)

Описание отсутствует.

call_id string (required)

Required. ID to match the ID from the function call block.

signature string (optional)

A signature hash for backend validation.

McpServerToolResultDelta

type object (required)

Описание отсутствует.

Always set to "mcp_server_tool_result" .

name string (optional)

Описание отсутствует.

server_name string (optional)

Описание отсутствует.

call_id string (required)

Required. ID to match the ID from the function call block.

signature string (optional)

A signature hash for backend validation.

result array ( FunctionResultSubcontent ) or string (required)

Описание отсутствует.

FileSearchResultDelta

type object (required)

Описание отсутствует.

Always set to "file_search_result" .

result FileSearchResult (required)

Описание отсутствует.

The result of the File Search.

Поля

custom_metadata array (object) (optional)

User provided metadata about the FileSearchResult.

call_id string (required)

Required. ID to match the ID from the function call block.

signature string (optional)

A signature hash for backend validation.

GoogleMapsResultDelta

type object (required)

Описание отсутствует.

Always set to "google_maps_result" .

result GoogleMapsResult (optional)

The results of the Google Maps.

The result of the Google Maps.

Поля

places Places (optional)

The places that were found.

Поля

place_id string (optional)

The ID of the place, in `places/{place_id}` format.

name string (optional)

Title of the place.

url string (optional)

URI reference of the place.

review_snippets ReviewSnippet (optional)

Snippets of reviews that are used to generate answers about the features of a given place in Google Maps.

Encapsulates a snippet of a user review that answers a question about the features of a specific place in Google Maps.

Поля

title string (optional)

Title of the review.

url string (optional)

A link that corresponds to the user review on Google Maps.

review_id string (optional)

The ID of the review snippet.

widget_context_token string (optional)

Resource name of the Google Maps widget context token.

call_id string (required)

Required. ID to match the ID from the function call block.

signature string (optional)

A signature hash for backend validation.

TextAnnotationDelta

type object (required)

Описание отсутствует.

Always set to "text_annotation" .

annotations Annotation (optional)

Citation information for model-generated content.

Citation information for model-generated content.

Possible Types

Polymorphic discriminator: type

UrlCitation

A URL citation annotation.

type object (required)

Описание отсутствует.

Always set to "url_citation" .

url string (optional)

The URL.

title string (optional)

The title of the URL.

start_index integer (optional)

Start of segment of the response that is attributed to this source. Index indicates the start of the segment, measured in bytes.

end_index integer (optional)

End of the attributed segment, exclusive.

FileCitation

A file citation annotation.

type object (required)

Описание отсутствует.

Always set to "file_citation" .

document_uri string (optional)

The URI of the file.

file_name string (optional)

The name of the file.

source string (optional)

Source attributed for a portion of the text.

start_index integer (optional)

Start of segment of the response that is attributed to this source. Index indicates the start of the segment, measured in bytes.

end_index integer (optional)

End of the attributed segment, exclusive.

PlaceCitation

A place citation annotation.

type object (required)

Описание отсутствует.

Always set to "place_citation" .

place_id string (optional)

The ID of the place, in `places/{place_id}` format.

name string (optional)

Title of the place.

url string (optional)

URI reference of the place.

review_snippets ReviewSnippet (optional)

Snippets of reviews that are used to generate answers about the features of a given place in Google Maps.

Encapsulates a snippet of a user review that answers a question about the features of a specific place in Google Maps.

Поля

title string (optional)

Title of the review.

url string (optional)

A link that corresponds to the user review on Google Maps.

review_id string (optional)

The ID of the review snippet.

start_index integer (optional)

Start of segment of the response that is attributed to this source. Index indicates the start of the segment, measured in bytes.

end_index integer (optional)

End of the attributed segment, exclusive.

event_id string (optional)

The event_id token to be used to resume the interaction stream, from this event.

ContentStop

event_type object (required)

Описание отсутствует.

Always set to "content.stop" .

index integer (required)

Описание отсутствует.

event_id string (optional)

The event_id token to be used to resume the interaction stream, from this event.

ErrorEvent

event_type object (required)

Описание отсутствует.

Always set to "error" .

error Error (optional)

Описание отсутствует.

Error message from an interaction.

Поля

code string (optional)

A URI that identifies the error type.

message string (optional)

A human-readable error message.

event_id string (optional)

The event_id token to be used to resume the interaction stream, from this event.

Примеры

Interaction Start

{
  "event_type": "interaction.start",
  "interaction": {
    "id": "v1_ChdTMjQ0YWJ5TUF1TzcxZThQdjRpcnFRcxIXUzI0NGFieU1BdU83MWU4UHY0aXJxUXM",
    "model": "gemini-3-flash-preview",
    "object": "interaction",
    "status": "in_progress"
  }
}

Interaction Complete

{
  "event_type": "interaction.complete",
  "interaction": {
    "created": "2025-12-09T18:45:40Z",
    "id": "v1_ChdTMjQ0YWJ5TUF1TzcxZThQdjRpcnFRcxIXUzI0NGFieU1BdU83MWU4UHY0aXJxUXM",
    "model": "gemini-3-flash-preview",
    "object": "interaction",
    "role": "model",
    "status": "completed",
    "updated": "2025-12-09T18:45:40Z",
    "usage": {
      "input_tokens_by_modality": [
        {
          "modality": "text",
          "tokens": 11
        }
      ],
      "total_cached_tokens": 0,
      "total_input_tokens": 11,
      "total_output_tokens": 364,
      "total_thought_tokens": 1120,
      "total_tokens": 1495,
      "total_tool_use_tokens": 0
    }
  }
}

Interaction Status Update

{
  "event_type": "interaction.status_update",
  "interaction_id": "v1_ChdTMjQ0YWJ5TUF1TzcxZThQdjRpcnFRcxIXUzI0NGFieU1BdU83MWU4UHY0aXJxUXM",
  "status": "in_progress"
}

Начало содержимого

{
  "event_type": "content.start",
  "content": {
    "type": "text"
  },
  "index": 1
}

Content Delta

{
  "event_type": "content.delta",
  "delta": {
    "type": "text",
    "text": "Elara\u2019s life was a symphony of quiet moments. A librarian, she found solace in the hushed aisles, the scent of aged paper, and the predictable rhythm of her days. Her small apartment, meticulously ordered, reflected this internal calm, save"
  },
  "index": 1
}

Content Stop

{
  "event_type": "content.stop",
  "index": 1
}

Error Event

{
  "event_type": "error",
  "error": {
    "message": "Failed to get completed interaction: Result not found.",
    "code": "not_found"
  }
}