如何修复TypeError: create()缺少必需位置参数'access_key'错误?
解决Porcupine
create()方法缺少access_key参数的错误 错误详情
运行代码时触发如下错误:
self.porcupine = pvporcupine.create(keywords=self.wake_words) TypeError: create() missing 1 required positional argument: 'access_key'
相关代码片段:
logger.debug("Initialisiere Wake Word Erkennung...") self.wake_words = self.cfg['assistant']['wakewords'] if not self.wake_words: self.wake_words = ['bumblebee'] logger.debug("Wake Words sind {}", ','.join(self.wake_words)) self.porcupine = pvporcupine.create(keywords=self.wake_words) logger.debug("Wake Word Erkennung wurde initialisiert.")
解决方案
Porcupine的create()方法必须传入access_key参数,这是Picovoice平台的身份验证密钥,按以下步骤处理:
获取Access Key
前往Picovoice官方平台注册账号,生成专属的Porcupine access key。在代码中传入参数
将获取到的access_key添加到create()方法的调用中,建议从配置文件读取(和你的唤醒词配置方式一致),修改后的代码示例:logger.debug("Initialisiere Wake Word Erkennung...") self.wake_words = self.cfg['assistant']['wakewords'] if not self.wake_words: self.wake_words = ['bumblebee'] logger.debug("Wake Words sind {}", ','.join(self.wake_words)) # 从配置文件读取access_key access_key = self.cfg['assistant']['porcupine_access_key'] self.porcupine = pvporcupine.create(access_key=access_key, keywords=self.wake_words) logger.debug("Wake Word Erkennung wurde initialisiert.")注意:如果你的配置文件中还没有
porcupine_access_key项,需要先添加进去,值为你获取到的access key。自定义唤醒词场景提示
若使用自定义唤醒词,还需通过keyword_paths参数传入对应的模型文件路径;你当前使用的是内置唤醒词(如bumblebee),此步骤可忽略。
内容的提问来源于stack exchange,提问作者Todesser 777
相关产品推荐
相关产品推荐

