Gemini API

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

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

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

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

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

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

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

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

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

  • gemini-2.5-pro

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

  • gemini-2.5-flash

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

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

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

  • gemini-2.5-flash-lite

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

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

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

  • gemini-2.5-flash-preview-native-audio-dialog

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

  • gemini-2.5-flash-image-preview

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

  • gemini-2.5-pro-preview-tts

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

  • gemini-3-pro-preview

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

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

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

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

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

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

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

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

Входные данные: 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 (строка) (необязательно)

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

tool_choice ToolChoice (необязательно)

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

Настройки выбора инструмента.

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

ToolChoiceType

Этот тип не имеет конкретных полей.

ToolChoiceConfig

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

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

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

Поля

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

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

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

  • auto
  • any
  • none
  • validated

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

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

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

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

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

  • low
  • high

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

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

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

  • auto
  • none

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

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

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

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

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

Поля

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

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

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

Язык речи.

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

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

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

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

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

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

DynamicAgentConfig

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

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

Используется в качестве дискриминатора типа OpenAPI для содержимого oneof.

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

DeepResearchAgentConfig

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

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

Используется в качестве дискриминатора типа OpenAPI для содержимого oneof.

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

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

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

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

  • auto
  • none

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

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

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

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

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

  • text
  • image
  • audio

Ответ

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

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

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

{
  "created": "2025-11-26T12:25:15Z",
  "id": "v1_ChdPU0F4YWFtNkFwS2kxZThQZ05lbXdROBIXT1NBeGFhbTZBcEtpMWU4UGdOZW13UTg",
  "model": "gemini-2.5-flash",
  "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_reasoning_tokens": 22,
    "total_tokens": 49,
    "total_tool_use_tokens": 0
  }
}

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

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

{
  "id": "v1_ChdPU0F4YWFtNkFwS2kxZThQZ05lbXdROBIXT1NBeGFhbTZBcEtpMWU4UGdOZW13UTg",
  "model": "gemini-2.5-flash",
  "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_reasoning_tokens": 0,
    "total_tokens": 60,
    "total_tool_use_tokens": 0
  }
}

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

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

{
  "id": "v1_ChdPU0F4YWFtNkFwS2kxZThQZ05lbXdROBIXT1NBeGFhbTZBcEtpMWU4UGdOZW13UTg",
  "model": "gemini-2.5-flash",
  "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_reasoning_tokens": 0,
    "total_tokens": 288,
    "total_tool_use_tokens": 0
  }
}

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

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

