看到一个开源项目,是通过耳机上的触控来控制代码,所以想到之前客户提出的几种跟3D数字人语音互动的方式。
智能音箱方案
通过关键词比如“小爱同学”来唤醒设备的语音交互,当数字人说完话之后,重新弹出语音监听功能,直到通过按键或关键词比如“停止回答”来终端整个对话。
这是我们目前APP端采取的方案,目前比较好用的唤醒功能还是用讯飞的API,但有个数限制,大概10个唤醒关键词。仅支持APP或应用程序。其它方案还没尝试过。
这个方案有个弊端就是在人多嘈杂的环境下需要做一些噪音屏蔽处理。
2. 屏幕按钮点击
这是大多数3D数字人交互的方案,也是成本最低的方案,通过点击按钮,启动录音,然后将语音流实时识别为文字,但监听到没有声音继续输入的时候就把转换的文字发给大模型。也是需要做声音屏蔽处理。每次说话都要点一下,类似微信发送语音聊天。
这个方案还有一个变体就是长按语音转文字后文字出现在聊天框,待用户修改确认是这些文字后再发送,这属于谨慎类的用户。
这是我们目前H5 端的方案,用的也是讯飞的实时语音转文字,支持绝大多数浏览器。
3.打电话方案
这也是比较自然的一种聊天方式。这种方式可以借鉴KK做的聊天小程序,这也是客户推荐我的一款很好玩的数字人小程序。不需要每次点击,就启动后正常聊天就好。
4. VAD声音活动检测
这也是最近看到的一个OpenAI实时API的绝佳用例,OpenAI实时API结合RAG实现的一个【可以与PDF对话的实时语音AI代理】:voice-chat-pdf 支持手动(按键说话)、VAD(声音活动检测)两种模式 支持随时打断AI代理
https://github.com/run-llama/voice-chat-pdf
5.硬件设备启动语音
之前文章里提到的,现在很多话筒上带有按钮可以通过代码来接收话筒上的按键。
还有就是今天介绍的用耳机来控制代码执行是否开始和关闭录音。
这里是它的开源代码。
https://github.com/EtherDream/headphone-morse-transmitter
很多耳机可以发送 ⏮️ ⏸️ ⏯️ 命令,例如 Airpods,按一下可暂停或继续,按两下可播放下一曲,按三下可播放上一曲。
只用一个耳机即可控制是否开启语音实时转换。
我们的基于webGL的数字人互动项目还在不断优化中,有需要咨询相关报价的可以先入群。
目前已经建立了一个很多人的报价微信群,为保证群的质量,目前只能采取付费入群的形式啦,所以目前限制在我的星球粉丝中。已在星球的粉丝可直接申请入群。
关于作者