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

如何通过DialogFlow ES实现Soul Machines数字人的独白式内容展示?

实现DialogFlow+Soul Machines数字人顺序式独白的方案技巧

用上下文(Contexts)控制Intent触发顺序

  • 给每个独白步骤的Intent设置输入上下文:比如第一个Intent完成后,输出step1_finished上下文;第二个Intent的输入上下文设为step1_finished,以此类推。DialogFlow会自动匹配符合上下文条件的Intent。
  • 在Soul Machines侧,监听数字人完成当前语音播放的事件,事件触发后直接向DialogFlow发送空请求(或固定触发词),DialogFlow会根据当前会话的上下文自动触发下一个对应的Intent。

自定义Payload传递触发信号

  • 在DialogFlow每个Intent的响应中添加自定义Payload,嵌入下一个Intent的标识信息,示例结构如下:
    {
      "sm_custom": {
        "next_intent_id": "monologue_step2",
        "speech_content": "这是第一步的独白内容..."
      }
    }
    
  • Soul Machines的前端/服务端逻辑读取Payload中的next_intent_id,等当前语音播放结束后,主动调用DialogFlow的detectIntent接口,传入指定的Intent标识,直接触发下一个步骤的独白。

会话参数(Session Parameters)追踪进度

  • 初始化一个会话参数current_monologue_step,值设为0。每完成一个Intent,就将参数更新为current_monologue_step + 1。
  • 后续Intent设置条件触发规则:比如当current_monologue_step = 1时,触发第二步的独白Intent。
  • 结合Soul Machines的状态管理,在数字人完成当前内容后,根据参数值自动发起下一个Intent的请求,确保流程按序推进。

实用优化技巧

  • 给所有独白Intent设置最高触发优先级,避免普通对话Intent打断独白流程。
  • 在Soul Machines中临时禁用用户输入(隐藏输入框、屏蔽语音采集),直到整个独白序列完成,防止用户误操作干扰。
  • 先在DialogFlow模拟器中单独验证Intent的顺序触发逻辑,确认无误后再和Soul Machines集成,减少联调排查成本。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.24 08:09:19