You need to enable JavaScript to run this app.
文档中心
数据智能体 DataAgent(私有化)

数据智能体 DataAgent(私有化)

复制全文
下载 pdf
A2A
v3-发起流式问答
复制全文
下载 pdf
v3-发起流式问答

A2A 发起流式问答:SendStreamingMessage

请求说明

项目

内容

请求方式

POST

请求地址

https://${IDA_DOMAIN}/dataAgent/llm/openApi/v3/a2a/{AGENT_ID}/

method

SendStreamingMessage

默认鉴权

Authorization: Bearer ${JWT_TOKEN}

鉴权

JWT Token 鉴权。

请求头

  • Authorization: Bearer ${JWT_TOKEN}
  • Content-Type: application/json

入参说明

顶层字段

字段路径

类型

是否必选

说明

jsonrpc

string

是

JSON-RPC 协议版本,固定传 2.0。

id

string / number

否

请求 ID,响应中会原样返回。建议在客户端侧保持唯一,便于排查问题。

method

string

是

方法名,固定传 SendStreamingMessage

params

object

是

方法参数对象。

params 字段

字段路径

类型

是否必选

说明

params.message

object

是

用户消息对象。

params.metadata

object

否

请求级扩展参数。若与 params.message.metadata 存在同名字段,以 params.message.metadata 为准。

params.configuration

object

否

发送配置,仅 SendStreamingMessage 使用。

params.message 字段

字段路径

类型

是否必选

说明

params.message.messageId

string

否

客户端生成的消息 ID。用于去重、日志定位等场景。

params.message.contextId

string

否

上下文 ID;传入时要求上下文存在且归属当前用户,填第一次返回的 result.task.contextId 用于关联上下文的。

params.message.taskId

string

否

父任务 ID;用于 A2A 调用链 fanout 统计。

params.message.role

string

否

消息角色,建议传 ROLE_USER。

params.message.parts

array

是

消息内容数组;至少包含一个非空 text。

params.message.metadata

object

否

消息级扩展参数,优先级高于 params.metadata。

params.message.parts 字段

字段路径

类型

是否必选

说明

params.message.parts[].text

string

是

用户输入内容;服务端取第一个非空 text 作为任务内容。

params.message.parts[].mediaType

string

否

内容类型,文本建议传 text/plain。

metadata 扩展字段

字段路径

类型

是否必选

说明

metadata.fileList

string[]

否

文件 storage key 列表,元素必须为字符串。获取见IDA-文件上传

metadata.enableKnowledgeQA

boolean

否

是否开启知识问答。

metadata.enableWebSearch

boolean

否

是否开启 Web 搜索。

metadata.enableLarkQa

boolean

否

是否开启飞书企业问答。

metadata.sessionId

int

否

关联会话id

参数示例

{
  "jsonrpc": "2.0",
  "id": "req-002",
  "method": "SendStreamingMessage",
  "params": {
    "message": {
      "messageId": "msg-002",
      "role": "ROLE_USER",
      "parts": [
        {
          "text": "生成一个销售数据的报告",
          "mediaType": "text/plain"
        }
      ],
      "metadata": {
         "enableKnowledgeQA": true,
        "enableWebSearch": true,
         "enableLarkQa": false,
        "fileList": [
          "agent-upload-20260818162752-726b0aa1e845402c8f3e3dec958c5837"
        ]
      }
    }
  }
}

请求示例

curl -N -X POST "https://${IDA_DOMAIN}/dataAgent/llm/openApi/v3/a2a/46/" \
  -H "Authorization: Bearer ${JWT_TOKEN}" \
  -H "Content-Type: application/json" \
  --data-raw '{"jsonrpc":"2.0","id":"req-002","method":"SendStreamingMessage","params":{"message":{"messageId":"msg-002","role":"ROLE_USER","parts":[{"text":"生成一个销售数据的报告","mediaType":"text/plain"}],"metadata":{"enableKnowledgeQA":true,"enableWebSearch":true,"enableLarkQa":false,"fileList":["agent-upload-20260821151800-0409f987276b4d53abff87ea0940d8e3"]}}}}'

返回参数

该接口返回 SSE 流式响应。

响应头

Header

是否必选

示例

说明

Accept

是

text/event-stream

流式响应(SSE)

A2A-Version

建议

1.0

A2A 协议版本

返回数据格式(SSE)

  • Content-Type: text/event-stream
  • 附加响应头:X-Accel-Buffering: no、Cache-Control: no-cache, no-transform
  • 每行以 data: 前缀承载一个 JSON-RPC 结果信封:
data: {"jsonrpc":"2.0","id":1,"result":{ ... }}

