Gemini API

Gemini Interactions API는 개발자가 Gemini 모델을 사용하여 생성형 AI 애플리케이션을 빌드할 수 있는 실험용 API입니다. Gemini는 멀티모달을 위해 처음부터 구축된 Google의 가장 뛰어난 모델입니다. 언어, 이미지, 오디오, 동영상, 코드 등 다양한 유형의 정보를 일반화하고 원활하게 이해, 활용, 결합할 수 있습니다. Gemini API는 텍스트와 이미지 간 추론, 콘텐츠 생성, 대화형 에이전트, 요약 및 분류 시스템 등의 사용 사례에 사용할 수 있습니다.

상호작용 만들기

post https://generativelanguage.googleapis.com/v1beta/interactions

새 상호작용을 만듭니다.

요청 본문

요청 본문에는 다음과 같은 구조의 데이터가 포함됩니다.

model ModelOption  (선택사항)

상호작용을 생성하는 데 사용된 `Model` 의 이름입니다.
`agent` 가 제공되지 않은 경우 필수입니다.

가능한 값은 다음과 같습니다.

  • gemini-2.5-pro

    코딩 및 복잡한 추론 작업에 탁월한 최첨단 다목적 모델입니다.

  • gemini-2.5-flash

    100만 개의 토큰 컨텍스트 윈도우를 지원하고 사고 예산이 있는 첫 번째 하이브리드 추론 모델입니다.

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

    2.5 Flash 모델을 기반으로 하는 최신 모델입니다. 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-preview-native-audio-dialog

    Google의 네이티브 오디오 모델은 더 나은 속도, 자연스러운 음성, 세부정보 수준, 분위기를 통해 고품질 오디오 출력을 제공하도록 최적화되어 있습니다.

  • gemini-2.5-flash-image-preview

    속도, 유연성, 맥락 이해에 최적화된 Google의 네이티브 이미지 생성 모델입니다. 텍스트 입력 및 출력은 2.5 Flash와 동일한 가격으로 책정됩니다.

  • gemini-2.5-pro-preview-tts

    더 자연스러운 출력과 프롬프트의 쉬운 조정을 위해 강력하고 짧은 지연 시간의 음성 생성을 위해 최적화된 2.5 Pro Text-to-Speech 오디오 모델입니다.

  • gemini-3-pro-preview

    최첨단 추론 및 멀티모달 이해를 갖춘 가장 지능적인 모델로, 강력한 에이전트형 및 바이브 코딩 기능을 제공합니다.

