Message

用户与系统之间的交互所生成的消息。

JSON 表示法
{
  "timestamp": string,
  "messageId": string,

  // Union field kind can be only one of the following:
  "userMessage": {
    object (UserMessage)
  },
  "systemMessage": {
    object (SystemMessage)
  }
  // End of list of possible types for union field kind.
}
字段
timestamp

string (Timestamp format)

仅限输出。对于用户消息,这是系统收到消息的时间。对于系统消息,这是系统生成消息的时间。

采用 RFC 3339 标准,生成的输出将始终标准化为 Z (UTC),并使用 0、3、6 或 9 个小数位。不带“Z”的偏差时间也是可以接受的。示例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

messageId

string

可选。对话中消息的唯一 ID,用于实现持久性。

联合字段 kind。消息的种类。kind 只能是下列其中一项:
userMessage

object (UserMessage)

与系统进行交互的用户发出的消息。

systemMessage

object (SystemMessage)

系统为响应用户而发出的消息。

UserMessage

与系统进行交互的用户发出的消息。

JSON 表示法
{

  // Union field kind can be only one of the following:
  "text": string
  // End of list of possible types for union field kind.
}
字段
联合字段 kind。用户消息中的内容的种类。kind 只能是下列其中一项:
text

string

文本应使用此字段,而不是 blob。

SystemMessage

系统为响应用户而发出的消息。此消息也可以是用户发出的消息,作为与系统进行多轮对话的历史上下文。

JSON 表示法
{
  "citation": {
    object (Citation)
  },

  // Union field kind can be only one of the following:
  "text": {
    object (TextMessage)
  },
  "schema": {
    object (SchemaMessage)
  },
  "data": {
    object (DataMessage)
  },
  "analysis": {
    object (AnalysisMessage)
  },
  "chart": {
    object (ChartMessage)
  },
  "error": {
    object (ErrorMessage)
  },
  "exampleQueries": {
    object (ExampleQueries)
  }
  // End of list of possible types for union field kind.
  "groupId": integer
}
字段
citation

object (Citation)

仅限输出。系统消息的引用信息。

联合字段 kind。系统消息中的内容的种类。kind 只能是下列其中一项:
text

object (TextMessage)

对用户消息的直接自然语言响应。

schema

object (SchemaMessage)

在架构解析期间生成的消息。

data

object (DataMessage)

在数据检索期间生成的消息。

analysis

object (AnalysisMessage)

在分析期间生成的消息。

chart

object (ChartMessage)

在图表生成期间生成的消息。

error

object (ErrorMessage)

错误消息。

exampleQueries

object (ExampleQueries)

可选。包含示例查询的消息。

groupId

integer

标识事件所属的群组。相似事件在逻辑上被视为彼此相关,应在界面中一起显示。

TextMessage

多部分文本消息。

JSON 表示法
{
  "parts": [
    string
  ],
  "textType": enum (TextType),
  "thoughtSignature": string
}
字段
parts[]

string

可选。消息的各个部分。

textType

enum (TextType)

可选。文本消息的类型。

thoughtSignature

string (bytes format)

可选。一种用于想法的不透明签名,以便在后续请求中重复使用。

使用 base64 编码的字符串。

TextType

文本消息的类型。

枚举
TEXT_TYPE_UNSPECIFIED 默认文本类型。
FINAL_RESPONSE 该文本是对用户问题的最终回答。
THOUGHT 该文本是模型给出的想法。
PROGRESS 该文本是有关智能体进度的信息性消息,例如正在调用的工具。这与智能体的内部思考过程 (THOUGHT) 和给用户的最终回答 (FINAL_RESPONSE) 不同。这些消息可让您了解智能体的行动。
FOLLOWUP_QUESTIONS 文本是建议的后续问题列表。各部分中的每个项目都是一个后续问题。

SchemaMessage

在架构解析期间生成的消息。

JSON 表示法
{

  // Union field kind can be only one of the following:
  "query": {
    object (SchemaQuery)
  },
  "result": {
    object (SchemaResult)
  }
  // End of list of possible types for union field kind.
}
字段
联合字段 kind。此消息是包含架构解析的查询还是其结果。kind 只能是下列其中一项:
query

object (SchemaQuery)

架构解析查询。

result

object (SchemaResult)

架构解析查询的结果。

SchemaQuery

用于解析与所提问题相关的架构的查询。

JSON 表示法
{
  "question": string
}
字段
question

string

可选。要发送给系统进行架构解析的问题。

SchemaResult

