智能打断逻辑

最近更新时间:2024-11-08 18:05:32

我的收藏

智能打断概述

智能打断是实时语音对话中至关重要的功能,直接影响用户体验。TRTC AI 对话凭借其丰富的打断方案,为客户提供了灵活而强大的解决方案,满足各种场景需求。我们的智能打断功能主要分为自动打断和手动打断两种模式,能够有效提升对话的流畅性和自然度。

自动打断

自动打断是指系统在检测到特定条件时,根据用户的音频输入自动触发,支持两种主要规则:基于音频时长的打断和基于语义的打断。
1. 基于音频时长的打断
用户可动态配置打断时长,默认为500ms。
可调范围:300ms(更灵敏)到5000ms(避免误打断)。
建议:
对于客服对话等高交互场景,设置较短时长(如300ms 或者 500ms)以提高响应速度。
对于演讲或授课场景,设置较长时长(如1000ms)以避免误打断。
2. 基于语义的打断
基于语音活动检测(VAD)技术,当服务端检测到用户输入了一句语义完整的话时,会自动触发打断。
3. 自动打断与手动打断的配合
在自动打断模式下,仍可使用端上 SDK 发送自定义打断信令,实现特定的手动打断控制,提供更精细的交互体验。

手动打断

手动打断手动打断是指由用户主动发起,通过端上 SDK 发送自定义消息实现,为用户提供更直接的控制方式。通常依赖于用户界面上的按钮或快捷键。
1. 打断信令说明
手动打断使用如下 JSON 格式的自定义消息: 统一通过端上发送 TRTC 自定义消息,cmdID 固定是2
{ "type": 20001, // 固定type "sender": "user_a", // 发送者userid,服务端会验证有效性 "receiver": ["user_bot"], // 接收者userid列表,填写机器人userid "payload": { "id": "uuid", // 消息id,用于问题排查 "timestamp": 123 // 时间戳,用于问题排查 } }
2. 使用方法
通过 SDK 的 sendCustomCmdMessage 方法发送上述自定义消息即可实现手动打断。

应用场景示例

1. 客服对话:使用较短的自动打断时长,配合手动打断,实现快速响应和精准控制。
2. 在线教育:采用较长的自动打断时长,避免误打断学生发言,教师可使用手动打断进行必要干预。
3. 多人会议:结合自动打断和手动打断,灵活管理发言顺序和时长。