chatgpt-on-wechat
chatgpt-on-wechat copied to clipboard
[WX]receive group voice, but checkprefix didn't match
前置确认
- [X] 我确认我运行的是最新版本的代码,并且安装了所需的依赖,在FAQS中也未找到类似问题。
⚠️ 搜索issues中是否已存在类似问题
- [X] 我已经搜索过issues和disscussions,没有跟我遇到的问题相关的issue
操作系统类型?
Railway
运行的python版本是?
python 3.7
使用的chatgpt-on-wechat版本是?
Latest Release
运行的channel
类型是?
wx(个人微信, itchat)
复现步骤 🕹
群聊发送语音时并未触发机器人,已经设置 group_speech_recognition=True
问题描述 😯
终端日志 📒
[INFO][2023-05-11 11:40:12][bridge.py:30] - create bot openai for voice_to_text
[INFO][2023-05-11 11:40:13][openai_voice.py:25] - [Openai] voiceToText text=喂,你好 voice file name=tmp/230511-114011.wav
[INFO][2023-05-11 11:40:13][chat_channel.py:112] - [WX]receive group voice, but checkprefix didn't match
群聊语音相比私聊有个特殊处理的地方,就是群聊语音转文字后还会匹配一遍触发词,私聊则没有这个处理
额,尬住了,感觉发音不标准,翻译后,很难匹配到正确的触发词。。感觉对语音来说,弄个相似发音即可匹配咋样
中文,相同读音的词语太多了。英文发音又不标准,尬住了。
这次翻译是对了,但是是繁体字,我设置的是简体字。。就触发不了。
计划之后增加繁转简和拼音匹配,你可以暂时在chat_channel.py:96 增加一些逻辑
可以换一个词 3音节英语常见名字 触发词首字母大写 用openai的语音转文字 可以触发 同样可以选择 繁体简体同字的名字 记得主设置里 增加触发词
上面的群聊时如何设置语音回复的触发词,我的问题也是这样:[WX]receive group voice, but checkprefix didn't match 利用的是百度语音api,部署在Railway
我碰到了一样的问题,单聊没问题,但群聊就[WX]receive group voice, but checkprefix didn't match。我用openai接口.
EDIT: 本来不是问题而是功能 ;p 需要在语言翻译之后找到了 config.json里面的group_chat_prefix才行,看起来也需要是第一个词才行,英文的还得注意第一个字大写的问题。group_chat_prefix多写几种可能会听到的接近词语就能解决。好像没有办法直接取消这个核对的功能?(单聊的时候默认是不需要提到@bot那样,所以容易以为群里也一样)
我用百度的语音里也遇到这个问题,现在很好的解决了。只要在百度语音的高级设置里的“语音识别词库设置”上传一些你的前缀词进行个性化训练,就可以识别的很准了。
级设置里的“语音识别词库设置”
你好,我也是百度语音识别前缀太烂了,但是在百度的控制台里面 没有找见你说的 “”语音识别词库设置“” 这个地方
语音识别词库设置 我只是找到个语音训练,上传后,提示问题,“您的音频文件采样率与所选场景不相匹配,请重新创建模型更换场景或重新上传音频” 场景选了好几次都不行。
百度语音AI识别怎么这么差啊,完全无法识别,是不是用的有问题?
级设置里的“语音识别词库设置”
你好,我也是百度语音识别前缀太烂了,但是在百度的控制台里面 没有找见你说的 “”语音识别词库设置“” 这个地方
百度语音AI识别怎么这么差啊,完全无法识别,是不是用的有问题?
百度的pcm现在的PCM采样率是16K,项目代码写的是8K,手工改一下就没问题了。
在group_chat_prefix中新增一项提示词,然后群聊语音问题时用提升词开头就可以。