# 连续对话
说明
为了尽量避免由于设备吸收环境噪音造成的无效语义理解,在连续对话模式下,部分闲聊类的语音请求将无法得到结果。
【连续对话】功能也叫做【免唤醒交互】,可以支持用户在特定场景下,无需重复说出唤醒词也可以继续与设备进行语音交互。
在未开连续对话的情况下的交互场景
- 用户:蓝小飞,你在干什么?
- 设备:我在等你跟我聊天啊。
- 用户:蓝小飞,厦门在哪里啊?//需要重复唤醒
- 设备:厦门是福建省下辖的一个副省级城市,位于福建东南部。
- 用户:蓝小飞,厦门有什么好玩的?
- 设备:鼓浪屿、厦大、南普陀,推荐你一定要去玩。
- 用户:蓝小飞,厦门明天天气怎么样啊?
- 设备:明天厦门天气晴,气温22到32摄氏度,东北风微风。
- 用户:蓝小飞,后天呢?
- 设备:后天厦门天气晴,气温23到20摄氏度,西南风微风。
在打开连续对话的情况下的交互场景
- 用户:蓝小飞,你在干什么?
- 设备:我在等你跟我聊天啊。
- 用户:厦门在哪里啊?
- 设备:厦门是福建省下辖的一个副省级城市,位于福建东南部。
- 用户:那厦门有什么好玩的?
- 设备:鼓浪屿、厦大、南普陀,推荐你一定要去玩。
- 用户:厦门明天天气怎么样啊?
- 设备:明天厦门天气晴,气温22到32摄氏度,东北风微风。
- 用户:后天呢?
- 设备:后天厦门天气晴,气温23到20摄氏度,西南风微风。
从上面的例子我们可以看出来,在打开连续对话的情况下,用户与设备之间的语音交互更接近真实的人与人之间的聊天。
# 连续对话的配置
- 开发者操作:在设备接入平台 - 设备能力 处,打开连续对话的开关。在此处打开开关后,代表你的
client
支持连续对话模式。如果你的设备通过语音唤醒(而不是按键)开启录音,我们建议你打开这个开关。
- C端用户操作:在设备的关联APP - 设备详情页,打开连续对话的开关。在此处打开开关后,代表该
device
处于连续对话模式,用户可以在特定场景下进行免唤醒交互。
# 连续对话的流程
- 当
device
处于连续对话模式时,用户通过唤醒词开启录音,在设备回复语音请求后,用户可以直接发起请求,无需再次唤醒。
在这个阶段设备会在云端有有效回复时,收到expect_reply
,收到该返回时,设备应该自动开启录音。
建议
为了向用户更好的传达设备当前的状态,提供更好的用户体验,我们建议在追问时你的设备可以向用户传达”现在我在听你说“的信息。
- 若用户在30s左右内没有再次发起语音请求,或云端连续多次没有识别到有效的用户请求,设备将退出录音。下次交互需要使用唤醒词开启录音。
# 全双工连续对话
注意
- 全双工连续对话仅支持EVS协议。
- 版本最低要求
audio_player.version = "1.1"
且recognizer.version = "1.1"
。
在全双工连续对话模式下,用户可以在设备播放TTS/音乐/闹钟时,直接发起语音请求,无需等待播放完毕。
在不是全双工的连续对话的情况下的交互场景
- 用户:蓝小飞,我要看刘德华的电影
- 设备:为你找到多个结果,请问你要看哪一个?
- 用户:拆弹专家(用户需要等待TTS播完才可以发起语音请求)
- 设备:好的,为你播放拆弹专家
- 用户:蓝小飞,声音大一点(开始播放音视频后设备退出录音,用户需要重新唤醒)
- 设备:音量已调大。
在全双工的连续对话的情况下的交互场景
- 用户:蓝小飞,我要看刘德华的电影
- 设备:为你找到...
- 用户:拆弹专家(用户在播TTS的过程中发起语音请求)
- 设备:好的,为你播放拆弹专家
- 用户:声音大一点(用户在播放音视频的过程中发起语音请求)
- 设备:音量已调大。
当你的设备支持全双工连续对话时,设备将会收到如下两种不一样的response
。详情可见audio_player和recognizer
{
"iflyos_responses": [
...,
{
"header": {
"name": "audio_player.audio_out"
},
"payload": {
"type": "TTS",
"url": "https://tts.iflyos.cn/tts/sadf.mp3?token=xxxxxxxx",
"behavior": "PARALLEL",//并行TTS,设备执行时,开始播放TTS,即可开始执行后续内容。
"resource_id": "e52e7xxxxxxxxxxxe52e7"
}
},
{
"header": {
"name": "recognizer.expect_reply"
},
"payload": {
"reply_key": "xxxx",
"background_recognize": true,//背景录音,设备执行时,该录音不占用音频焦点,不会打断其他内容的执行。
"timeout": 8000
}
}
]
}
提示
- 如果你的设备配置拥有较好的设备回声消除和降噪效果,我们建议你尽量支持全双工连续对话,为用户提供更好的语音交互体验。
- 为了向用户更好的传达设备当前的状态,提供更好的用户体验,我们建议在追问时你的设备可以向用户传达”现在我在听你说“的信息。