架构解析的结果。

JSON 表示法
{
  "datasources": [
    {
      object (Datasource)
    }
  ]
}
字段
datasources[]

object (Datasource)

可选。用于解析架构查询的数据源。

数据源

可用于回答问题的数据源。

JSON 表示法
{
  "schema": {
    object (Schema)
  },
  "structSchema": {
    object
  },

  // Union field reference can be only one of the following:
  "bigqueryTableReference": {
    object (BigQueryTableReference)
  },
  "studioDatasourceId": string,
  "lookerExploreReference": {
    object (LookerExploreReference)
  },
  "bigqueryPropertyGraphReference": {
    object (BigQueryPropertyGraphReference)
  }
  // End of list of possible types for union field reference.
}
字段
schema

object (Schema)

可选。数据源的架构。

structSchema

object (Struct format)

可选。架构的结构体表示形式。对于架构无法完全由强类型 schema 字段表示的数据源,此字段会填充相应数据。

对于 Looker 数据源,此属性会映射到 LookmlModelExplore 类型:https://cloud.google.com/looker/docs/reference/looker-api/latest/types/LookmlModelExplore

联合字段 reference。对数据源的引用。reference 只能是下列其中一项:
bigqueryTableReference

object (BigQueryTableReference)

对 BigQuery 表的引用。

studioDatasourceId

string

对 Looker Studio 数据源的引用。

lookerExploreReference

object (LookerExploreReference)

对 Looker 探索的引用。

bigqueryPropertyGraphReference

object (BigQueryPropertyGraphReference)

对 BigQuery 属性图的引用。

BigQueryPropertyGraphReference

表示对单个 BigQuery 属性图的引用的消息。

JSON 表示法
{
  "projectId": string,
  "datasetId": string,
  "propertyGraphId": string
}
字段
projectId

string

必需。属性图表所属的项目。

datasetId

string

必需。属性图表所属的数据集。

propertyGraphId

string

必需。属性图表 ID。

DataMessage

在数据检索期间生成的消息。

JSON 表示法
{

  // Union field kind can be only one of the following:
  "query": {
    object (DataQuery)
  },
  "generatedSql": string,
  "result": {
    object (DataResult)
  },
  "bigQueryJob": {
    object (BigQueryJob)
  },
  "matchedQuery": {
    object (MatchedQuery)
  }
  // End of list of possible types for union field kind.
}
字段
联合字段 kind。此消息是包含数据检索的查询、结果还是生成的 SQL。kind 只能是下列其中一项:
query

object (DataQuery)

数据检索查询。

generatedSql

string

系统为检索数据而生成的 SQL。

result

object (DataResult)

检索到的数据。

bigQueryJob

object (BigQueryJob)

系统为检索数据而执行的 BigQuery 作业。

matchedQuery

object (MatchedQuery)

用于检索数据的预先存在的匹配查询。

DataQuery

用于检索数据的查询。

JSON 表示法
{
  "question": string,
  "name": string,
  "datasources": [
    {
      object (Datasource)
    }
  ],

  // Union field query_type can be only one of the following:
  "looker": {
    object (LookerQuery)
  }
  // End of list of possible types for union field query_type.
}
字段
question

string

可选。要回答的自然语言问题。

name

string

可选。反映查询意图的蛇形命名法查询名称。它用于为对应的数据结果命名,以便可以在后续步骤中引用。

  • 示例:“total_sales_by_product”
  • 示例:“sales_for_product_12345”
datasources[]

object (Datasource)

可选。可用于回答问题的数据源。

联合字段 query_type。要执行的查询的类型。query_type 只能是下列其中一项:
looker

object (LookerQuery)

可选。用于从 Looker 探索中检索数据的查询。

DataResult

检索到的数据。

JSON 表示法
{
  "name": string,
  "schema": {
    object (Schema)
  },
  "data": [
    {
      object
    }
  ],
  "formattedData": [
    {
      object
    }
  ]
}
字段
name

string

可选。反映数据结果内容的蛇形命名法数据结果名称。该名称用于通过引用传递结果,并用作表示其含义的信号。

  • 示例:“total_sales_by_product”
  • 示例:“sales_for_product_12345”
schema

object (Schema)

可选。数据的架构。

data[]

object (Struct format)

可选。数据的内容。每行都是一个与架构匹配的结构体。简单值以字符串表示,而嵌套结构以列表或结构体表示。

formattedData[]

object (Struct format)

