我正在尝试创建一个类似Alexa或Google Home的简单模拟。我使用了SpeechRecognition模块,并使用Google作为识别器。我已经成功让它工作了,但不知道如何在我说出一个词时运行整个脚本(我希望它能像Alexa一样一直处于监听状态)。
例如:’嘿,机器人’AI = 你好,我能帮你什么?(运行整个脚本)
我曾考虑过每5秒循环运行一段代码,然后连接到Google API,但这不可行,因为API每天限制50次请求。
任何帮助都将不胜感激,提前感谢
回答:
你可以使用“静音”阈值来判断是否需要向Google发送请求,这样可以避免发送过多的请求。有关代码示例,请参见Python在检测到声音时录制音频。
或者,你可以使用开源的语音识别包,最终得到一个独立的应用程序,参见Python语音识别的终极指南文章来了解这种方法。
然而,如果你仍然倾向于使用远程API,你可以结合上述方法,使用SpeechRecognition来识别嘿,机器人
这个短语,然后在短时间内切换应用程序使用Google API进行语音识别,当然,在说出嘿,机器人
后如果客户端不再继续说话,应使用阈值检查来避免查询Google API。
祝你好运!