You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

从Watson Discovery结果提取passage_text作为Watson Assistant响应问题

解决Watson Assistant提取Webhook返回的passage_text字段问题

看起来你已经成功调用Watson Discovery的Webhook并拿到了正确的返回结果,但在提取passage_text字段时踩了语法或遍历的小坑。我来帮你梳理下正确的处理方式:

情况1:只需要返回第一个匹配段落的文本

你的Webhook返回里passages是一个数组(哪怕只有一个元素),所以必须通过数组索引访问单个对象的字段。在Watson Assistant的响应模板中,要记得用双大括号包裹变量表达式——这是助手识别并解析变量的关键语法,正确写法应该是:

{{$webhook_result_1.passages[0].passage_text}}

你之前尝试的$webhook_result_1.passages[0].passage_text无效,大概率是因为没加上{{}},导致助手把它当成了普通字符串输出,而非变量解析。

情况2:需要返回所有匹配段落的文本

如果后续可能出现多个段落结果,你可以用Watson Assistant的each循环语法遍历整个passages数组,逐个输出段落文本:

{{#each $webhook_result_1.passages}}
- {{passage_text}}
{{/each}}

这样会自动把每个段落转化为列表项,输出格式更清晰规整。

额外验证小技巧

为了确保万无一失,你可以在Watson Assistant的「尝试」面板里做个快速检查:

  • 触发Webhook后,查看上下文变量$webhook_result_1的结构是否和你提供的返回结果完全一致
  • 确认passages数组确实存在,且每个元素里都包含passage_text字段

内容的提问来源于stack exchange,提问作者ishalijadhav

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.08 19:07:43