可选。数据的格式化表示形式(如果适用)。每行都是一个结构体,直接对应于 data 字段中相同索引处的行。其值是原始数据的字符串表示形式,根据数据源规范进行格式化(例如,货币为“$1,234.56”)。未设置格式的列将默认为其原始值表示形式。如果没有任何列具有格式设置规则,此字段将为空。

BigQueryJob

系统执行的 BigQuery 作业。

JSON 表示法
{
  "projectId": string,
  "jobId": string,
  "location": string,
  "destinationTable": {
    object (BigQueryTableReference)
  },
  "schema": {
    object (Schema)
  }
}
字段
projectId

string

必需。作业所属的项目。

请参阅 JobReference

jobId

string

必需。作业的 ID。

请参阅 JobReference

location

string

可选。作业的位置。

请参阅 JobReference

destinationTable

object (BigQueryTableReference)

可选。对作业查询结果的目标表的引用。

请参阅 JobConfigurationQuery

schema

object (Schema)

可选。作业查询结果的架构。

请参阅 JobStatistics2

MatchedQuery

匹配的查询消息表示代理已将上下文中提供的一个示例查询匹配为适用于当前问题。在匹配过程中,它还会包含其他信息。

JSON 表示法
{
  "exampleQuery": {
    object (ExampleQuery)
  },
  "queryParameterValues": [
    {
      object (QueryParameterValues)
    }
  ]
}
字段
exampleQuery

object (ExampleQuery)

根据示例查询匹配的查询。

queryParameterValues[]

object (QueryParameterValues)

查询参数的提取值。

QueryParameterValues

查询参数值消息表示 LLM 根据示例查询从用户问题中提取的查询参数的值。

JSON 表示法
{
  "name": string,
  "value": string
}
字段
name

string

必需。参数的名称。

value

string

必需。参数值。

AnalysisMessage

在分析期间生成的消息。

JSON 表示法
{

  // Union field kind can be only one of the following:
  "query": {
    object (AnalysisQuery)
  },
  "progressEvent": {
    object (AnalysisEvent)
  }
  // End of list of possible types for union field kind.
}
字段
联合字段 kind。此消息是包含分析查询还是分析中的某个事件。kind 只能是下列其中一项:
query

object (AnalysisQuery)

分析查询。

progressEvent

object (AnalysisEvent)

表示分析进度的事件。

AnalysisQuery

用于执行分析的查询。

JSON 表示法
{
  "question": string,
  "dataResultNames": [
    string
  ]
}
字段
question

string

可选。可帮助回答用户的原始问题的分析问题。

dataResultNames[]

string

可选。要分析的之前检索到的数据结果的名称。

AnalysisEvent

表示分析进度的事件。

JSON 表示法
{

  // Union field kind can be only one of the following:
  "plannerReasoning": string,
  "coderInstruction": string,
  "code": string,
  "executionOutput": string,
  "executionError": string,
  "resultVegaChartJson": string,
  "resultNaturalLanguage": string,
  "resultCsvData": string,
  "resultReferenceData": string,
  "error": string
  // End of list of possible types for union field kind.
}
字段
联合字段 kind。分析期间发生的事件的种类。kind 只能是下列其中一项:
plannerReasoning

string

Python 代码生成规划工具的推理。

coderInstruction

string

为进行代码生成而发出的指令。

code

string

生成的代码。

executionOutput

string

代码执行的输出。

executionError

string

代码执行产生的错误。

resultVegaChartJson

string

采用 Vega 图表 JSON 字符串形式的结果。

resultNaturalLanguage

string

采用 NL 字符串形式的结果。

resultCsvData

string

采用 CSV 字符串形式的结果。

resultReferenceData

string

采用对数据源的引用形式的结果。

error

string

一般错误消息。

ChartMessage

在图表生成期间生成的消息。

JSON 表示法
{

  // Union field kind can be only one of the following:
  "query": {
    object (ChartQuery)
  },
  "result": {
    object (ChartResult)
  }
  // End of list of possible types for union field kind.
}
字段
联合字段 kind。此消息是包含图表生成查询还是其结果。kind 只能是下列其中一项:
query

object (ChartQuery)

用于生成图表的查询。

result

object (ChartResult)

图表生成查询的结果。

ChartQuery

用于生成图表的查询。

JSON 表示法
{
  "instructions": string,
  "dataResultName": string
}
字段
instructions

string

可选。用于生成图表的自然语言指令。

dataResultName

string

可选。要在图表中使用的之前检索到的数据结果的名称。

ChartResult

图表生成查询的结果。

