使用input/output context控制意图流转时intent A的触发配置问题
意图上下文多路径跳转解决方案
不需要创建多个版本的intent A,重复维护同逻辑的意图会大幅提升后续迭代的维护成本,你遇到的触发问题是绝大多数对话开发平台的默认规则导致的:输入上下文默认采用与匹配逻辑,只有所有配置的上下文都处于激活状态时,才会满足触发条件。
可以通过以下两种可行方案解决问题:
- 方案1:统一中转上下文标记(全平台通用,兼容性最高)
给intent B、C、D统一配置同一个专属输出上下文,例如命名为jump_to_A,上下文生命周期设置为1即可。再将intent A的输入上下文仅配置为jump_to_A,此时只要用户触发过B/C/D任意一个意图,都会携带该标记上下文,即可正常触发A,不会要求多个上下文同时激活。 - 方案2:调整上下文匹配规则(适配支持或逻辑的平台)
如果你使用的对话平台支持输入上下文匹配规则切换,直接在intent A的输入上下文配置中,把B、C、D对应的三个输出上下文全部添加后,将匹配逻辑从默认的「全部满足」修改为「任意满足」即可,无需额外新增其他上下文配置。
原跳转规则:
intent B -> intent A;
intent C -> intent A;
intent D -> intent A;
内容的提问来源于stack exchange,提问作者Tao。
相关产品推荐
相关产品推荐