其中 result 内为下列三类事件之一:

位置

参数

描述

result

task

首个事件,任务初始快照,状态 TASK_STATE_SUBMITTED

result

statusUpdate

任务状态更新,state 依次为 SUBMITTED → WORKING → COMPLETED
状态值与错误码

result

artifactUpdate

产物增量;append=true 表示 parts.text 为追加增量(需按 artifactId 拼接);lastChunk=true 表示该片段结束

终态判定: statusUpdate.status.state == TASK_STATE_COMPLETED 即整轮结束。最终结论文本通常落在末尾 artifactUpdate。

SSE 响应示例

data: {"jsonrpc": "2.0", "id": "req-002", "result": {"task": {"id": "275159ead82e497fbad7a66560e8a0d7", "contextId": "022f8cb2159147d3afe0b4ee6a4ab2f3", "status": {"state": "TASK_STATE_SUBMITTED", "timestamp": "2026-08-21T15:52:53.317549Z"}}}}
data: {"jsonrpc": "2.0", "id": "req-002", "result": {"statusUpdate": {"taskId": "275159ead82e497fbad7a66560e8a0d7", "contextId": "022f8cb2159147d3afe0b4ee6a4ab2f3", "status": {"state": "TASK_STATE_WORKING", "message": {"messageId": "fd1ff25f-6f65-451d-af5a-e80fc5a93214", "contextId": "022f8cb2159147d3afe0b4ee6a4ab2f3", "taskId": "275159ead82e497fbad7a66560e8a0d7", "role": "ROLE_AGENT", "parts": [{"text": "总计 76\ndrwxr-xr-x 2 root root  4096  8月21日 15:53 .\ndrwxrwxrwx 5 root root  4096  8月21日 15:53 ..\n-rw-r--r-- 1 root root 65578  8月21日 15:53 电商平台销售数据_测试.xlsx\nupload/电商平台销售数据_测试.xlsx: Microsoft Excel 2007+\n\n_Full output: [bash_1787298786552.md](output/bash/bash_1787298786552.md)_", "mediaType": "text/markdown"}]}}}}}
data: {"jsonrpc": "2.0", "id": "req-002", "result": {"artifactUpdate": {"taskId": "275159ead82e497fbad7a66560e8a0d7", "contextId": "022f8cb2159147d3afe0b4ee6a4ab2f3", "artifact": {"artifactId": "e7b33e1a-4a7c-5d31-972a-8efaa1b8b9f2", "name": "思考推理", "description": "思考推理完成", "parts": [{"text": "已基于《电商平台销售数据_测试.xlsx》的 100 条订单明细,完成一份销售数据分析报告,并生成可下载的 Markdown 文件。\n\n**报告核心结论:**\n- **整体经营稳健**:100 笔订单,总销售额 158,320.14 元,实付 131,090.01 元,利润 32,542.28 元,整体利润率 24.82%,退货率仅 2.00%。\n- **品类结构依赖明显**:数码电子贡献销售额的 53.3%(84,416.18 元),但利润率(23.19%)低于整体,存在单一品类依赖风险;服饰鞋包利润率最高(30.23%)。\n- **渠道与市场机会**:H5 渠道销售额最高(45,997.37 元);APP 渠道客单价最高(1,558.64 元);重庆、西安等城市客单价显著高于均值,值得针对性渗透。\n- **折扣策略可优化**:0.8 折档位利润率最高(33.98%),全价档位利润率最低(21.18%),促销折扣策略存在优化空间。\n\n报告覆盖整体 KPI、品类、城市、渠道、支付方式、时间趋势、退货与折扣七个维度,并配 5 张图表(品类销售额、品类利润率、城市销售额、渠道销售额、每日销售趋势)。报告已明确标注 6 月数据仅覆盖至 6/10 为部分月份,避免误判月度趋势。\n\n📄 报告链接:[电商平台销售数据分析报告](https://e16-1-45dataagent.datarangers-onpremise.volces.com/bi/minio.datawind/llm_storage/aida/markdown/48a85f1b8dd143b6a56b7ff8122e2b9e/电商平台销售数据分析报告.md)\n\n引用链接\n[电商平台销售数据分析报告](https://e16-1-45dataagent.datarangers-onpremise.volces.com/bi/minio.datawind/llm_storage/aida/markdown/48a85f1b8dd143b6a56b7ff8122e2b9e/电商平台销售数据分析报告.md)", "mediaType": "text/markdown"}]}, "lastChunk": true}}}
最近更新时间:2026.09.04 11:09:45
这个页面对您有帮助吗?
有用
有用
无用
无用