Gemini API는 이미지, 오디오, 코드, 도구 등을 사용한 콘텐츠 생성을 지원합니다. 이러한 각 기능에 대한 자세한 내용은 계속 읽고 작업 중심 샘플 코드를 확인하거나 포괄적인 가이드를 참고하세요.
메서드: models.generateContent
입력 GenerateContentRequest가 주어지면 모델 대답을 생성합니다. 자세한 사용 정보는 텍스트 생성 가이드를 참고하세요. 입력 기능은 조정된 모델을 비롯한 모델마다 다릅니다. 자세한 내용은 모델 가이드 및 튜닝 가이드를 참고하세요.
엔드포인트
posthttps: / /generativelanguage.googleapis.com /v1beta /{model=models /*}:generateContent
경로 매개변수
model
string
필수 항목입니다. 완료를 생성하는 데 사용할 Model의 이름입니다.
형식은 models/{model}입니다. models/{model} 형식이 사용됩니다.
요청 본문
요청 본문에는 다음과 같은 구조의 데이터가 포함됩니다.
toolConfig
object (ToolConfig)
선택사항입니다. 요청에 지정된 Tool의 도구 구성입니다. 사용 예시는 함수 호출 가이드를 참고하세요.
safetySettings[]
object (SafetySetting)
선택사항입니다. 안전하지 않은 콘텐츠를 차단하기 위한 고유한 SafetySetting 인스턴스 목록입니다.
이는 GenerateContentRequest.contents 및 GenerateContentResponse.candidates에 적용됩니다. 각 SafetyCategory 유형에 설정이 두 개 이상 있으면 안 됩니다. API는 이러한 설정에 의해 설정된 기준을 충족하지 않는 콘텐츠와 응답을 차단합니다. 이 목록은 safetySettings에 지정된 각 SafetyCategory의 기본 설정을 재정의합니다. 목록에 제공된 특정 SafetyCategory에 대한 SafetySetting가 없는 경우 API는 해당 카테고리의 기본 안전 설정을 사용합니다. HARM_CATEGORY_HATE_SPEECH, HARM_CATEGORY_SEXUALLY_EXPLICIT, HARM_CATEGORY_DANGEROUS_CONTENT, HARM_CATEGORY_HARASSMENT, HARM_CATEGORY_CIVIC_INTEGRITY, HARM_CATEGORY_JAILBREAK 유해 카테고리가 지원됩니다. 사용 가능한 안전 설정에 관한 자세한 내용은 가이드를 참고하세요. 안전 가이드를 참고하여 AI 애플리케이션에 안전 고려사항을 통합하는 방법도 알아보세요.
generationConfig
object (GenerationConfig)
선택사항입니다. 모델 생성 및 출력의 구성 옵션입니다.
cachedContent
string
선택사항입니다. 예측을 제공하기 위한 컨텍스트로 사용하기 위해 캐시된 콘텐츠의 이름입니다. 형식: cachedContents/{cachedContent}
serviceTier
enum (ServiceTier)
선택사항입니다. 요청의 서비스 등급입니다.
store
boolean
선택사항입니다. 지정된 요청의 로깅 동작을 구성합니다. 설정된 경우 프로젝트 수준 로깅 구성보다 우선 적용됩니다.
요청 예시
텍스트
Python
Node.js
Go
Shell
자바
이미지
Python
Node.js
Go
Shell
자바
오디오
Python
Node.js
Go
Shell
동영상
Python
Node.js
Go
Shell
Python
Go
Shell
채팅
Python
Node.js
Go
Shell
자바
캐시
Python
Node.js
Go
튜닝된 모델
Python
JSON 모드
Python
Node.js
Go
Shell
자바
코드 실행
Python
Go
자바
함수 호출
Python
Go
Node.js
Shell
자바
생성 구성
Python
Node.js
Go
Shell
자바
안전 설정
Python
Node.js
Go
Shell
자바
시스템 요청 사항
Python
Node.js
Go
Shell
자바
응답 본문
성공한 경우 응답 본문에 GenerateContentResponse의 인스턴스가 포함됩니다.
메서드: models.streamGenerateContent
입력 GenerateContentRequest가 주어지면 모델에서 스트리밍된 대답을 생성합니다.
엔드포인트
posthttps: / /generativelanguage.googleapis.com /v1beta /{model=models /*}:streamGenerateContent
경로 매개변수
model
string
필수 항목입니다. 완료를 생성하는 데 사용할 Model의 이름입니다.
형식은 models/{model}입니다. models/{model} 형식이 사용됩니다.
요청 본문
요청 본문에는 다음과 같은 구조의 데이터가 포함됩니다.
toolConfig
object (ToolConfig)
선택사항입니다. 요청에 지정된 Tool의 도구 구성입니다. 사용 예시는 함수 호출 가이드를 참고하세요.
safetySettings[]
object (SafetySetting)
선택사항입니다. 안전하지 않은 콘텐츠를 차단하기 위한 고유한 SafetySetting 인스턴스 목록입니다.
이는 GenerateContentRequest.contents 및 GenerateContentResponse.candidates에 적용됩니다. 각 SafetyCategory 유형에 설정이 두 개 이상 있으면 안 됩니다. API는 이러한 설정에 의해 설정된 기준을 충족하지 않는 콘텐츠와 응답을 차단합니다. 이 목록은 safetySettings에 지정된 각 SafetyCategory의 기본 설정을 재정의합니다. 목록에 제공된 특정 SafetyCategory에 대한 SafetySetting가 없는 경우 API는 해당 카테고리의 기본 안전 설정을 사용합니다. HARM_CATEGORY_HATE_SPEECH, HARM_CATEGORY_SEXUALLY_EXPLICIT, HARM_CATEGORY_DANGEROUS_CONTENT, HARM_CATEGORY_HARASSMENT, HARM_CATEGORY_CIVIC_INTEGRITY, HARM_CATEGORY_JAILBREAK 유해 카테고리가 지원됩니다. 사용 가능한 안전 설정에 관한 자세한 내용은 가이드를 참고하세요. 안전 가이드를 참고하여 AI 애플리케이션에 안전 고려사항을 통합하는 방법도 알아보세요.
generationConfig
object (GenerationConfig)
선택사항입니다. 모델 생성 및 출력의 구성 옵션입니다.
cachedContent
string
선택사항입니다. 예측을 제공하기 위한 컨텍스트로 사용하기 위해 캐시된 콘텐츠의 이름입니다. 형식: cachedContents/{cachedContent}
serviceTier
enum (ServiceTier)
선택사항입니다. 요청의 서비스 등급입니다.
store
boolean
선택사항입니다. 지정된 요청의 로깅 동작을 구성합니다. 설정된 경우 프로젝트 수준 로깅 구성보다 우선 적용됩니다.
요청 예시
텍스트
Python
Node.js
Go
Shell
자바
이미지
Python
Node.js
Go
Shell
자바
오디오
Python
Go
Shell
동영상
Python
Node.js
Go
Shell
Python
Go
Shell
채팅
Python
Node.js
Go
Shell
응답 본문
성공하면 응답 본문에 GenerateContentResponse 인스턴스 스트림이 포함됩니다.
GenerateContentResponse
여러 후보 응답을 지원하는 모델의 응답입니다.
안전 등급과 콘텐츠 필터링은 GenerateContentResponse.prompt_feedback의 프롬프트와 finishReason 및 safetyRatings의 각 후보에 대해 보고됩니다. API는 다음을 수행합니다. - 요청된 후보자를 모두 반환하거나 하나도 반환하지 않습니다. - 프롬프트에 문제가 있는 경우에만 후보자를 전혀 반환하지 않습니다 (promptFeedback 확인). - finishReason 및 safetyRatings에서 각 후보자에 대한 의견을 보고합니다.
candidates[]
object (Candidate)
모델의 후보 응답입니다.
promptFeedback
object (PromptFeedback)
콘텐츠 필터와 관련된 프롬프트의 의견을 반환합니다.
usageMetadata
object (UsageMetadata)
출력 전용입니다. 생성 요청의 토큰 사용량에 관한 메타데이터입니다.
modelVersion
string
출력 전용입니다. 대답을 생성하는 데 사용된 모델 버전입니다.
responseId
string
출력 전용입니다. responseId는 각 응답을 식별하는 데 사용됩니다.
modelStatus
object (ModelStatus)
출력 전용입니다. 이 모델의 현재 모델 상태입니다.
| JSON 표현 |
|---|
{ "candidates": [ { object ( |
PromptFeedback
GenerateContentRequest.content에 지정된 프롬프트의 피드백 메타데이터 세트입니다.
blockReason
enum (BlockReason)
선택사항입니다. 설정된 경우 프롬프트가 차단되고 후보가 반환되지 않습니다. 프롬프트를 변경합니다.
safetyRatings[]
object (SafetyRating)
프롬프트의 안전 등급입니다. 카테고리당 등급은 최대 1개입니다.
| JSON 표현 |
|---|
{ "blockReason": enum ( |
BlockReason
프롬프트가 차단된 이유를 지정합니다.
| 열거형 | |
|---|---|
BLOCK_REASON_UNSPECIFIED |
기본값 이 값은 사용되지 않습니다. |
SAFETY |
안전상의 이유로 프롬프트가 차단되었습니다. safetyRatings를 검사하여 차단한 안전 카테고리를 파악합니다. |
OTHER |
알 수 없는 이유로 프롬프트가 차단되었습니다. |
BLOCKLIST |
용어 차단 목록에 포함된 용어로 인해 프롬프트가 차단되었습니다. |
PROHIBITED_CONTENT |
금지된 콘텐츠로 인해 프롬프트가 차단되었습니다. |
IMAGE_SAFETY |
안전하지 않은 이미지 생성 콘텐츠로 인해 후보자가 차단되었습니다. |
UsageMetadata
생성 요청의 토큰 사용량에 관한 메타데이터입니다.
promptTokenCount
integer
프롬프트의 토큰 수입니다. cachedContent가 설정된 경우에도 이는 여전히 총 유효 프롬프트 크기이며 캐시된 콘텐츠의 토큰 수를 포함합니다.
cachedContentTokenCount
integer
프롬프트의 캐시된 부분 (캐시된 콘텐츠)에 있는 토큰 수
candidatesTokenCount
integer
생성된 모든 대답 후보의 총 토큰 수입니다.
toolUsePromptTokenCount
integer
출력 전용입니다. 도구 사용 프롬프트에 있는 토큰 수입니다.
thoughtsTokenCount
integer
출력 전용입니다. 사고 모델의 사고 토큰 수입니다.
totalTokenCount
integer
생성 요청 (프롬프트 + 생각 + 대답 후보)의 총 토큰 수입니다.
promptTokensDetails[]
object (ModalityTokenCount)
출력 전용입니다. 요청 입력에서 처리된 모달리티 목록입니다.
cacheTokensDetails[]
object (ModalityTokenCount)
출력 전용입니다. 요청 입력에 있는 캐시된 콘텐츠의 모달리티 목록입니다.
candidatesTokensDetails[]
object (ModalityTokenCount)
출력 전용입니다. 대답에 반환된 모달리티 목록입니다.
toolUsePromptTokensDetails[]
object (ModalityTokenCount)
출력 전용입니다. 도구 사용 요청 입력에 대해 처리된 모달리티 목록입니다.
serviceTier
enum (ServiceTier)
출력 전용입니다. 요청의 서비스 등급입니다.
| JSON 표현 |
|---|
{ "promptTokenCount": integer, "cachedContentTokenCount": integer, "candidatesTokenCount": integer, "toolUsePromptTokenCount": integer, "thoughtsTokenCount": integer, "totalTokenCount": integer, "promptTokensDetails": [ { object ( |
ModelStatus
기본 모델의 상태입니다. 이는 기본 모델의 단계와 해당하는 경우 지원 종료 시간을 나타내는 데 사용됩니다.
modelStage
enum (ModelStage)
기본 모델의 단계입니다.
retirementTime
string (Timestamp format)
모델이 지원 중단되는 시간입니다.
생성된 출력은 항상 Z-정규화되고 소수점 이하 0, 3, 6 또는 9자리인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" 또는 "2014-10-02T15:01:23+05:30"입니다.
message
string
모델 상태를 설명하는 메시지입니다.
| JSON 표현 |
|---|
{
"modelStage": enum ( |
ModelStage
기본 모델의 단계를 정의합니다.
| 열거형 | |
|---|---|
MODEL_STAGE_UNSPECIFIED |
지정되지 않은 모델 단계입니다. |
UNSTABLE_EXPERIMENTAL |
기본 모델은 많은 조정이 적용됩니다. |
EXPERIMENTAL |
이 단계의 모델은 실험 목적으로만 사용됩니다. |
PREVIEW |
이 단계의 모델은 실험 모델보다 성숙합니다. |
STABLE |
이 단계의 모델은 안정적이며 프로덕션 용도로 사용할 수 있는 것으로 간주됩니다. |
LEGACY |
모델이 이 단계에 있으면 가까운 장래에 지원 중단될 예정입니다. 기존 고객만 이 모델을 사용할 수 있습니다. |
DEPRECATED |
이 단계의 모델은 지원 중단되었습니다. 이러한 모델은 사용할 수 없습니다. |
RETIRED |
이 단계의 모델은 지원 중단됩니다. 이러한 모델은 사용할 수 없습니다. |
후보자
- JSON 표현
- FinishReason
- GroundingAttribution
- AttributionSourceId
- GroundingPassageId
- SemanticRetrieverChunk
- GroundingMetadata
- SearchEntryPoint
- GroundingChunk
- 웹
- 이미지
- RetrievedContext
- CustomMetadata
- StringList
- 지도
- PlaceAnswerSources
- ReviewSnippet
- GroundingSupport
- 세그먼트
- RetrievalMetadata
- LogprobsResult
- TopCandidates
- 후보
- UrlContextMetadata
- UrlMetadata
- UrlRetrievalStatus
모델에서 생성된 대답 후보입니다.
content
object (Content)
출력 전용입니다. 모델에서 반환된 생성된 콘텐츠입니다.
finishReason
enum (FinishReason)
선택사항입니다. 출력 전용입니다. 모델 토큰 생성이 중지된 이유입니다.
비어 있으면 모델이 토큰 생성을 중단하지 않은 것입니다.
safetyRatings[]
object (SafetyRating)
대답 후보의 안전에 대한 평가 목록입니다.
카테고리당 등급은 최대 1개입니다.
citationMetadata
object (CitationMetadata)
출력 전용입니다. 모델 생성 후보의 인용 정보입니다.
이 필드는 content에 포함된 텍스트의 인용 정보로 채워질 수 있습니다. 기본 LLM의 학습 데이터에 있는 저작권 보호 자료에서 '인용'된 구절입니다.
tokenCount
integer
출력 전용입니다. 이 후보의 토큰 수입니다.
groundingAttributions[]
object (GroundingAttribution)
출력 전용입니다. 그라운딩된 답변에 기여한 소스의 저작자 표시 정보입니다.
이 필드는 GenerateAnswer 호출에 채워집니다.
groundingMetadata
object (GroundingMetadata)
출력 전용입니다. 후보의 그라운딩 메타데이터입니다.
이 필드는 GenerateContent 호출에 채워집니다.
avgLogprobs
number
출력 전용입니다. 후보의 평균 로그 확률 점수입니다.
logprobsResult
object (LogprobsResult)
출력 전용입니다. 대답 토큰 및 상위 토큰의 로그 가능도 점수
urlContextMetadata
object (UrlContextMetadata)
출력 전용입니다. URL 컨텍스트 가져오기 도구와 관련된 메타데이터입니다.
index
integer
출력 전용입니다. 대답 후보 목록에서 후보의 색인입니다.
finishMessage
string
선택사항입니다. 출력 전용입니다. 모델 토큰 생성이 중지된 이유를 자세히 설명합니다. 이는 finishReason가 설정된 경우에만 채워집니다.
| JSON 표현 |
|---|
{ "content": { object ( |
FinishReason
모델 토큰 생성이 중지된 이유를 정의합니다.
| 열거형 | |
|---|---|
FINISH_REASON_UNSPECIFIED |
기본값 이 값은 사용되지 않습니다. |
STOP |
모델의 자연 중단 지점 또는 중지 시퀀스가 제공됩니다. |
MAX_TOKENS |
요청에 지정된 최대 토큰 수에 도달했습니다. |
SAFETY |
안전상의 이유로 대답 후보 콘텐츠가 신고되었습니다. |
RECITATION |
대답 후보 콘텐츠가 암송 이유로 신고되었습니다. |
LANGUAGE |
대답 후보 콘텐츠에 지원되지 않는 언어가 사용되어 신고되었습니다. |
OTHER |
알 수 없는 이유입니다. |
BLOCKLIST |
콘텐츠에 금지된 용어가 포함되어 있어 토큰 생성이 중지되었습니다. |
PROHIBITED_CONTENT |
금지된 콘텐츠가 포함되었을 수 있어 토큰 생성이 중지되었습니다. |
SPII |
콘텐츠에 민감한 개인 식별 정보 (SPII)가 포함되어 있을 수 있으므로 토큰 생성이 중지되었습니다. |
MALFORMED_FUNCTION_CALL |
모델에서 생성된 함수 호출이 잘못되었습니다. |
IMAGE_SAFETY |
생성된 이미지에 안전 위반이 포함되어 있어 토큰 생성이 중지되었습니다. |
IMAGE_PROHIBITED_CONTENT |
생성된 이미지에 다른 금지된 콘텐츠가 있어 이미지 생성이 중지되었습니다. |
IMAGE_OTHER |
기타 문제로 인해 이미지 생성이 중지되었습니다. |
NO_IMAGE |
모델에서 이미지를 생성할 것으로 예상되었지만 이미지가 생성되지 않았습니다. |
IMAGE_RECITATION |
인용으로 인해 이미지 생성이 중지되었습니다. |
UNEXPECTED_TOOL_CALL |
모델에서 도구 호출을 생성했지만 요청에서 도구가 사용 설정되지 않았습니다. |
TOO_MANY_TOOL_CALLS |
모델이 연속으로 너무 많은 도구를 호출하여 시스템이 실행을 종료했습니다. |
MISSING_THOUGHT_SIGNATURE |
요청에 하나 이상의 생각 서명이 누락되었습니다. |
MALFORMED_RESPONSE |
잘못된 형식의 응답으로 인해 종료되었습니다. |
ESCALATION |
에스컬레이션 규칙에 의해 요청이 필터링되었습니다. |
GroundingAttribution
답변에 기여한 소스의 출처 표시입니다.
sourceId
object (AttributionSourceId)
출력 전용입니다. 이 기여에 기여한 소스의 식별자입니다.
content
object (Content)
이 저작자 표시를 구성하는 그라운딩 소스 콘텐츠입니다.
| JSON 표현 |
|---|
{ "sourceId": { object ( |
AttributionSourceId
이 기여에 기여한 소스의 식별자입니다.
source
Union type
source는 다음 중 하나여야 합니다.groundingPassage
object (GroundingPassageId)
인라인 구절의 식별자입니다.
semanticRetrieverChunk
object (SemanticRetrieverChunk)
Semantic Retriever를 통해 가져온 Chunk의 식별자입니다.
| JSON 표현 |
|---|
{ // source "groundingPassage": { object ( |
GroundingPassageId
GroundingPassage 내의 파트 식별자입니다.
passageId
string
출력 전용입니다. GenerateAnswerRequest의 GroundingPassage.id와 일치하는 문단의 ID입니다.
partIndex
integer
출력 전용입니다. GenerateAnswerRequest의 GroundingPassage.content 내에서 파트의 색인입니다.
| JSON 표현 |
|---|
{ "passageId": string, "partIndex": integer } |
SemanticRetrieverChunk
SemanticRetrieverConfig를 사용하여 GenerateAnswerRequest에 지정된 시맨틱 검색기를 통해 가져온 Chunk의 식별자입니다.
source
string
출력 전용입니다. 요청의 SemanticRetrieverConfig.source와 일치하는 소스의 이름입니다. 예: corpora/123 또는 corpora/123/documents/abc
chunk
string
출력 전용입니다. 저작자 표시 텍스트가 포함된 Chunk의 이름입니다. 예를 들면 corpora/123/documents/abc/chunks/xyz입니다.
| JSON 표현 |
|---|
{ "source": string, "chunk": string } |
GroundingMetadata
그라운딩이 사용 설정된 경우 클라이언트에 반환되는 메타데이터입니다.
groundingChunks[]
object (GroundingChunk)
지정된 그라운딩 소스에서 가져온 지원 참조 목록입니다. 스트리밍 시 이전 대답의 그라운딩 메타데이터에 포함되지 않은 그라운딩 청크만 포함됩니다.
groundingSupports[]
object (GroundingSupport)
그라운딩 지원 목록입니다.
webSearchQueries[]
string
후속 웹 검색을 위한 웹 검색어입니다.
imageSearchQueries[]
string
그라운딩에 사용되는 이미지 검색어입니다.
searchEntryPoint
object (SearchEntryPoint)
선택사항입니다. 후속 웹 검색을 위한 Google 검색 항목입니다.
retrievalMetadata
object (RetrievalMetadata)
그라운딩 흐름의 검색과 관련된 메타데이터입니다.
googleMapsWidgetContextToken
string
선택사항입니다. 컨텍스트 데이터를 렌더링하기 위해 PlacesContextElement 위젯과 함께 사용할 수 있는 Google 지도 위젯 컨텍스트 토큰의 리소스 이름입니다. Google 지도 그라운딩이 사용 설정된 경우에만 채워집니다.
| JSON 표현 |
|---|
{ "groundingChunks": [ { object ( |
SearchEntryPoint
Google 검색 진입점입니다.
renderedContent
string
선택사항입니다. 웹페이지나 앱 웹뷰에 삽입할 수 있는 웹 콘텐츠 스니펫입니다.
sdkBlob
string (bytes format)
선택사항입니다. <검색어, 검색 URL> 튜플 배열을 나타내는 Base64 인코딩 JSON입니다.
base64 인코딩 문자열입니다.
| JSON 표현 |
|---|
{ "renderedContent": string, "sdkBlob": string } |
GroundingChunk
GroundingChunk은 모델의 대답을 그라운딩하는 지원 증거의 세그먼트를 나타냅니다. 웹의 청크, 파일에서 가져온 컨텍스트, Google 지도의 정보 등이 될 수 있습니다.
chunk_type
Union type
chunk_type는 다음 중 하나여야 합니다.web
object (Web)
웹의 그라운딩 청크입니다.
image
object (Image)
선택사항입니다. 이미지 검색의 그라운딩 청크입니다.
retrievedContext
object (RetrievedContext)
선택사항입니다. 파일 검색 도구로 가져온 컨텍스트의 그라운딩 청크입니다.
maps
object (Maps)
선택사항입니다. Google 지도의 그라운딩 청크입니다.
| JSON 표현 |
|---|
{ // chunk_type "web": { object ( |
웹
웹에서 가져온 청크
uri
string
출력 전용입니다. 청크의 URI 참조입니다.
title
string
출력 전용입니다. 청크의 제목입니다.
| JSON 표현 |
|---|
{ "uri": string, "title": string } |
이미지
이미지 검색의 청크
sourceUri
string
기여 분석을 위한 웹페이지 URI입니다.
imageUri
string
이미지 확장 소재 URL입니다.
title
string
이미지가 있는 웹페이지의 제목입니다.
domain
string
이미지가 있는 웹페이지의 루트 도메인입니다(예: 'example.com').
| JSON 표현 |
|---|
{ "sourceUri": string, "imageUri": string, "title": string, "domain": string } |
RetrievedContext
파일 검색 도구로 가져온 컨텍스트의 청크입니다.
customMetadata[]
object (CustomMetadata)
선택사항입니다. 가져온 컨텍스트에 관한 사용자 제공 메타데이터입니다.
uri
string
선택사항입니다. 시맨틱 검색 문서의 URI 참조입니다.
title
string
선택사항입니다. 문서 제목입니다.
text
string
선택사항입니다. 청크의 텍스트입니다.
fileSearchStore
string
선택사항입니다. 문서가 포함된 FileSearchStore의 이름입니다. 예를 들면 fileSearchStores/123입니다.
pageNumber
integer
선택사항입니다. 검색된 컨텍스트의 페이지 번호입니다(해당하는 경우).
mediaId
string
선택사항입니다. 멀티모달 파일 검색 결과의 미디어 blob 리소스 이름입니다. 형식: fileSearchStores/{file_search_store_id}/media/{blobId}
| JSON 표현 |
|---|
{
"customMetadata": [
{
object ( |
CustomMetadata
사용자가 GroundingFact에 관한 메타데이터를 제공했습니다.
key
string
메타데이터의 키입니다.
value
Union type
value는 다음 중 하나여야 합니다.stringValue
string
선택사항입니다. 메타데이터의 문자열 값입니다.
stringListValue
object (StringList)
선택사항입니다. 메타데이터의 문자열 값 목록입니다.
numericValue
number
선택사항입니다. 메타데이터의 숫자 값입니다. 이 값의 예상 범위는 사용된 특정 key에 따라 다릅니다.
| JSON 표현 |
|---|
{
"key": string,
// value
"stringValue": string,
"stringListValue": {
object ( |
StringList
문자열 값의 목록입니다.
values[]
string
목록의 문자열 값입니다.
| JSON 표현 |
|---|
{ "values": [ string ] } |
지도
Google 지도의 그라운딩 청크입니다. 지도 청크는 단일 장소에 해당합니다.
uri
string
장소의 URI 참조입니다.
title
string
장소의 이름입니다.
text
string
장소 답변의 텍스트 설명입니다.
placeId
string
장소의 ID입니다(places/{placeId} 형식). 사용자는 이 ID를 사용하여 해당 장소를 조회할 수 있습니다.
placeAnswerSources
object (PlaceAnswerSources)
Google 지도에서 특정 장소의 기능에 관한 답변을 제공하는 소스입니다.
| JSON 표현 |
|---|
{
"uri": string,
"title": string,
"text": string,
"placeId": string,
"placeAnswerSources": {
object ( |
PlaceAnswerSources
Google 지도의 특정 장소 기능에 관한 답변을 제공하는 소스 모음입니다. 각 PlaceAnswerSources 메시지는 Google 지도의 특정 장소에 해당합니다. Google 지도 도구는 이러한 소스를 사용하여 장소의 기능에 관한 질문에 답변했습니다 (예: 'Foo Bar에 Wi-Fi가 있나요?', 'Foo Bar은 휠체어 이용이 가능한가요?'). 현재 리뷰 스니펫만 소스로 지원됩니다.
reviewSnippets[]
object (ReviewSnippet)
Google 지도에서 특정 장소의 기능에 관한 답변을 생성하는 데 사용되는 리뷰 스니펫입니다.
| JSON 표현 |
|---|
{
"reviewSnippets": [
{
object ( |
ReviewSnippet
Google 지도의 특정 장소 기능에 관한 질문에 답변하는 사용자 리뷰의 스니펫을 캡슐화합니다.
reviewId
string
리뷰 스니펫의 ID입니다.
googleMapsUri
string
Google 지도의 사용자 리뷰에 해당하는 링크입니다.
title
string
리뷰 제목입니다.
| JSON 표현 |
|---|
{ "reviewId": string, "googleMapsUri": string, "title": string } |
GroundingSupport
그라운딩 지원
groundingChunkIndices[]
integer
선택사항입니다. 클레임과 연결된 인용을 지정하는 색인 목록입니다 (response.candidate.grounding_metadata의 'grounding_chunk'). 예를 들어 [1,3,4] 는 grounding_chunk[1], grounding_chunk[3], grounding_chunk[4] 가 주장에 기여한 검색된 콘텐츠임을 의미합니다. 대답이 스트리밍되는 경우 groundingChunkIndices는 모든 대답의 색인을 참조합니다. 모든 대답에서 그라운딩 청크를 누적하는 것은 클라이언트의 책임입니다 (동일한 순서 유지).
confidenceScores[]
number
선택사항입니다. 지원 참조의 신뢰도 점수입니다. 범위는 0~1입니다. 1이 가장 확신이 있는 대답입니다. 이 목록은 groundingChunkIndices와 크기가 동일해야 합니다.
renderedParts[]
integer
출력 전용입니다. 후보 콘텐츠의 parts 필드에 대한 색인입니다. 이러한 색인은 렌더링된 부분이 이 지원 소스와 연결되어 있는지를 지정합니다.
segment
object (Segment)
이 지원이 속한 콘텐츠의 세그먼트입니다.
| JSON 표현 |
|---|
{
"groundingChunkIndices": [
integer
],
"confidenceScores": [
number
],
"renderedParts": [
integer
],
"segment": {
object ( |
세그먼트
콘텐츠의 세그먼트입니다.
partIndex
integer
상위 Content 객체 내 Part 객체의 색인입니다.
startIndex
integer
지정된 파트의 시작 색인(바이트 단위)입니다. 파트 시작 부분에서 오프셋입니다(0부터 시작, 포함).
endIndex
integer
지정된 부분의 끝 색인(바이트 단위)입니다. 파트 시작부터의 오프셋(제외, 0부터 시작)입니다.
text
string
대답의 세그먼트에 해당하는 텍스트입니다.
| JSON 표현 |
|---|
{ "partIndex": integer, "startIndex": integer, "endIndex": integer, "text": string } |
RetrievalMetadata
그라운딩 흐름의 검색과 관련된 메타데이터입니다.
googleSearchDynamicRetrievalScore
number
선택사항입니다. Google 검색의 정보가 프롬프트에 답변하는 데 얼마나 도움이 될 수 있는지를 나타내는 점수입니다. 점수는 [0, 1] 범위에 속하며, 0은 가능성이 가장 낮고 1은 가능성이 가장 높습니다. 이 점수는 Google 검색 그라운딩 및 동적 검색이 사용 설정된 경우에만 채워집니다. Google 검색을 트리거할지 여부를 결정하기 위해 기준점과 비교됩니다.
| JSON 표현 |
|---|
{ "googleSearchDynamicRetrievalScore": number } |
LogprobsResult
Logprobs 결과
topCandidates[]
object (TopCandidates)
길이 = 총 디코딩 단계 수
chosenCandidates[]
object (Candidate)
길이 = 총 디코딩 단계 수 선택한 후보는 topCandidates에 있을 수도 있고 없을 수도 있습니다.
logProbabilitySum
number
모든 토큰의 로그 확률 합계입니다.
| JSON 표현 |
|---|
{ "topCandidates": [ { object ( |
TopCandidates
각 디코딩 단계에서 로그 확률이 가장 높은 후보입니다.
candidates[]
object (Candidate)
로그 확률을 기준으로 내림차순으로 정렬됩니다.
| JSON 표현 |
|---|
{
"candidates": [
{
object ( |
후보자
logprobs 토큰 및 점수의 후보입니다.
token
string
후보자의 토큰 문자열 값입니다.
tokenId
integer
후보의 토큰 ID 값입니다.
logProbability
number
후보의 로그 확률입니다.
| JSON 표현 |
|---|
{ "token": string, "tokenId": integer, "logProbability": number } |
UrlContextMetadata
URL 컨텍스트 가져오기 도구와 관련된 메타데이터입니다.
urlMetadata[]
object (UrlMetadata)
URL 컨텍스트 목록입니다.
| JSON 표현 |
|---|
{
"urlMetadata": [
{
object ( |
UrlMetadata
단일 URL 검색의 컨텍스트입니다.
retrievedUrl
string
도구에서 가져온 URL입니다.
urlRetrievalStatus
enum (UrlRetrievalStatus)
URL 가져오기의 상태입니다.
| JSON 표현 |
|---|
{
"retrievedUrl": string,
"urlRetrievalStatus": enum ( |
UrlRetrievalStatus
URL 가져오기의 상태입니다.
| 열거형 | |
|---|---|
URL_RETRIEVAL_STATUS_UNSPECIFIED |
기본값 이 값은 사용되지 않습니다. |
URL_RETRIEVAL_STATUS_SUCCESS |
URL 가져오기에 성공했습니다. |
URL_RETRIEVAL_STATUS_ERROR |
오류로 인해 URL을 가져올 수 없습니다. |
URL_RETRIEVAL_STATUS_PAYWALL |
콘텐츠가 페이월 뒤에 있어 URL 가져오기에 실패했습니다. |
URL_RETRIEVAL_STATUS_UNSAFE |
콘텐츠가 안전하지 않아 URL 가져오기에 실패했습니다. |
CitationMetadata
콘텐츠의 소스 저작자 표시 모음입니다.
citationSources[]
object (CitationSource)
특정 대답의 소스 인용입니다.
| JSON 표현 |
|---|
{
"citationSources": [
{
object ( |
CitationSource
특정 대답의 일부에 대한 소스 인용입니다.
startIndex
integer
선택사항입니다. 이 출처에 기여도가 부여된 대답의 세그먼트 시작입니다.
색인은 바이트로 측정된 세그먼트의 시작을 나타냅니다.
endIndex
integer
선택사항입니다. 기여도가 부여된 세그먼트의 끝(해당 값 제외)입니다.
uri
string
선택사항입니다. 텍스트의 일부에 출처로 표시되는 URI입니다.
license
string
선택사항입니다. 세그먼트의 소스로 표시된 GitHub 프로젝트의 라이선스입니다.
코드 인용에는 라이선스 정보가 필요합니다.
| JSON 표현 |
|---|
{ "startIndex": integer, "endIndex": integer, "uri": string, "license": string } |
HarmCategory
평점의 카테고리입니다.
이러한 카테고리는 개발자가 조정할 수 있는 다양한 종류의 유해성을 다룹니다.
| 열거형 | |
|---|---|
HARM_CATEGORY_UNSPECIFIED |
카테고리가 지정되지 않았습니다. |
HARM_CATEGORY_DEROGATORY |
PaLM - ID 또는 보호 속성을 대상으로 하는 부정적이거나 유해한 댓글 |
HARM_CATEGORY_TOXICITY |
PaLM - 무례하거나 모욕적이거나 욕설이 있는 콘텐츠 |
HARM_CATEGORY_VIOLENCE |
PaLM - 개인 또는 그룹에 대한 폭력을 묘사하는 시나리오 또는 유혈 콘텐츠에 대한 일반적인 설명을 묘사합니다. |
HARM_CATEGORY_SEXUAL |
PaLM - 성적 행위 또는 기타 외설적인 콘텐츠에 대한 언급이 포함되어 있습니다. |
HARM_CATEGORY_MEDICAL |
PaLM - 확인되지 않은 의학적 조언을 제공합니다. |
HARM_CATEGORY_DANGEROUS |
PaLM - 유해한 행위를 조장, 촉진 또는 장려하는 위험한 콘텐츠 |
HARM_CATEGORY_HARASSMENT |
Gemini - 괴롭힘 콘텐츠 |
HARM_CATEGORY_HATE_SPEECH |
Gemini - 증오심 표현 및 콘텐츠 |
HARM_CATEGORY_SEXUALLY_EXPLICIT |
Gemini - 음란물 |
HARM_CATEGORY_DANGEROUS_CONTENT |
Gemini - 위험한 콘텐츠 |
HARM_CATEGORY_CIVIC_INTEGRITY |
Gemini - 시민적 무결성을 해치는 데 사용될 수 있는 콘텐츠 지원 중단됨: 대신 enableEnhancedCivicAnswers를 사용하세요. |
HARM_CATEGORY_JAILBREAK |
Gemini - 모델의 안전 가이드라인을 우회하거나 전복하려는 프롬프트 (탈옥 시도) |
ModalityTokenCount
단일 모달리티의 토큰 수 계산 정보를 나타냅니다.
modality
enum (Modality)
이 토큰 수와 연결된 모달리티입니다.
tokenCount
integer
토큰 수입니다.
| JSON 표현 |
|---|
{
"modality": enum ( |
형식
콘텐츠 파트 모달리티
| 열거형 | |
|---|---|
MODALITY_UNSPECIFIED |
지정되지 않은 모달리티입니다. |
TEXT |
일반 텍스트 |
IMAGE |
이미지입니다. |
VIDEO |
동영상입니다. |
AUDIO |
오디오 |
DOCUMENT |
문서(예: PDF) |
SafetyRating
콘텐츠의 안전 등급입니다.
안전 평점에는 콘텐츠의 피해 카테고리와 해당 카테고리의 피해 확률 수준이 포함됩니다. 콘텐츠는 여러 피해 카테고리에 걸쳐 안전을 위해 분류되며 피해 분류의 확률이 여기에 포함됩니다.
category
enum (HarmCategory)
필수 항목입니다. 이 등급의 카테고리입니다.
probability
enum (HarmProbability)
필수 항목입니다. 이 콘텐츠의 유해 확률입니다.
blocked
boolean
이 등급으로 인해 콘텐츠가 차단되었나요?
| JSON 표현 |
|---|
{ "category": enum ( |
HarmProbability
콘텐츠가 유해할 확률입니다.
분류 시스템은 콘텐츠가 안전하지 않을 가능성을 제공합니다. 콘텐츠의 유해 심각도를 나타내지는 않습니다.
| 열거형 | |
|---|---|
HARM_PROBABILITY_UNSPECIFIED |
확률이 지정되지 않았습니다. |
NEGLIGIBLE |
콘텐츠가 안전하지 않을 가능성이 무시할 만합니다. |
LOW |
콘텐츠가 안전하지 않을 가능성이 낮습니다. |
MEDIUM |
콘텐츠가 안전하지 않을 가능성이 중간 정도입니다. |
HIGH |
콘텐츠가 안전하지 않을 가능성이 높습니다. |
SafetySetting
안전 설정으로, 안전 차단 동작에 영향을 미칩니다.
카테고리의 안전 설정을 전달하면 콘텐츠가 차단될 수 있는 허용된 확률이 변경됩니다.
category
enum (HarmCategory)
필수 항목입니다. 이 설정의 카테고리입니다.
threshold
enum (HarmBlockThreshold)
필수 항목입니다. 유해성이 차단되는 확률 기준을 제어합니다.
| JSON 표현 |
|---|
{ "category": enum ( |
HarmBlockThreshold
지정된 유해 확률 이상에서 차단합니다.
| 열거형 | |
|---|---|
HARM_BLOCK_THRESHOLD_UNSPECIFIED |
기준이 지정되지 않았습니다. |
BLOCK_LOW_AND_ABOVE |
무시할 수 있는 콘텐츠는 허용됩니다. |
BLOCK_MEDIUM_AND_ABOVE |
무시할 수 있는 수준 및 낮은 수준의 콘텐츠는 허용됩니다. |
BLOCK_ONLY_HIGH |
위험 수준이 NEGLIGIBLE, LOW, MEDIUM인 콘텐츠는 허용됩니다. |
BLOCK_NONE |
모든 콘텐츠가 허용됩니다. |
OFF |
안전 필터를 사용 중지합니다. |
ServiceTier
요청의 서비스 등급입니다.
| 열거형 | |
|---|---|
unspecified |
기본 서비스 등급(표준) |
standard |
표준 서비스 등급입니다. |
flex |
유연한 서비스 등급입니다. |
priority |
우선순위 서비스 등급입니다. |
콘텐츠
- JSON 표현
- 파트
- Blob
- FunctionCall
- FunctionResponse
- FunctionResponsePart
- FunctionResponseBlob
- 예약
- FileData
- ExecutableCode
- 언어
- CodeExecutionResult
- 결과
- ToolCall
- ToolType
- ToolResponse
- VideoMetadata
- MediaResolution
- 레벨
- MediaProcessing
메시지의 여러 부분으로 구성된 콘텐츠를 포함하는 구조화된 데이터의 기본 유형입니다.
Content에는 Content의 생산자를 지정하는 role 필드와 메시지 턴의 콘텐츠를 포함하는 멀티 파트 데이터가 포함된 parts 필드가 포함됩니다.
parts[]
object (Part)
단일 메시지를 구성하는 순서가 지정된 Parts입니다. 부분마다 MIME 유형이 다를 수 있습니다.
role
string
선택사항입니다. 콘텐츠 제작자입니다. 'user' 또는 'model'이어야 합니다.
멀티턴 대화에 설정하는 것이 유용하며, 그렇지 않은 경우 비워 두거나 설정하지 않아도 됩니다.
| JSON 표현 |
|---|
{
"parts": [
{
object ( |
부품
멀티 파트 Content 메시지의 일부인 미디어를 포함하는 데이터 유형입니다.
Part는 연결된 데이터 유형이 있는 데이터로 구성됩니다. Part에는 Part.data에서 허용되는 유형 중 하나만 포함할 수 있습니다.
inlineData 필드가 원시 바이트로 채워진 경우 Part에는 미디어의 유형과 하위 유형을 식별하는 고정 IANA MIME 유형이 있어야 합니다.
thought
boolean
선택사항입니다. 모델에서 파트가 생성되었는지 여부를 나타냅니다.
thoughtSignature
string (bytes format)
선택사항입니다. 후속 요청에서 재사용할 수 있도록 생각에 대한 불투명 서명입니다.
base64 인코딩 문자열입니다.
partMetadata
object (Struct format)
파트와 연결된 맞춤 메타데이터입니다. genai.Part를 콘텐츠 표현으로 사용하는 에이전트는 추가 정보를 추적해야 할 수 있습니다. 예를 들어 파트가 시작된 파일/소스의 이름이거나 여러 파트 스트림을 멀티플렉싱하는 방법일 수 있습니다.
mediaResolution
object (MediaResolution)
선택사항입니다. 입력 미디어의 미디어 해상도입니다.
mediaProcessing
enum (MediaProcessing)
선택사항입니다. 모델이 이해를 위해 이 부분의 미디어를 처리하는 방식입니다. 동영상 파트 (동영상 MIME이 있는 inlineData 또는 fileData)에만 의미가 있습니다. 동영상이 아닌 부분에서는 이 필드를 무시합니다.
data
Union type
data는 다음 중 하나여야 합니다.text
string
인라인 텍스트입니다.
inlineData
object (Blob)
인라인 미디어 바이트입니다.
functionCall
object (FunctionCall)
인수와 해당 값이 포함된 FunctionDeclaration.name을 나타내는 문자열이 포함된 모델에서 반환된 예측된 FunctionCall입니다.
functionResponse
object (FunctionResponse)
FunctionDeclaration.name을 나타내는 문자열과 함수의 출력이 포함된 구조화된 JSON 객체가 포함된 FunctionCall의 결과 출력이 모델의 컨텍스트로 사용됩니다.
fileData
object (FileData)
URI 기반 데이터.
executableCode
object (ExecutableCode)
실행 목적으로 모델에서 생성된 코드입니다.
codeExecutionResult
object (CodeExecutionResult)
ExecutableCode 실행 결과입니다.
toolCall
object (ToolCall)
서버 측 도구 호출입니다. 이 필드는 모델이 서버에서 실행해야 하는 도구 호출을 예측할 때 채워집니다. 클라이언트는 이 메시지를 API에 다시 에코해야 합니다.
toolResponse
object (ToolResponse)
서버 측 ToolCall 실행의 출력입니다. 이 필드는 클라이언트가 해당 ToolCall 실행 결과로 채웁니다.
metadata
Union type
metadata는 다음 중 하나여야 합니다.videoMetadata
object (VideoMetadata)
선택사항입니다. 동영상 메타데이터입니다. 메타데이터는 동영상 데이터가 inlineData 또는 fileData에 표시되는 동안에만 지정되어야 합니다.
| JSON 표현 |
|---|
{ "thought": boolean, "thoughtSignature": string, "partMetadata": { object }, "mediaResolution": { object ( |
blob
원시 미디어 바이트입니다.
텍스트는 원시 바이트로 전송하면 안 됩니다. 'text' 필드를 사용하세요.
mimeType
string
소스 데이터의 IANA 표준 MIME 유형입니다. 지원되는 유형의 예: - 이미지: image/png, image/jpeg, image/jpg, image/webp, image/heic, image/heif, image/gif, image/avif - 오디오: audio/*, video/audio/s16le, video/audio/wav - 동영상: video/* - 텍스트: text/plain, text/html, text/css, text/javascript, text/x-typescript, text/csv, text/markdown, text/x-python, text/xml, text/rtf, video/text/timestamp - 애플리케이션: application/x-javascript, application/x-typescript, application/x-python-code, application/json, application/x-ipynb+json, application/rtf, application/pdf 자세한 내용은 지원되는 파일 형식을 참고하세요. //
data
string (bytes format)
미디어 형식의 원시 바이트입니다.
base64 인코딩 문자열입니다.
| JSON 표현 |
|---|
{ "mimeType": string, "data": string } |
FunctionCall
인수와 해당 값이 포함된 FunctionDeclaration.name을 나타내는 문자열이 포함된 모델에서 반환된 예측된 FunctionCall입니다.
id
string
선택사항입니다. 함수 호출의 고유 식별자입니다. 채워진 경우 클라이언트가 functionCall를 실행하고 일치하는 id로 응답을 반환합니다.
name
string
필수 항목입니다. 호출하려는 함수의 이름입니다. a~z, A~Z, 0~9이거나 밑줄과 대시를 포함해야 합니다(최대 128자 길이).
args
object (Struct format)
선택사항입니다. JSON 객체 형식의 함수 파라미터와 값입니다.
| JSON 표현 |
|---|
{ "id": string, "name": string, "args": { object } } |
FunctionResponse
FunctionDeclaration.name을 나타내는 문자열과 함수의 출력이 포함된 구조화된 JSON 객체가 포함된 FunctionCall의 결과 출력이 모델의 컨텍스트로 사용됩니다. 여기에는 모델 예측에 기반하여 이루어진 FunctionCall의 결과가 포함되어야 합니다.
id
string
선택사항입니다. 이 대답이 속한 함수 호출의 식별자입니다. 클라이언트가 해당 함수 호출 id와 일치하도록 채웁니다.
name
string
필수 항목입니다. 호출하려는 함수의 이름입니다. a~z, A~Z, 0~9이거나 밑줄과 대시를 포함해야 합니다(최대 128자 길이).
response
object (Struct format)
필수 항목입니다. JSON 객체 형식의 함수 응답입니다. 호출자는 함수의 구문에 맞는 원하는 키를 사용하여 함수 출력을 반환할 수 있습니다(예: 'output', 'result' 등). 특히 함수 호출이 실행되지 않은 경우 응답에 'error' 키가 있어 오류 세부정보를 모델에 반환할 수 있습니다.
멀티미디어는 값이 멀티미디어를 보유한 FunctionResponsePart의 inlineData.display_name인 단일 '$ref' 키가 포함된 하위 객체를 사용하여 포함할 수 있습니다. https://ai.google.dev/gemini-api/docs/function-calling#multimodal을 참고하세요.
parts[]
object (FunctionResponsePart)
선택사항입니다. 함수 응답을 구성하는 순서가 지정된 Parts입니다. 부분마다 IANA MIME 유형이 다를 수 있습니다.
willContinue
boolean
선택사항입니다. 함수 호출이 계속되고 더 많은 응답이 반환되어 함수 호출이 생성기로 전환됨을 나타냅니다. NON_BLOCKING 함수 호출에만 적용되며, 그 외의 경우에는 무시됩니다. false로 설정하면 향후 대답이 고려되지 않습니다. 함수 호출이 완료되었음을 알리기 위해 willContinue=False와 함께 빈 response를 반환할 수 있습니다. 이 경우에도 모델 생성이 트리거될 수 있습니다. 생성을 트리거하지 않고 함수 호출을 완료하려면 scheduling를 SILENT로 추가로 설정하세요.
scheduling
enum (Scheduling)
선택사항입니다. 대화에서 대답이 예약되는 방식을 지정합니다. NON_BLOCKING 함수 호출에만 적용되며, 그 외의 경우에는 무시됩니다. 기본값은 WHEN_IDLE입니다.
| JSON 표현 |
|---|
{ "id": string, "name": string, "response": { object }, "parts": [ { object ( |
FunctionResponsePart
FunctionResponse 메시지의 일부인 미디어를 포함하는 데이터 유형입니다.
FunctionResponsePart는 연결된 데이터 유형이 있는 데이터로 구성됩니다. FunctionResponsePart에는 FunctionResponsePart.data에서 허용되는 유형 중 하나만 포함할 수 있습니다.
inlineData 필드가 원시 바이트로 채워진 경우 FunctionResponsePart에는 미디어의 유형과 하위 유형을 식별하는 고정 IANA MIME 유형이 있어야 합니다.
data
Union type
data는 다음 중 하나여야 합니다.inlineData
object (FunctionResponseBlob)
인라인 미디어 바이트입니다.
| JSON 표현 |
|---|
{
// data
"inlineData": {
object ( |
FunctionResponseBlob
함수 응답의 원시 미디어 바이트입니다.
텍스트는 원시 바이트로 전송하면 안 됩니다. 'FunctionResponse.response' 필드를 사용하세요.
mimeType
string
소스 데이터의 IANA 표준 MIME 유형입니다. 예: - image/png - image/jpeg 지원되지 않는 MIME 유형이 제공되면 오류가 반환됩니다. 지원되는 유형의 전체 목록은 지원되는 파일 형식을 참고하세요.
data
string (bytes format)
미디어 형식의 원시 바이트입니다.
base64 인코딩 문자열입니다.
| JSON 표현 |
|---|
{ "mimeType": string, "data": string } |
예약
대화에서 대답이 예약되는 방식을 지정합니다.
| 열거형 | |
|---|---|
SCHEDULING_UNSPECIFIED |
이 값은 사용되지 않습니다. |
SILENT |
결과를 대화 컨텍스트에만 추가하고, 생성을 중단하거나 트리거하지 마세요. |
WHEN_IDLE |
결과를 대화 컨텍스트에 추가하고 진행 중인 생성을 중단하지 않고 출력을 생성하라는 메시지를 표시합니다. |
INTERRUPT |
결과를 대화 컨텍스트에 추가하고, 진행 중인 생성을 중단하고, 출력을 생성하라는 메시지를 표시합니다. |
FileData
URI 기반 데이터.
mimeType
string
선택사항입니다. 소스 데이터의 IANA 표준 MIME 유형입니다.
fileUri
string
필수 항목입니다. URI입니다.
| JSON 표현 |
|---|
{ "mimeType": string, "fileUri": string } |
ExecutableCode
실행 목적으로 모델에서 생성된 코드와 모델에 반환된 결과입니다.
CodeExecution 도구를 사용하는 경우에만 생성되며, 이 경우 코드가 자동으로 실행되고 해당하는 CodeExecutionResult도 생성됩니다.
id
string
선택사항입니다. ExecutableCode 파트의 고유 식별자입니다. 서버는 일치하는 id와 함께 CodeExecutionResult를 반환합니다.
language
enum (Language)
필수 항목입니다. code의 프로그래밍 언어입니다.
code
string
필수 항목입니다. 실행할 코드입니다.
| JSON 표현 |
|---|
{
"id": string,
"language": enum ( |
언어
생성된 코드에 지원되는 프로그래밍 언어입니다.
| 열거형 | |
|---|---|
LANGUAGE_UNSPECIFIED |
지정되지 않은 언어입니다. 이 값을 사용하면 안 됩니다. |
PYTHON |
numpy 및 simpy를 사용할 수 있는 Python >= 3.10 Python이 기본 언어입니다. |
CodeExecutionResult
ExecutableCode 실행 결과입니다.
CodeExecution 도구를 사용하는 경우에만 생성됩니다.
id
string
선택사항입니다. 이 결과가 적용되는 ExecutableCode 부분의 식별자입니다. 해당 ExecutableCode에 ID가 있는 경우에만 채워집니다.
outcome
enum (Outcome)
필수 항목입니다. 코드 실행의 결과입니다.
output
string
선택사항. 코드 실행이 성공하면 stdout이 포함되고 그렇지 않으면 stderr 또는 기타 설명이 포함됩니다.
| JSON 표현 |
|---|
{
"id": string,
"outcome": enum ( |
결과
가능한 코드 실행 결과의 열거형입니다.
| 열거형 | |
|---|---|
OUTCOME_UNSPECIFIED |
미지정 상태입니다. 이 값을 사용하면 안 됩니다. |
OUTCOME_OK |
코드 실행이 완료되었습니다. output에는 stdout이 포함됩니다(있는 경우). |
OUTCOME_FAILED |
코드 실행에 실패했습니다. output에는 stderr 및 stdout이 포함됩니다(있는 경우). |
OUTCOME_DEADLINE_EXCEEDED |
코드 실행 시간이 너무 오래돼서 취소되었습니다. 부분 output이 있을 수도 있고 없을 수도 있습니다. |
ToolCall
모델에서 반환된 예측 서버 측 ToolCall입니다. 이 메시지에는 모델이 호출하려는 도구에 관한 정보가 포함되어 있습니다. 클라이언트는 이 ToolCall을 실행하지 않아야 합니다. 대신 클라이언트는 Content 메시지 내의 후속 턴에서 이 ToolCall를 해당 ToolResponse와 함께 API에 다시 전달해야 합니다.
id
string
선택사항입니다. 도구 호출의 고유 식별자입니다. 서버는 일치하는 id로 도구 응답을 반환합니다.
toolName
string
선택사항입니다. 호출된 도구의 이름입니다.
toolType
enum (ToolType)
필수 항목입니다. 호출된 도구의 유형입니다.
args
object (Struct format)
선택사항입니다. 도구 호출 인수입니다. 예: {'arg1' : 'value1', 'arg2' : 'value2' , ...}
| JSON 표현 |
|---|
{
"id": string,
"toolName": string,
"toolType": enum ( |
ToolType
함수 호출의 도구 유형입니다.
| 열거형 | |
|---|---|
TOOL_TYPE_UNSPECIFIED |
지정되지 않은 도구 유형입니다. |
GOOGLE_SEARCH_WEB |
Google 검색 도구로, Tool.google_search.search_types.web_search에 매핑됩니다. |
GOOGLE_SEARCH_IMAGE |
이미지 검색 도구로, Tool.google_search.search_types.image_search에 매핑됩니다. |
URL_CONTEXT |
URL 컨텍스트 도구로, Tool.url_context에 매핑됩니다. |
GOOGLE_MAPS |
Google 지도 도구로, Tool.google_maps에 매핑됩니다. |
FILE_SEARCH |
파일 검색 도구로, Tool.file_search에 매핑됩니다. |
ToolResponse
서버 측 ToolCall 실행의 출력입니다. 이 메시지에는 모델의 ToolCall에 의해 시작된 도구 호출의 결과가 포함되어 있습니다. 클라이언트는 이 ToolResponse를 Content 메시지 내의 후속 턴에서 해당 ToolCall와 함께 API에 다시 전달해야 합니다.
id
string
선택사항입니다. 이 응답이 속한 도구 호출의 식별자입니다.
toolType
enum (ToolType)
필수 항목입니다. 호출된 도구의 유형으로, 해당 ToolCall의 toolType와 일치합니다.
response
object (Struct format)
선택사항입니다. 도구 응답입니다.
| JSON 표현 |
|---|
{
"id": string,
"toolType": enum ( |
VideoMetadata
지원 중단됨: 대신 GenerateContentRequest.processing_options을 사용하세요. 메타데이터는 입력 동영상 콘텐츠를 설명합니다.
startOffset
string (Duration format)
선택사항입니다. 동영상의 시작 오프셋입니다.
소수점 아래가 최대 9자리까지이고 's'로 끝나는 초 단위 기간입니다. 예를 들면 "3.5s"입니다.
endOffset
string (Duration format)
선택사항입니다. 동영상의 종료 오프셋입니다.
소수점 아래가 최대 9자리까지이고 's'로 끝나는 초 단위 기간입니다. 예를 들면 "3.5s"입니다.
fps
number
선택사항입니다. 모델로 전송된 동영상의 프레임 속도입니다. 지정하지 않으면 기본값은 1.0입니다. fps 범위는 (0.0, 24.0]입니다.
| JSON 표현 |
|---|
{ "startOffset": string, "endOffset": string, "fps": number } |
MediaResolution
토큰화의 미디어 해상도입니다.
value
Union type
value는 다음 중 하나여야 합니다.level
enum (Level)
특정 미디어에 사용되는 토큰화 품질입니다.
| JSON 표현 |
|---|
{
// value
"level": enum ( |
수준
미디어 해상도 수준입니다.
| 열거형 | |
|---|---|
MEDIA_RESOLUTION_UNSPECIFIED |
미디어 해상도가 설정되지 않았습니다. |
MEDIA_RESOLUTION_LOW |
미디어 해상도가 낮음으로 설정되어 있습니다. |
MEDIA_RESOLUTION_MEDIUM |
미디어 해상도가 중간으로 설정되었습니다. |
MEDIA_RESOLUTION_HIGH |
미디어 해상도가 높음으로 설정되어 있습니다. |
MEDIA_RESOLUTION_ULTRA_HIGH |
미디어 해상도가 초고화질로 설정되어 있습니다. |
MediaProcessing
모델이 이해를 위해 입력 미디어를 처리하는 방식입니다.
| 열거형 | |
|---|---|
MEDIA_PROCESSING_UNSPECIFIED |
기본값입니다. 모델별 처리 사용 (3.5 Pro+ -> AGENTIC, 이전 모델 -> STATIC) |
STATIC |
고정 프레임 속도 프레임 추출 모든 프레임이 컨텍스트에 배치됩니다. |
AGENTIC |
모델 기반 동적 탐색 대부분의 사용 사례에 권장됩니다. |
환경
에이전트의 실행 환경입니다.
id
string
필수 항목입니다. 출력 전용입니다. 환경의 ID입니다.
sources[]
object (Source)
환경에 마운트할 소스입니다.
created
string
출력 전용입니다. 환경이 생성된 시간입니다(ISO 8601 형식(YYYY-MM-DDThh:mm:ssZ)).
updated
string
출력 전용입니다. 환경이 마지막으로 업데이트된 시간입니다(ISO 8601 형식(YYYY-MM-DDThh:mm:ssZ)).
lastAccessed
string
출력 전용입니다. 환경에 마지막으로 액세스한 시간입니다(ISO 8601 형식(YYYY-MM-DDThh:mm:ssZ)).
status
enum (Status)
출력 전용입니다. 환경 컨테이너의 상태입니다.
fileCount
string (int64 format)
출력 전용입니다. 환경의 파일 수입니다(출력 전용).
sizeBytes
string (int64 format)
출력 전용입니다. 환경 파일의 총 크기(바이트)입니다(출력 전용).
network
Union type
network는 다음 중 하나여야 합니다.networkAllowlist
object (EnvironmentNetworkEgressAllowlist)
특정 도메인만 허용합니다.
networkMode
enum (NetworkMode)
네트워크 이그레스 모드입니다.
| JSON 표현 |
|---|
{ "id": string, "sources": [ { object ( |
상태
환경의 상태입니다.
| 열거형 | |
|---|---|
STATUS_UNSPECIFIED |
|
ACTIVE |
|
EXPIRED |
|
NetworkMode
허용 목록에 없는 구성의 네트워크 이그레스 모드입니다.
| 열거형 | |
|---|---|
NETWORK_MODE_UNSPECIFIED |
기본값. 사용하지 않습니다. |
DISABLED |
모든 네트워크 이그레스가 차단됩니다. |
스키마
Schema 객체를 사용하면 입력 및 출력 데이터 유형을 정의할 수 있습니다. 이러한 유형은 객체일 수도 있지만 기본 유형과 배열일 수도 있습니다. OpenAPI 3.0 스키마 객체의 선택된 하위 집합을 나타냅니다.
type
enum (Type)
필수 항목입니다. 데이터 유형입니다.
format
string
선택사항입니다. 데이터 형식입니다. 모든 값이 허용되지만 대부분은 특별한 기능을 트리거하지 않습니다.
title
string
선택사항입니다. 스키마의 제목입니다.
description
string
선택사항입니다. 매개변수에 대한 간략한 설명입니다. 여기에는 사용 예가 포함될 수 있습니다. 매개변수 설명은 마크다운 형식일 수 있습니다.
nullable
boolean
선택사항입니다. null 값을 나타냅니다.
enum[]
string
선택사항입니다. enum 형식의 Type.STRING 요소의 가능한 값입니다. 예를 들어 열거형 방향을 {type:STRING, format:enum, enum:["EAST", NORTH", "SOUTH", "WEST"]}로 정의할 수 있습니다.
maxItems
string (int64 format)
선택사항입니다. Type.ARRAY의 최대 요소 수입니다.
minItems
string (int64 format)
선택사항입니다. Type.ARRAY의 최소 요소 수입니다.
properties
map (key: string, value: object (Schema))
선택사항입니다. Type.OBJECT의 속성입니다.
"key": value 쌍 목록을 포함하는 객체입니다. 예: { "name": "wrench", "mass": "1.3kg", "count": "3" }
required[]
string
선택사항입니다. Type.OBJECT의 필수 속성입니다.
minProperties
string (int64 format)
선택사항입니다. Type.OBJECT의 최소 속성 수입니다.
maxProperties
string (int64 format)
선택사항입니다. Type.OBJECT의 최대 속성 수입니다.
minLength
string (int64 format)
선택사항입니다. TYPE.STRING의 최소 길이인 스키마 필드
maxLength
string (int64 format)
선택사항입니다. Type.STRING의 최대 길이
pattern
string
선택사항입니다. 문자열을 정규 표현식으로 제한하는 Type.STRING의 패턴입니다.
example
value (Value format)
선택사항입니다. 객체의 예입니다. 객체가 루트인 경우에만 채워집니다.
anyOf[]
object (Schema)
선택사항입니다. 값은 목록에 있는 하위 스키마 중 하나 이상에 대해 검증되어야 합니다.
propertyOrdering[]
string
선택사항입니다. 속성의 순서입니다. Open API 사양의 표준 필드가 아닙니다. 응답의 속성 순서를 결정하는 데 사용됩니다.
default
value (Value format)
선택사항입니다. 필드의 기본값입니다. JSON 스키마에 따라 이 필드는 문서 생성기를 위한 것이며 검증에는 영향을 미치지 않습니다. 따라서 default 필드가 있는 스키마를 전송하는 개발자에게 알 수 없는 필드 오류가 표시되지 않도록 여기에 포함되고 무시됩니다.
items
object (Schema)
선택사항입니다. Type.ARRAY 요소의 스키마입니다.
minimum
number
선택사항입니다. SCHEMA FIELDS FOR TYPE INTEGER and NUMBER Type.INTEGER 및 Type.NUMBER의 최솟값
maximum
number
선택사항입니다. Type.INTEGER 및 Type.NUMBER의 최댓값
| JSON 표현 |
|---|
{ "type": enum ( |
유형
Type에는 https://spec.openapis.org/oas/v3.0.3#data-types에 정의된 OpenAPI 데이터 유형 목록이 포함됩니다.
| 열거형 | |
|---|---|
TYPE_UNSPECIFIED |
지정되지 않았으므로 사용해서는 안 됩니다. |
STRING |
문자열 유형입니다. |
NUMBER |
숫자 유형입니다. |
INTEGER |
정수 유형입니다. |
BOOLEAN |
불리언 유형입니다. |
ARRAY |
배열 유형입니다. |
OBJECT |
객체 유형입니다. |
NULL |
Null 유형입니다. |
도구
- JSON 표현
- FunctionDeclaration
- 동작
- GoogleSearchRetrieval
- DynamicRetrievalConfig
- Mode(최빈값)
- CodeExecution
- GoogleSearch
- 인터벌
- SearchTypes
- WebSearch
- ImageSearch
- ComputerUse
- 환경
- SafetyPolicy
- UrlContext
- FileSearch
- McpServer
- StreamableHttpTransport
- GoogleMaps
모델이 대답을 생성하는 데 사용할 수 있는 도구 세부정보입니다.
Tool은 시스템이 모델의 지식과 범위를 벗어나 외부 시스템과 상호작용하여 작업 또는 작업 집합을 수행할 수 있도록 하는 코드 조각입니다.
다음 ID: 17
functionDeclarations[]
object (FunctionDeclaration)
선택사항입니다. 함수 호출에 사용할 수 있는 모델에 제공되는 FunctionDeclarations 목록입니다.
모델 또는 시스템이 함수를 실행하지 않습니다. 대신 정의된 함수가 실행을 위해 클라이언트 측에 인수가 있는 FunctionCall로 반환될 수 있습니다. 모델은 응답에 FunctionCall를 채워 이러한 함수의 하위 집합을 호출할 수 있습니다. 다음 대화 턴에는 다음 모델 턴을 위한 Content.role 'function' 생성 컨텍스트가 포함된 FunctionResponse가 포함될 수 있습니다.
googleSearchRetrieval
object (GoogleSearchRetrieval)
선택사항입니다. Google 검색으로 구동되는 검색 도구입니다.
codeExecution
object (CodeExecution)
선택사항입니다. 모델이 생성의 일부로 코드를 실행할 수 있도록 지원합니다.
googleSearch
object (GoogleSearch)
선택사항입니다. GoogleSearch 도구 유형입니다. 모델에서 Google 검색을 지원하는 도구 Google에서 제공합니다.
computerUse
object (ComputerUse)
선택사항입니다. 모델이 컴퓨터와 직접 상호작용하도록 지원하는 도구 사용 설정하면 컴퓨터 사용 관련 함수 선언이 자동으로 채워집니다.
urlContext
object (UrlContext)
선택사항입니다. URL 컨텍스트 검색을 지원하는 도구입니다.
fileSearch
object (FileSearch)
선택사항입니다. FileSearch 도구 유형입니다. 시맨틱 검색 말뭉치에서 지식을 검색하는 도구
mcpServers[]
object (McpServer)
선택사항입니다. 연결할 MCP 서버입니다.
googleMaps
object (GoogleMaps)
선택사항입니다. 사용자 질문과 관련된 지리정보 컨텍스트를 사용하여 모델의 대답을 그라운딩할 수 있는 도구
| JSON 표현 |
|---|
{ "functionDeclarations": [ { object ( |
FunctionDeclaration
OpenAPI 3.03 사양에 따라 정의된 함수 선언의 구조화된 표현입니다. 이 선언에는 함수 이름과 매개변수가 포함됩니다. 이 FunctionDeclaration은 모델에서 Tool로 사용하고 클라이언트에서 실행할 수 있는 코드 블록을 나타냅니다.
name
string
필수 항목입니다. 함수 이름입니다. a~z, A~Z, 0~9이거나 밑줄, 콜론, 점, 대시를 포함할 수 있고 최대 128자 길이입니다.
description
string
필수 항목입니다. 함수에 대한 간단한 설명입니다.
behavior
enum (Behavior)
선택사항입니다. 함수 동작을 지정합니다. 현재 BidiGenerateContent 메서드에서만 지원됩니다.
parameters
object (Schema)
선택사항입니다. 이 함수의 매개변수를 설명합니다. Open API 3.03 매개변수 객체 문자열 키를 반영합니다. 매개변수의 이름입니다. 매개변수 이름은 대소문자를 구분합니다. 스키마 값: 매개변수에 사용되는 유형을 정의하는 스키마입니다.
parametersJsonSchema
value (Value format)
선택사항입니다. 함수의 매개변수를 JSON 스키마 형식으로 설명합니다. 스키마는 속성이 함수의 매개변수인 객체를 설명해야 합니다. 예를 들면 다음과 같습니다.
{
"type": "object",
"properties": {
"name": { "type": "string" },
"age": { "type": "integer" }
},
"additionalProperties": false,
"required": ["name", "age"],
"propertyOrdering": ["name", "age"]
}
이 필드는 parameters과 상호 배타적입니다.
response
object (Schema)
선택사항입니다. 이 함수의 출력을 JSON 스키마 형식으로 설명합니다. Open API 3.03 응답 객체를 반영합니다. 스키마는 함수의 응답 값에 사용되는 유형을 정의합니다.
responseJsonSchema
value (Value format)
선택사항입니다. 이 함수의 출력을 JSON 스키마 형식으로 설명합니다. 스키마에 지정된 값은 함수의 응답 값입니다.
이 필드는 response과 상호 배타적입니다.
동작
함수 동작을 정의합니다. 기본값은 BLOCKING입니다.
| 열거형 | |
|---|---|
UNSPECIFIED |
이 값은 사용되지 않습니다. |
BLOCKING |
설정된 경우 시스템은 대화를 계속하기 전에 함수 응답을 기다립니다. |
NON_BLOCKING |
설정된 경우 시스템은 함수 응답을 기다리지 않습니다. 대신 사용자와 모델 간의 대화를 유지하면서 함수 응답이 제공되는 대로 처리하려고 시도합니다. |
GoogleSearchRetrieval
그라운딩을 위해 공개 웹 데이터를 검색하는 도구로, Google에서 제공합니다.
dynamicRetrievalConfig
object (DynamicRetrievalConfig)
지정된 소스의 동적 검색 구성을 지정합니다.
| JSON 표현 |
|---|
{
"dynamicRetrievalConfig": {
object ( |
DynamicRetrievalConfig
동적 가져오기를 맞춤설정하는 옵션을 설명합니다.
mode
enum (Mode)
동적 검색에 사용할 예측 변수의 모드입니다.
dynamicThreshold
number
동적 검색에 사용할 기준점입니다. 설정하지 않으면 시스템 기본값이 사용됩니다.
| JSON 표현 |
|---|
{
"mode": enum ( |
모드
동적 검색에 사용할 예측 변수의 모드입니다.
| 열거형 | |
|---|---|
MODE_UNSPECIFIED |
항상 가져오기를 트리거합니다. |
MODE_DYNAMIC |
시스템에서 필요하다고 판단하는 경우에만 가져오기를 실행합니다. |
CodeExecution
이 유형에는 필드가 없습니다.
모델에서 생성된 코드를 실행하고 결과를 모델에 자동으로 반환하는 도구입니다.
이 도구를 사용할 때만 생성되는 ExecutableCode 및 CodeExecutionResult도 참고하세요.
GoogleSearch
GoogleSearch 도구 유형입니다. 모델에서 Google 검색을 지원하는 도구 Google에서 제공합니다.
timeRangeFilter
object (Interval)
선택사항입니다. 검색 결과를 특정 기간으로 필터링합니다. 고객이 시작 시간을 설정하는 경우 종료 시간도 설정해야 합니다 (그 반대의 경우도 마찬가지).
searchTypes
object (SearchTypes)
선택사항입니다. 사용 설정할 검색 유형 집합입니다. 설정하지 않으면 웹 검색이 기본적으로 사용 설정됩니다.
| JSON 표현 |
|---|
{ "timeRangeFilter": { object ( |
간격
타임스탬프 시작(포함) 및 타임스탬프 종료(제외)로 인코딩된 시간 간격을 나타냅니다.
시작은 종료보다 작거나 같아야 합니다. 시작이 종료와 같으면 간격이 비어 있습니다(시간과 일치하지 않음). 시작과 종료가 모두 지정되지 않은 경우 간격은 모든 시간과 일치합니다.
startTime
string (Timestamp format)
선택사항입니다. 간격의 시작(포함)입니다.
지정된 경우 이 간격과 일치하는 타임스탬프는 시작과 같거나 시작 이후여야 합니다.
생성된 출력은 항상 Z-정규화되고 소수점 이하 0, 3, 6 또는 9자리인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" 또는 "2014-10-02T15:01:23+05:30"입니다.
endTime
string (Timestamp format)
선택사항입니다. 간격의 끝(제외)입니다.
지정된 경우 이 간격과 일치하는 타임스탬프는 종료 시간 이전이어야 합니다.
생성된 출력은 항상 Z-정규화되고 소수점 이하 0, 3, 6 또는 9자리인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" 또는 "2014-10-02T15:01:23+05:30"입니다.
| JSON 표현 |
|---|
{ "startTime": string, "endTime": string } |
SearchTypes
GoogleSearch 도구에서 사용 설정할 수 있는 다양한 검색 유형입니다.
webSearch
object (WebSearch)
선택사항입니다. 웹 검색을 사용 설정합니다. 텍스트 결과만 반환됩니다.
imageSearch
object (ImageSearch)
선택사항입니다. 이미지 검색을 사용 설정합니다. 이미지 바이트가 반환됩니다.
| JSON 표현 |
|---|
{ "webSearch": { object ( |
WebSearch
이 유형에는 필드가 없습니다.
그라운딩 및 관련 구성을 위한 표준 웹 검색입니다.
ImageSearch
이 유형에는 필드가 없습니다.
그라운딩 및 관련 구성을 위한 이미지 검색
ComputerUse
Computer Use 도구 유형입니다.
environment
enum (Environment)
필수 항목입니다. 운영되는 환경입니다.
excludedPredefinedFunctions[]
string
선택사항입니다. 기본적으로 사전 정의된 함수는 최종 모델 호출에 포함됩니다. 일부는 자동으로 포함되지 않도록 명시적으로 제외할 수 있습니다. 이는 두 가지 목적으로 사용될 수 있습니다. 1. 더 제한적인 / 다른 작업 공간 사용 2. 사전 정의된 함수의 정의 / 안내 개선
enablePromptInjectionDetection
boolean
선택사항입니다. 컴퓨터 사용 요청에서 프롬프트 인젝션 감지 확인을 사용 설정할지 여부입니다.
disabledSafetyPolicies[]
enum (SafetyPolicy)
선택사항입니다. 컴퓨터 사용에 대한 안전 정책이 사용 중지되었습니다.
| JSON 표현 |
|---|
{ "environment": enum ( |
환경
작업이 실행되는 환경(예: 웹브라우저)을 나타냅니다.
| 열거형 | |
|---|---|
ENVIRONMENT_UNSPECIFIED |
기본값은 브라우저입니다. |
ENVIRONMENT_BROWSER |
웹브라우저에서 작동합니다. |
ENVIRONMENT_MOBILE |
모바일 환경에서 작동합니다. |
ENVIRONMENT_DESKTOP |
데스크톱 환경에서 작동합니다. |
SafetyPolicy
컴퓨터 사용에 대한 사전 정의된 안전 정책입니다.
| 열거형 | |
|---|---|
SAFETY_POLICY_UNSPECIFIED |
안전 정책이 지정되지 않았습니다. |
FINANCIAL_TRANSACTIONS |
금융 거래 안전 정책입니다. |
SENSITIVE_DATA_MODIFICATION |
민감한 정보 수정에 관한 안전 정책입니다. |
COMMUNICATION_TOOL |
커뮤니케이션 도구 (예: Gmail, Chat, Meet)의 안전 정책 |
ACCOUNT_CREATION |
계정 생성에 관한 안전 정책입니다. |
DATA_MODIFICATION |
데이터 수정에 관한 안전 정책입니다. |
USER_CONSENT_MANAGEMENT |
사용자 동의 관리를 위한 안전 정책입니다. |
LEGAL_TERMS_AND_AGREEMENTS |
법률 조항 및 계약에 관한 안전 정책입니다. |
UrlContext
이 유형에는 필드가 없습니다.
URL 컨텍스트 검색을 지원하는 도구입니다.
FileSearch
시맨틱 검색 코퍼스에서 지식을 검색하는 FileSearch 도구입니다. 파일은 ImportFile API를 사용하여 시맨틱 검색 코퍼스로 가져옵니다.
fileSearchStoreNames[]
string
필수 항목입니다. 검색할 fileSearchStore의 이름입니다. 예: fileSearchStores/my-file-search-store-123
metadataFilter
string
선택사항입니다. 시맨틱 검색 문서 및 청크에 적용할 메타데이터 필터입니다.
topK
integer
선택사항입니다. 가져올 시맨틱 검색 청크의 수입니다.
| JSON 표현 |
|---|
{ "fileSearchStoreNames": [ string ], "metadataFilter": string, "topK": integer } |
McpServer
MCPServer는 모델이 작업을 실행하기 위해 호출할 수 있는 서버입니다. MCP 프로토콜을 구현하는 서버입니다. 다음 ID: 6
name
string
MCPServer의 이름입니다.
transport
Union type
transport는 다음 중 하나여야 합니다.streamableHttpTransport
object (StreamableHttpTransport)
HTTP 요청과 응답을 스트리밍할 수 있는 전송입니다.
| JSON 표현 |
|---|
{
"name": string,
// transport
"streamableHttpTransport": {
object ( |
StreamableHttpTransport
HTTP 요청과 응답을 스트리밍할 수 있는 전송입니다. 다음 ID: 6
url
string
MCPServer 엔드포인트의 전체 URL입니다. 예: 'https://api.example.com/mcp'
headers
map (key: string, value: string)
선택사항: 필요한 경우 인증 헤더, 제한 시간 등의 필드
"key": value 쌍 목록을 포함하는 객체입니다. 예: { "name": "wrench", "mass": "1.3kg", "count": "3" }
timeout
string (Duration format)
일반 작업의 HTTP 시간 제한입니다.
소수점 아래가 최대 9자리까지이고 's'로 끝나는 초 단위 기간입니다. 예를 들면 "3.5s"입니다.
sseReadTimeout
string (Duration format)
SSE 읽기 작업의 제한 시간입니다.
소수점 아래가 최대 9자리까지이고 's'로 끝나는 초 단위 기간입니다. 예를 들면 "3.5s"입니다.
terminateOnClose
boolean
전송이 닫힐 때 클라이언트 세션을 닫을지 여부입니다.
| JSON 표현 |
|---|
{ "url": string, "headers": { string: string, ... }, "timeout": string, "sseReadTimeout": string, "terminateOnClose": boolean } |
GoogleMaps
사용자의 질문에 대한 지리 공간 컨텍스트를 제공하는 GoogleMaps 도구입니다.
enableWidget
boolean
선택사항입니다. 대답의 GroundingMetadata에 위젯 컨텍스트 토큰을 반환할지 여부입니다. 개발자는 위젯 컨텍스트 토큰을 사용하여 모델이 대답에서 참조하는 장소와 관련된 지리정보 컨텍스트로 Google 지도 위젯을 렌더링할 수 있습니다.
| JSON 표현 |
|---|
{ "enableWidget": boolean } |
REST 리소스: auth_tokens
- 리소스: AuthToken
- BidiGenerateContentSetup
- GenerationConfig
- 형식
- SpeechConfig
- VoiceConfig
- PrebuiltVoiceConfig
- MultiSpeakerVoiceConfig
- SpeakerVoiceConfig
- ThinkingConfig
- ThinkingLevel
- ImageConfig
- MediaResolution
- ResponseFormatConfig
- TextResponseFormat
- MimeType
- AudioResponseFormat
- MimeType
- 배송
- ImageResponseFormat
- MimeType
- 배송
- AspectRatio
- ImageSize
- TranslationConfig
- AudioTranscriptionConfig
- LanguageAuto
- LanguageHints
- RealtimeInputConfig
- AutomaticActivityDetection
- StartSensitivity
- EndSensitivity
- ActivityHandling
- TurnCoverage
- SessionResumptionConfig
- ContextWindowCompressionConfig
- SlidingWindow
- HistoryConfig
- 메서드
리소스: AuthToken
일시적인 인증 토큰을 생성하기 위한 요청입니다.
name
string
출력 전용입니다. 식별자. 토큰 자체입니다.
expireTime
string (Timestamp format)
선택사항입니다. 입력 전용입니다. 변경할 수 없습니다. 결과 토큰을 사용할 때 BidiGenerateContent 세션의 메시지가 거부되는 선택적 시간입니다. (이 시간이 지나면 Gemini가 선제적으로 세션을 종료할 수 있습니다.)
설정하지 않으면 기본적으로 30분 후로 설정됩니다. 설정된 경우 이 값은 20시간 이내의 미래여야 합니다.
생성된 출력은 항상 Z-정규화되고 소수점 이하 0, 3, 6 또는 9자리인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" 또는 "2014-10-02T15:01:23+05:30"입니다.
newSessionExpireTime
string (Timestamp format)
선택사항입니다. 입력 전용입니다. 변경할 수 없습니다. 이 요청으로 생성된 토큰을 사용하는 새 Live API 세션이 거부되는 시간입니다.
설정하지 않으면 기본값은 60초 후로 설정됩니다. 설정된 경우 이 값은 20시간 이내의 미래여야 합니다.
생성된 출력은 항상 Z-정규화되고 소수점 이하 0, 3, 6 또는 9자리인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" 또는 "2014-10-02T15:01:23+05:30"입니다.
fieldMask
string (FieldMask format)
선택사항입니다. 입력 전용입니다. 변경할 수 없습니다. fieldMask가 비어 있고 bidiGenerateContentSetup가 없으면 유효한 BidiGenerateContentSetup 메시지가 Live API 연결에서 가져옵니다.
fieldMask가 비어 있고 bidiGenerateContentSetup이 있으면 이 요청에서 유효한 BidiGenerateContentSetup 메시지가 bidiGenerateContentSetup에서 완전히 가져옵니다. Live API 연결의 설정 메시지가 무시됩니다.
fieldMask가 비어 있지 않으면 bidiGenerateContentSetup의 해당 필드가 Live API 연결의 설정 메시지 필드를 덮어씁니다.
정규화된 필드 이름의 쉼표로 구분된 목록입니다. 예: "user.displayName,photo"
config
Union type
config는 다음 중 하나여야 합니다.bidiGenerateContentSetup
object (BidiGenerateContentSetup)
선택사항입니다. 입력 전용입니다. 변경할 수 없습니다. BidiGenerateContent 관련 구성입니다.
uses
integer
선택사항입니다. 입력 전용입니다. 변경할 수 없습니다. 토큰을 사용할 수 있는 횟수입니다. 이 값이 0이면 제한이 적용되지 않습니다. Live API 세션을 재개하는 것은 사용으로 간주되지 않습니다. 지정하지 않으면 기본값은 1입니다.
| JSON 표현 |
|---|
{
"name": string,
"expireTime": string,
"newSessionExpireTime": string,
"fieldMask": string,
// config
"bidiGenerateContentSetup": {
object ( |
BidiGenerateContentSetup
첫 번째 (및 첫 번째에만) BidiGenerateContentClientMessage에서 전송할 메시지입니다. 스트리밍 RPC 기간에 적용되는 구성을 포함합니다.
클라이언트는 추가 메시지를 보내기 전에 BidiGenerateContentSetupComplete 메시지를 기다려야 합니다.
model
string
필수 항목입니다. 모델의 리소스 이름입니다. 이는 사용할 모델의 ID 역할을 합니다.
형식: models/{model}
generationConfig
object (GenerationConfig)
선택사항입니다. 생성 구성
다음 필드는 지원되지 않습니다.
responseLogprobsresponseMimeTypelogprobsresponseSchemaresponseJsonSchemastop_sequenceskipResponseCacherouting_configaudio_timestamp
systemInstruction
object (Content)
선택사항입니다. 사용자가 모델의 시스템 지침을 제공했습니다.
참고: 부분에는 텍스트만 사용해야 하며 각 부분의 콘텐츠는 별도의 단락에 위치합니다.
tools[]
object (Tool)
선택사항입니다. 모델이 다음 응답을 생성하는 데 사용할 수 있는 Tools 목록입니다.
Tool은 시스템이 모델의 지식과 범위를 벗어나 외부 시스템과 상호작용하여 작업 또는 작업 집합을 수행할 수 있도록 하는 코드 조각입니다.
realtimeInputConfig
object (RealtimeInputConfig)
선택사항입니다. 실시간 입력 처리를 구성합니다.
sessionResumption
object (SessionResumptionConfig)
선택사항입니다. 세션 재개 메커니즘을 구성합니다.
포함된 경우 서버는 SessionResumptionUpdate 메시지를 전송합니다.
contextWindowCompression
object (ContextWindowCompressionConfig)
선택사항입니다. 컨텍스트 윈도우 압축 메커니즘을 구성합니다.
포함된 경우 서버는 구성된 길이를 초과하면 컨텍스트 크기를 자동으로 줄입니다.
inputAudioTranscription
object (AudioTranscriptionConfig)
선택사항입니다. 설정된 경우 음성 입력의 스크립트 작성을 사용 설정합니다. 스크립트 작성은 구성된 경우 입력 오디오 언어와 일치합니다.
outputAudioTranscription
object (AudioTranscriptionConfig)
선택사항입니다. 설정된 경우 모델의 오디오 출력의 스크립트 작성을 사용 설정합니다. 스크립트 작성은 구성된 경우 출력 오디오에 지정된 언어 코드와 일치합니다.
historyConfig
object (HistoryConfig)
선택사항입니다. 클라이언트와 서버 간의 기록 교환을 구성합니다.
| JSON 표현 |
|---|
{ "model": string, "generationConfig": { object ( |
GenerationConfig
모델 생성 및 출력의 구성 옵션입니다. 모델에 따라 구성할 수 없는 파라미터가 있습니다.
stopSequences[]
string
선택사항입니다. 출력 생성을 중지하는 문자 시퀀스 집합입니다 (최대 5개). 지정된 경우 API는 stop_sequence이 처음 표시되는 위치에서 중지됩니다. 중지 시퀀스는 응답에 포함되지 않습니다.
responseMimeType
string
선택사항입니다. 생성된 후보 텍스트의 MIME 유형입니다. 지원되는 MIME 유형은 다음과 같습니다. text/plain: (기본값) 텍스트 출력입니다. application/json: 대답 후보의 JSON 응답입니다. text/x.enum: 응답 후보의 문자열 응답으로 된 ENUM입니다. 지원되는 모든 텍스트 MIME 유형 목록은 문서를 참고하세요.
responseSchema
(deprecated)
object (Schema)
선택사항입니다. 생성된 후보 텍스트의 출력 스키마입니다. 스키마는 OpenAPI 스키마의 하위 집합이어야 하며 객체, 기본 유형 또는 배열일 수 있습니다.
설정된 경우 호환되는 responseMimeType도 설정해야 합니다. 호환되는 MIME 유형: application/json: JSON 응답의 스키마입니다. 자세한 내용은 JSON 텍스트 생성 가이드를 참고하세요.
_responseJsonSchema
(deprecated)
value (Value format)
선택사항입니다. 생성된 대답의 출력 스키마입니다. JSON 스키마를 허용하는 responseSchema의 대안입니다.
설정된 경우 responseSchema는 생략해야 하지만 responseMimeType는 필수입니다.
전체 JSON 스키마를 전송할 수 있지만 일부 기능은 지원되지 않습니다. 구체적으로 다음 속성만 지원됩니다.
$id$defs$ref$anchortypeformattitledescriptionenum(문자열 및 숫자)itemsprefixItemsminItemsmaxItemsminimummaximumanyOfoneOf(anyOf과 동일하게 해석됨)propertiesadditionalPropertiesrequired
비표준 propertyOrdering 속성도 설정할 수 있습니다.
순환 참조는 제한된 수준으로 펼쳐지므로 필수가 아닌 속성 내에서만 사용할 수 있습니다. (Nullable 속성으로는 충분하지 않습니다.) $ref이 하위 스키마에 설정된 경우 $로 시작하는 속성을 제외한 다른 속성은 설정할 수 없습니다.
responseJsonSchema
value (Value format)
선택사항입니다. 내부 세부정보입니다. 이 필드 대신 responseJsonSchema를 사용하세요.
responseModalities[]
enum (Modality)
선택사항입니다. 요청된 대답의 모달리티입니다. 모델이 반환할 수 있고 대답에서 예상해야 하는 모달리티 집합을 나타냅니다. 이는 대답의 모달리티와 정확히 일치합니다.
모델은 지원되는 여러 모달리티 조합을 가질 수 있습니다. 요청된 모달리티가 지원되는 조합과 일치하지 않으면 오류가 반환됩니다.
빈 목록은 텍스트만 요청하는 것과 같습니다.
candidateCount
integer
선택사항입니다. 반환할 생성된 응답 수입니다. 설정하지 않으면 기본값은 1입니다. 이 기능은 이전 세대 모델 (Gemini 1.0 제품군)에서는 작동하지 않습니다.
maxOutputTokens
integer
선택사항입니다. 대답 후보에 포함할 최대 토큰 수입니다.
참고: 기본값은 모델에 따라 다릅니다. getModel 함수에서 반환된 Model의 Model.output_token_limit 속성을 참고하세요.
temperature
number
선택사항입니다. 출력의 무작위성을 제어합니다.
참고: 기본값은 모델에 따라 다릅니다. getModel 함수에서 반환된 Model의 Model.temperature 속성을 참고하세요.
값의 범위는 [0.0, 2.0]입니다.
topP
number
선택사항입니다. 샘플링 시 고려할 토큰의 최대 누적 확률입니다.
모델은 결합된 Top-k 및 Top-p (핵) 샘플링을 사용합니다.
토큰은 할당된 확률에 따라 정렬되므로 가능성이 가장 높은 토큰만 고려됩니다. Top-k 샘플링은 고려할 최대 토큰 수를 직접 제한하는 반면, 핵 샘플링은 누적 확률을 기반으로 토큰 수를 제한합니다.
참고: 기본값은 Model에 따라 다르며 getModel 함수에서 반환된 Model.top_p 속성으로 지정됩니다. topK 속성이 비어 있으면 모델이 상위 k 샘플링을 적용하지 않으며 요청에서 topK 설정을 허용하지 않음을 나타냅니다.
topK
integer
선택사항입니다. 샘플링 시 고려할 최대 토큰 수입니다.
Gemini 모델은 Top-p (핵) 샘플링 또는 Top-k와 핵 샘플링의 조합을 사용합니다. Top-k 샘플링은 topK가장 가능성이 높은 토큰의 집합을 고려합니다. 핵 샘플링으로 실행되는 모델은 topK 설정을 허용하지 않습니다.
참고: 기본값은 Model에 따라 다르며 getModel 함수에서 반환된 Model.top_p 속성으로 지정됩니다. topK 속성이 비어 있으면 모델이 상위 k 샘플링을 적용하지 않으며 요청에서 topK 설정을 허용하지 않음을 나타냅니다.
seed
integer
선택사항입니다. 디코딩에 사용된 시드입니다. 설정하지 않으면 요청에서 무작위로 생성된 시드를 사용합니다.
presencePenalty
number
선택사항입니다. 토큰이 이미 대답에 표시된 경우 다음 토큰의 logprobs에 적용되는 존재 페널티입니다.
이 페널티는 이진 온/오프이며 토큰이 사용된 횟수 (첫 번째 이후)와는 관련이 없습니다. 사용할 때마다 증가하는 페널티에는 frequencyPenalty를 사용합니다.
긍정적 페널티는 이미 대답에 사용된 토큰의 사용을 방지하여 어휘를 늘립니다.
부정적 페널티는 대답에 이미 사용된 토큰의 사용을 장려하여 어휘를 줄입니다.
frequencyPenalty
number
선택사항입니다. 다음 토큰의 로그 확률에 적용되는 빈도 페널티로, 지금까지 대답에서 각 토큰이 표시된 횟수를 곱합니다.
긍정적 페널티는 이미 사용된 토큰의 사용을 억제하며, 토큰이 사용된 횟수에 비례합니다. 토큰이 많이 사용될수록 모델이 해당 토큰을 다시 사용하기가 더 어려워져 응답의 어휘가 늘어납니다.
주의: 음수 페널티는 토큰이 사용된 횟수에 비례하여 토큰을 재사용하도록 모델을 유도합니다. 작은 음수 값은 대답의 어휘를 줄입니다. 음수 값이 클수록 모델이 maxOutputTokens 한도에 도달할 때까지 일반적인 토큰을 반복하게 됩니다.
responseLogprobs
boolean
선택사항입니다. true인 경우 응답에 logprobs 결과를 내보냅니다.
logprobs
integer
선택사항입니다. responseLogprobs=True인 경우에만 유효합니다. 이렇게 하면 선택된 후보를 포함하여 Candidate.logprobs_result의 각 디코딩 단계에서 반환할 상위 로그 확률 수가 설정됩니다. 숫자는 [0, 20] 범위에 있어야 합니다.
enableEnhancedCivicAnswers
boolean
선택사항입니다. 향상된 시민 답변을 사용 설정합니다. 일부 모델에서는 이 기능을 사용하지 못할 수도 있습니다.
speechConfig
object (SpeechConfig)
선택사항입니다. 음성 생성 구성입니다.
thinkingConfig
object (ThinkingConfig)
선택사항입니다. 사고 기능 구성입니다. 사고를 지원하지 않는 모델에 이 필드를 설정하면 오류가 반환됩니다.
imageConfig
object (ImageConfig)
선택사항입니다. 이미지 생성 구성입니다. 이 필드가 이러한 구성 옵션을 지원하지 않는 모델에 설정되면 오류가 반환됩니다.
mediaResolution
enum (MediaResolution)
선택사항입니다. 지정된 경우 지정된 미디어 해상도가 사용됩니다.
enableAffectiveDialog
boolean
선택사항입니다. 사용 설정하면 모델이 감정을 감지하고 그에 따라 대답을 조정합니다.
responseFormat
object (ResponseFormatConfig)
선택사항입니다. 대답 출력 형식의 구성입니다. 플랫 구조에서 모달리티 (텍스트, 오디오, 이미지)별 출력 구성을 지정할 수 있습니다.
translationConfig
object (TranslationConfig)
선택사항입니다. 변환 구성입니다.
audioTranscriptionConfig
object (AudioTranscriptionConfig)
선택사항입니다. 오디오 스크립트 작성 (음성 인식) 구성입니다.
| JSON 표현 |
|---|
{ "stopSequences": [ string ], "responseMimeType": string, "responseSchema": { object ( |
형식
대답의 지원되는 모달리티입니다.
| 열거형 | |
|---|---|
MODALITY_UNSPECIFIED |
기본값 |
TEXT |
모델이 텍스트를 반환해야 함을 나타냅니다. |
IMAGE |
모델이 이미지를 반환해야 함을 나타냅니다. |
AUDIO |
모델이 오디오를 반환해야 함을 나타냅니다. |
SpeechConfig
음성 생성 및 스크립트 작성 구성입니다.
voiceConfig
object (VoiceConfig)
단일 음성 출력의 경우 구성입니다.
multiSpeakerVoiceConfig
object (MultiSpeakerVoiceConfig)
선택사항입니다. 다중 스피커 설정의 구성입니다. voiceConfig 필드와 상호 배타적입니다.
languageCode
string
선택사항입니다. 사용자가 앱에서 사용하도록 구성한 IETF BCP-47 언어 코드입니다. 음성 인식 및 합성에 사용됩니다.
유효한 값은 de-DE, en-AU, en-GB, en-IN, en-US, es-US, fr-FR, hi-IN, pt-BR, ar-XA, es-ES, fr-CA, id-ID, it-IT, ja-JP, tr-TR, vi-VN, bn-IN, gu-IN, kn-IN, ml-IN, mr-IN, ta-IN, te-IN, nl-NL, ko-KR, cmn-CN, pl-PL, ru-RU, th-TH입니다.
| JSON 표현 |
|---|
{ "voiceConfig": { object ( |
VoiceConfig
사용할 음성의 구성입니다.
voice_config
Union type
voice_config는 다음 중 하나여야 합니다.prebuiltVoiceConfig
object (PrebuiltVoiceConfig)
사용할 사전 빌드된 음성의 구성입니다.
| JSON 표현 |
|---|
{
// voice_config
"prebuiltVoiceConfig": {
object ( |
PrebuiltVoiceConfig
사용할 사전 빌드된 스피커의 구성입니다.
voiceName
string
사용할 사전 설정된 음성의 이름입니다.
| JSON 표현 |
|---|
{ "voiceName": string } |
MultiSpeakerVoiceConfig
다중 스피커 설정의 구성입니다.
speakerVoiceConfigs[]
object (SpeakerVoiceConfig)
필수 항목입니다. 사용 설정된 모든 스피커 음성입니다.
| JSON 표현 |
|---|
{
"speakerVoiceConfigs": [
{
object ( |
SpeakerVoiceConfig
다중 스피커 설정에서 단일 스피커의 구성입니다.
speaker
string
필수 항목입니다. 사용할 스피커의 이름입니다. 프롬프트와 동일해야 합니다.
voiceConfig
object (VoiceConfig)
필수 항목입니다. 사용할 음성의 구성입니다.
| JSON 표현 |
|---|
{
"speaker": string,
"voiceConfig": {
object ( |
ThinkingConfig
사고 기능 구성입니다.
includeThoughts
boolean
대답에 생각을 포함할지 여부를 나타냅니다. true인 경우 생각이 사용 가능한 경우에만 반환됩니다.
thinkingBudget
integer
모델이 생성해야 하는 사고 토큰 수입니다.
thinkingLevel
enum (ThinkingLevel)
선택사항입니다. 모델이 대답을 생성하기 전 내부 추론 프로세스의 최대 깊이를 제어합니다. 기본값은 모델에 따라 다릅니다. 자세한 내용은 사고 수준 가이드를 참고하세요. Gemini 3 이상 모델에 권장됩니다. 이전 모델과 함께 사용하면 오류가 발생합니다.
| JSON 표현 |
|---|
{
"includeThoughts": boolean,
"thinkingBudget": integer,
"thinkingLevel": enum ( |
ThinkingLevel
사용자가 정수 예산 대신 enum을 사용하여 생각할 양을 지정할 수 있도록 허용
| 열거형 | |
|---|---|
THINKING_LEVEL_UNSPECIFIED |
기본값 |
MINIMAL |
생각할 필요가 거의 없습니다. |
LOW |
사고 수준이 낮습니다. |
MEDIUM |
중간 사고 수준입니다. |
HIGH |
높은 사고 수준 |
ImageConfig
이미지 생성 기능의 구성입니다.
aspectRatio
string
선택사항입니다. 생성할 이미지의 가로세로 비율입니다. 지원되는 가로세로 비율: 1:1, 1:4, 4:1, 1:8, 8:1, 2:3, 3:2, 3:4, 4:3, 4:5, 5:4, 9:16, 16:9, 21:9
지정하지 않으면 모델이 제공된 참조 이미지를 기반으로 기본 가로세로 비율을 선택합니다.
imageSize
string
선택사항입니다. 생성된 이미지의 크기를 지정합니다. 지원되는 값은 512, 1K, 2K, 4K입니다. 지정하지 않으면 모델에서 기본값 1K을 사용합니다.
| JSON 표현 |
|---|
{ "aspectRatio": string, "imageSize": string } |
MediaResolution
입력 미디어의 미디어 해상도입니다.
| 열거형 | |
|---|---|
MEDIA_RESOLUTION_UNSPECIFIED |
미디어 해상도가 설정되지 않았습니다. |
MEDIA_RESOLUTION_LOW |
미디어 해상도가 낮음 (64개 토큰)으로 설정되어 있습니다. |
MEDIA_RESOLUTION_MEDIUM |
미디어 해상도가 중간 (256개 토큰)으로 설정되어 있습니다. |
MEDIA_RESOLUTION_HIGH |
미디어 해상도가 높음으로 설정됨 (256개 토큰으로 확대된 프레임 조정). |
ResponseFormatConfig
대답 출력 형식의 구성입니다. 이는 각 선택적 하위 필드가 특정 출력 모달리티를 구성하는 플랫 객체입니다.
text
object (TextResponseFormat)
선택사항입니다. 텍스트 출력 형식 구성입니다.
audio
object (AudioResponseFormat)
선택사항입니다. 오디오 출력 형식 구성입니다.
image
object (ImageResponseFormat)
선택사항입니다. 이미지 출력 형식 구성입니다.
| JSON 표현 |
|---|
{ "text": { object ( |
TextResponseFormat
MimeType
텍스트 출력에 지원되는 MIME 유형입니다.
| 열거형 | |
|---|---|
MIME_TYPE_UNSPECIFIED |
기본값 이 값은 사용되지 않습니다. |
APPLICATION_JSON |
JSON 출력 형식입니다. |
TEXT_PLAIN |
일반 텍스트 출력 형식입니다. |
AudioResponseFormat
MimeType
오디오 출력에 지원되는 MIME 유형입니다.
| 열거형 | |
|---|---|
MIME_TYPE_UNSPECIFIED |
기본값 이 값은 사용되지 않습니다. |
AUDIO_MP3 |
MP3 오디오 형식입니다. |
AUDIO_OGG_OPUS |
OGG Opus 오디오 형식입니다. |
AUDIO_L16 |
원시 PCM (L16) 오디오 형식입니다. |
AUDIO_WAV |
WAV 오디오 형식입니다. |
AUDIO_ALAW |
A-law 오디오 형식입니다. |
AUDIO_MULAW |
Mu-law 오디오 형식입니다. |
배달
오디오 출력의 게재 모드입니다.
| 열거형 | |
|---|---|
DELIVERY_UNSPECIFIED |
기본값 이 값은 사용되지 않습니다. |
INLINE |
오디오 데이터가 응답에 인라인으로 반환됩니다. |
URI |
오디오 데이터가 URI로 반환됩니다. |
ImageResponseFormat
이미지 출력 형식 구성입니다.
mimeType
enum (MimeType)
선택사항입니다. 이미지 출력의 MIME 유형입니다.
delivery
enum (Delivery)
선택사항입니다. 이미지 출력의 게재 모드입니다.
aspectRatio
enum (AspectRatio)
선택사항입니다. 이미지 출력의 가로세로 비율입니다.
imageSize
enum (ImageSize)
선택사항입니다. 이미지 출력의 크기입니다.
| JSON 표현 |
|---|
{ "mimeType": enum ( |
MimeType
이미지 출력에 지원되는 MIME 유형입니다.
| 열거형 | |
|---|---|
MIME_TYPE_UNSPECIFIED |
기본값 이 값은 사용되지 않습니다. |
IMAGE_JPEG |
JPEG 이미지 형식 |
배달
이미지 출력의 게재 모드입니다.
| 열거형 | |
|---|---|
DELIVERY_UNSPECIFIED |
기본값 이 값은 사용되지 않습니다. |
INLINE |
이미지 데이터가 응답에 인라인으로 반환됩니다. |
URI |
이미지 데이터는 URI로 반환됩니다. |
AspectRatio
이미지 출력에 지원되는 가로세로 비율입니다.
| 열거형 | |
|---|---|
ASPECT_RATIO_UNSPECIFIED |
기본값 이 값은 사용되지 않습니다. |
ASPECT_RATIO_ONE_BY_ONE |
가로세로 비율 1:1 |
ASPECT_RATIO_TWO_BY_THREE |
가로세로 비율 2:3 |
ASPECT_RATIO_THREE_BY_TWO |
3:2 가로세로 비율 |
ASPECT_RATIO_THREE_BY_FOUR |
3:4 가로세로 비율 |
ASPECT_RATIO_FOUR_BY_THREE |
4:3 가로세로 비율 |
ASPECT_RATIO_FOUR_BY_FIVE |
가로세로 비율 4:5 |
ASPECT_RATIO_FIVE_BY_FOUR |
가로세로 비율 5:4 |
ASPECT_RATIO_NINE_BY_SIXTEEN |
가로세로 비율 9:16 |
ASPECT_RATIO_SIXTEEN_BY_NINE |
가로세로 비율 16:9 |
ASPECT_RATIO_TWENTY_ONE_BY_NINE |
가로세로 비율 21:9 |
ASPECT_RATIO_ONE_BY_EIGHT |
가로세로 비율 1:8 |
ASPECT_RATIO_EIGHT_BY_ONE |
가로세로 비율 8:1 |
ASPECT_RATIO_ONE_BY_FOUR |
1:4 가로세로 비율 |
ASPECT_RATIO_FOUR_BY_ONE |
가로세로 비율 4:1 |
ImageSize
이미지 출력에 지원되는 이미지 크기입니다.
| 열거형 | |
|---|---|
IMAGE_SIZE_UNSPECIFIED |
기본값 이 값은 사용되지 않습니다. |
IMAGE_SIZE_FIVE_TWELVE |
512px 이미지 크기 |
IMAGE_SIZE_ONE_K |
1K 이미지 크기입니다. |
IMAGE_SIZE_TWO_K |
2K 이미지 크기입니다. |
IMAGE_SIZE_FOUR_K |
4K 이미지 크기입니다. |
TranslationConfig
번역 기능 구성입니다.
targetLanguageCode
string
필수 항목입니다. 번역의 도착어입니다. 지원되는 값은 BCP-47 언어 코드 (예: 'en', 'es', 'fr')입니다.
echoTargetLanguage
boolean
선택사항입니다. true인 경우 모델은 대상 언어가 말해질 때 오디오를 생성합니다. 즉, 입력을 그대로 따라 합니다. false인 경우 대상 언어의 오디오가 생성되지 않습니다.
| JSON 표현 |
|---|
{ "targetLanguageCode": string, "echoTargetLanguage": boolean } |
AudioTranscriptionConfig
오디오 스크립트 작성 구성입니다.
languageCodes[]
string
선택사항입니다. 오디오에 있는 언어에 관한 힌트를 제공하는 BCP-47 언어 코드입니다. 생략하거나 비워두면 자동 언어 감지가 기본값으로 설정됩니다.
adaptationPhrases[]
(deprecated)
string
선택사항입니다. 음성 적응에 사용되는 문구 목록으로, 이러한 특정 용어의 인식을 개선하기 위해 ASR 모델을 편향시킵니다.
customVocabulary[]
string
선택사항입니다. 음성 인식 모델이 특정 용어 (제품 이름, 고유명사, 전문 용어)를 인식하도록 편향시키는 맞춤 어휘 문구 목록입니다.
wordTimestamp
boolean
선택사항입니다. 단어 수준 타임스탬프 생성을 구성합니다.
diarization
boolean
선택사항입니다. 화자 분할을 구성합니다.
language_config
Union type
language_codes을 사용하세요. language_config은 다음 중 하나여야 합니다.languageAuto
(deprecated)
object (LanguageAuto)
선택사항입니다. 모델이 언어를 자동으로 감지합니다.
languageHints
(deprecated)
object (LanguageHints)
선택사항입니다. 오디오의 언어를 하나 이상 지정합니다.
| JSON 표현 |
|---|
{ "languageCodes": [ string ], "adaptationPhrases": [ string ], "customVocabulary": [ string ], "wordTimestamp": boolean, "diarization": boolean, // language_config "languageAuto": { object ( |
LanguageAuto
이 유형에는 필드가 없습니다.
오디오의 언어가 자동으로 감지되어야 함을 나타냅니다.
LanguageHints
오디오에 있을 수 있는 언어에 관한 힌트를 모델에 제공합니다.
languageCodes[]
(deprecated)
string
필수 항목입니다. BCP-47 언어 코드입니다.
| JSON 표현 |
|---|
{ "languageCodes": [ string ] } |
RealtimeInputConfig
BidiGenerateContent에서 실시간 입력 동작을 구성합니다.
automaticActivityDetection
object (AutomaticActivityDetection)
선택사항입니다. 설정하지 않으면 자동 활동 감지가 기본적으로 사용 설정됩니다. 자동 음성 감지가 사용 중지된 경우 클라이언트는 활동 신호를 전송해야 합니다.
activityHandling
enum (ActivityHandling)
(선택사항) 활동이 미치는 영향을 정의합니다.
turnCoverage
enum (TurnCoverage)
(선택사항) 사용자 턴에 포함된 입력을 정의합니다.
| JSON 표현 |
|---|
{ "automaticActivityDetection": { object ( |
AutomaticActivityDetection
활동의 자동 감지를 구성합니다.
disabled
boolean
선택사항입니다. 사용 설정된 경우 (기본값) 감지된 음성 및 텍스트 입력이 활동으로 간주됩니다. 사용 중지된 경우 클라이언트는 활동 신호를 전송해야 합니다.
startOfSpeechSensitivity
enum (StartSensitivity)
선택사항입니다. 음성이 감지될 가능성을 결정합니다.
prefixPaddingMs
integer
선택사항입니다. 음성 시작이 커밋되기 전 감지된 음성의 필수 지속 시간입니다. 이 값이 낮을수록 음성 시작 감도가 높아지고 더 짧은 음성을 인식할 수 있습니다. 하지만 이렇게 하면 거짓양성이 발생할 가능성도 높아집니다.
endOfSpeechSensitivity
enum (EndSensitivity)
선택사항입니다. 감지된 음성이 종료될 가능성을 결정합니다.
silenceDurationMs
integer
선택사항입니다. 음성 종료가 커밋되기 전 감지된 비음성 (예: 무음)의 필수 지속 시간입니다. 이 값이 클수록 사용자의 활동을 방해하지 않고도 음성 간격을 더 길게 할 수 있지만 모델의 지연 시간이 늘어납니다.
| JSON 표현 |
|---|
{ "disabled": boolean, "startOfSpeechSensitivity": enum ( |
StartSensitivity
음성 시작이 감지되는 방식을 결정합니다.
| 열거형 | |
|---|---|
START_SENSITIVITY_UNSPECIFIED |
기본값은 START_SENSITIVITY_HIGH입니다. |
START_SENSITIVITY_HIGH |
자동 감지 기능은 음성 시작을 더 많은 빈도로 감지합니다. |
START_SENSITIVITY_LOW |
자동 감지 기능은 음성 시작을 더 적은 빈도로 감지합니다. |
EndSensitivity
음성 종료를 감지하는 방법을 결정합니다.
| 열거형 | |
|---|---|
END_SENSITIVITY_UNSPECIFIED |
기본값은 END_SENSITIVITY_HIGH입니다. |
END_SENSITIVITY_HIGH |
자동 감지 기능은 음성을 더 많은 빈도로 종료합니다. |
END_SENSITIVITY_LOW |
자동 감지 기능은 음성을 더 적은 빈도로 종료합니다. |
ActivityHandling
사용자 활동을 처리하는 다양한 방법입니다.
| 열거형 | |
|---|---|
ACTIVITY_HANDLING_UNSPECIFIED |
지정되지 않은 경우 기본 동작은 START_OF_ACTIVITY_INTERRUPTS입니다. |
START_OF_ACTIVITY_INTERRUPTS |
true인 경우 활동 시작이 모델의 응답을 중단시킵니다('끼어들기'라고도 함). 중단되는 순간 모델의 현재 응답이 잘립니다. 기본 동작으로 설정되어 있습니다. |
NO_INTERRUPTION |
모델의 응답이 중단되지 않습니다. |
TurnCoverage
사용자 턴에 포함되는 입력에 관한 옵션입니다.
| 열거형 | |
|---|---|
TURN_COVERAGE_UNSPECIFIED |
지정하지 않으면 모델에 따라 기본 동작이 선택됩니다. 예를 들어 Gemini 2.5의 기본값은 TURN_INCLUDES_ONLY_ACTIVITY이고 Gemini 3.1 이상의 기본값은 TURN_INCLUDES_AUDIO_ACTIVITY_AND_ALL_VIDEO입니다. |
TURN_INCLUDES_ONLY_ACTIVITY |
마지막 턴 이후의 활동이 포함되며 비활성 상태 (예: 무음의 오디오 스트림)는 제외됩니다. |
TURN_INCLUDES_ALL_INPUT |
비활성 상태 (예: 무음의 오디오 스트림)를 포함하여 마지막 턴 이후의 모든 실시간 입력이 포함됩니다. |
TURN_INCLUDES_AUDIO_ACTIVITY_AND_ALL_VIDEO |
오디오 활동과 마지막 턴 이후의 모든 동영상이 포함됩니다. 자동 활동 감지에서 오디오 활동은 음성을 의미하며 무음은 제외됩니다. |
SessionResumptionConfig
세션 재개 구성입니다.
이 메시지는 세션 구성에 BidiGenerateContentSetup.session_resumption로 포함됩니다. 구성된 경우 서버는 SessionResumptionUpdate 메시지를 전송합니다.
handle
string
이전 세션의 핸들입니다. 값이 없으면 새 세션이 생성됩니다.
세션 핸들은 이전 연결의 SessionResumptionUpdate.token 값에서 가져옵니다.
| JSON 표현 |
|---|
{ "handle": string } |
ContextWindowCompressionConfig
컨텍스트 윈도우 압축을 사용 설정합니다. 컨텍스트 윈도우 압축은 모델의 컨텍스트 윈도우가 지정된 길이를 초과하지 않도록 관리하는 메커니즘입니다.
compression_mechanism
Union type
compression_mechanism는 다음 중 하나여야 합니다.slidingWindow
object (SlidingWindow)
슬라이딩 윈도우 메커니즘
triggerTokens
string (int64 format)
컨텍스트 윈도우 압축을 트리거하는 데 필요한 토큰 수 (턴 실행 전)입니다.
짧은 컨텍스트 윈도우는 모델 응답 속도를 높일 수 있으므로 이를 사용하여 지연 시간 대비 품질의 균형을 맞출 수 있습니다. 하지만 압축 작업은 일시적인 지연 시간 증가를 유발하므로 자주 트리거해서는 안 됩니다.
설정하지 않으면 모델의 컨텍스트 윈도우 한도의 80% 가 기본값입니다. 따라서 다음 사용자 요청/모델 응답에 20% 가 남습니다.
| JSON 표현 |
|---|
{
// compression_mechanism
"slidingWindow": {
object ( |
SlidingWindow
SlidingWindow 메서드는 컨텍스트 윈도우의 시작 부분에 있는 콘텐츠를 삭제하여 작동합니다. 결과 컨텍스트는 항상 USER 역할 턴의 시작 부분에서 시작됩니다. 시스템 안내와 BidiGenerateContentSetup.prefix_turns은 항상 결과의 시작 부분에 유지됩니다.
targetTokens
string (int64 format)
유지할 토큰의 타겟 수입니다. 기본값은 triggerTokens/2입니다.
컨텍스트 윈도우의 일부를 삭제하면 일시적으로 지연 시간이 증가하므로 빈번한 압축 작업을 방지하도록 이 값을 보정해야 합니다.
| JSON 표현 |
|---|
{ "targetTokens": string } |
HistoryConfig
기록 구성입니다.
이 메시지는 세션 구성에 BidiGenerateContentSetup.history_config로 포함됩니다. 기록 메시지 교환을 구성합니다.
initialHistoryInClientContent
boolean
선택사항입니다. true인 경우 setupComplete를 전송한 후 서버는 turnComplete가 true가 될 때까지 기다리며 처음에는 clientContent 메시지를 처리합니다. 이 초기 기록은 모델 호출을 트리거하지 않으며 역할이 MODEL로 끝날 수 있습니다. turnComplete이 true이면 클라이언트는 realtimeInput를 통해 실시간 대화를 시작할 수 있습니다.
| JSON 표현 |
|---|
{ "initialHistoryInClientContent": boolean } |
메서드: auth_tokens.create
BidiGenerateContent 세션의 동작을 제한하는 데 사용할 수 있는 토큰을 만듭니다.
엔드포인트
posthttps: / /generativelanguage.googleapis.com /v1beta /auth_tokens
요청 본문
요청 본문에 AuthToken의 인스턴스가 포함됩니다.
expireTime
string (Timestamp format)
선택사항입니다. 입력 전용입니다. 변경할 수 없습니다. 결과 토큰을 사용할 때 BidiGenerateContent 세션의 메시지가 거부되는 선택적 시간입니다. (이 시간이 지나면 Gemini가 선제적으로 세션을 종료할 수 있습니다.)
설정하지 않으면 기본적으로 30분 후로 설정됩니다. 설정된 경우 이 값은 20시간 이내의 미래여야 합니다.
생성된 출력은 항상 Z-정규화되고 소수점 이하 0, 3, 6 또는 9자리인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" 또는 "2014-10-02T15:01:23+05:30"입니다.
newSessionExpireTime
string (Timestamp format)
선택사항입니다. 입력 전용입니다. 변경할 수 없습니다. 이 요청으로 생성된 토큰을 사용하는 새 Live API 세션이 거부되는 시간입니다.
설정하지 않으면 기본값은 60초 후로 설정됩니다. 설정된 경우 이 값은 20시간 이내의 미래여야 합니다.
생성된 출력은 항상 Z-정규화되고 소수점 이하 0, 3, 6 또는 9자리인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" 또는 "2014-10-02T15:01:23+05:30"입니다.
fieldMask
string (FieldMask format)
선택사항입니다. 입력 전용입니다. 변경할 수 없습니다. fieldMask가 비어 있고 bidiGenerateContentSetup가 없으면 유효한 BidiGenerateContentSetup 메시지가 Live API 연결에서 가져옵니다.
fieldMask가 비어 있고 bidiGenerateContentSetup이 있으면 이 요청에서 유효한 BidiGenerateContentSetup 메시지가 bidiGenerateContentSetup에서 완전히 가져옵니다. Live API 연결의 설정 메시지가 무시됩니다.
fieldMask가 비어 있지 않으면 bidiGenerateContentSetup의 해당 필드가 Live API 연결의 설정 메시지 필드를 덮어씁니다.
정규화된 필드 이름의 쉼표로 구분된 목록입니다. 예: "user.displayName,photo"
config
Union type
config는 다음 중 하나여야 합니다.bidiGenerateContentSetup
object (BidiGenerateContentSetup)
선택사항입니다. 입력 전용입니다. 변경할 수 없습니다. BidiGenerateContent 관련 구성입니다.
uses
integer
선택사항입니다. 입력 전용입니다. 변경할 수 없습니다. 토큰을 사용할 수 있는 횟수입니다. 이 값이 0이면 제한이 적용되지 않습니다. Live API 세션을 재개하는 것은 사용으로 간주되지 않습니다. 지정하지 않으면 기본값은 1입니다.
응답 본문
성공한 경우 응답 본문에 새로 생성된 AuthToken의 인스턴스가 포함됩니다.