JSON 表示法
{
  "vegaConfig": {
    object
  },
  "image": {
    object (Blob)
  }
}
字段
vegaConfig

object (Struct format)

可选。生成的 Vega 图表配置。请参阅 https://vega.github.io/vega/docs/config/

image

object (Blob)

可选。图表的渲染(如果在上下文中请求获得此内容)。

Blob

具有 MIME 类型的数据 blob。

JSON 表示法
{
  "mimeType": string,
  "data": string
}
字段
mimeType

string

必需。消息数据的 IANA 标准 MIME 类型。

data

string (bytes format)

必需。以字节表示的数据。

使用 base64 编码的字符串。

ErrorMessage

工具调用的错误消息。此消息用于表示代理尝试使用工具时发生的错误。请务必注意,并非所有错误都是致命的。许多错误都是可消除的,代理可以使用此错误消息中的信息自行更正并重试工具调用,或尝试其他方法。

例如,如果数据查询失败,代理可能会收到 ErrorMessage,对其进行分析,然后生成更正后的查询。

客户端在解读此消息时应谨慎,不应将其视为明确的失败。这可能是智能体完成任务的正常迭代过程的一部分。在没有上下文的情况下直接向最终用户显示这些错误(例如,作为“严重失败”)可能会产生误导。

JSON 表示法
{
  "text": string
}
字段
text

string

仅限输出。错误的文本。

ExampleQueries

包含派生示例查询和自创示例查询的消息。

JSON 表示法
{
  "exampleQueries": [
    {
      object (ExampleQuery)
    }
  ]
}
字段
exampleQueries[]

object (ExampleQuery)

可选。派生和撰写的示例查询列表,可提供相关的常用 SQL 查询示例及其相应的自然语言查询(可选)。目前仅用于 BigQuery 数据源。

引用

内容来源归因。

JSON 表示法
{
  "sources": [
    {
      object (CitationSource)
    }
  ],
  "anchors": [
    {
      object (CitationAnchor)
    }
  ]
}
字段
sources[]

object (CitationSource)

仅限输出。被引用的来源列表。

anchors[]

object (CitationAnchor)

仅限输出。引用锚点的列表。

CitationSource

引用的来源。

JSON 表示法
{
  "id": string,
  "title": string,

  // Union field source_type can be only one of the following:
  "uri": string,
  "exampleQuery": {
    object (ExampleQuery)
  },
  "glossaryTerm": {
    object (GlossaryTerm)
  }
  // End of list of possible types for union field source_type.
}
字段
id

string

仅限输出。来源的唯一标识符。此 ID 由服务生成,在单个 Citation 消息的范围内是唯一的。

title

string

仅限输出。来源的标题。

联合字段 source_type。引用来源,可以是支持的类型之一。source_type 只能是下列其中一项:
uri

string

仅限输出。用作来源的 URI,例如 Web 接地网址。

exampleQuery

object (ExampleQuery)

仅限输出。用作来源的示例查询。

glossaryTerm

object (GlossaryTerm)

仅限输出。用作来源的词汇表术语。

CitationAnchor

引用的锚点。

JSON 表示法
{

  // Union field anchor_type can be only one of the following:
  "textMessageAnchor": {
    object (TextMessageCitationAnchor)
  }
  // End of list of possible types for union field anchor_type.
}
字段
联合字段 anchor_type。引用的锚点,可以是支持的类型之一。anchor_type 只能是下列其中一项:
textMessageAnchor

object (TextMessageCitationAnchor)

仅限输出。仅当引用对象为 TextMessage 时设置。

TextMessageCitationAnchor

TextMessage 中的引用锚点。

JSON 表示法
{
  "partIndex": integer,
  "startOffsetBytes": integer,
  "endOffsetBytes": integer,
  "sourceIds": [
    string
  ]
}
字段
partIndex

integer

仅限输出。TextMessage.parts 字段中相应部分的从 0 开始的索引。

startOffsetBytes

integer

仅限输出。引用在部分字符串中的起始位置(含边界值),以 UTF-8 字节为单位。示例:对于引用了“world”的文本“Hello, world”,起始偏移字节(含)为 7,结束偏移字节(不含)为 12。

endOffsetBytes

integer

仅限输出。引用在部分字符串中结束的位置(不含边界值),以 UTF-8 字节为单位。示例:对于引用了“world”的文本“Hello, world”,起始偏移字节(含)为 7,结束偏移字节(不含)为 12。

sourceIds[]

string

仅限输出。被引用的来源的 ID。