Watson Assistant对话结束后如何导出并发布对话转录记录?
Watson Assistant 对话转录导出与发布方案
我刚好处理过类似的需求,给你几个实用的方案,亲测有效:
1. 利用控制台自带的日志导出功能(最简便)
这是零开发成本的快速方案,直接在Watson Assistant控制台操作:
- 登录控制台后找到目标助手,切换到Logs页面
- 通过顶部筛选器(时间范围、用户ID、对话状态等)定位需要导出的对话
- 点击右上角的「Export」按钮,选择导出格式为CSV(CSV包含完整对话回合数据,极易转成TXT)
- 导出后用Excel、文本编辑器打开CSV,提取
request_input_text和response_output_text列的内容,整理成「用户:XXX\n助手:XXX」的格式后保存为.txt文件
2. 通过API批量获取并导出对话记录(适合自动化/批量场景)
如果需要定期导出或处理大量对话,用Watson Assistant的List Logs API更高效:
- 提前准备好你的实例ID、工作区ID和API密钥
- 用
curl或HTTP客户端发送请求,示例命令如下:
curl -X GET "https://api.us-south.assistant.watson.cloud.ibm.com/instances/{你的实例ID}/v1/workspaces/{你的工作区ID}/logs?version=2021-06-14&filter=response_timestamp>2024-05-01" -u "apikey:{你的API密钥}"
- 接口返回JSON格式的对话数据,你可以写个简单的Python/Node.js脚本,解析
request.input.text(用户输入)和response.output.text(助手回复)字段,按对话顺序写入.txt文件
3. 实时记录对话并导出(自定义需求场景)
如果需要实时捕获对话内容或自定义转录格式,可以在对话流程中嵌入动作:
- 在Watson Assistant的对话节点里添加「Call action」动作,调用IBM Cloud Functions(或其他云函数服务)
- 每轮对话触发时,把当前用户输入、助手回复和对话ID传给云函数,由函数将内容追加到云存储(如IBM Cloud Object Storage)的文件中
- 对话结束后直接从云存储下载文件,就能得到完整的对话转录TXT
注意事项
- 确保账号拥有查看日志或管理助手的权限,否则无法导出日志
- 导出的对话可能包含用户敏感信息,务必遵守数据隐私法规,处理前做好脱敏
- 旧版Watson Conversation的操作路径略有差异,但核心的日志导出和API调用逻辑一致
内容的提问来源于stack exchange,提问作者ServiceNow Guy
相关产品推荐
相关产品推荐