프롬프트를 완성할 모델입니다.\n\n자세한 내용은 [모델](https://ai.google.dev/gemini-api/docs/models)을 참고하세요.

agent AgentOption  (선택사항)

상호작용을 생성하는 데 사용된 `Agent` 의 이름입니다.
`model` 이 제공되지 않은 경우 필수입니다.

가능한 값은 다음과 같습니다.

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

    Gemini Deep Research 에이전트

상호작용할 에이전트입니다.

input Content 또는 배열 (Content) 또는 배열 (Turn) 또는 문자열  (필수)

상호작용의 입력입니다 (모델과 에이전트 모두에 공통).

system_instruction string  (선택사항)

상호작용을 위한 시스템 요청 사항입니다.

tools array (Tool)  (선택사항)

모델이 상호작용 중에 호출할 수 있는 도구 선언 목록입니다.

response_format object  (선택사항)

생성된 대답이 이 필드에 지정된 JSON 스키마를 준수하는 JSON 객체여야 합니다.

response_mime_type string  (선택사항)

대답의 MIME 유형입니다. response_format이 설정된 경우 필수입니다.

stream boolean  (선택사항)

입력 전용입니다. 상호작용이 스트리밍되는지 여부입니다.

store boolean  (선택사항)

입력 전용입니다. 나중에 검색할 수 있도록 응답과 요청을 저장할지 여부입니다.

background boolean  (선택사항)

백그라운드에서 모델 상호작용을 실행할지 여부입니다.

generation_config GenerationConfig  (선택사항)

모델 구성
모델 상호작용을 위한 구성 매개변수입니다.
`agent_config`의 대안입니다. `model` 이 설정된 경우에만 적용됩니다.

모델 상호작용을 위한 구성 파라미터입니다.

필드

temperature number  (선택사항)

출력의 무작위성을 제어합니다.

top_p number  (선택사항)

샘플링 시 고려할 토큰의 최대 누적 확률입니다.

seed 정수  (선택사항)

재현성을 위해 디코딩에 사용되는 시드입니다.

stop_sequences array (string)  (선택사항)

출력 상호작용을 중지하는 문자 시퀀스 목록입니다.

tool_choice ToolChoice  (선택사항)

상호작용에 사용할 도구입니다.

도구 선택 구성입니다.

가능한 유형

ToolChoiceType

이 유형에는 특정 필드가 없습니다.

ToolChoiceConfig

allowed_tools AllowedTools  (선택사항)

제공된 설명이 없습니다.

허용된 도구의 구성입니다.

필드

mode ToolChoiceType  (선택사항)

도구 선택 모드입니다.

가능한 값은 다음과 같습니다.

  • auto
  • any
  • none
  • validated

tools array (string)  (선택사항)

허용된 도구의 이름입니다.

thinking_level ThinkingLevel  (optional)

모델이 생성해야 하는 사고 토큰의 수준입니다.

가능한 값은 다음과 같습니다.

  • low
  • high

thinking_summaries ThinkingSummaries  (선택사항)

대답에 사고 요약을 포함할지 여부입니다.

가능한 값은 다음과 같습니다.

  • auto
  • none

max_output_tokens integer  (선택사항)

응답에 포함할 최대 토큰 수입니다.

speech_config SpeechConfig  (선택사항)

음성 상호작용 구성입니다.

음성 상호작용 구성입니다.

필드

voice string  (선택사항)

화자의 음성입니다.

language string  (선택사항)

음성의 언어입니다.

speaker string  (선택사항)

화자 이름입니다. 프롬프트에 지정된 화자 이름과 일치해야 합니다.

agent_config object  (선택사항)

에이전트 구성
에이전트 구성입니다.
`generation_config`의 대안입니다. `agent` 가 설정된 경우에만 적용됩니다.

가능한 유형

다형성 판별자: type

DynamicAgentConfig

동적 에이전트 구성입니다.

type string  (선택사항)

콘텐츠 oneof의 OpenAPI 유형 식별자로 사용됩니다.

항상 "dynamic"로 설정합니다.

DeepResearchAgentConfig

Deep Research 에이전트의 구성입니다.

type string  (선택사항)

콘텐츠 oneof의 OpenAPI 유형 식별자로 사용됩니다.

항상 "deep-research"로 설정합니다.

thinking_summaries ThinkingSummaries  (선택사항)

대답에 사고 요약을 포함할지 여부입니다.

가능한 값은 다음과 같습니다.

  • auto
  • none

previous_interaction_id string  (선택사항)

이전 상호작용의 ID입니다(있는 경우).

response_modalities ResponseModality  (선택사항)

요청된 대답의 형식 (TEXT, IMAGE, AUDIO)입니다.

가능한 값은 다음과 같습니다.

  • text
  • image
  • audio

응답

Interaction 리소스를 반환합니다.

간단한 요청

응답 예시

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

Deep Research

응답 예시

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

상호작용 가져오기

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

`Interaction.id`를 기반으로 단일 상호작용의 전체 세부정보를 가져옵니다.

경로 / 쿼리 매개변수

id 문자열  (필수)

가져올 상호작용의 고유 식별자입니다.

stream boolean  (선택사항)

true로 설정하면 생성된 콘텐츠가 증분 방식으로 스트리밍됩니다.

기본값: False

last_event_id string  (선택사항)

선택사항입니다. 설정된 경우 이벤트 ID로 표시된 이벤트 후 다음 청크부터 상호작용 스트림을 재개합니다. `stream` 이 true인 경우에만 사용할 수 있습니다.

api_version 문자열  (선택사항)

사용할 API 버전입니다.

응답

Interaction 리소스를 반환합니다.

상호작용 가져오기

응답 예시

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

상호작용 삭제

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

ID로 상호작용을 삭제합니다.

경로 / 쿼리 매개변수

id 문자열  (필수)

삭제할 상호작용의 고유 식별자입니다.

api_version 문자열  (선택사항)

사용할 API 버전입니다.

응답

성공한 경우 응답은 비어 있습니다.

상호작용 삭제

상호작용 취소

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

ID로 상호작용을 취소합니다. 이는 아직 실행 중인 백그라운드 상호작용에만 적용됩니다.

경로 / 쿼리 매개변수

id 문자열  (필수)

가져올 상호작용의 고유 식별자입니다.

api_version 문자열  (선택사항)

사용할 API 버전입니다.

응답

Interaction 리소스를 반환합니다.

상호작용 취소

응답 예시

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

리소스

상호작용

상호작용 리소스입니다.

필드

model ModelOption  (선택사항)

상호작용을 생성하는 데 사용된 `Model` 의 이름입니다.

가능한 값은 다음과 같습니다.

  • gemini-2.5-pro

    코딩 및 복잡한 추론 작업에 탁월한 최첨단 다목적 모델입니다.

  • gemini-2.5-flash

    100만 개의 토큰 컨텍스트 윈도우를 지원하고 사고 예산이 있는 첫 번째 하이브리드 추론 모델입니다.

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

    2.5 Flash 모델을 기반으로 하는 최신 모델입니다. 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-preview-native-audio-dialog

    Google의 네이티브 오디오 모델은 더 나은 속도, 자연스러운 음성, 세부정보 수준, 분위기를 통해 고품질 오디오 출력을 제공하도록 최적화되어 있습니다.

  • gemini-2.5-flash-image-preview

    속도, 유연성, 맥락 이해에 최적화된 Google의 네이티브 이미지 생성 모델입니다. 텍스트 입력 및 출력은 2.5 Flash와 동일한 가격으로 책정됩니다.

  • gemini-2.5-pro-preview-tts

    더 자연스러운 출력과 프롬프트의 쉬운 조정을 위해 강력하고 짧은 지연 시간의 음성 생성을 위해 최적화된 2.5 Pro Text-to-Speech 오디오 모델입니다.

  • gemini-3-pro-preview

    최첨단 추론 및 멀티모달 이해를 갖춘 가장 지능적인 모델로, 강력한 에이전트형 및 바이브 코딩 기능을 제공합니다.

프롬프트를 완성할 모델입니다.\n\n자세한 내용은 [모델](https://ai.google.dev/gemini-api/docs/models)을 참고하세요.

agent AgentOption  (선택사항)

상호작용을 생성하는 데 사용된 `Agent` 의 이름입니다.

가능한 값은 다음과 같습니다.

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

    Gemini Deep Research 에이전트

상호작용할 에이전트입니다.

id 문자열  (선택사항)

출력 전용입니다. 상호작용 완료의 고유 식별자입니다.

status enum (string)  (선택사항)

출력 전용입니다. 상호작용의 상태입니다.

가능한 값은 다음과 같습니다.

  • in_progress
  • requires_action
  • completed
  • failed
  • cancelled
created string  (선택사항)

출력 전용입니다. ISO 8601 형식(YYYY-MM-DDThh:mm:ssZ)으로 대답이 생성된 시간입니다.

updated string  (선택사항)

출력 전용입니다. ISO 8601 형식(YYYY-MM-DDThh:mm:ssZ)으로 대답이 마지막으로 업데이트된 시간입니다.

role string  (선택사항)

출력 전용입니다. 상호작용의 역할입니다.

outputs array (Content)  (선택사항)

출력 전용입니다. 모델의 대답입니다.

object string  (선택사항)

출력 전용입니다. 상호작용의 객체 유형입니다. 항상 `interaction`으로 설정됩니다.

항상 "interaction"로 설정합니다.

사용 사용  (선택사항)

출력 전용입니다. 상호작용 요청의 토큰 사용량에 관한 통계입니다.

상호작용 요청의 토큰 사용량에 관한 통계입니다.

필드

total_input_tokens integer  (선택사항)

프롬프트 (컨텍스트)의 토큰 수입니다.

input_tokens_by_modality ModalityTokens  (선택사항)

모달리티별 입력 토큰 사용량 분석입니다.

단일 응답 모달리티의 토큰 수입니다.

필드

modality ResponseModality  (선택사항)

토큰 수와 연결된 모달리티입니다.

가능한 값은 다음과 같습니다.

  • text
  • image
  • audio

토큰 정수  (선택사항)

모달리티의 토큰 수입니다.

total_cached_tokens integer  (선택사항)

프롬프트의 캐시된 부분 (캐시된 콘텐츠)에 있는 토큰 수입니다.

cached_tokens_by_modality ModalityTokens  (선택사항)

모달리티별 캐시된 토큰 사용량 분석입니다.

단일 응답 모달리티의 토큰 수입니다.

필드

modality ResponseModality  (선택사항)

토큰 수와 연결된 모달리티입니다.

가능한 값은 다음과 같습니다.

  • text
  • image
  • audio

토큰 정수  (선택사항)

모달리티의 토큰 수입니다.

total_output_tokens integer  (선택사항)

생성된 모든 대답의 총 토큰 수입니다.

output_tokens_by_modality ModalityTokens  (선택사항)

모달리티별 출력 토큰 사용량 분석입니다.

단일 응답 모달리티의 토큰 수입니다.

필드

modality ResponseModality  (선택사항)

토큰 수와 연결된 모달리티입니다.

가능한 값은 다음과 같습니다.

  • text
  • image
  • audio

토큰 정수  (선택사항)

모달리티의 토큰 수입니다.

total_tool_use_tokens integer  (optional)

도구 사용 프롬프트에 있는 토큰 수입니다.

tool_use_tokens_by_modality ModalityTokens  (선택사항)

모달리티별 도구 사용 토큰 사용량 분석

단일 응답 모달리티의 토큰 수입니다.

필드

modality ResponseModality  (선택사항)

토큰 수와 연결된 모달리티입니다.

가능한 값은 다음과 같습니다.

  • text
  • image
  • audio

토큰 정수  (선택사항)

모달리티의 토큰 수입니다.

total_reasoning_tokens integer  (선택사항)

사고 모델의 사고 토큰 수입니다.

total_tokens integer  (선택사항)

상호작용 요청의 총 토큰 수 (프롬프트 + 응답 + 기타 내부 토큰)입니다.

previous_interaction_id string  (선택사항)

이전 상호작용의 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

TextContent

텍스트 콘텐츠 블록입니다.

text string  (선택사항)

텍스트 콘텐츠입니다.

type string  (필수)

콘텐츠 oneof의 OpenAPI 유형 식별자로 사용됩니다.

항상 "text"로 설정합니다.

annotations Annotation  (선택사항)

모델 생성 콘텐츠의 인용 정보입니다.

모델 생성 콘텐츠의 인용 정보입니다.

필드

start_index integer  (선택사항)

이 출처에 기여도가 부여된 대답의 세그먼트 시작입니다. 색인은 바이트로 측정된 세그먼트의 시작을 나타냅니다.

end_index integer  (선택사항)

기여도가 부여된 세그먼트의 끝(해당 값 제외)입니다.

source string  (선택사항)

텍스트의 일부에 기여도가 부여된 출처입니다. URL, 제목 또는 기타 식별자일 수 있습니다.

ImageContent

이미지 콘텐츠 블록입니다.

data string  (선택사항)

제공된 설명이 없습니다.

uri string  (선택사항)

제공된 설명이 없습니다.

mime_type ImageMimeTypeOption  (선택사항)

제공된 설명이 없습니다.

가능한 값은 다음과 같습니다.

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

이미지의 MIME 유형입니다.

type string  (필수)

콘텐츠 oneof의 OpenAPI 유형 식별자로 사용됩니다.

항상 "image"로 설정합니다.

resolution MediaResolution  (선택사항)

미디어의 해상도입니다.

가능한 값은 다음과 같습니다.

  • low
  • medium
  • high

AudioContent

오디오 콘텐츠 블록입니다.

data string  (선택사항)

제공된 설명이 없습니다.

uri string  (선택사항)

제공된 설명이 없습니다.

mime_type AudioMimeTypeOption  (선택사항)

제공된 설명이 없습니다.

가능한 값은 다음과 같습니다.

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

오디오의 MIME 유형입니다.

type string  (필수)

콘텐츠 oneof의 OpenAPI 유형 식별자로 사용됩니다.

항상 "audio"로 설정합니다.

DocumentContent

문서 콘텐츠 블록입니다.

data string  (선택사항)

제공된 설명이 없습니다.

uri string  (선택사항)

제공된 설명이 없습니다.

mime_type 문자열  (선택사항)

제공된 설명이 없습니다.

type string  (필수)

콘텐츠 oneof의 OpenAPI 유형 식별자로 사용됩니다.

항상 "document"로 설정합니다.

VideoContent

동영상 콘텐츠 블록입니다.

data string  (선택사항)

제공된 설명이 없습니다.

uri string  (선택사항)

제공된 설명이 없습니다.

mime_type VideoMimeTypeOption  (선택사항)

제공된 설명이 없습니다.

가능한 값은 다음과 같습니다.

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

동영상의 MIME 유형입니다.

type string  (필수)

콘텐츠 oneof의 OpenAPI 유형 식별자로 사용됩니다.

항상 "video"로 설정합니다.

resolution MediaResolution  (선택사항)

미디어의 해상도입니다.

가능한 값은 다음과 같습니다.

  • low
  • medium
  • high

ThoughtContent

생각 콘텐츠 블록입니다.

서명 문자열  (선택사항)

생성에 포함될 백엔드 소스와 일치하는 서명입니다.

type string  (필수)

콘텐츠 oneof의 OpenAPI 유형 식별자로 사용됩니다.

항상 "thought"로 설정합니다.

요약 ThoughtSummary  (선택사항)

생각의 요약

생각의 요약

FunctionCallContent

함수 도구 호출 콘텐츠 블록입니다.

name string  (필수)

호출할 도구의 이름입니다.

arguments object  (필수)

함수에 전달할 인수입니다.

type string  (필수)

콘텐츠 oneof의 OpenAPI 유형 식별자로 사용됩니다.

항상 "function_call"로 설정합니다.

id 문자열  (필수)

이 특정 도구 호출의 고유 ID입니다.

FunctionResultContent

함수 도구 결과 콘텐츠 블록입니다.

name string  (선택사항)

호출된 도구의 이름입니다.

is_error boolean  (선택사항)

도구 호출로 인해 오류가 발생했는지 여부입니다.

type string  (필수)

콘텐츠 oneof의 OpenAPI 유형 식별자로 사용됩니다.

항상 "function_result"로 설정합니다.

result object or string  (required)

도구 호출의 결과입니다.

call_id string  (필수)

함수 호출 블록의 ID와 일치하는 ID입니다.

CodeExecutionCallContent

코드 실행 콘텐츠입니다.

arguments CodeExecutionCallArguments  (선택사항)

코드 실행에 전달할 인수입니다.

코드 실행에 전달할 인수입니다.

필드

language enum (string)  (선택사항)

`code`의 프로그래밍 언어입니다.

가능한 값은 다음과 같습니다.

  • python
code string  (선택사항)

실행할 코드입니다.

type string  (필수)

콘텐츠 oneof의 OpenAPI 유형 식별자로 사용됩니다.

항상 "code_execution_call"로 설정합니다.

id 문자열  (선택사항)

이 특정 도구 호출의 고유 ID입니다.

CodeExecutionResultContent

코드 실행 결과 콘텐츠입니다.

result string  (선택사항)

코드 실행의 출력입니다.

is_error boolean  (선택사항)

코드 실행으로 인해 오류가 발생했는지 여부입니다.

서명 문자열  (선택사항)

백엔드 검증을 위한 서명 해시입니다.

type string  (필수)

콘텐츠 oneof의 OpenAPI 유형 식별자로 사용됩니다.

항상 "code_execution_result"로 설정합니다.

call_id string  (선택사항)

코드 실행 호출 블록의 ID와 일치하는 ID입니다.

UrlContextCallContent

URL 컨텍스트 콘텐츠입니다.

arguments UrlContextCallArguments  (선택사항)

URL 컨텍스트에 전달할 인수입니다.

URL 컨텍스트에 전달할 인수입니다.

필드

urls array (string)  (선택사항)

가져올 URL입니다.

type string  (필수)

콘텐츠 oneof의 OpenAPI 유형 식별자로 사용됩니다.

항상 "url_context_call"로 설정합니다.

id 문자열  (선택사항)

이 특정 도구 호출의 고유 ID입니다.

UrlContextResultContent

URL 컨텍스트 결과 콘텐츠입니다.

서명 문자열  (선택사항)

URL 컨텍스트 결과의 서명입니다.

result UrlContextResult  (선택사항)

URL 컨텍스트의 결과입니다.

URL 컨텍스트의 결과입니다.

필드

url string  (선택사항)

가져온 URL입니다.

status enum (string)  (선택사항)

URL 가져오기의 상태입니다.

가능한 값은 다음과 같습니다.

  • success
  • error
  • paywall
  • unsafe
is_error boolean  (선택사항)

URL 컨텍스트로 인해 오류가 발생했는지 여부입니다.

type string  (필수)

콘텐츠 oneof의 OpenAPI 유형 식별자로 사용됩니다.

항상 "url_context_result"로 설정합니다.

call_id string  (선택사항)

URL 컨텍스트 호출 블록의 ID와 일치하는 ID입니다.

GoogleSearchCallContent

Google 검색 콘텐츠

arguments GoogleSearchCallArguments  (선택사항)

Google 검색에 전달할 인수입니다.

Google 검색에 전달할 인수입니다.

필드

queries array (string)  (선택사항)

후속 웹 검색을 위한 웹 검색어입니다.

type string  (필수)

콘텐츠 oneof의 OpenAPI 유형 식별자로 사용됩니다.

항상 "google_search_call"로 설정합니다.

id 문자열  (선택사항)

이 특정 도구 호출의 고유 ID입니다.

GoogleSearchResultContent

Google 검색 결과 콘텐츠입니다.

서명 문자열  (선택사항)

Google 검색 결과의 서명입니다.

result GoogleSearchResult  (선택사항)

Google 검색 결과입니다.

Google 검색 결과입니다.

필드

url string  (선택사항)

검색 결과의 URI 참조입니다.

title string  (선택사항)

검색 결과의 제목입니다.

rendered_content 문자열  (선택사항)

웹페이지나 앱 웹뷰에 삽입할 수 있는 웹 콘텐츠 스니펫입니다.

is_error boolean  (선택사항)

Google 검색에서 오류가 발생했는지 여부입니다.

type string  (필수)

콘텐츠 oneof의 OpenAPI 유형 식별자로 사용됩니다.

항상 "google_search_result"로 설정합니다.

call_id string  (선택사항)

Google 검색 호출 블록의 ID와 일치하는 ID입니다.

McpServerToolCallContent

MCPServer 도구 호출 콘텐츠입니다.

name string  (필수)

호출된 도구의 이름입니다.

server_name string  (필수)

사용된 MCP 서버의 이름입니다.

arguments object  (필수)

함수의 인수 JSON 객체입니다.

type string  (필수)

콘텐츠 oneof의 OpenAPI 유형 식별자로 사용됩니다.

항상 "mcp_server_tool_call"로 설정합니다.

id 문자열  (필수)

이 특정 도구 호출의 고유 ID입니다.

McpServerToolResultContent

MCPServer 도구 결과 콘텐츠입니다.

name string  (선택사항)

이 특정 도구 호출에 대해 호출되는 도구의 이름입니다.

server_name string  (선택사항)

사용된 MCP 서버의 이름입니다.

type string  (필수)

콘텐츠 oneof의 OpenAPI 유형 식별자로 사용됩니다.

항상 "mcp_server_tool_result"로 설정합니다.

result object or string  (required)

도구 호출의 결과입니다.

call_id string  (필수)

MCP 서버 도구 호출 블록의 ID와 일치하는 ID입니다.

FileSearchResultContent

파일 검색 결과 콘텐츠입니다.

result FileSearchResult  (선택사항)

파일 검색 결과입니다.

파일 검색 결과입니다.

필드

title string  (선택사항)

검색결과의 제목입니다.

text string  (선택사항)

검색 결과의 텍스트입니다.

file_search_store 문자열  (선택사항)

파일 검색 저장소의 이름입니다.

type string  (필수)

콘텐츠 oneof의 OpenAPI 유형 식별자로 사용됩니다.

항상 "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 서버 도구 결과

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

기능

모델에서 사용할 수 있는 도구입니다.

name string  (선택사항)

함수 이름입니다.

설명 문자열  (선택사항)

함수에 대한 설명입니다.

parameters object  (선택사항)

함수 파라미터의 JSON 스키마입니다.

type string  (필수)

제공된 설명이 없습니다.

항상 "function"로 설정합니다.

GoogleSearch

모델이 Google을 검색하는 데 사용할 수 있는 도구입니다.

type string  (필수)

제공된 설명이 없습니다.

항상 "google_search"로 설정합니다.

CodeExecution

모델이 코드를 실행하는 데 사용할 수 있는 도구입니다.

type string  (필수)

제공된 설명이 없습니다.

항상 "code_execution"로 설정합니다.

UrlContext

모델이 URL 컨텍스트를 가져오는 데 사용할 수 있는 도구입니다.

type string  (필수)

제공된 설명이 없습니다.

항상 "url_context"로 설정합니다.

ComputerUse

모델이 컴퓨터와 상호작용하는 데 사용할 수 있는 도구입니다.

type string  (필수)

제공된 설명이 없습니다.

항상 "computer_use"로 설정합니다.

environment enum (string)  (선택사항)

운영되는 환경입니다.

가능한 값은 다음과 같습니다.

  • browser
excludedPredefinedFunctions array (string)  (선택사항)

모델 호출에서 제외되는 사전 정의된 함수의 목록입니다.

McpServer

MCPServer는 모델에서 작업을 실행하기 위해 호출할 수 있는 서버입니다.

type string  (필수)

제공된 설명이 없습니다.

항상 "mcp_server"로 설정합니다.

name string  (선택사항)

MCPServer의 이름입니다.

url string  (선택사항)

MCPServer 엔드포인트의 전체 URL입니다. 예: 'https://api.example.com/mcp'

headers object  (선택사항)

선택사항: 필요한 경우 인증 헤더, 제한 시간 등의 필드입니다.

allowed_tools AllowedTools  (선택사항)

허용된 도구입니다.

허용된 도구의 구성입니다.

필드

mode ToolChoiceType  (선택사항)

도구 선택 모드입니다.

가능한 값은 다음과 같습니다.

  • auto
  • any
  • none
  • validated

tools array (string)  (선택사항)

허용된 도구의 이름입니다.

FileSearch

모델이 파일을 검색하는 데 사용할 수 있는 도구입니다.

file_search_store_names array (string)  (선택사항)

검색할 파일 검색 저장소 이름입니다.

top_k integer  (선택사항)

가져올 시맨틱 검색 청크의 수입니다.

metadata_filter string  (선택사항)

시맨틱 검색 문서 및 청크에 적용할 메타데이터 필터입니다.

type string  (필수)

제공된 설명이 없습니다.

항상 "file_search"로 설정합니다.

함수

GoogleSearch

CodeExecution

UrlContext

ComputerUse

McpServer

FileSearch

Turn

필드

role string  (선택사항)

이 턴의 발신자입니다. 입력의 경우 사용자, 모델 출력의 경우 모델이어야 합니다.

content 배열 (콘텐츠) 또는 문자열  (선택사항)

턴의 콘텐츠입니다.

사용자 턴

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

모델 회전

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

InteractionSseEvent

가능한 유형

다형성 판별자: event_type

InteractionEvent

event_type enum (string)  (선택사항)

제공된 설명이 없습니다.

가능한 값은 다음과 같습니다.

  • interaction.start
  • interaction.complete
interaction Interaction  (선택사항)

제공된 설명이 없습니다.

event_id string  (선택사항)

이 이벤트에서 상호작용 스트림을 재개하는 데 사용할 event_id 토큰입니다.

InteractionStatusUpdate

interaction_id string  (선택사항)

제공된 설명이 없습니다.

status enum (string)  (선택사항)

제공된 설명이 없습니다.

가능한 값은 다음과 같습니다.

  • in_progress
  • requires_action
  • completed
  • failed
  • cancelled
event_type string  (선택사항)

제공된 설명이 없습니다.

항상 "interaction.status_update"로 설정합니다.

event_id string  (선택사항)

이 이벤트에서 상호작용 스트림을 재개하는 데 사용할 event_id 토큰입니다.

ContentStart

index integer  (선택사항)

제공된 설명이 없습니다.

content 콘텐츠  (선택사항)

제공된 설명이 없습니다.

event_type string  (선택사항)

제공된 설명이 없습니다.

항상 "content.start"로 설정합니다.

event_id string  (선택사항)

이 이벤트에서 상호작용 스트림을 재개하는 데 사용할 event_id 토큰입니다.

ContentDelta

index integer  (선택사항)

제공된 설명이 없습니다.

event_type string  (선택사항)

제공된 설명이 없습니다.

항상 "content.delta"로 설정합니다.

event_id string  (선택사항)

이 이벤트에서 상호작용 스트림을 재개하는 데 사용할 event_id 토큰입니다.

delta object  (선택사항)

제공된 설명이 없습니다.

가능한 유형

다형성 판별자: type

TextDelta

text string  (선택사항)

제공된 설명이 없습니다.

type string  (필수)

콘텐츠 oneof의 OpenAPI 유형 식별자로 사용됩니다.

항상 "text"로 설정합니다.

annotations Annotation  (선택사항)

모델 생성 콘텐츠의 인용 정보입니다.

모델 생성 콘텐츠의 인용 정보입니다.

필드

start_index integer  (선택사항)

이 출처에 기여도가 부여된 대답의 세그먼트 시작입니다. 색인은 바이트로 측정된 세그먼트의 시작을 나타냅니다.

end_index integer  (선택사항)

기여도가 부여된 세그먼트의 끝(해당 값 제외)입니다.

source string  (선택사항)

텍스트의 일부에 기여도가 부여된 출처입니다. URL, 제목 또는 기타 식별자일 수 있습니다.

ImageDelta

data string  (선택사항)

제공된 설명이 없습니다.

uri string  (선택사항)

제공된 설명이 없습니다.

mime_type ImageMimeTypeOption  (선택사항)

제공된 설명이 없습니다.

가능한 값은 다음과 같습니다.

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

이미지의 MIME 유형입니다.

type string  (필수)

콘텐츠 oneof의 OpenAPI 유형 식별자로 사용됩니다.

항상 "image"로 설정합니다.

resolution MediaResolution  (선택사항)

미디어의 해상도입니다.

가능한 값은 다음과 같습니다.

  • low
  • medium
  • high

AudioDelta

data string  (선택사항)

제공된 설명이 없습니다.

uri string  (선택사항)

제공된 설명이 없습니다.

mime_type AudioMimeTypeOption  (선택사항)

제공된 설명이 없습니다.

가능한 값은 다음과 같습니다.

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

오디오의 MIME 유형입니다.

type string  (필수)

콘텐츠 oneof의 OpenAPI 유형 식별자로 사용됩니다.

항상 "audio"로 설정합니다.

DocumentDelta

data string  (선택사항)

제공된 설명이 없습니다.

uri string  (선택사항)

제공된 설명이 없습니다.

mime_type 문자열  (선택사항)

제공된 설명이 없습니다.

type string  (필수)

콘텐츠 oneof의 OpenAPI 유형 식별자로 사용됩니다.

항상 "document"로 설정합니다.

VideoDelta

data string  (선택사항)

제공된 설명이 없습니다.

uri string  (선택사항)

제공된 설명이 없습니다.

mime_type VideoMimeTypeOption  (선택사항)

제공된 설명이 없습니다.

가능한 값은 다음과 같습니다.

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

동영상의 MIME 유형입니다.

type string  (필수)

콘텐츠 oneof의 OpenAPI 유형 식별자로 사용됩니다.

항상 "video"로 설정합니다.

resolution MediaResolution  (선택사항)

미디어의 해상도입니다.

가능한 값은 다음과 같습니다.

  • low
  • medium
  • high

ThoughtSummaryDelta

type string  (필수)

콘텐츠 oneof의 OpenAPI 유형 식별자로 사용됩니다.

항상 "thought_summary"로 설정합니다.

content ImageContent 또는 TextContent  (선택사항)

제공된 설명이 없습니다.

ThoughtSignatureDelta

서명 문자열  (선택사항)

생성에 포함될 백엔드 소스와 일치하는 서명입니다.

type string  (필수)

콘텐츠 oneof의 OpenAPI 유형 식별자로 사용됩니다.

항상 "thought_signature"로 설정합니다.

FunctionCallDelta

name string  (선택사항)

제공된 설명이 없습니다.

arguments object  (선택사항)

제공된 설명이 없습니다.

type string  (필수)

콘텐츠 oneof의 OpenAPI 유형 식별자로 사용됩니다.

항상 "function_call"로 설정합니다.

id 문자열  (선택사항)

이 특정 도구 호출의 고유 ID입니다.

FunctionResultDelta

name string  (선택사항)

제공된 설명이 없습니다.

is_error boolean  (선택사항)

제공된 설명이 없습니다.

type string  (필수)

콘텐츠 oneof의 OpenAPI 유형 식별자로 사용됩니다.

항상 "function_result"로 설정합니다.

result 객체 또는 문자열  (선택사항)

도구 호출 결과 델타입니다.

call_id string  (선택사항)

함수 호출 블록의 ID와 일치하는 ID입니다.

CodeExecutionCallDelta

arguments CodeExecutionCallArguments  (선택사항)

제공된 설명이 없습니다.

코드 실행에 전달할 인수입니다.

필드

language enum (string)  (선택사항)

`code`의 프로그래밍 언어입니다.

가능한 값은 다음과 같습니다.

  • python
code string  (선택사항)

실행할 코드입니다.

type string  (필수)

콘텐츠 oneof의 OpenAPI 유형 식별자로 사용됩니다.

항상 "code_execution_call"로 설정합니다.

id 문자열  (선택사항)

이 특정 도구 호출의 고유 ID입니다.

CodeExecutionResultDelta

result string  (선택사항)

제공된 설명이 없습니다.

is_error boolean  (선택사항)

제공된 설명이 없습니다.

서명 문자열  (선택사항)

제공된 설명이 없습니다.

type string  (필수)

콘텐츠 oneof의 OpenAPI 유형 식별자로 사용됩니다.

항상 "code_execution_result"로 설정합니다.

call_id string  (선택사항)

함수 호출 블록의 ID와 일치하는 ID입니다.

UrlContextCallDelta

arguments UrlContextCallArguments  (선택사항)

제공된 설명이 없습니다.

URL 컨텍스트에 전달할 인수입니다.

필드

urls array (string)  (선택사항)

가져올 URL입니다.

type string  (필수)

콘텐츠 oneof의 OpenAPI 유형 식별자로 사용됩니다.

항상 "url_context_call"로 설정합니다.

id 문자열  (선택사항)

이 특정 도구 호출의 고유 ID입니다.

UrlContextResultDelta

서명 문자열  (선택사항)

제공된 설명이 없습니다.

result UrlContextResult  (선택사항)

제공된 설명이 없습니다.

URL 컨텍스트의 결과입니다.

필드

url string  (선택사항)

가져온 URL입니다.

status enum (string)  (선택사항)

URL 가져오기의 상태입니다.

가능한 값은 다음과 같습니다.

  • success
  • error
  • paywall
  • unsafe
is_error boolean  (선택사항)

제공된 설명이 없습니다.

type string  (필수)

콘텐츠 oneof의 OpenAPI 유형 식별자로 사용됩니다.

항상 "url_context_result"로 설정합니다.

call_id string  (선택사항)

함수 호출 블록의 ID와 일치하는 ID입니다.

GoogleSearchCallDelta

arguments GoogleSearchCallArguments  (선택사항)

제공된 설명이 없습니다.

Google 검색에 전달할 인수입니다.

필드

queries array (string)  (선택사항)

후속 웹 검색을 위한 웹 검색어입니다.

type string  (필수)

콘텐츠 oneof의 OpenAPI 유형 식별자로 사용됩니다.

항상 "google_search_call"로 설정합니다.

id 문자열  (선택사항)

이 특정 도구 호출의 고유 ID입니다.

GoogleSearchResultDelta

서명 문자열  (선택사항)

제공된 설명이 없습니다.

result GoogleSearchResult  (선택사항)

제공된 설명이 없습니다.

Google 검색 결과입니다.

필드

url string  (선택사항)

검색 결과의 URI 참조입니다.

title string  (선택사항)

검색 결과의 제목입니다.

rendered_content 문자열  (선택사항)

웹페이지나 앱 웹뷰에 삽입할 수 있는 웹 콘텐츠 스니펫입니다.

is_error boolean  (선택사항)

제공된 설명이 없습니다.

type string  (필수)

콘텐츠 oneof의 OpenAPI 유형 식별자로 사용됩니다.

항상 "google_search_result"로 설정합니다.

call_id string  (선택사항)

함수 호출 블록의 ID와 일치하는 ID입니다.

McpServerToolCallDelta

name string  (선택사항)

제공된 설명이 없습니다.

server_name string  (선택사항)

제공된 설명이 없습니다.

arguments object  (선택사항)

제공된 설명이 없습니다.

type string  (필수)

콘텐츠 oneof의 OpenAPI 유형 식별자로 사용됩니다.

항상 "mcp_server_tool_call"로 설정합니다.

id 문자열  (선택사항)

이 특정 도구 호출의 고유 ID입니다.

McpServerToolResultDelta

name string  (선택사항)

제공된 설명이 없습니다.

server_name string  (선택사항)

제공된 설명이 없습니다.

type string  (필수)

콘텐츠 oneof의 OpenAPI 유형 식별자로 사용됩니다.

항상 "mcp_server_tool_result"로 설정합니다.

result 객체 또는 문자열  (선택사항)

도구 호출 결과 델타입니다.

call_id string  (선택사항)

함수 호출 블록의 ID와 일치하는 ID입니다.

FileSearchResultDelta

result FileSearchResult  (선택사항)

제공된 설명이 없습니다.

파일 검색 결과입니다.

필드

title string  (선택사항)

검색결과의 제목입니다.

text string  (선택사항)

검색 결과의 텍스트입니다.

file_search_store 문자열  (선택사항)

파일 검색 저장소의 이름입니다.

type string  (필수)

콘텐츠 oneof의 OpenAPI 유형 식별자로 사용됩니다.

항상 "file_search_result"로 설정합니다.

ContentStop

index integer  (선택사항)

제공된 설명이 없습니다.

event_type string  (선택사항)

제공된 설명이 없습니다.

항상 "content.stop"로 설정합니다.

event_id string  (선택사항)

이 이벤트에서 상호작용 스트림을 재개하는 데 사용할 event_id 토큰입니다.

ErrorEvent

event_type string  (선택사항)

제공된 설명이 없습니다.

항상 "error"로 설정합니다.

error Error  (선택사항)

제공된 설명이 없습니다.

상호작용에서 발생한 오류 메시지입니다.

필드

code string  (선택사항)

오류 유형을 식별하는 URI입니다.

message string  (선택사항)

사람이 읽을 수 있는 오류 메시지입니다.

event_id string  (선택사항)

이 이벤트에서 상호작용 스트림을 재개하는 데 사용할 event_id 토큰입니다.

Interaction Start(상호작용 시작)

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