通过语音或文字输入和AI交流,背后的AI可自行选择。通过全程实时流式处理提升响应速度,基本可以在1-2s内语音回答。
- 提供了模型,你可以借助如oneapi等,通过统一的方式调用各种模型。
- 提供了音色、情感等选择,方便测试各种合成效果。
- 在输入框输入文字或者点击输入框范围,进入录音输入模式,即可语音交互。
- 可以查看所有聊天历史,并且历史会作为会话一部分,即有上下文能力。
- 可以点击聊天历史部分上下滚动(鼠标)来查看内容。
- 通过ASR识别输入的语音,将其作为提示词交给AI。
- 通过调用AI以流式返回结果,将这个结果流式的交给语音合成。
- 将语音合成的结果流式的转发给播放器,使其更快进入播放状态。
- 界面基于
bubbletea
驱动,实现了基本交互。
- 具体使用请看
cmd/main.go
中,传递几个环境变量即可。 - 期间使用到了腾讯云的语音识别和合成,免费的或很少量的付费即可玩转。
- 因为录音调用了
sox
,所以目前仅支持MacOS,其它系统改几行代码即可。