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

如何在Dialogflow中实现卡片响应式多选项车辆受损部件选择?

实现Dialogflow卡片响应多选车辆部件的方法

没问题,我来帮你一步步搞定这个多选功能,针对你这个事故车辆部件受损的场景,具体实现思路和操作如下:

1. 先创建自定义实体识别受损部件

首先得让Dialogflow能准确识别用户提到的各个部件,我们需要创建一个自定义实体:

  • 进入Dialogflow控制台(不管是ES还是CX),找到「实体」页面
  • 新建实体,比如命名为vehicle_damage_parts
  • 实体类型选择「列表」(ES)或「枚举」(CX),然后添加所有可选部件作为条目:
    • 挡风玻璃
    • 保险杠
    • 前侧
    • 后部
    • 引擎盖
  • 可以给每个条目加同义词(比如“前保险杠”对应“保险杠”),提升识别准确率

2. 配置意图并开启参数多选功能

接下来要创建处理部件选择的意图,比如命名为Report_Vehicle_Damage:

  • 在意图的「训练短语」里添加示例,比如:
    • “挡风玻璃和保险杠受损”
    • “前侧、后部还有引擎盖坏了”
    • “只坏了挡风玻璃”
  • 添加参数,关联刚才创建的vehicle_damage_parts实体
  • 关键操作:找到参数的设置选项,勾选「允许多个值」(ES里在参数详情页,CX里在参数配置的「重复」选项设为「是」),这样Dialogflow就能收集用户提到的多个部件值

3. 配置卡片响应引导用户多选

在意图的「响应」部分添加卡片,明确引导用户可以多选:

  • 卡片标题:比如「请选择受损部件(可多选)」
  • 卡片内容:列出所有可选选项,并说明多选方式,比如:

    可选部件:挡风玻璃、保险杠、前侧、后部、引擎盖
    可以同时选择多个,例如:“挡风玻璃和保险杠” 或 “前侧/后部”

  • 如果是用Dialogflow Messenger(DFM),还可以用更直观的多选复选框组件(CX支持,ES需要用自定义webhook响应),让用户直接点击选择多个部件,体验更好

4. 处理并使用多选的参数值

当用户回复多个部件后,Dialogflow会把这些值收集到参数里,以数组形式存储:

  • 在Dialogflow控制台的「测试」面板里,你可以看到vehicle_damage_parts参数的值是一个数组,比如["挡风玻璃", "保险杠"]
  • 如果用webhook处理,可以直接获取这个数组,比如Node.js代码示例:
    // Dialogflow ES的webhook示例
    function handleDamageParts(agent) {
      const damagedParts = agent.parameters.vehicle_damage_parts;
      agent.add(`已记录受损部件:${damagedParts.join('、')}`);
    }
    
  • 后续可以把这个数组存储到数据库,或者用于生成后续的事故报告

额外提示

  • 可以在意图里设置「后续意图」,如果用户只说了一个部件,自动追问是否还有其他受损部件,提升交互完整性
  • 测试时要覆盖各种多选组合,比如不同数量的部件、不同的分隔符(和/或/顿号等),确保识别准确

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.25 07:42:00