2026年了,这已经是一个不用为写代码发愁的年代了,只要你有想法,可以借助各种各样的工具自己开发一个APP,写代码已经不是小部分人的专利。
今天教手把手教大家怎么来做一个语音唤醒助手。
在此之前,我们得先安装一个traeCN,然后再安装python环境,建议安装python3.10~3.12,太新了可能会有兼容问题(没有实测,感兴趣你可以试试)。
安装python可以到www.python.org下载安装包,也可以使用miniconda安装,这里就不讨论了。
---------分割线,下面正式开始----------
本项目的最终效果可以想象一下你面对一个小X音箱,对着它喊一句"小爱同学",然后它可以回应一声"嗯"、或者"我在呢",后面想要接入其他功能就比较方便了;值得一提的是为了提高响应速度,我们要求它能够在本地对特定唤醒词进行响应。
第一步:明确一件事情怎么做
这就像做题目一样,想要得到正确答案,你首先得有一个正确的思路。但是这件事可能涉及到我们之前从未接触过的领域。
此时我们可以求助豆包、deepseek这样的AI,让它给我们一个思路,这件事情应该怎么做。

看完项目书以后,我发现它对本地唤醒词的训练好像提到的很少,然后试探性的继续问:

感觉差不多了,其实我也不太看得懂,所以我把这些东西都复制下来,放到一个word文档里面。
(文末一并分享)
接下来,新开一个DeepSeek对话窗口,上传这个文件,然后让它再检查并完善,看看有没有什么漏洞或者没有讲清楚的地方,这里也可以换豆包,看看能不能集各家所长。

DeepSeek又提出了一些专业意见呢,没关系,我们发现大体上它认同这个方案,不妨我们先试试。
总结:明确你的目的(最终效果),设计工作交给AI,记得最后把项目书再给AI复个盘,哪怕是不采纳复盘意见,也对未来可能的状况有些心理预估。
第二步:代码实现
其实刚才DeepSeek不止一次提到了它可以帮我们写代码。这当然可以,但是我们已经能想到这个代码可能很长,deepseek给的代码可能难以一次成型,需要反复修改,此时用它的代码就显得不太方便了。所以我们需要使用traeCN了。
PS:便宜、好用、效率不错,非常适合入门使用。


尴尬了,项目书太详细,我们先来用deepseek精简一下,去掉一些多余内容:

还是太长。。。。。。
那我们来换个思路:
在audioWakeup目录(项目的存放目录)创建一个"项目书.txt",然后把刚才精简过的项目书放进去
注意不要直接放doc文件过去,用txt方便trae读取


个人建议使用solo模式


不得不说,接下来对traeCN是个考验,要等挺长时间的。
你只管一路点同意

要等挺久的,先去干点别的吧。
完成需要,需要让traeCN帮我们安装依赖包

这个过程有可能报错,traeCN会给你参考意见的,基本上接受就好。
第三步:如何操作
港真这一堆代码我看不懂,那么应该怎么用呢?
继续找tranCN:

注意:这里创建md文件是方便trae写入的,又可以保存格式。

一般来说,代码总会有点bug,我们在运行代码时需要关注输出。

把代码复制以后,点击右上添加到对话,交给trae解决:

如果有输出,但是找不到错误怎么办?
你让traeCN帮你修改所有的代码,把所有非正常的输出,都增加"错误"两个字,你就能马上定位错误了。
现在有个新问题:


ok,要注册一个key

这就有点尴尬了,需要一个公司邮箱,如果你使用的是一个非企业邮箱(会被对方的规则给检测出来),无法注册这个账号。
接下来要尴尬了:换方案
看看能不能抢救一下。
此时要使用项目书,并且明确告诉ai这个方案不行。(这里不行的是Porcupine),要ai提供一个备选的可行方案,然后再给到trae修改。
但是在本项目中我们还有训练功能"trainer.py",我们先问问trae它是基于什么技术实现的,如果也是Porcupine那就要一起换了。


ok,"非直接使用",可以抢救,我们先来试试trainer.py
启动以后发现代码有点问题,只看到采集按钮,没有看到训练按钮,把看到的问题丢给trae

又发现新问题:

有个不太妙的输出,另外我没有看到输出的wav文件,继续找trae解决

问题很快定位了并解决,另外它提出:

其他问题:

还发现了训练模型loss为0 的bug


程序运行过程中还有一些不合理的地方:




程序你觉得不合理的地方,或者输出你觉得有问题的地方,都可以提出
这个项目完成以后,你会对模型训练更直观、更深刻的体会。

本项目使用了30组语音进行训练,包括15组正向的和15组各种干扰项,使用的是基于 CNN 的 Porcupine 模型,经过测试,设置0.75以上的置信度为正确识别。
结论:勉强能用,作为实验测试还行,商业应用还差得远,就这点测试样本远远不够。
最后,让trae总结一下这个项目的运作原理。


项目最终的代码、录音文件,已上传到网盘。
docs目录下的readme.md是项目的说明文档。

通过网盘分享的文件:语音唤醒分享
链接: https://pan.baidu.com/s/17ZxtC6kk_pfcjq3vdzEo-g?pwd=kghe 提取码: kghe