{
  "id": "v1_ChdPU0F4YWFtNkFwS2kxZThQZ05lbXdROBIXT1NBeGFhbTZBcEtpMWU4UGdOZW13UTg",
  "model": "gemini-2.5-flash",
  "status": "requires_action",
  "object": "interaction",
  "created": "2025-11-26T12:22:47Z",
  "updated": "2025-11-26T12:22:47Z",
  "role": "model",
  "outputs": [
    {
      "type": "function_call",
      "function_call": {
        "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_reasoning_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": "model",
  "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_reasoning_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.

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

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

Ответ

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

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

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

{
  "id": "v1_ChdPU0F4YWFtNkFwS2kxZThQZ05lbXdROBIXT1NBeGFhbTZBcEtpMWU4UGdOZW13UTg",
  "model": "gemini-2.5-flash",
  "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": "model"
}

Ресурсы

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

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

Поля

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

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

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

  • gemini-2.5-pro

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

  • gemini-2.5-flash

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

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

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

  • gemini-2.5-flash-lite

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

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

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

  • gemini-2.5-flash-preview-native-audio-dialog

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

  • gemini-2.5-flash-image-preview

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

  • gemini-2.5-pro-preview-tts

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

  • gemini-3-pro-preview

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Только вывод. Тип объекта взаимодействия. Всегда устанавливайте значение `interaction`.

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

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

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

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

Поля

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

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

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

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

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

Поля

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

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

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

  • text
  • image
  • audio

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

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

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

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

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

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

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

Поля

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

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

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

  • text
  • image
  • audio

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

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

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

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

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

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

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

Поля

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

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

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

  • text
  • image
  • audio

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

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

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

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

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

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

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

Поля

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

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

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

  • text
  • image
  • audio

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

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

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

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

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

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

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

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

Примеры

Пример

{
  "created": "2025-12-04T15:01:45Z",
  "id": "v1_ChdXS0l4YWZXTk9xbk0xZThQczhEcmlROBIXV0tJeGFmV05PcW5NMWU4UHM4RHJpUTg",
  "model": "gemini-2.5-flash",
  "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_reasoning_tokens": 49,
    "total_tokens": 79,
    "total_tool_use_tokens": 0
  }
}

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

Содержание

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

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

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

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

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

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

Текстовое содержание.

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

Используется в качестве дискриминатора типа OpenAPI для содержимого oneof.

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

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

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

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

Поля

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

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

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

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

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

Указан источник части текста. Это может быть URL-адрес, заголовок или другой идентификатор.

ImageContent

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

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

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

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

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

mime_type ImageMimeTypeOption (необязательно)

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

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

  • image/png
  • image/jpeg
  • image/webp
  • image/heic
  • image/heif

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

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

Используется в качестве дискриминатора типа OpenAPI для содержимого oneof.

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

разрешение MediaResolution (необязательно)

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

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

  • low
  • medium
  • high

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

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

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

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

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

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

mime_type AudioMimeTypeOption (необязательно)

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

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

  • audio/wav
  • audio/mp3
  • audio/aiff
  • audio/aac
  • audio/ogg
  • audio/flac

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

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

Используется в качестве дискриминатора типа OpenAPI для содержимого oneof.

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

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

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

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

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

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

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

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

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

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

Используется в качестве дискриминатора типа OpenAPI для содержимого oneof.

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

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

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

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

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

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

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

mime_type VideoMimeTypeOption (необязательно)

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

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

  • video/mp4
  • video/mpeg
  • video/mov
  • video/avi
  • video/x-flv
  • video/mpg
  • video/webm
  • video/wmv
  • video/3gpp

Тип MIME видео.

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

Используется в качестве дискриминатора типа OpenAPI для содержимого oneof.

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

разрешение MediaResolution (необязательно)

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

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

  • low
  • medium
  • high

ThoughtContent

Блок мыслей.

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

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

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

Используется в качестве дискриминатора типа OpenAPI для содержимого oneof.

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

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

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

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

FunctionCallContent

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

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

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

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

Аргументы, передаваемые функции.

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

Используется в качестве дискриминатора типа OpenAPI для содержимого oneof.

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

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

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

FunctionResultContent

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

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

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

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

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

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

Используется в качестве дискриминатора типа OpenAPI для содержимого oneof.

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

результирующий объект или строка (обязательно)

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

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

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

CodeExecutionCallContent

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

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

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

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

Поля

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

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

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

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

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

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

Используется в качестве дискриминатора типа OpenAPI для содержимого oneof.

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

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

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

CodeExecutionResultContent

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

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

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

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

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

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

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

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

Используется в качестве дискриминатора типа OpenAPI для содержимого oneof.

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

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

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

UrlContextCallContent

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

arguments UrlContextCallArguments (optional)

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

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

Поля

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

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

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

Используется в качестве дискриминатора типа OpenAPI для содержимого oneof.

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

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

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

UrlContextResultContent

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

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

Подпись результата контекста URL.

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

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

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

Поля

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

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

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

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

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

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

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

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

Используется в качестве дискриминатора типа OpenAPI для содержимого oneof.

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

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

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

GoogleSearchCallContent

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

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

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

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

Поля

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

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

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

Используется в качестве дискриминатора типа OpenAPI для содержимого oneof.

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

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

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

GoogleSearchResultContent

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

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

Подпись результата поиска Google.

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

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

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

Поля

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

URI-ссылка на результат поиска.

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

Заголовок результата поиска.

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

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

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

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

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

Используется в качестве дискриминатора типа OpenAPI для содержимого oneof.

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

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

Идентификатор, соответствующий идентификатору из блока вызова поиска Google.

McpServerToolCallContent

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

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

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

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

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

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

JSON-объект с аргументами для функции.

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

Используется в качестве дискриминатора типа OpenAPI для содержимого oneof.

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

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

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

McpServerToolResultContent

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

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

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

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

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

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

Используется в качестве дискриминатора типа OpenAPI для содержимого oneof.

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

результирующий объект или строка (обязательно)

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

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

Идентификатор, соответствующий идентификатору из блока вызова инструмента сервера MCP.

FileSearchResultContent

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

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

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

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

Поля

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

Заголовок результата поиска.

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

Текст результата поиска.

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

Название хранилища для поиска файлов.

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

Используется в качестве дискриминатора типа OpenAPI для содержимого oneof.

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

Примеры

Текст

{
  "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": "function_result",
  "name": "get_weather",
  "call_id": "gth23981",
  "result": {
    "weather": "sunny"
  }
}

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

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

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

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

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

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

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

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

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

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

Результаты поиска 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

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

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

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

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

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

Инструмент

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

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

Функция

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

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

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

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

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

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

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

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

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

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

GoogleПоиск

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

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

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

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

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

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

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

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

Всегда устанавливайте значение "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

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

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

Поиск файлов

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

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

Названия хранилищ файлов для поиска.

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

Количество фрагментов семантического поиска, которые необходимо извлечь.

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

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

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

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

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

Примеры

Функция

GoogleПоиск

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

UrlContext

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

McpServer

Поиск файлов

Повернуть

Поля

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

Автор этого хода. Для ввода данных должен быть пользователь, для вывода данных — модель.

Массив содержимого ( Content ) или строка (необязательно)

Содержание хода.

Примеры

Поворот пользователя

{
  "role": "user",
  "content": [
    {
      "type": "text",
      "text": "user turn"
    }
  ]
}

Модель Поворот

{
  "role": "model",
  "content": [
    {
      "type": "text",
      "text": "model turn"
    }
  ]
}

InteractionSseEvent

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

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

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

event_type enum (string) (optional)

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

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

  • interaction.start
  • interaction.complete
Взаимодействие (необязательно )

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

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

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

InteractionStatusUpdate

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

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

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

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

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

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

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

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

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

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

ContentStart

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

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

Содержание ( необязательно )

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

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

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

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

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

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

ContentDelta

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

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

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

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

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

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

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

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

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

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

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

ТекстДельта

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

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

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

Используется в качестве дискриминатора типа OpenAPI для содержимого oneof.

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

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

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

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

Поля

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

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

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

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

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

Указан источник части текста. Это может быть URL-адрес, заголовок или другой идентификатор.

ImageDelta

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

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

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

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

mime_type ImageMimeTypeOption (необязательно)

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

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

  • image/png
  • image/jpeg
  • image/webp
  • image/heic
  • image/heif

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

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

Используется в качестве дискриминатора типа OpenAPI для содержимого oneof.

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

разрешение MediaResolution (необязательно)

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

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

  • low
  • medium
  • high

AudioDelta

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

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

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

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

mime_type AudioMimeTypeOption (необязательно)

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

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

  • audio/wav
  • audio/mp3
  • audio/aiff
  • audio/aac
  • audio/ogg
  • audio/flac

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

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

Используется в качестве дискриминатора типа OpenAPI для содержимого oneof.

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

ДокументДельта

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

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

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

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

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

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

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

Используется в качестве дискриминатора типа OpenAPI для содержимого oneof.

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

ВидеоДельта

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

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

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

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

mime_type VideoMimeTypeOption (необязательно)

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

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

  • video/mp4
  • video/mpeg
  • video/mov
  • video/avi
  • video/x-flv
  • video/mpg
  • video/webm
  • video/wmv
  • video/3gpp

Тип MIME видео.

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

Используется в качестве дискриминатора типа OpenAPI для содержимого oneof.

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

разрешение MediaResolution (необязательно)

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

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

  • low
  • medium
  • high

ThoughtSummaryDelta

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

Используется в качестве дискриминатора типа OpenAPI для содержимого oneof.

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

Содержимое изображения (ImageContent) или текстового содержимого (TextContent ) (необязательно)

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

ThoughtSignatureDelta

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

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

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

Используется в качестве дискриминатора типа OpenAPI для содержимого oneof.

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

FunctionCallDelta

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

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

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

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

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

Используется в качестве дискриминатора типа OpenAPI для содержимого oneof.

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

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

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

FunctionResultDelta

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

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

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

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

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

Используется в качестве дискриминатора типа OpenAPI для содержимого oneof.

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

результирующий объект или строка (необязательно)

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

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

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

CodeExecutionCallDelta

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

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

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

Поля

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

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

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

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

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

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

Используется в качестве дискриминатора типа OpenAPI для содержимого oneof.

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

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

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

CodeExecutionResultDelta

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

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

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

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

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

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

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

Используется в качестве дискриминатора типа OpenAPI для содержимого oneof.

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

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

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

UrlContextCallDelta

arguments UrlContextCallArguments (optional)

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

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

Поля

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

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

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

Используется в качестве дискриминатора типа OpenAPI для содержимого oneof.

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

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

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

UrlContextResultDelta

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

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

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

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

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

Поля

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

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

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

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

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

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

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

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

Используется в качестве дискриминатора типа OpenAPI для содержимого oneof.

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

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

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

GoogleSearchCallDelta

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

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

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

Поля

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

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

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

Используется в качестве дискриминатора типа OpenAPI для содержимого oneof.

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

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

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

GoogleSearchResultDelta

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

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

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

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

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

Поля

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

URI-ссылка на результат поиска.

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

Заголовок результата поиска.

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

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

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

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

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

Используется в качестве дискриминатора типа OpenAPI для содержимого oneof.

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

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

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

McpServerToolCallDelta

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

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

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

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

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

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

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

Используется в качестве дискриминатора типа OpenAPI для содержимого oneof.

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

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

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

McpServerToolResultDelta

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

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

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

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

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

Используется в качестве дискриминатора типа OpenAPI для содержимого oneof.

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

результирующий объект или строка (необязательно)

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

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

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

FileSearchResultDelta

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

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

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

Поля

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

Заголовок результата поиска.

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

Текст результата поиска.

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

Название хранилища для поиска файлов.

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

Используется в качестве дискриминатора типа OpenAPI для содержимого oneof.

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

КонтентСтоп

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

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

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

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

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

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

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

ErrorEvent

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

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

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

ошибка Ошибка (необязательно)

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

Сообщение об ошибке, возникшей в результате взаимодействия.

Поля

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

URI, определяющий тип ошибки.

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

Удобочитаемое сообщение об ошибке.

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

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

Примеры

Начало взаимодействия

{
  "event_type": "interaction.start",
  "interaction": {
    "id": "v1_ChdTMjQ0YWJ5TUF1TzcxZThQdjRpcnFRcxIXUzI0NGFieU1BdU83MWU4UHY0aXJxUXM",
    "model": "gemini-2.5-flash",
    "object": "interaction",
    "status": "in_progress"
  }
}

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

{
  "event_type": "interaction.complete",
  "interaction": {
    "created": "2025-12-09T18:45:40Z",
    "id": "v1_ChdTMjQ0YWJ5TUF1TzcxZThQdjRpcnFRcxIXUzI0NGFieU1BdU83MWU4UHY0aXJxUXM",
    "model": "gemini-2.5-flash",
    "object": "interaction",
    "outputs": [
      {
        "signature": "CoMDAXLI2nynRYojJIy6B1Jh9os2crpWLfB0+19xcLsGG46bd8wjkF/6RNlRUdvHrXyjsHkG0BZFcuO/bPOyA6Xh5jANNgx82wPHjGExN8A4ZQn56FlMwyZoqFVQz0QyY1lfibFJ2zU3J87uw26OewzcuVX0KEcs+GIsZa3EA6WwqhbsOd3wtZB3Ua2Qf98VAWZTS5y/tWpql7jnU3/CU7pouxQr/Bwft3hwnJNesQ9/dDJTuaQ8Zprh9VRWf1aFFjpIueOjBRrlT3oW6/y/eRl/Gt9BQXCYTqg/38vHFUU4Wo/d9dUpvfCe/a3o97t2Jgxp34oFKcsVb4S5WJrykIkw+14DzVnTpCpbQNFckqvFLuqnJCkL0EQFtunBXI03FJpPu3T1XU6id8S7ojoJQZSauGUCgmaLqUGdMrd08oo81ecoJSLs51Re9N/lISGmjWFPGpqJLoGq6uo4FHz58hmeyXCgHG742BHz2P3MiH1CXHUT2J8mF6zLhf3SR9Qb3lkrobAh",
        "type": "thought"
      },
      {
        "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",
        "type": "text"
      },
      {
        "text": " for one beloved anomaly: a chipped porcelain teacup, inherited from her grandmother, which held her morning Earl Grey.\n\nOne Tuesday, stirring her tea, Elara paused. At the bottom, nestled against the porcelain, was a star.",
        "type": "text"
      },
      {
        "text": " Not a star-shaped tea leaf, but a miniature, perfectly formed celestial body, radiating a faint, cool luminescence. Before she could gasp, it dissolved, leaving only the amber swirl of her brew. She dismissed it as a trick of",
        "type": "text"
      },
      {
        "text": " tired eyes.\n\nBut the next morning, a gossamer-thin feather, smaller than an eyelash and shimmering with iridescent hues, floated on the surface. It vanished the moment she tried to touch it. A week later, a single,",
        "type": "text"
      },
      {
        "text": " impossibly delicate bloom, like spun moonbeam, unfolded in her cup before fading into nothingness.\n\nThese weren't illusions. Each day, Elara\u2019s chipped teacup offered a fleeting, exquisite secret. A tiny, perfect",
        "type": "text"
      },
      {
        "text": " crystal, a miniature spiral nebula, a fragment of rainbow caught in liquid form. They never lingered, never accumulated, simply *were* and then *weren't*, leaving behind a residue of quiet wonder.\n\nElara never spoke",
        "type": "text"
      },
      {
        "text": " of it. It was her private wellspring, a daily reminder that magic could exist in the smallest, most overlooked corners of the world. Her routine remained unchanged, her external life a picture of calm, but inside, a secret garden blo",
        "type": "text"
      },
      {
        "text": "omed. Each dawn brought not just tea, but the silent promise of extraordinary beauty, waiting patiently in a chipped teacup.",
        "type": "text"
      }
    ],
    "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_reasoning_tokens": 1120,
      "total_tokens": 1495,
      "total_tool_use_tokens": 0
    }
  }
}

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

{
  "event_type": "interaction.status_update",
  "interaction_id": "v1_ChdTMjQ0YWJ5TUF1TzcxZThQdjRpcnFRcxIXUzI0NGFieU1BdU83MWU4UHY0aXJxUXM",
  "status": "in_progress"
}

Начало контента

{
  "event_type": "content.start",
  "content": {
    "type": "text"
  },
  "index": 1
}

Содержание Дельта

{
  "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
}

Содержание Остановить

{
  "event_type": "content.stop",
  "index": 1
}

Событие ошибки

{
  "event_type": "error",
  "error": {
    "message": "Failed to get completed interaction: Result not found.",
    "code": "not_found"
  }
}