启动与 CES 智能体的单轮互动。使用服务器端流式传输来提供增量结果和部分响应(在生成时)。
默认情况下,完整响应(例如回调中的消息或完整的 LLM 响应)会在可用后立即发送给客户端。如需直接从模型流式传输各个文本块,请将
enableTextStreaming 设置为 true。
HTTP 请求
POST https://ces.googleapis.com/v1beta/{config.session=projects/*/locations/*/apps/*/sessions/*}:streamRunSession
网址采用 gRPC 转码语法。
路径参数
| 参数 | |
|---|---|
config.session |
必需。会话的唯一标识符。格式: |
请求正文
请求正文中包含结构如下的数据:
| JSON 表示法 |
|---|
{ "config": { "session": string, "inputAudioConfig": { "audioEncoding": enum ( |
| 字段 | |
|---|---|
config.inputAudioConfig |
可选。用于处理输入音频的配置。 |
config.outputAudioConfig |
可选。用于生成输出音频的配置。 |
config.historicalContexts[] |
可选。会话的历史上下文,包括用户输入、智能体响应和其他消息。通常,CES 智能体会自动管理会话,因此客户端无需显式填充此字段。不过,客户端可以选择替换历史上下文,以强制会话从特定状态开始。 |
config.entryAgent |
可选。用于处理会话的入口智能体。如果未指定,会话将由应用的 |
config.deployment |
可选。用于会话的应用部署。格式: |
config.timeZone |
可选。用户的时区。如果提供,智能体将使用该时区来处理与日期和时间相关的变量。否则,智能体将使用 App.time_zone_settings 中指定的时区。 格式为 IANA 时区数据库中的时区,例如“America/Los_Angeles”。 |
config.useToolFakes |
可选。是否为会话使用工具伪造。如果设置了此字段,智能体将尝试使用工具伪造,而不是调用实际工具。 |
config.remoteDialogflowQueryParameters |
可选。QueryParameters 当会话控制权转移到远程智能体时,要发送给远程 Dialogflow 智能体的 QueryParameters。 |
config.enableTextStreaming |
可选。是否启用从模型流式传输文本输出。默认情况下,模型中的文本输出会在发送给客户端之前收集。注意:这仅适用于通过 |
config.excludeDiagnosticInfo |
可选。是否从会话输出中排除诊断信息。 |
inputs[] |
必需。会话的输入。 |
响应正文
如果成功,响应正文将包含 RunSessionResponse 实例数据流。
授权范围
需要以下 OAuth 范围之一:
https://www.googleapis.com/auth/cloud-platformhttps://www.googleapis.com/auth/ces
如需了解详情,请参阅 Authentication Overview。
IAM 权限
需要拥有 session 资源的以下 IAM 权限:
ces.sessions.runSession
如需了解详情,请参阅 IAM 文档。