运行查询
Authorizations
Headers
Body
需提供非空白的 query。
要查询的问题。不能为空白,且不超过 16,384 个 UTF-8 字节。
16000\S从返回的 request 对象复制。这些 ID 不会对检索到的内容进行筛选或排序。
100从返回的 request 对象复制。这些 ID 不会对检索到的内容进行筛选或排序。
1001 - 200Response
流已建立。无论请求发送的 Accept 是什么,后续事件都以 text/event-stream 返回。流建立之前,按 HTTP 错误处理失败;流建立之后,即使 HTTP 状态码为 200,收到 answer.error 事件也应按失败处理。
每一帧包含一行 event:(事件名)和一行 data:(一个 JSON 对象)。按 event: 行分发事件,JSON 中没有 event 字段。
客户端的读取超时要足以覆盖你所用的最慢检索模式。API 本身没有读取超时,也不发送保活事件。不能因客户端超时而中断的工作,改用 创建研究任务。
流式调用流程详见 查询知识库。
事件
answer.delta:回答的一个片段。delta:要追加的文本。traceId:查询记录 ID。
answer.done:回答已完成,查询记录已保存。-
finishReason:找到分段时为retrieval-evidence,没有任何匹配时为no-retrieval-evidence。 -
metadata:键不固定的对象。在fast、deep、research深度下均包含mode和evidenceBundle,结果为retrieval-evidence时包含citations,还可能包含本次运行产生的其他键。evidenceBundle.items包含检索到的分段及其文本和分数。如需事后查看这些分段,调用 获取查询分段列表。它会分页返回,并标出所属文档此后已被删除的分段。
-
traceId:查询记录 ID。
-
answer.error:流建立后查询失败。code:失败类型,取值之一:RETRIEVAL_EXECUTION_LEASE_LOST:知识库进入删除流程,或本次运行已过期。重新运行查询。KNOWLEDGE_FS_UNAVAILABLE:生成回答或保存查询记录时发生的其他任何失败。
error:错误消息。failure:错误详情,包括category、code、message、retryPolicy、stage、traceId,以及可选的action。stage:始终为query_generation。
traceId:查询记录 ID。
citations
每个支撑回答的检索分段对应一条:
nodeId:分段 ID。label:node:<nodeId>。documentAssetId:分段所属的文档文件。sectionPath:大纲路径。pageNumber:页码,从 1 开始,源文件提供页码信息时返回,否则省略。projectionIds:参与本次匹配的检索索引 ID。识别源文件请使用documentAssetId。sources:找到该分段的检索方式:dense、fts、pageindex或visual。
图片引用可能包含 multimodalCandidate.assetRef.analysisUnavailable.reason。出现该字段表示图片分析因资源限制或图片处理失败而被跳过,相关文本仍可能计入结果。
evidenceBundle.items[].citations[] 还可能带有 startOffset 和 endOffset。它们是解析后文档文本中的 UTF-8 字节偏移量,从 0 开始计数,包含起点、不包含终点。展示引用时使用返回的分段文本,不要按这些偏移量截取原始文件。
不同结果下的结束顺序
- 成功:零个或多个
answer.delta,然后是一个answer.done,随后流关闭。 - 失败:以
answer.error代替answer.done,随后流关闭。在此之前可能已发送部分片段,HTTP 状态码仍为200。将其视为最终结果,如需重试,重新发起查询。 - 客户端断开连接:本次运行被取消,流结束。
回答内容:在 fast 和 deep 深度下,由一个 answer.delta 携带检索分段的汇总(Retrieval evidence answer: 后接带编号的章节路径及其文本)。在 research 深度下,综合生成的回答以一个或多个片段流式返回。没有任何匹配时,唯一的片段是 I could not find evidence for that query in the indexed retrieval projections.,且 finishReason 为 no-retrieval-evidence。
在所有深度下,回答最长 2,000 个字符。回答达到这个长度,并不能说明它是否被截断。
一次成功的运行:
event: answer.delta data: {"delta":"Retrieval evidence answer:\n1. Policies / Refunds: Refund window extended from 14 to 30 days for annual plans.","traceId":"6c1f0b2e-9d3a-4f5b-8c7d-0e1f2a3b4c5d"} event: answer.done data: {"finishReason":"retrieval-evidence","metadata":{"mode":"fast","generator":"hybrid-query","topScore":0.83,"citations":[{"documentAssetId":"b3f4c8d2-6a1e-4f7b-9c0d-2e3f4a5b6c7d","label":"node:9f2e6b41-7c3d-4a58-b0e9-1d2c3f4a5b6e","nodeId":"9f2e6b41-7c3d-4a58-b0e9-1d2c3f4a5b6e","pageNumber":4,"projectionIds":["c7a0d5b2-3e14-4f89-a6b7-0c1d2e3f4a5b"],"sectionPath":["Policies","Refunds"],"sources":["dense","fts"]}],"evidenceBundle":{"createdAt":"2026-09-06T08:31:12Z","id":"e4b2f7a0-1c3d-4e58-9f6a-0b1c2d3e4f5a","items":[{"citations":[{"documentAssetId":"b3f4c8d2-6a1e-4f7b-9c0d-2e3f4a5b6c7d","documentVersion":1,"pageNumber":4,"sectionPath":["Policies","Refunds"]}],"conflicts":[],"freshness":{"status":"fresh"},"metadata":{},"nodeId":"9f2e6b41-7c3d-4a58-b0e9-1d2c3f4a5b6e","score":0.83,"scores":{"final":0.83,"retrieval":0.71},"text":"Refund window extended from 14 to 30 days for annual plans."}],"missingEvidence":[],"query":"What changed in the refund policy this quarter?","state":"answerable","traceId":"6c1f0b2e-9d3a-4f5b-8c7d-0e1f2a3b4c5d"}},"traceId":"6c1f0b2e-9d3a-4f5b-8c7d-0e1f2a3b4c5d"}
流建立后失败:
event: answer.error data: {"code":"KNOWLEDGE_FS_UNAVAILABLE","error":"Agent Knowledge Base is temporarily unavailable. Try again later.","failure":{"action":"retry","category":"dependency","code":"KNOWLEDGE_FS_UNAVAILABLE","message":"Agent Knowledge Base is temporarily unavailable. Try again later.","retryPolicy":"manual","stage":"query_generation","traceId":"6c1f0b2e-9d3a-4f5b-8c7d-0e1f2a3b4c5d"},"traceId":"6c1f0b2e-9d3a-4f5b-8c7d-0e1f2a3b4c5d"}
Was this page helpful?