Gemini API 支持生成包含图片、音频、代码、工具等多种形式的内容。如需详细了解这些功能,请继续阅读并查看以任务为中心的示例代码,或阅读全面的指南。
方法:models.generateContent
根据输入 GenerateContentRequest 生成模型回答。如需了解详细的使用信息,请参阅文本生成指南。输入功能因模型而异,包括调优后的模型。如需了解详情,请参阅模型指南和调优指南。
端点
posthttps: / /generativelanguage.googleapis.com /v1beta /{model=models /*}:generateContent
路径参数
model
string
必需。用于生成补全的 Model 的名称。
格式:models/{model}。格式为 models/{model}。
请求正文
请求正文中包含结构如下的数据:
contents[]
object (Content)
必需。与模型当前对话的内容。
对于单轮查询,这是单个实例。对于多轮查询(例如聊天),这是包含对话历史记录和最新请求的重复字段。
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 应用中纳入安全考虑因素。
systemInstruction
object (Content)
可选。开发者设置了系统指令。目前仅支持文本。
generationConfig
object (GenerationConfig)
可选。模型生成和输出的配置选项。
cachedContent
string
可选。用作提供预测的上下文的缓存内容的名称。格式:cachedContents/{cachedContent}
serviceTier
enum (ServiceTier)
可选。相应请求的服务层级。
store
boolean
可选。为指定请求配置日志记录行为。如果设置了此配置,则其优先级高于项目级日志记录配置。
示例请求
文本
Python
Node.js
Go
Shell
Java
映像
Python
Node.js
Go
Shell
Java
音频
Python
Node.js
Go
Shell
视频
Python
Node.js
Go
Shell
Python
Go
Shell
聊天
Python
Node.js
Go
Shell
Java
缓存
Python
Node.js
Go
经调整的模型
Python
JSON 模式
Python
Node.js
Go
Shell
Java
代码执行
Python
Go
Java
函数调用
Python
Go
Node.js
Shell
Java
生成配置
Python
Node.js
Go
Shell
Java
安全设置
Python
Node.js
Go
Shell
Java
系统指令
Python
Node.js
Go
Shell
Java
响应正文
如果成功,则响应正文包含一个 GenerateContentResponse 实例。
方法:models.streamGenerateContent
根据输入 GenerateContentRequest 从模型生成流式回答。
端点
posthttps: / /generativelanguage.googleapis.com /v1beta /{model=models /*}:streamGenerateContent
路径参数
model
string
必需。用于生成补全的 Model 的名称。
格式:models/{model}。格式为 models/{model}。
请求正文
请求正文中包含结构如下的数据:
contents[]
object (Content)
必需。与模型当前对话的内容。
对于单轮查询,这是单个实例。对于多轮查询(例如聊天),这是包含对话历史记录和最新请求的重复字段。
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 应用中纳入安全考虑因素。
systemInstruction
object (Content)
可选。开发者设置了系统指令。目前仅支持文本。
generationConfig
object (GenerationConfig)
可选。模型生成和输出的配置选项。
cachedContent
string
可选。用作提供预测的上下文的缓存内容的名称。格式:cachedContents/{cachedContent}
serviceTier
enum (ServiceTier)
可选。相应请求的服务层级。
store
boolean
可选。为指定请求配置日志记录行为。如果设置了此配置,则其优先级高于项目级日志记录配置。
示例请求
文本
Python
Node.js
Go
Shell
Java
映像
Python
Node.js
Go
Shell
Java
音频
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)
仅限输出。有关生成请求的 token 使用情况的元数据。
modelVersion
string
仅限输出。用于生成回答的模型版本。
responseId
string
仅限输出。responseId 用于标识每个响应。
modelStatus
object (ModelStatus)
仅限输出。相应模型的当前模型状态。
| JSON 表示法 |
|---|
{ "candidates": [ { object ( |
PromptFeedback
提示在 GenerateContentRequest.content 中指定的一组反馈元数据。
blockReason
enum (BlockReason)
可选。如果设置了此值,则提示已被屏蔽,并且不会返回任何候选结果。改述提示。
safetyRatings[]
object (SafetyRating)
提示的安全评分。每个类别最多只能有一个分级。
| JSON 表示法 |
|---|
{ "blockReason": enum ( |
BlockReason
指定屏蔽提示的原因。
| 枚举 | |
|---|---|
BLOCK_REASON_UNSPECIFIED |
默认值。此值未使用。 |
SAFETY |
出于安全原因,系统屏蔽了相应提示。检查 safetyRatings 以了解是哪个安全类别屏蔽了它。 |
OTHER |
提示因未知原因被屏蔽。 |
BLOCKLIST |
提示因包含术语屏蔽名单中的术语而被屏蔽。 |
PROHIBITED_CONTENT |
提示因包含禁止的内容而被屏蔽。 |
IMAGE_SAFETY |
因包含不安全的图片生成内容而被屏蔽的候选回答。 |
UsageMetadata
有关生成请求的令牌使用情况的元数据。
promptTokenCount
integer
提示中的 token 数量。如果设置了 cachedContent,这仍然是有效提示的总大小,这意味着它包含缓存内容中的词元数。
cachedContentTokenCount
integer
提示的缓存部分(缓存内容)中的 token 数量
candidatesTokenCount
integer
所有生成的回答候选项中的 token 总数。
toolUsePromptTokenCount
integer
仅限输出。工具使用提示中的 token 数量。
thoughtsTokenCount
integer
仅限输出。思考模型的思考 token 数。
totalTokenCount
integer
生成请求(提示 + 思路 + 回答候选内容)的总 token 数量。
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)
模型退役的时间。
采用 RFC 3339 标准,生成的输出将始终进行 Z 规范化(即转换为 UTC 零时区格式并在末尾附加 Z),并使用 0、3、6 或 9 个小数位。不进行“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
- Web
- 图片
- RetrievedContext
- CustomMetadata
- StringList
- Google 地图
- PlaceAnswerSources
- ReviewSnippet
- GroundingSupport
- Segment
- RetrievalMetadata
- LogprobsResult
- TopCandidates
- 候选版本
- UrlContextMetadata
- UrlMetadata
- UrlRetrievalStatus
模型生成的候选回答。
content
object (Content)
仅限输出。模型返回的生成内容。
finishReason
enum (FinishReason)
可选。仅限输出。模型停止生成令牌的原因。
如果为空,则模型尚未停止生成词元。
safetyRatings[]
object (SafetyRating)
响应候选项安全性的评分列表。
每个类别最多只能有一个分级。
citationMetadata
object (CitationMetadata)
仅限输出。模型生成的候选回答的引用信息。
此字段可能会填充 content 中包含的任何文本的朗读信息。这些段落是从基础 LLM 的训练数据中的受版权保护的材料中“背诵”出来的。
tokenCount
integer
仅限输出。相应候选对象的 token 数量。
groundingAttributions[]
object (GroundingAttribution)
仅限输出。为有依据的回答做出贡献的来源的提供方信息。
系统会针对 GenerateAnswer 调用填充此字段。
groundingMetadata
object (GroundingMetadata)
仅限输出。候选对象的接地元数据。
系统会针对 GenerateContent 调用填充此字段。
avgLogprobs
number
仅限输出。候选者的平均对数概率得分。
logprobsResult
object (LogprobsResult)
仅限输出。回答 token 和热门 token 的对数似然得分
urlContextMetadata
object (UrlContextMetadata)
仅限输出。与网址上下文检索工具相关的元数据。
index
integer
仅限输出。响应候选列表中的候选索引。
finishMessage
string
可选。仅限输出。详细说明了模型停止生成 token 的原因。仅当设置了 finishReason 时,才会填充此字段。
| JSON 表示法 |
|---|
{ "content": { object ( |
FinishReason
定义模型停止生成词元的原因。
| 枚举 | |
|---|---|
FINISH_REASON_UNSPECIFIED |
默认值。此值未使用。 |
STOP |
模型的自然停止点或提供的停止序列。 |
MAX_TOKENS |
已达到请求中指定的 token 数量上限。 |
SAFETY |
出于安全原因,回答候选内容被标记。 |
RECITATION |
回答候选内容因背诵原因而被标记。 |
LANGUAGE |
系统标记了候选回答内容,原因是其使用了不受支持的语言。 |
OTHER |
原因未知。 |
BLOCKLIST |
由于内容包含禁用词,因此 token 生成操作已停止。 |
PROHIBITED_CONTENT |
由于可能包含禁止的内容,因此 token 生成操作已停止。 |
SPII |
由于内容可能包含敏感的个人身份信息 (SPII),因此 token 生成操作已停止。 |
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)
通过语义检索器提取的 Chunk 的标识符。
| JSON 表示法 |
|---|
{ // source "groundingPassage": { object ( |
GroundingPassageId
GroundingPassage 中某个部分的标识符。
passageId
string
仅限输出。与 GenerateAnswerRequest 的 GroundingPassage.id 相匹配的段落的 ID。
partIndex
integer
仅限输出。相应部分在 GenerateAnswerRequest 的 GroundingPassage.content 中的索引。
| JSON 表示法 |
|---|
{ "passageId": string, "partIndex": integer } |
SemanticRetrieverChunk
通过 GenerateAnswerRequest 中指定的语义检索器使用 SemanticRetrieverConfig 检索到的 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
启用 grounding 时返回给客户端的元数据。
groundingChunks[]
object (GroundingChunk)
从指定的事实依据来源检索到的佐证参考资料列表。在流式传输时,此字段仅包含未包含在之前响应的接地元数据中的接地块。
groundingSupports[]
object (GroundingSupport)
接地支持列表。
webSearchQueries[]
string
后续网络搜索的网络搜索查询。
imageSearchQueries[]
string
用于建立依据的图片搜索查询。
searchEntryPoint
object (SearchEntryPoint)
可选。Google 搜索条目,用于后续的网页搜索。
retrievalMetadata
object (RetrievalMetadata)
与接地流程中的检索相关的元数据。
googleMapsWidgetContextToken
string
可选。Google 地图 widget 上下文令牌的资源名称,可与 PlacesContextElement widget 搭配使用,以渲染上下文数据。仅在启用“依托 Google 地图进行接地”的情况下填充。
| JSON 表示法 |
|---|
{ "groundingChunks": [ { object ( |
SearchEntryPoint
Google 搜索入口点。
renderedContent
string
可选。可嵌入网页或应用 WebView 中的 Web 内容代码段。
sdkBlob
string (bytes format)
可选。表示 <搜索字词、搜索网址> 元组数组的 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 ( |
Web
来自网页的块。
uri
string
仅限输出。块的 URI 引用。
title
string
仅限输出。块的标题。
| JSON 表示法 |
|---|
{ "uri": string, "title": string } |
映像
图片搜索中的块。
sourceUri
string
用于归因的网页 URI。
imageUri
string
图片素材资源的网址。
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 地图工具使用这些来源来回答有关地点特征的问题(例如“Bar Foo 是否提供 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 ( |
Segment
内容片段。
partIndex
integer
Part 对象在其父 Content 对象中的索引。
startIndex
integer
指定 Part 中的起始索引(以字节为单位)。从 Part 开始处的偏移量(含),从零开始。
endIndex
integer
指定 Part 中的结束索引,以字节为单位。从乐段开头开始的偏移量(不含边界值),从零开始。
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
所有 token 的对数概率之和。
| JSON 表示法 |
|---|
{ "topCandidates": [ { object ( |
TopCandidates
每个解码步骤中具有最高对数概率的候选对象。
candidates[]
object (Candidate)
按对数概率降序排序。
| JSON 表示法 |
|---|
{
"candidates": [
{
object ( |
候选人
logprobs token 和得分的候选对象。
token
string
候选令牌字符串值。
tokenId
integer
候选 token 的 ID 值。
logProbability
number
候选人的对数概率。
| JSON 表示法 |
|---|
{ "token": string, "tokenId": integer, "logProbability": number } |
UrlContextMetadata
与网址上下文检索工具相关的元数据。
urlMetadata[]
object (UrlMetadata)
网址上下文列表。
| JSON 表示法 |
|---|
{
"urlMetadata": [
{
object ( |
UrlMetadata
单个网址检索的上下文。
retrievedUrl
string
由工具检索到的网址。
urlRetrievalStatus
enum (UrlRetrievalStatus)
网址检索的状态。
| JSON 表示法 |
|---|
{
"retrievedUrl": string,
"urlRetrievalStatus": enum ( |
UrlRetrievalStatus
网址检索的状态。
| 枚举 | |
|---|---|
URL_RETRIEVAL_STATUS_UNSPECIFIED |
默认值。此值未使用。 |
URL_RETRIEVAL_STATUS_SUCCESS |
网址检索成功。 |
URL_RETRIEVAL_STATUS_ERROR |
由于出错,网址检索失败。 |
URL_RETRIEVAL_STATUS_PAYWALL |
由于内容受付费墙保护,网址检索失败。 |
URL_RETRIEVAL_STATUS_UNSAFE |
由于内容不安全,网址检索失败。 |
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_HATE_SPEECH |
基于某些特征宣扬针对特定个体或群体的暴力或仇恨行为的内容。 |
HARM_CATEGORY_DANGEROUS_CONTENT |
宣扬、助长或促成危险活动的内容。 |
HARM_CATEGORY_HARASSMENT |
侮辱性、威胁性内容,或意在欺凌、折磨或嘲笑他人的内容。 |
HARM_CATEGORY_SEXUALLY_EXPLICIT |
包含露骨色情内容的内容。 |
HARM_CATEGORY_CIVIC_INTEGRITY |
已弃用:不再支持选举过滤条件。危害类别为公民诚信。 |
HARM_CATEGORY_IMAGE_HATE |
包含仇恨言论的图片。 |
HARM_CATEGORY_IMAGE_DANGEROUS_CONTENT |
包含危险内容的图片。 |
HARM_CATEGORY_IMAGE_HARASSMENT |
包含骚扰内容的图片。 |
HARM_CATEGORY_IMAGE_SEXUALLY_EXPLICIT |
包含露骨色情内容的图片。 |
HARM_CATEGORY_JAILBREAK |
旨在绕过安全过滤器的提示。 |
ModalityTokenCount
表示单个模态的令牌计数信息。
modality
enum (Modality)
与此 token 数量关联的模态。
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 |
内容风险为“可忽略”“低”和“中”时,将允许发布。 |
BLOCK_NONE |
系统将允许所有内容。 |
OFF |
关闭安全过滤条件。 |
ServiceTier
互动的服务层级。
| 枚举 | |
|---|---|
SERVICE_TIER_UNSPECIFIED |
默认服务层级(标准)。 |
SERVICE_TIER_FLEX |
灵活服务层级。 |
SERVICE_TIER_STANDARD |
标准服务层级。 |
SERVICE_TIER_PRIORITY |
优先服务层级。 |
AllowedTools
允许的工具的配置。
mode
enum (ToolChoiceType)
工具选择的模式。
tools[]
string
允许使用的工具的名称。
| JSON 表示法 |
|---|
{
"mode": enum ( |
注释
模型生成的内容的引用信息。
startIndex
integer
归因于此来源的回答片段的起始位置。
索引指示段落的开始,以字节为单位衡量。
endIndex
integer
归因段落的结束,不包括此索引。
type
Union type
type 只能是下列其中一项:urlCitation
object (UrlCitation)
网址引用注释。
fileCitation
object (FileCitation)
文件引用注释。
placeCitation
object (PlaceCitation)
地点引用注释。
| JSON 表示法 |
|---|
{ "startIndex": integer, "endIndex": integer, // type "urlCitation": { object ( |
UrlCitation
网址引用注释。
url
string
网址。
title
string
相应网址的标题。
| JSON 表示法 |
|---|
{ "url": string, "title": string } |
FileCitation
文件引用注释。
documentUri
string
文件的 URI。
fileName
string
相应文件的名称。
source
string
文本部分归因的来源。
customMetadata
object (Struct)
用户提供的有关检索到的上下文的元数据。
pageNumber
integer
所引用文档的页码(如适用)。
mediaId
string
图片引用中的媒体 ID(如果适用)。
| JSON 表示法 |
|---|
{
"documentUri": string,
"fileName": string,
"source": string,
"customMetadata": {
object ( |
PlaceCitation
地点引用注释。
placeId
string
地点的 ID,采用 places/{placeId} 格式。
name
string
地点的标题。
url
string
相应地点的 URI 引用。
reviewSnippets[]
object (ReviewSnippet)
用于生成有关 Google 地图中指定地点的特征的回答的评价摘要。
| JSON 表示法 |
|---|
{
"placeId": string,
"name": string,
"url": string,
"reviewSnippets": [
{
object ( |
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。 |
CodeExecutionCallStep
代码执行调用步骤。
arguments
object (CodeExecutionCallStepArguments)
必需。要传递给代码执行的实参。
| JSON 表示法 |
|---|
{
"arguments": {
object ( |
CodeExecutionCallStepArguments
要传递给代码执行的实参。
language
enum (Language)
code 的编程语言。
code
string
要执行的代码。
| JSON 表示法 |
|---|
{
"language": enum ( |
CodeExecutionResultStep
代码执行结果步骤。
result
string
必需。代码执行的输出。
isError
boolean
代码执行是否导致错误。
| JSON 表示法 |
|---|
{ "result": string, "isError": boolean } |
ComputerUse
一种可供模型用于与计算机互动的工具。
environment
enum (Environment)
正在运行的环境。
excludedPredefinedFunctions[]
string
从模型调用中排除的预定义函数列表。
enablePromptInjectionDetection
boolean
是否针对计算机使用请求启用提示注入检测检查。
disabledSafetyPolicies[]
enum (SafetyPolicy)
可选。停用了计算机使用安全政策。
| JSON 表示法 |
|---|
{ "environment": enum ( |
内容
- JSON 表示法
- TextContent
- ImageContent
- AudioContent
- DocumentContent
- VideoContent
- ThoughtContent
- ThoughtSummaryContent
- ToolCallContent
- FunctionCallContent
- CodeExecutionCallContent
- CodeExecutionCallArguments
- UrlContextCallContent
- UrlContextCallArguments
- McpServerToolCallContent
- GoogleSearchCallContent
- GoogleSearchCallArguments
- FileSearchCallContent
- GoogleMapsCallContent
- GoogleMapsCallArguments
- ToolResultContent
- FunctionResultContent
- FunctionResultSubcontentList
- FunctionResultSubcontent
- CodeExecutionResultContent
- UrlContextResultContent
- UrlContextResult
- GoogleSearchResultContent
- GoogleSearchResult
- McpServerToolResultContent
- FileSearchResultContent
- FileSearchResult
- GoogleMapsResultContent
- GoogleMapsResult
- 地点
回答的内容。
type
Union type
type 只能是下列其中一项:text
object (TextContent)
image
object (ImageContent)
audio
object (AudioContent)
document
object (DocumentContent)
video
object (VideoContent)
thought
(deprecated)
object (ThoughtContent)
toolCall
(deprecated)
object (ToolCallContent)
toolResult
(deprecated)
object (ToolResultContent)
| JSON 表示法 |
|---|
{ // type "text": { object ( |
TextContent
文本内容块。
text
string
必需。文本内容。
annotations[]
object (Annotation)
模型生成的内容的引用信息。
| JSON 表示法 |
|---|
{
"text": string,
"annotations": [
{
object ( |
ImageContent
图片内容块。
mimeType
enum (MimeType)
图片的 MIME 类型。
resolution
enum (MediaResolution)
媒体的分辨率。
data_or_uri
Union type
| JSON 表示法 |
|---|
{ "mimeType": enum ( |
AudioContent
音频内容块。
mimeType
enum (MimeType)
音频的 MIME 类型。
channels
integer
音频声道数。
sampleRate
integer
音频的采样率。
data_or_uri
Union type
| JSON 表示法 |
|---|
{
"mimeType": enum ( |
DocumentContent
文档内容块。
mimeType
enum (MimeType)
文档的 MIME 类型。
data_or_uri
Union type
| JSON 表示法 |
|---|
{
"mimeType": enum ( |
视频内容
视频内容块。
mimeType
enum (MimeType)
视频的 MIME 类型。
resolution
enum (MediaResolution)
媒体的分辨率。
data_or_uri
Union type
| JSON 表示法 |
|---|
{ "mimeType": enum ( |
ThoughtContent
一种想法内容块。
signature
string (bytes format)
与要纳入生成的后端来源相匹配的签名。
使用 base64 编码的字符串。
summary[]
object (ThoughtSummaryContent)
想法的总结。
| JSON 表示法 |
|---|
{
"signature": string,
"summary": [
{
object ( |
ThoughtSummaryContent
| JSON 表示法 |
|---|
{ // type "text": { object ( |
ToolCallContent
工具调用内容。
id
string
必需。此特定工具调用的唯一 ID。
signature
string (bytes format)
用于后端验证的签名哈希。
使用 base64 编码的字符串。
type
Union type
type 只能是下列其中一项:functionCall
object (FunctionCallContent)
codeExecutionCall
object (CodeExecutionCallContent)
urlContextCall
object (UrlContextCallContent)
mcpServerToolCall
object (McpServerToolCallContent)
googleSearchCall
object (GoogleSearchCallContent)
fileSearchCall
object (FileSearchCallContent)
googleMapsCall
object (GoogleMapsCallContent)
| JSON 表示法 |
|---|
{ "id": string, "signature": string, // type "functionCall": { object ( |
FunctionCallContent
| JSON 表示法 |
|---|
{
"name": string,
"arguments": {
object ( |
CodeExecutionCallContent
| JSON 表示法 |
|---|
{
"arguments": {
object ( |
CodeExecutionCallArguments
要传递给代码执行的实参。
language
enum (Language)
code 的编程语言。
code
string
要执行的代码。
| JSON 表示法 |
|---|
{
"language": enum ( |
UrlContextCallContent
| JSON 表示法 |
|---|
{
"arguments": {
object ( |
UrlContextCallArguments
要传递给网址上下文的实参。
urls[]
string
要提取的网址。
| JSON 表示法 |
|---|
{ "urls": [ string ] } |
McpServerToolCallContent
MCPServer 工具调用内容。
name
string
必需。所调用工具的名称。
serverName
string
必需。所用 MCP 服务器的名称。
arguments
object (Struct)
必需。函数的实参的 JSON 对象。
| JSON 表示法 |
|---|
{
"name": string,
"serverName": string,
"arguments": {
object ( |
GoogleSearchCallContent
Google 搜索内容。
arguments
object (GoogleSearchCallArguments)
必需。要传递给 Google 搜索的实参。
searchType
enum (SearchType)
已启用的搜索接地类型。
| JSON 表示法 |
|---|
{ "arguments": { object ( |
GoogleSearchCallArguments
要传递给 Google 搜索的实参。
queries[]
string
后续网络搜索的网络搜索查询。
| JSON 表示法 |
|---|
{ "queries": [ string ] } |
FileSearchCallContent
此类型没有字段。
文件搜索内容。
GoogleMapsCallContent
| JSON 表示法 |
|---|
{
"arguments": {
object ( |
GoogleMapsCallArguments
要传递给 Google 地图工具的实参。
queries[]
string
要执行的查询。
| JSON 表示法 |
|---|
{ "queries": [ string ] } |
ToolResultContent
工具结果内容。
callId
string
必需。用于与函数调用块中的 ID 相匹配的 ID。
signature
string (bytes format)
用于后端验证的签名哈希。
使用 base64 编码的字符串。
type
Union type
type 只能是下列其中一项:functionResult
object (FunctionResultContent)
codeExecutionResult
object (CodeExecutionResultContent)
urlContextResult
object (UrlContextResultContent)
googleSearchResult
object (GoogleSearchResultContent)
mcpServerToolResult
object (McpServerToolResultContent)
fileSearchResult
object (FileSearchResultContent)
googleMapsResult
object (GoogleMapsResultContent)
| JSON 表示法 |
|---|
{ "callId": string, "signature": string, // type "functionResult": { object ( |
FunctionResultContent
函数工具结果内容块。
name
string
被调用的工具的名称。
isError
boolean
工具调用是否导致了错误。
result
Union type
result 只能是下列其中一项:structResult
object (Struct)
contentList
object (FunctionResultSubcontentList)
stringResult
string
| JSON 表示法 |
|---|
{ "name": string, "isError": boolean, // result "structResult": { object ( |
FunctionResultSubcontentList
contents[]
object (FunctionResultSubcontent)
| JSON 表示法 |
|---|
{
"contents": [
{
object ( |
FunctionResultSubcontent
| JSON 表示法 |
|---|
{ // type "text": { object ( |
CodeExecutionResultContent
代码执行结果内容。
result
string
必需。代码执行的输出。
isError
boolean
代码执行是否导致错误。
| JSON 表示法 |
|---|
{ "result": string, "isError": boolean } |
UrlContextResultContent
| JSON 表示法 |
|---|
{
"result": [
{
object ( |
UrlContextResult
网址上下文的结果。
url
string
提取的网址。
status
enum (Status)
网址检索的状态。
| JSON 表示法 |
|---|
{
"url": string,
"status": enum ( |
GoogleSearchResultContent
Google 搜索结果内容。
result[]
object (GoogleSearchResult)
必需。Google 搜索的结果。
isError
boolean
Google 搜索是否导致了错误。
| JSON 表示法 |
|---|
{
"result": [
{
object ( |
GoogleSearchResult
Google 搜索的结果。
searchSuggestions
string
可嵌入网页或应用 WebView 中的 Web 内容代码段。
| JSON 表示法 |
|---|
{ "searchSuggestions": string } |
McpServerToolResultContent
MCPServer 工具结果内容。
name
string
相应工具调用所调用的工具的名称。
serverName
string
所用 MCP 服务器的名称。
result
Union type
result 只能是下列其中一项:structResult
object (Struct)
contentList
object (FunctionResultSubcontentList)
stringResult
string
| JSON 表示法 |
|---|
{ "name": string, "serverName": string, // result "structResult": { object ( |
FileSearchResultContent
| JSON 表示法 |
|---|
{
"result": [
{
object ( |
FileSearchResult
此类型没有字段。
文件搜索的结果。
GoogleMapsResultContent
| JSON 表示法 |
|---|
{
"result": [
{
object ( |
GoogleMapsResult
Google 地图的结果。
places[]
object (Places)
找到的地点。
widgetContextToken
string
Google 地图 widget 上下文令牌的资源名称。
| JSON 表示法 |
|---|
{
"places": [
{
object ( |
地点
placeId
string
地点的 ID,采用 places/{placeId} 格式。
name
string
地点的标题。
url
string
相应地点的 URI 引用。
reviewSnippets[]
object (ReviewSnippet)
用于生成有关 Google 地图中指定地点的特征的回答的评价摘要。
| JSON 表示法 |
|---|
{
"placeId": string,
"name": string,
"url": string,
"reviewSnippets": [
{
object ( |
CreateInteractionRequest
- JSON 表示法
- 互动
- TurnList
- 轮次
- StepList
- 步骤
- ThoughtStep
- ToolCallStep
- FunctionCallStep
- UrlContextCallStep
- UrlContextCallStepArguments
- McpServerToolCallStep
- GoogleSearchCallStep
- GoogleSearchCallStepArguments
- FileSearchCallStep
- GoogleMapsCallStep
- GoogleMapsCallStepArguments
- ToolResultStep
- FunctionResultStep
- UrlContextResultStep
- UrlContextResultItem
- GoogleSearchResultStep
- GoogleSearchResultItem
- McpServerToolResultStep
- FileSearchResultStep
- GoogleMapsResultStep
- GoogleMapsResultItem
- GoogleMapsResultPlaces
- UserInputStep
- ModelOutputStep
- ResponseFormatList
- ResponseFormat
- TextResponseFormat
- ImageResponseFormat
- VideoResponseFormat
- ModelInteraction
- GenerationConfig
- ToolChoiceConfig
- SpeechConfig
- ImageConfig
- VideoConfig
- EnvironmentConfig
- EnvironmentNetworkEgressAllowlist
- EgressRule
- 来源
- LocalEnvironmentConfig
- 工具
- 函数
- UrlContext
- McpServer
- GoogleSearch
- FileSearch
- GoogleMaps
- 用量
- ModalityTokens
- GroundingToolCount
- WebhookConfig
- SafetySetting
用于创建互动的配置参数。
stream
boolean
仅限输入。互动是否会以流式传输。
store
boolean
仅限输入。是否存储响应和请求以供日后检索。
interaction
object (Interaction)
要创建的互动。
background
boolean
仅限输入。是否在后台运行模型交互。
| JSON 表示法 |
|---|
{
"stream": boolean,
"store": boolean,
"interaction": {
object ( |
互动
针对 InteractionService.CreateInteraction 的响应。
id
string
必需。仅限输出。互动完成的唯一标识符。
status
enum (Status)
必需。仅限输出。互动的状态。
created
string
必需。仅限输出。回答的创建时间,采用 ISO 8601 格式 (YYYY-MM-DDThh:mm:ssZ)。
updated
string
必需。仅限输出。回答的上次更新时间,采用 ISO 8601 格式 (YYYY-MM-DDThh:mm:ssZ)。
role
(deprecated)
string
仅限输出。互动的角色。
outputs[]
(deprecated)
object (Content)
仅限输出。模型给出的回答。
systemInstruction
string
互动的系统指令。
tools[]
object (Tool)
模型在互动期间可能会调用的工具声明列表。
usage
object (Usage)
仅限输出。互动请求的令牌用量统计信息。
responseModalities[]
(deprecated)
enum (ResponseModality)
请求的回答模态(TEXT、IMAGE、AUDIO)。
responseMimeType
(deprecated)
string
响应的 MIME 类型。如果设置了 responseFormat,则此字段为必需字段。
previousInteractionId
string
上一次互动的 ID(如果有)。
environmentId
string
仅限输出。互动的环境 ID。仅当请求中设置了环境配置时才会填充。
serviceTier
enum (ServiceTier)
互动的服务层级。
webhookConfig
object (WebhookConfig)
可选。用于在互动完成时接收通知的网络钩子配置。
steps[]
object (Step)
必需。仅限输出。构成互动的步骤。
input
Union type
input 只能是下列其中一项:contentList
(deprecated)
object (ContentList)
互动的输入内容。
stringContent
string
互动所需的字符串输入,系统会将其处理为单个文本输入。
turnList
(deprecated)
object (TurnList)
互动的回合数。
stepList
object (StepList)
仅限输入。互动步骤。
content
object (Content)
互动的内容。
response_format_config
Union type
response_format_config 只能是下列其中一项:responseFormat
(deprecated)
object (Value)
强制要求生成的回答是符合此字段中指定的 JSON 架构的 JSON 对象。
responseFormatList
object (ResponseFormatList)
responseFormatSingleton
object (ResponseFormat)
request_type
Union type
request_type 只能是下列其中一项:modelInteraction
object (ModelInteraction)
使用模型生成补全内容的交互。
agentInteraction
object (AgentInteraction)
使用代理生成补全的互动。
environment
Union type
environment 只能是下列其中一项:envId
string
互动的环境 ID。对于默认环境,可以是“remote”。
remoteEnvironment
object (EnvironmentConfig)
localEnvironment
object (LocalEnvironmentConfig)
代理的环境位于客户端连接上:其内置的环境操作(文件系统操作和运行命令)会交给客户端执行,而不是在服务器管理的沙盒中运行。它与 remoteEnvironment 相互排斥。(独立于任何客户端声明的函数工具,无论此字段的值如何,这些工具始终在客户端执行。)
| JSON 表示法 |
|---|
{ "id": string, "status": enum ( |
TurnList
Turn
role
string
相应回合的发起者。对于输入,必须为“user”;对于模型输出,必须为“model”。
content
Union type
content 只能是下列其中一项:contentList
object (ContentList)
对话轮次的内容。Content 对象的数组。
contentString
string
对话轮次的内容。单个字符串。
| JSON 表示法 |
|---|
{
"role": string,
// content
"contentList": {
object ( |
StepList
步骤
互动中的一个步骤。
type
Union type
type 只能是下列其中一项:thought
object (ThoughtStep)
toolCall
object (ToolCallStep)
toolResult
object (ToolResultStep)
userInput
object (UserInputStep)
请勿使用 - 这些仅适用于第三方 JSON
modelOutput
object (ModelOutputStep)
text
(deprecated)
object (LegacyTextContent)
image
(deprecated)
object (LegacyImageContent)
audio
(deprecated)
object (LegacyAudioContent)
document
(deprecated)
object (LegacyDocumentContent)
video
(deprecated)
object (LegacyVideoContent)
| JSON 表示法 |
|---|
{ // type "thought": { object ( |
ThoughtStep
思考步骤。
signature
string (bytes format)
用于后端验证的签名哈希。
使用 base64 编码的字符串。
summary[]
object (Content)
想法的总结。
| JSON 表示法 |
|---|
{
"signature": string,
"summary": [
{
object ( |
ToolCallStep
工具调用步骤。
id
string
必需。此特定工具调用的唯一 ID。
signature
string (bytes format)
用于后端验证的签名哈希。
使用 base64 编码的字符串。
type
Union type
type 只能是下列其中一项:functionCall
object (FunctionCallStep)
codeExecutionCall
object (CodeExecutionCallStep)
urlContextCall
object (UrlContextCallStep)
mcpServerToolCall
object (McpServerToolCallStep)
googleSearchCall
object (GoogleSearchCallStep)
fileSearchCall
object (FileSearchCallStep)
googleMapsCall
object (GoogleMapsCallStep)
retrievalCall
object (RetrievalCallStep)
| JSON 表示法 |
|---|
{ "id": string, "signature": string, // type "functionCall": { object ( |
FunctionCallStep
函数工具调用步骤。
name
string
必需。要调用的工具的名称。
arguments
object (Struct)
必需。要传递给函数的实参。
| JSON 表示法 |
|---|
{
"name": string,
"arguments": {
object ( |
UrlContextCallStep
网址上下文调用步骤。
arguments
object (UrlContextCallStepArguments)
必需。要传递给网址上下文的实参。
| JSON 表示法 |
|---|
{
"arguments": {
object ( |
UrlContextCallStepArguments
要传递给网址上下文的实参。
urls[]
string
要提取的网址。
| JSON 表示法 |
|---|
{ "urls": [ string ] } |
McpServerToolCallStep
MCPServer 工具调用步骤。
name
string
必需。所调用工具的名称。
serverName
string
必需。所用 MCP 服务器的名称。
arguments
object (Struct)
必需。函数的实参的 JSON 对象。
| JSON 表示法 |
|---|
{
"name": string,
"serverName": string,
"arguments": {
object ( |
GoogleSearchCallStep
Google 搜索通话步骤。
arguments
object (GoogleSearchCallStepArguments)
必需。要传递给 Google 搜索的实参。
searchType
enum (SearchType)
已启用的搜索接地类型。
| JSON 表示法 |
|---|
{ "arguments": { object ( |
GoogleSearchCallStepArguments
要传递给 Google 搜索的实参。
queries[]
string
后续网络搜索的网络搜索查询。
| JSON 表示法 |
|---|
{ "queries": [ string ] } |
FileSearchCallStep
此类型没有字段。
文件搜索调用步骤。
GoogleMapsCallStep
Google 地图通话步骤。
arguments
object (GoogleMapsCallStepArguments)
要传递给 Google 地图工具的实参。
| JSON 表示法 |
|---|
{
"arguments": {
object ( |
GoogleMapsCallStepArguments
要传递给 Google 地图工具的实参。
queries[]
string
要执行的查询。
| JSON 表示法 |
|---|
{ "queries": [ string ] } |
ToolResultStep
工具结果步骤。
callId
string
必需。用于与函数调用块中的 ID 相匹配的 ID。
signature
string (bytes format)
用于后端验证的签名哈希。
使用 base64 编码的字符串。
type
Union type
type 只能是下列其中一项:functionResult
object (FunctionResultStep)
codeExecutionResult
object (CodeExecutionResultStep)
urlContextResult
object (UrlContextResultStep)
googleSearchResult
object (GoogleSearchResultStep)
mcpServerToolResult
object (McpServerToolResultStep)
fileSearchResult
object (FileSearchResultStep)
googleMapsResult
object (GoogleMapsResultStep)
retrievalResult
object (RetrievalResultStep)
| JSON 表示法 |
|---|
{ "callId": string, "signature": string, // type "functionResult": { object ( |
FunctionResultStep
函数工具调用的结果。
name
string
被调用的工具的名称。
isError
boolean
工具调用是否导致了错误。
result
object (Value)
必需。工具调用的结果。
| JSON 表示法 |
|---|
{
"name": string,
"isError": boolean,
"result": {
object ( |
UrlContextResultStep
网址上下文结果步骤。
result[]
object (UrlContextResultItem)
必需。网址上下文的结果。
isError
boolean
网址上下文是否导致了错误。
| JSON 表示法 |
|---|
{
"result": [
{
object ( |
UrlContextResultItem
网址上下文的结果。
url
string
提取的网址。
status
enum (Status)
网址检索的状态。
| JSON 表示法 |
|---|
{
"url": string,
"status": enum ( |
GoogleSearchResultStep
Google 搜索结果步骤。
result[]
object (GoogleSearchResultItem)
必需。Google 搜索的结果。
isError
boolean
Google 搜索是否导致了错误。
| JSON 表示法 |
|---|
{
"result": [
{
object ( |
GoogleSearchResultItem
Google 搜索的结果。
searchSuggestions
string
可嵌入网页或应用 WebView 中的 Web 内容代码段。
| JSON 表示法 |
|---|
{ "searchSuggestions": string } |
McpServerToolResultStep
MCPServer 工具结果步骤。
name
string
相应工具调用所调用的工具的名称。
serverName
string
所用 MCP 服务器的名称。
result
object (Value)
必需。MCP 服务器调用的输出。可以是纯文本,也可以是富媒体内容。
| JSON 表示法 |
|---|
{
"name": string,
"serverName": string,
"result": {
object ( |
FileSearchResultStep
此类型没有字段。
文件搜索结果步骤。
GoogleMapsResultStep
Google 地图结果步骤。
result[]
object (GoogleMapsResultItem)
| JSON 表示法 |
|---|
{
"result": [
{
object ( |
GoogleMapsResultItem
Google 地图的结果。
places[]
object (GoogleMapsResultPlaces)
widgetContextToken
string
| JSON 表示法 |
|---|
{
"places": [
{
object ( |
GoogleMapsResultPlaces
placeId
string
name
string
url
string
reviewSnippets[]
object (ReviewSnippet)
| JSON 表示法 |
|---|
{
"placeId": string,
"name": string,
"url": string,
"reviewSnippets": [
{
object ( |
UserInputStep
用户提供的输入内容。
content
Union type
content 只能是下列其中一项:contentList
object (ContentList)
相应步骤的内容。Content 对象的数组。
contentString
string
相应步骤的内容。单个字符串。
| JSON 表示法 |
|---|
{
// content
"contentList": {
object ( |
ModelOutputStep
ResponseFormatList
responseFormats[]
object (ResponseFormat)
| JSON 表示法 |
|---|
{
"responseFormats": [
{
object ( |
ResponseFormat
type
Union type
type 只能是下列其中一项:audio
object (AudioResponseFormat)
text
object (TextResponseFormat)
image
object (ImageResponseFormat)
video
object (VideoResponseFormat)
structValue
object (Struct)
多鉴别器值已在 GAOS 中启用
| JSON 表示法 |
|---|
{ // type "audio": { object ( |
TextResponseFormat
文本输出格式的配置。
mimeType
enum (MimeType)
文本输出的 MIME 类型。
schema
object (Struct)
输出应遵循的 JSON 架构。仅在 mimeType 为 application/json 时适用。
| JSON 表示法 |
|---|
{ "mimeType": enum ( |
ImageResponseFormat
图片输出格式的配置。
mimeType
enum (MimeType)
图片输出的 MIME 类型。
delivery
enum (Delivery)
图片输出的传送模式。
aspectRatio
enum (AspectRatio)
图片输出的宽高比。
imageSize
enum (ImageSize)
输出图片的尺寸。
| JSON 表示法 |
|---|
{ "mimeType": enum ( |
VideoResponseFormat
视频输出格式的配置。
delivery
enum (Delivery)
视频输出的交付模式。
aspectRatio
enum (AspectRatio)
视频输出的宽高比。
duration
string (Duration format)
视频输出的时长。
该时长以秒为单位,最多包含九个小数位,以“s”结尾。示例:"3.5s"。
| JSON 表示法 |
|---|
{ "delivery": enum ( |
ModelInteraction
使用模型生成补全内容的交互。
model
string
用于生成补全的 Model 的名称。
generationConfig
object (GenerationConfig)
仅限输入。模型互动的配置参数。
| JSON 表示法 |
|---|
{
"model": string,
"generationConfig": {
object ( |
GenerationConfig
模型互动的配置参数。
temperature
number
控制输出的随机性。
topP
number
抽样时要考虑的 token 的最大累积概率。
seed
integer
解码中使用的种子,用于实现可重现性。
stopSequences[]
string
将停止输出互动的字符序列列表。
thinkingLevel
enum (ThinkingLevel)
模型应生成的思维令牌的级别。
thinkingSummaries
enum (ThinkingSummaries)
是否在回答中包含思路总结。
maxOutputTokens
integer
响应中包含的令牌数量上限。
speechConfig[]
object (SpeechConfig)
语音互动的配置。
imageConfig
(deprecated)
object (ImageConfig)
图片互动的配置。
videoConfig
object (VideoConfig)
视频生成配置。
tool_choice
Union type
tool_choice 只能是下列其中一项:toolChoiceMode
enum (ToolChoiceType)
工具选择的模式。
toolChoiceConfig
object (ToolChoiceConfig)
工具选择的配置。
| JSON 表示法 |
|---|
{ "temperature": number, "topP": number, "seed": integer, "stopSequences": [ string ], "thinkingLevel": enum ( |
ToolChoiceConfig
包含允许的工具的工具选择配置。
allowedTools
object (AllowedTools)
允许使用的工具。
| JSON 表示法 |
|---|
{
"allowedTools": {
object ( |
SpeechConfig
语音互动配置。
voice
string
说话者的声音。
language
string
语音的语言。
speaker
string
说话者的姓名,应与提示中给出的说话者姓名一致。
| JSON 表示法 |
|---|
{ "voice": string, "language": string, "speaker": string } |
ImageConfig
图片互动的配置。
aspectRatio
string
要生成的图片的宽高比。支持的宽高比:1:1、2:3、3:2、3:4、4:3、9:16、16:9、21:9。
如果未指定,模型将根据提供的任何参考图片选择默认宽高比。
imageSize
string
指定生成的图片的大小。支持的值为 1K、2K、4K。如果未指定,模型将使用默认值 1K。
| JSON 表示法 |
|---|
{ "aspectRatio": string, "imageSize": string } |
VideoConfig
视频生成配置选项。
task
enum (Task)
视频生成的可选任务模式。如果未指定,模型会根据提供的文本提示和输入媒体自动确定合适的模式。
| JSON 表示法 |
|---|
{
"task": enum ( |
EnvironmentConfig
自定义环境的配置。
sources[]
object (Source)
environmentId
string
可选。互动的环境 ID。如果指定,请求将更新现有环境,而不是创建新环境。
network
Union type
network 只能是下列其中一项:networkAllowlist
object (EnvironmentNetworkEgressAllowlist)
仅允许特定网域。
networkMode
enum (NetworkMode)
网络出站流量模式。
| JSON 表示法 |
|---|
{ "sources": [ { object ( |
EnvironmentNetworkEgressAllowlist
环境的网络出站配置。
allowlist[]
object (EgressRule)
允许的网域及其配置的列表。
| JSON 表示法 |
|---|
{
"allowlist": [
{
object ( |
EgressRule
一种网络出站流量规则,用于控制环境可以访问哪些外部网域。每条规则都会标识一个目标网域,以及一组(可选)要注入到每个匹配的出站请求中的 HTTP 标头。
domain
string
相应规则要匹配的网域模式。使用确切的主机名(例如 github.com)、通配符前缀(例如 *.googleapis.com)或 * 来匹配所有网域。
transform
map (key: string, value: string)
要注入到符合相应规则的请求中的标头。键:标头名称(例如“Authorization”)。值:标头值(例如“Bearer your-token”)。
包含一系列 "key": value 对的对象。示例:{ "name": "wrench", "mass": "1.3kg", "count": "3" }。
| JSON 表示法 |
|---|
{ "domain": string, "transform": { string: string, ... } } |
来源
要装载到环境中的来源。
type
enum (Type)
source
string
环境的来源。对于 GCS,这是 GCS 路径。对于 GitHub,这是 GitHub 路径。
target
string
来源应在环境中显示的位置。
content
string
如果 type 为 INLINE,则为内嵌内容。
encoding
string
内嵌内容的可选编码(例如 base64)。
| JSON 表示法 |
|---|
{
"type": enum ( |
LocalEnvironmentConfig
此类型没有字段。
在客户端连接上运行的环境的配置,而不是在服务器管理的沙盒中运行的环境的配置。
如果设置了(通过 Interaction.local_environment),则代理的文件系统和 shell 会被视为位于客户端上:代理的内置环境操作(例如读取/列出/编辑文件和运行命令)会在服务器上暂停,并返回给客户端执行,其结果会在后续回合中返回。这与服务器管理的 EnvironmentConfig (remoteEnvironment) 是互斥的,因为环境要么在客户端上,要么在服务器沙盒中,绝不会同时存在于两者中。
这仅控制代理的内置环境。无论此字段的值如何,客户端声明的函数工具始终在客户端执行。
工具
可供模型使用的工具。
type
Union type
type 只能是下列其中一项:function
object (Function)
可供模型使用的函数。
codeExecution
object (CodeExecution)
一种可供模型用来执行代码的工具。
urlContext
object (UrlContext)
一种可供模型用来提取网址上下文的工具。
computerUse
object (ComputerUse)
支持模型直接与计算机交互的工具。
mcpServer
object (McpServer)
MCPServer 是一种可由模型调用的服务器,用于执行操作。
googleSearch
object (GoogleSearch)
模型可用于搜索 Google 的工具。
fileSearch
object (FileSearch)
一种可供模型用来搜索文件的工具。
googleMaps
object (GoogleMaps)
一种可供模型用来搜索 Google 地图的工具。
retrieval
object (Retrieval)
一种可供模型用来检索文件的工具。
| JSON 表示法 |
|---|
{ // type "function": { object ( |
函数
可供模型使用的工具。
name
string
函数的名称。
description
string
函数的说明。
parameters
object (Value)
函数的参数的 JSON 架构。
| JSON 表示法 |
|---|
{
"name": string,
"description": string,
"parameters": {
object ( |
UrlContext
此类型没有字段。
一种可供模型用来提取网址上下文的工具。
McpServer
MCPServer 是一种可由模型调用的服务器,用于执行操作。
name
string
MCPServer 的名称。
url
string
MCPServer 端点的完整网址。示例:“https://api.example.com/mcp”
headers
map (key: string, value: string)
可选:身份验证标头、超时等字段(如果需要)。
包含一系列 "key": value 对的对象。示例:{ "name": "wrench", "mass": "1.3kg", "count": "3" }。
allowedTools[]
object (AllowedTools)
允许使用的工具。
| JSON 表示法 |
|---|
{
"name": string,
"url": string,
"headers": {
string: string,
...
},
"allowedTools": [
{
object ( |
GoogleSearch
模型可用于搜索 Google 的工具。
searchTypes[]
enum (SearchType)
要启用的搜索接地类型。
| JSON 表示法 |
|---|
{
"searchTypes": [
enum ( |
FileSearch
一种可供模型用来搜索文件的工具。
fileSearchStoreNames[]
string
要搜索的文件搜索存储区名称。
topK
integer
要检索的语义检索块数量。
metadataFilter
string
要应用于语义检索文档和块的元数据过滤条件。
| JSON 表示法 |
|---|
{ "fileSearchStoreNames": [ string ], "topK": integer, "metadataFilter": string } |
GoogleMaps
一种可供模型用来调用 Google 地图的工具。
enableWidget
boolean
是否在响应的工具调用结果中返回 widget 上下文令牌。
latitude
number
用户所在位置的纬度。
longitude
number
用户所在位置的经度。
| JSON 表示法 |
|---|
{ "enableWidget": boolean, "latitude": number, "longitude": number } |
用法
互动请求的令牌用量统计信息。
totalInputTokens
integer
提示(上下文)中的 token 数量。
inputTokensByModality[]
object (ModalityTokens)
按模态划分的输入令牌用量细分。
totalCachedTokens
integer
提示的缓存部分(缓存内容)中的 token 数量。
cachedTokensByModality[]
object (ModalityTokens)
按模态划分的缓存 token 使用情况细分。
totalOutputTokens
integer
所有生成的回答中的 token 总数。
outputTokensByModality[]
object (ModalityTokens)
按模态划分的输出 token 用量细分。
totalToolUseTokens
integer
工具使用提示中的 token 数量。
toolUseTokensByModality[]
object (ModalityTokens)
按模态划分的工具使用情况令牌使用情况细分。
totalThoughtTokens
integer
思考模型的思考 token 数。
totalTokens
integer
互动请求(提示 + 回答 + 其他内部 token)的总 token 数量。
groundingToolCount[]
object (GroundingToolCount)
接地工具数量。
| JSON 表示法 |
|---|
{ "totalInputTokens": integer, "inputTokensByModality": [ { object ( |
ModalityTokens
单个回答模态的 token 数量。
modality
enum (ResponseModality)
与 token 数量关联的模态。
tokens
integer
模态的 token 数量。
| JSON 表示法 |
|---|
{
"modality": enum ( |
GroundingToolCount
接地工具数量。
type
enum (Type)
与相应数量关联的依据工具类型。
count
integer
接地工具数量。
| JSON 表示法 |
|---|
{
"type": enum ( |
WebhookConfig
用于为请求配置 webhook 事件的消息。
uris[]
string
可选。如果设置了这些网络钩子 URI,系统将使用它们来处理网络钩子事件,而不是使用已注册的网络钩子。
userMetadata
object (Struct format)
可选。每次向 webhook 发送事件时返回的用户元数据。
| JSON 表示法 |
|---|
{ "uris": [ string ], "userMetadata": { object } } |
SafetySetting
影响安全屏蔽行为的安全设置。
[SafetySetting][google.cloud.aiplatform.master.SafetySetting] 包含危害 [类别][google.cloud.aiplatform.master.SafetySetting.category] 和相应类别的 [阈值][google.cloud.aiplatform.master.SafetySetting.threshold]。
type
enum (HarmCategory)
必需。要屏蔽的有害类别。
threshold
enum (HarmBlockThreshold)
必需。用于屏蔽内容的阈值。如果有害概率超过此阈值,相应内容将被屏蔽。
method
enum (HarmBlockMethod)
可选。屏蔽内容的方法。如果未指定,默认行为是使用概率得分。
| JSON 表示法 |
|---|
{ "type": enum ( |
环境
表示正在运行的环境,例如网络浏览器。
| 枚举 | |
|---|---|
ENVIRONMENT_UNSPECIFIED |
默认为浏览器。 |
BROWSER |
在网络浏览器中运行。 |
MOBILE |
在移动环境中运行。 |
DESKTOP |
在桌面环境中运行。 |
HarmBlockMethod
屏蔽内容的方法。
| 枚举 | |
|---|---|
HARM_BLOCK_METHOD_UNSPECIFIED |
未指定有害内容屏蔽方法。 |
SEVERITY |
有害内容屏蔽方法同时使用可能性得分和严重程度得分。 |
PROBABILITY |
有害内容屏蔽方法使用概率得分。 |
HarmBlockThreshold
根据有害概率屏蔽内容的阈值。
| 枚举 | |
|---|---|
HARM_BLOCK_THRESHOLD_UNSPECIFIED |
未指定有害内容屏蔽阈值。 |
BLOCK_LOW_AND_ABOVE |
屏蔽有害概率较低或更低的内容。 |
BLOCK_MEDIUM_AND_ABOVE |
屏蔽有害概率为中等或更高的内容。 |
BLOCK_ONLY_HIGH |
屏蔽有害概率较高的内容。 |
BLOCK_NONE |
不屏蔽任何内容,无论其有害概率如何。 |
OFF |
完全关闭安全过滤条件。 |
ImageSize
图片输出支持的图片大小。
| 枚举 | |
|---|---|
IMAGE_SIZE_UNSPECIFIED |
默认值。此值未使用。 |
IMAGE_SIZE_FIVE_TWELVE |
512 像素的图片大小。 |
IMAGE_SIZE_ONE_K |
1K 图片大小。 |
IMAGE_SIZE_TWO_K |
2K 图片大小。 |
IMAGE_SIZE_FOUR_K |
4K 图片大小。 |
MediaResolution
输入媒体(图片/视频)的分辨率。
| 枚举 | |
|---|---|
MEDIA_RESOLUTION_UNSPECIFIED |
默认值。此值未使用。 |
LOW |
分辨率较低。 |
MEDIUM |
中等分辨率。 |
HIGH |
高分辨率。 |
ULTRA_HIGH |
超高分辨率。 |
MimeType
| 枚举 | |
|---|---|
TYPE_UNSPECIFIED |
|
TYPE_WAV |
WAV 音频格式 |
TYPE_MP3 |
MP3 音频格式 |
TYPE_AIFF |
AIFF 音频格式 |
TYPE_AAC |
AAC 音频格式 |
TYPE_OGG |
OGG 音频格式 |
TYPE_FLAC |
FLAC 音频格式 |
TYPE_MPEG |
MPEG 音频格式 |
TYPE_M4A |
M4A 音频格式 |
TYPE_L16 |
L16 音频格式 |
TYPE_OPUS |
OPUS 音频格式 |
TYPE_ALAW |
ALAW 音频格式 |
TYPE_MULAW |
MULAW 音频格式 |
模式
定义查找会话的深度和彻底程度。
| 枚举 | |
|---|---|
MODE_UNSPECIFIED |
默认值。此值未使用。 |
MODE_SCAN |
仅使用初始分类器的快速扫描。 |
MODE_VERIFY |
执行分类,然后进行详细调查。 |
ResponseModality
回答的模态。
| 枚举 | |
|---|---|
RESPONSE_MODALITY_UNSPECIFIED |
默认值。此值未使用。 |
TEXT |
表示模型应返回文本。 |
IMAGE |
表示模型应返回图片。 |
AUDIO |
表示模型应返回音频。 |
VIDEO |
表示模型应返回视频。 |
DOCUMENT |
指示模型应返回文档。 |
ReviewSnippet
封装了用户评价的一段内容,其中回答了有关 Google 地图中特定地点的功能的问题。
title
string
评价的标题。
url
string
与 Google 地图上的用户评价对应的链接。
reviewId
string
评价摘要的 ID。
| JSON 表示法 |
|---|
{ "title": string, "url": string, "reviewId": string } |
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 |
法律条款和协议的安全政策。 |
架构
Schema 对象允许定义输入和输出数据类型。这些类型可以是对象,也可以是基本类型和数组。表示 OpenAPI 3.0 架构对象的选定子集。
type
enum (Type)
必需。数据类型。
format
string
可选。数据的格式。允许使用任何值,但大多数值不会触发任何特殊功能。
title
string
可选。架构的标题。
description
string
可选。参数的简要说明。这可能包含使用示例。参数说明可以采用 Markdown 格式。
nullable
boolean
可选。指示值是否为 null。
enum[]
string
可选。Type.STRING 类型的元素可能的具有枚举格式的值。例如,我们可以将 Enum 方向定义为:{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)
可选。类型为 STRING 的架构字段的最小长度。
maxLength
string (int64 format)
可选。Type.STRING 的最大长度
pattern
string
可选。Type.STRING 的模式,用于将字符串限制为正则表达式。
example
value (Value format)
可选。对象的示例。仅当对象为根对象时才会填充。
anyOf[]
object (Schema)
可选。该值应根据列表中的任何(一个或多个)子架构进行验证。
propertyOrdering[]
string
可选。属性的顺序。不是 OpenAPI 规范中的标准字段。用于确定响应中属性的顺序。
default
value (Value format)
可选。字段的默认值。根据 JSON 架构,此字段用于文档生成器,不会影响验证。因此,此处包含该字段并忽略它,以便发送包含 default 字段的架构的开发者不会收到未知字段错误。
items
object (Schema)
可选。Type.ARRAY 的元素的架构。
minimum
number
可选。类型为 INTEGER 和 NUMBER 的架构字段 Type.INTEGER 和 Type.NUMBER 的最小值
maximum
number
可选。Type.INTEGER 和 Type.NUMBER 的最大值
| JSON 表示法 |
|---|
{ "type": enum ( |
类型
类型包含 OpenAPI 数据类型列表,如 https://spec.openapis.org/oas/v3.0.3#data-types 中所定义
| 枚举 | |
|---|---|
TYPE_UNSPECIFIED |
未指定,不应使用。 |
STRING |
字符串类型。 |
NUMBER |
数字类型。 |
INTEGER |
整数类型。 |
BOOLEAN |
布尔值类型。 |
ARRAY |
数组类型。 |
OBJECT |
对象类型。 |
NULL |
Null 类型。 |
搜索类型
要启用的搜索接地类型。
| 枚举 | |
|---|---|
SEARCH_TYPE_UNSPECIFIED |
未指定搜索类型。不应使用此值。 |
SEARCH_TYPE_WEB_SEARCH |
设置此字段可启用网页搜索。仅返回文字搜索结果。 |
SEARCH_TYPE_IMAGE_SEARCH |
设置此字段可启用图片搜索。返回图片字节。 |
结构体
Struct 表示一个结构化数据值,由映射到动态类型值的字段组成。
fields[]
object (Field)
动态类型字段。使用列表而非地图,因为 LLM 对排序很敏感,我们希望让用户拥有完全的控制权。
| JSON 表示法 |
|---|
{
"fields": [
{
object ( |
字段
任务
支持的视频生成任务。
| 枚举 | |
|---|---|
TASK_UNSPECIFIED |
未指定任务。系统会根据输入提示和媒体内容推断任务。 |
TEXT_TO_VIDEO |
仅根据文本提示生成视频。 |
IMAGE_TO_VIDEO |
根据一张或两张源图片生成视频。第一张图片定义起始帧,可选的第二张图片定义结束帧。 |
REFERENCE_TO_VIDEO |
使用参考媒体(例如图片、音频或视频)生成视频。 |
EDIT |
修改现有输入视频。 |
ThinkingLevel
模型应生成的思维令牌的级别。
| 枚举 | |
|---|---|
THINKING_LEVEL_UNSPECIFIED |
默认值。此值未使用。 |
THINKING_LEVEL_MINIMAL |
几乎没有思考。 |
THINKING_LEVEL_LOW |
低思考等级。 |
THINKING_LEVEL_MEDIUM |
中等思考等级。 |
THINKING_LEVEL_HIGH |
高思考等级。 |
ThinkingSummaries
是否在回答中包含思路总结。
| 枚举 | |
|---|---|
THINKING_SUMMARIES_UNSPECIFIED |
默认值。此值未使用。 |
THINKING_SUMMARIES_AUTO |
自动思考总结。 |
THINKING_SUMMARIES_NONE |
没有思考摘要。 |
工具
- JSON 表示法
- FunctionDeclaration
- 行为
- GoogleSearchRetrieval
- DynamicRetrievalConfig
- Mode
- CodeExecution
- GoogleSearch
- Interval
- SearchTypes
- WebSearch
- ImageSearch
- ComputerUse
- 环境
- SafetyPolicy
- UrlContext
- FileSearch
- McpServer
- StreamableHttpTransport
- GoogleMaps
模型可能用于生成回答的工具详细信息。
Tool 是一段代码,可让系统与外部系统进行交互,以在模型知识和范围之外执行操作或一组操作。
下一个 ID:16
functionDeclarations[]
object (FunctionDeclaration)
可选。可供模型使用的 FunctionDeclarations 列表,可用于函数调用。
模型或系统不执行该函数。而是可以将定义的函数作为 FunctionCall 返回到客户端以供执行。模型可能会通过在回答中填充 FunctionCall 来决定调用这些函数中的一部分。下一个对话轮次可能包含 FunctionResponse,其中包含 Content.role“函数”生成上下文,用于下一个模型轮次。
googleSearchRetrieval
object (GoogleSearchRetrieval)
可选。由 Google 搜索提供支持的检索工具。
codeExecution
object (CodeExecution)
可选。使模型能够在生成过程中执行代码。
googleSearch
object (GoogleSearch)
可选。GoogleSearch 工具类型。用于支持模型中的 Google 搜索的工具。由 Google 提供支持。
computerUse
object (ComputerUse)
可选。支持模型直接与计算机交互的工具。如果启用,系统会自动填充特定于计算机用途的函数声明。
urlContext
object (UrlContext)
可选。用于支持网址上下文检索的工具。
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
用于检索公开 Web 数据以建立回答依据的工具,由 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)
可选。时间间隔的开始时间(含)。
如果指定,则与此时间间隔匹配的时间戳必须等于或晚于开始时间。
采用 RFC 3339 标准,生成的输出将始终进行 Z 规范化(即转换为 UTC 零时区格式并在末尾附加 Z),并使用 0、3、6 或 9 个小数位。不进行“Z”归一化处理的偏差时间也是可以接受的。示例:"2014-10-02T15:01:23Z"、"2014-10-02T15:01:23.045123456Z" 或 "2014-10-02T15:01:23+05:30"。
endTime
string (Timestamp format)
可选。时间间隔的结束时间(不含)。
如果指定,则与此时间间隔匹配的时间戳必须早于结束时间。
采用 RFC 3339 标准,生成的输出将始终进行 Z 规范化(即转换为 UTC 零时区格式并在末尾附加 Z),并使用 0、3、6 或 9 个小数位。不进行“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
“计算机使用”工具类型。
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
此类型没有字段。
用于支持网址上下文检索的工具。
FileSearch
用于从语义检索语料库中检索知识的 FileSearch 工具。使用 ImportFile API 将文件导入到语义检索语料库。
fileSearchStoreNames[]
string
必需。要从中检索的文件搜索存储区的名称。示例: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 端点的完整网址。示例:“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 超时。
该时长以秒为单位,最多包含九个小数位,以“s”结尾。示例:"3.5s"。
sseReadTimeout
string (Duration format)
SSE 读取操作的超时时间。
该时长以秒为单位,最多包含九个小数位,以“s”结尾。示例:"3.5s"。
terminateOnClose
boolean
是否在传输关闭时关闭客户端会话。
| JSON 表示法 |
|---|
{ "url": string, "headers": { string: string, ... }, "timeout": string, "sseReadTimeout": string, "terminateOnClose": boolean } |
GoogleMaps
可为用户查询提供地理空间背景信息的 GoogleMaps 工具。
enableWidget
boolean
可选。是否在回答的 GroundingMetadata 中返回 widget 上下文令牌。开发者可以使用 widget 上下文令牌来渲染 Google 地图 widget,其中包含与模型在回答中提及的地点相关的地理空间上下文。
| JSON 表示法 |
|---|
{ "enableWidget": boolean } |
ToolChoiceType
工具选择的类型。
| 枚举 | |
|---|---|
TOOL_CHOICE_TYPE_UNSPECIFIED |
默认值。此值未使用。 |
AUTO |
自动选择工具。 |
ANY |
选择任意工具。 |
NONE |
未选择任何工具。 |
VALIDATED |
经过验证的工具选择。 |
VisualizationMode
可视化模式的枚举。我们最终将支持一种互动模式,用户可以选择是否在回答中包含 HTML 可视化图表。
| 枚举 | |
|---|---|
UNSPECIFIED |
默认的可视化模式。将默认为 AUTO。 |
OFF |
不包含可视化图表。 |
AUTO |
自动包含可视化图表。 |
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
- RealtimeInputConfig
- AutomaticActivityDetection
- StartSensitivity
- EndSensitivity
- ActivityHandling
- TurnCoverage
- SessionResumptionConfig
- ContextWindowCompressionConfig
- SlidingWindow
- AudioTranscriptionConfig
- LanguageAuto
- LanguageHints
- HistoryConfig
- 方法
资源:AuthToken
用于创建临时身份验证令牌的请求。
name
string
仅限输出。标识符。令牌本身。
expireTime
string (Timestamp format)
可选。仅限输入。不可变。一个可选时间,在此时间之后,如果使用生成的令牌,BidiGenerateContent 会话中的消息将被拒绝。(Gemini 可能会在此时间后抢先关闭会话。)
如果未设置,则此值默认为未来 30 分钟。如果设置了此值,则该值必须是未来 20 小时内的时间。
采用 RFC 3339 标准,生成的输出将始终进行 Z 规范化(即转换为 UTC 零时区格式并在末尾附加 Z),并使用 0、3、6 或 9 个小数位。不进行“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 小时内的时间。
采用 RFC 3339 标准,生成的输出将始终进行 Z 规范化(即转换为 UTC 零时区格式并在末尾附加 Z),并使用 0、3、6 或 9 个小数位。不进行“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
可选。仅限输入。不可变。相应令牌可使用的次数。如果此值为零,则不应用任何限制。恢复 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:响应候选项中的枚举字符串响应。如需查看所有受支持的文本 MIME 类型的列表,请参阅文档。
responseSchema
(deprecated)
object (Schema)
可选。生成的候选文本的输出架构。架构必须是 OpenAPI 架构的子集,并且可以是对象、基元或数组。
如果设置了此字段,则还必须设置兼容的 responseMimeType。兼容的 MIME 类型:application/json:JSON 响应的架构。如需了解详情,请参阅 JSON 文本生成指南。
_responseJsonSchema
(deprecated)
value (Value format)
可选。生成的回答的输出架构。这是 responseSchema 的替代方案,可接受 JSON 架构。
如果设置了此参数,则必须省略 responseSchema,但必须设置 responseMimeType。
虽然可以发送完整的 JSON 架构,但并非所有功能都受支持。具体来说,仅支持以下属性:
$id$defs$ref$anchortypeformattitledescriptionenum(适用于字符串和数字)itemsprefixItemsminItemsmaxItemsminimummaximumanyOfoneOf(与anyOf的解读方式相同)propertiesadditionalPropertiesrequired
还可以设置非标准 propertyOrdering 属性。
循环引用会展开到一定程度,因此只能在非必需属性中使用。(可为 null 的属性不足。)如果子架构中设置了 $ref,则除了以 $ 开头的属性之外,不得设置任何其他属性。
responseJsonSchema
value (Value format)
可选。内部细节。请使用 responseJsonSchema,而不是此字段。
responseModalities[]
enum (Modality)
可选。所请求的响应模态。表示模型可以返回并在响应中应包含的一组模态。这与回答的模态完全匹配。
一个模型可能支持多种模态组合。如果所请求的模态与任何支持的组合都不匹配,则会返回错误。
空列表相当于仅请求文本。
candidateCount
integer
可选。要返回的生成响应数量。如果未设置,则默认为 1。请注意,此功能不适用于上一代模型(Gemini 1.0 系列)
maxOutputTokens
integer
可选。候选回答中包含的 token 数量上限。
注意:默认值因模型而异,请参阅 getModel 函数返回的 Model 的 Model.output_token_limit 属性。
temperature
number
可选。控制输出的随机性。
注意:默认值因模型而异,请参阅 getModel 函数返回的 Model 的 Model.temperature 属性。
值可介于 [0.0, 2.0] 之间。
topP
number
可选。抽样时要考虑的 token 的最大累积概率。
该模型使用 Top-k 和 Top-p(核)采样相结合的方式。
系统会根据词元分配的概率对词元进行排序,以便仅考虑最有可能的词元。Top-k 采样直接限制了要考虑的 token 的数量上限,而核采样则根据累积概率限制了 token 的数量。
注意:默认值因 Model 而异,由 getModel 函数返回的 Model.top_p 属性指定。如果 topK 属性为空,则表示模型不应用 top-k 抽样,并且不允许在请求中设置 topK。
topK
integer
可选。抽样时要考虑的令牌数量上限。
Gemini 模型使用 Top-p(核)采样或 Top-k 与核采样的组合。Top-k 抽样会考虑 topK 个最有可能的 token。使用核采样的模型不允许进行 topK 设置。
注意:默认值因 Model 而异,由 getModel 函数返回的 Model.top_p 属性指定。如果 topK 属性为空,则表示模型不应用 top-k 抽样,并且不允许在请求中设置 topK。
seed
integer
可选。解码中使用的种子。如果未设置,请求将使用随机生成的种子。
presencePenalty
number
可选。如果下一个令牌已在响应中出现,则应用于该令牌的 logprobs 的存在惩罚。
此惩罚是二元(开启/关闭)的,不取决于令牌的使用次数(首次使用后)。使用 frequencyPenalty 表示每次使用都会增加的惩罚。
正值惩罚会阻止使用已在回答中使用的令牌,从而增加词汇量。
负惩罚会鼓励使用已在回答中使用的令牌,从而减少词汇量。
frequencyPenalty
number
可选。应用于下一个令牌的 logprobs 的频次惩罚,乘以每个令牌在目前为止的响应中出现的次数。
正惩罚会抑制对已使用过的 token 的使用,抑制程度与 token 的使用次数成正比:token 的使用次数越多,模型就越难再次使用该 token,从而增加回答的词汇量。
注意:负值惩罚会促使模型重复使用 token,重复使用的次数与 token 的使用次数成正比。较小的负值会减少回答的词汇量。负值越大,模型开始重复常见 token 的时间就越早,直到达到 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)
可选。翻译配置。
| 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
模型应生成的想法 token 数。
thinkingLevel
enum (ThinkingLevel)
可选。控制模型在生成回答之前执行的内部推理过程的最大深度。默认值取决于型号。如需了解详情,请参阅思维水平指南。建议用于 Gemini 3 或更高版本的模型。与较早型号搭配使用会导致错误。
| JSON 表示法 |
|---|
{
"includeThoughts": boolean,
"thinkingBudget": integer,
"thinkingLevel": enum ( |
ThinkingLevel
允许用户使用枚举而非整数预算来指定思考量。
| 枚举 | |
|---|---|
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 个 token)。 |
MEDIA_RESOLUTION_MEDIUM |
媒体分辨率设置为中等(256 个 token)。 |
MEDIA_RESOLUTION_HIGH |
媒体分辨率设置为高(缩放重构,256 个 token)。 |
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 |
512 像素的图片大小。 |
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 } |
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)
触发上下文窗口压缩所需的 token 数量(在运行对话轮次之前)。
这可用于平衡质量与延迟时间,因为较短的上下文窗口可能会加快模型响应速度。不过,任何压缩操作都会导致暂时性的延迟增加,因此不应频繁触发。
如果未设置,则默认为模型上下文窗口限制的 80%。这样一来,剩余 20% 的配额可用于下一次用户请求/模型响应。
| JSON 表示法 |
|---|
{
// compression_mechanism
"slidingWindow": {
object ( |
SlidingWindow
SlidingWindow 方法通过舍弃上下文窗口开头的内容来运行。生成的上下文始终从 USER 角色回合的开头开始。系统指令和任何 BidiGenerateContentSetup.prefix_turns 将始终位于结果的开头。
targetTokens
string (int64 format)
要保留的目标令牌数量。默认值为 triggerTokens/2。
舍弃部分上下文窗口会导致延迟暂时增加,因此应校准此值,以避免频繁的压缩操作。
| JSON 表示法 |
|---|
{ "targetTokens": string } |
AudioTranscriptionConfig
音频转写配置。
adaptationPhrases[]
(deprecated)
string
可选。用于语音自适应的短语列表,用于使 ASR 模型偏向这些特定术语,从而提高识别准确率。
customVocabulary[]
string
可选。自定义词汇短语列表,用于引导语音识别模型识别特定术语(产品名称、专有名词、行业术语)。
language_config
Union type
language_config 只能是下列其中一项:languageAuto
object (LanguageAuto)
可选。模型会自动检测语言。
languageHints
object (LanguageHints)
可选。指定音频中的一种或多种语言。
| JSON 表示法 |
|---|
{ "adaptationPhrases": [ string ], "customVocabulary": [ string ], // language_config "languageAuto": { object ( |
LanguageAuto
此类型没有字段。
表示应自动检测音频的语言。
LanguageHints
向模型提供有关音频中可能存在的语言的提示。
languageCodes[]
string
必需。BCP-47 语言代码。
| JSON 表示法 |
|---|
{ "languageCodes": [ string ] } |
HistoryConfig
历史记录配置。
此消息包含在会话配置中,如 BidiGenerateContentSetup.history_config 所示。配置历史消息的交换。
initialHistoryInClientContent
boolean
可选。如果为 true,则在发送 setupComplete 后,服务器将等待并首先处理 clientContent 消息,直到 turnComplete 为 true。此初始历史记录不会触发模型调用,并且可能以角色 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 小时内的时间。
采用 RFC 3339 标准,生成的输出将始终进行 Z 规范化(即转换为 UTC 零时区格式并在末尾附加 Z),并使用 0、3、6 或 9 个小数位。不进行“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 小时内的时间。
采用 RFC 3339 标准,生成的输出将始终进行 Z 规范化(即转换为 UTC 零时区格式并在末尾附加 Z),并使用 0、3、6 或 9 个小数位。不进行“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
可选。仅限输入。不可变。相应令牌可使用的次数。如果此值为零,则不应用任何限制。恢复 Live API 会话不计为一次使用。如果未指定,则默认值为 1。
响应正文
如果成功,响应正文将包含一个新创建的 AuthToken 实例。