2014年,亚马逊正式发布了智能语音助手Alexa,其最初主要部署于Echo、Echo Mark等智能音箱设备中。在这些设备上,Alexa充当中央控制单元的角色,负责响应你的语音指令——例如从Amazon Music或Spotify点播音乐,通过Audible播放有声书,获取实时新闻与天气更新。此外,它还能帮你处理日常事务:在线购物、设定待办事项清单、在日历中安排约会。既然Alexa如此便捷,你是否也想亲自打造一个属于自己的版本?当然可以。接下来,我们将基于Raspberry Pi 4搭建一款DIY版的Amazon Alexa语音助手,核心步骤便是安装Alexa语音服务(AVS)。
构建Alexa所需的组件
树莓派4
USB麦克风
3.5mm线路输入扬声器

创建亚马逊开发者账户
在树莓派上安装Alexa之前,你需要先注册一个Amazon开发者账号。前往亚马逊开发者页面创建一个新账户,登录后进入仪表盘,选择Alexa Voice Service。

在下一个窗口里选择“产品”,然后点击“添加新产品”。

进入产品详情页,按需求填写产品名称与产品ID。产品类型选择“内置Alexa的设备”,配套应用选项设为“否”。
向下滚动,在产品类别里选择“其他”,然后在输入框中填写“Raspberry Pi”。接着撰写一段简短的项目描述,例如“Raspberry Pi上的Amazon Alexa”。对于最终用户交互项,务必勾选“触摸启动”和“免提”两项。图片选项无需处理,后续问题全部选择“否”,然后点击“下一步”。



接下来需要创建安全配置文件。点击“创建新配置文件”,在弹出的窗口中输入配置文件名和描述信息。

在新窗口中,你需要将一组URL分别添加到Allowed Origins和Allowed Return URLs字段中,具体格式请参考图中的示例。注意将IP地址替换为你自己的实际地址。操作完成后点击“完成”,系统会提示产品已成功创建。

在树莓派上安装Alexa
现在你的开发者账户已经准备就绪,接下来开始在树莓派上安装Alexa。首先通过以下命令进入/opt目录:
cd /opt
如果尚未安装git,请先执行安装:
sudo apt-get install git
然后将Alexa-pi仓库克隆到树莓派上:
sudo git clone https://github.com/alexa-pi/AlexaPi.git

克隆完成后,运行安装设置脚本:
sudo ./AlexaPi/src/scripts/setup.sh
脚本运行过程中会询问操作系统和设备类型,请依次选择“debian”和“raspberrypi”。之后按提示填写设备类型ID(即之前创建的产品ID)、安全配置文件描述、安全配置文件ID、客户端ID以及客户端密钥。

如果账户信息填写正确,树莓派终端窗口会显示一个URL。将该URL复制到浏览器中打开,会弹出一个请求授权的页面。

点击“允许”。下一步需要选择国家,完成选择后即授权流程结束。

给树莓派通电,将扬声器连接到3.5mm音频插孔,把USB麦克风插入USB接口。

连接好USB麦克风和扬声器后,重启树莓派。重启完成后,你应该会听到Alexa说“你好”。除了通过重启触发,你还可以使用以下命令手动启动Alexa服务并查看其运行状态:
sudo systemctl start AlexaPi.service
sudo systemctl status AlexaPi.service
下面展示几张Alexa实际工作的照片。

