工作流编排对话型应用 API
标准请求 JSON 结构(/chat-messages)
{
"inputs": {}, // object,可选。应用/工作流中自定义输入字段的键值对
"query": "", // string,必填。用户发送的对话消息内容
"response_mode": "blocking", // string,可选。返回模式:"blocking"(同步一次性返回)或 "streaming"(流式返回)
"conversation_id": "", // string,可选。会话 ID,传空表示新会话;传已有 ID 表示继续上下文
"user": "", // string,必填。用户唯一标识符,用于区分不同用户会话
"files": [ // array,可选。要随消息发送的文件列表
{
"type": "", // string,必填。文件类型,例如 "image"、"audio"、"video"、"document"
"transfer_method": "", // string,必填。文件传输方式:"remote_url"(远程 URL)或 "local_file"(本地上传)
"url": "" // string,可选。当 transfer_method 为 "remote_url" 时必填,文件的可访问 URL
// 如果是 local_file 上传,则不使用 url 字段,而是通过 multipart/form-data 发送文件内容
}
]
}
标准返回 JSON 结构(blocking 模式)
{
"event": "message", // string。固定值 "message",表示返回的是一条消息事件
"conversation_id": "", // string。会话 ID,下次请求可用来保持上下文
"message_id": "", // string。本条消息的唯一标识
"answer": "", // string。AI 生成的完整回复内容
"created_at": 0, // integer。消息创建时间(Unix 时间戳,单位秒)
"metadata": { // object。元数据
"usage": { // object。Token 使用统计
"total_tokens": 0, // integer。本次对话总消耗的 token 数
"prompt_tokens": 0, // integer。提示词部分的 token 数
"completion_tokens": 0 // integer。生成回复部分的 token 数
}
}
}
标准返回 JSON 结构(streaming 模式 - SSE 分片)
流式返回时,每条数据都以 data: 开头,内容是一个 JSON 片段,最后会有 data: [DONE] 表示结束。
// 单个 SSE 分片内容示例(结构与 blocking 相同,但 answer 字段是增量内容)
{
"event": "message", // string。事件类型
"conversation_id": "", // string。会话 ID
"message_id": "", // string。消息 ID
"answer": "", // string。本次分片生成的部分文本(增量)
"created_at": 0, // integer。创建时间戳
"metadata": { // object。元数据
"usage": { // object。Token 使用统计(通常只在最后一个分片返回完整统计)
"total_tokens": 0, // integer。总 token 数
"prompt_tokens": 0, // integer。提示 token 数
"completion_tokens": 0 // integer。生成 token 数
}
}
}
// 流结束标记
[DONE]