GenerateContentResponse

来自支持多个候选对象的模型的响应。

关于安全评级和内容过滤的注意事项。系统会在 GenerateContentResponse.prompt_feedback 中的提示以及 finishReasonsafetyRatings 中针对每个候选字词报告它们。API 合同规定:- 要么返回所有请求的候选对象,要么完全不返回任何候选对象;仅当提示存在问题时,才会返回任何候选对象(请参阅 promptFeedback)- 系统会在 finishReasonsafetyRatings 上报告针对每个候选对象的反馈。

JSON 表示法
{
  "candidates": [
    {
      object (Candidate)
    }
  ],
  "promptFeedback": {
    object (PromptFeedback)
  },
  "usageMetadata": {
    object (UsageMetadata)
  }
}
字段
candidates[]

object (Candidate)

来自模型的候选响应。

promptFeedback

object (PromptFeedback)

返回与内容过滤器相关的提示反馈。

usageMetadata

object (UsageMetadata)

仅限输出。关于生成请求令牌使用情况的元数据。

候选人

从模型生成的候选回复。

JSON 表示法
{
  "content": {
    object (Content)
  },
  "finishReason": enum (FinishReason),
  "safetyRatings": [
    {
      object (SafetyRating)
    }
  ],
  "citationMetadata": {
    object (CitationMetadata)
  },
  "tokenCount": integer,
  "index": integer
}
字段
content

object (Content)

仅限输出。从模型返回的生成内容。

finishReason

enum (FinishReason)

可选。仅限输出。模型停止生成令牌的原因。

如果为空,则表示模型尚未停止生成词元。

safetyRatings[]

object (SafetyRating)

回答候选内容的安全性评分列表。

每个类别最多有一个评分。

citationMetadata

object (CitationMetadata)

仅限输出。模型生成的候选字词的引用信息。

此字段中可能会填充 content 中包含的任何文本的引述信息。这些是基础 LLM 的训练数据中从受版权保护的材料中“背诵”的段落。

tokenCount

integer

仅限输出。此候选者的词元数量。

index

integer

仅限输出。候选人在候选人列表中的索引。

FinishReason

定义模型停止生成令牌的原因。

枚举
FINISH_REASON_UNSPECIFIED 默认值。此值未使用。
STOP 模型的自然停靠点或提供的停靠序列。
MAX_TOKENS 已达到请求中指定的令牌数量上限。
SAFETY 出于安全原因,候选内容已被举报。
RECITATION 候选内容因复制内容而被标记。
OTHER 原因不明。

SafetyRating

一段内容的安全评级。

安全评级包含一段内容对应的伤害类别以及该类别的伤害概率级别。我们将内容划分为多个危害类别的安全性,并在此处列出了损害分类的概率。

JSON 表示法
{
  "category": enum (HarmCategory),
  "probability": enum (HarmProbability),
  "blocked": boolean
}
字段
category

enum (HarmCategory)

必需。相应评分的类别。

probability

enum (HarmProbability)

必需。此类内容的损害概率。

blocked

boolean

此内容是因为此分级而被屏蔽吗?

HarmProbability

某项内容有害的概率。

分类系统会给出内容不安全概率。这并不表示某段内容造成的损害的严重性。

枚举
HARM_PROBABILITY_UNSPECIFIED 未指定概率。
NEGLIGIBLE 内容不安全的可能性微乎其微。
LOW 内容不安全的可能性较低。
MEDIUM 内容不安全的可能性为中等。
HIGH 内容很有可能不安全。

CitationMetadata

一段内容的来源提供方说明集合。

JSON 表示法
{
  "citationSources": [
    {
      object (CitationSource)
    }
  ]
}
字段
citationSources[]

object (CitationSource)

特定回答的来源引用。

CitationSource

对特定回答的一部分的引用。

JSON 表示法
{
  "startIndex": integer,
  "endIndex": integer,
  "uri": string,
  "license": string
}
字段
startIndex

integer

可选。归因于此来源的响应的开头部分。

索引表示片段的起始值(以字节为单位)。

endIndex

integer

可选。归因细分受众群的结尾(不含)。

uri

string

可选。归因于部分文本来源的 URI。

license

string

可选。归因于细分来源的 GitHub 项目的许可。

必须提供许可信息才能引用代码。

PromptFeedback

GenerateContentRequest.content 中指定的提示的一组反馈元数据。

JSON 表示法
{
  "blockReason": enum (BlockReason),
  "safetyRatings": [
    {
      object (SafetyRating)
    }
  ]
}
字段
blockReason

enum (BlockReason)

可选。如果已设置,系统会屏蔽提示,且不会返回任何候选字词。改述提示。

safetyRatings[]

object (SafetyRating)

提示安全性的评分。每个类别最多有一个评分。

BlockReason

说明提示被屏蔽的原因。

枚举
BLOCK_REASON_UNSPECIFIED 默认值。此值未使用。
SAFETY 出于安全原因,提示已被屏蔽。您可以检查 safetyRatings,了解哪个安全类别屏蔽了它。
OTHER 由于未知原因,提示已被屏蔽。

UsageMetadata

关于生成请求的令牌使用情况的元数据。

JSON 表示法
{
  "promptTokenCount": integer,
  "candidatesTokenCount": integer,
  "totalTokenCount": integer
}
字段
promptTokenCount

integer

提示中的词元数量。设置 cacheContent 后,这仍是总有效提示大小。也就是说,这包括缓存内容中的令牌数量。

candidatesTokenCount

integer

生成的候选字词中的词元总数。

totalTokenCount

integer

生成请求的词元总数(提示 + 候选词)。