f 数据仓库与分析-使用AI-01开发板和开源后端服务搭建整套小智服务体系 - Powered by qidao123.com技术社区

使用AI-01开发板和开源后端服务搭建整套小智服务体系 ...

打印 上一主题 下一主题

主题 1853|帖子 1853|积分 5559

使用AI-01开发板和开源后端服务搭建整套小智服务体系

四博智联的AI-01开发板,基于乐鑫ESP32-C2 + 专属定制的离线语音模组,可以或许完善的接入小智AI服务平台,再使用开源后端服务,就可以或许搭建一个完整的小智AI服务体系了。
下面是详细的搭建过程。
硬件连接

AI-01开发板没有板载USB转串口功能,需要自己通过USB转串口工具来连接到电脑,以便下载固件和查看日志日志输出信息。
参考官方提供的接线指导:下载说明

详细连线如下:

在实际使用中,USB转串口工具仅需连接到AI-01开发板的TX、RX、GND即可。然后用Tyep-C数据线给AI-01开发板供电即可。
需要留意的是,因为AI-01开发板没有提供RESET按钮,以是后续需要通过插拔Tyep-C数据线来重新上电,实现AI-01开发板的重启运行。
按照接线指导连接好以后,将USB转串口工具连接到电脑,再打开电脑的装备管理器,确保正确识别到对应的串口,并显示在端口(COM和LPT)中:

可以拔掉USB转串口工具,对应的装备会消失。然后过几秒,再重新连接到电脑的USB口,会重新出现。
创建ESP-IDF开发环境

小智AI体系硬件装备的开源代码,可以在VSCode中安装ESP-IDF的扩展和编译工具,来举行编译和烧录。
安装ESP-IDF扩展

首先安装VSCode,可以从https://code.visualstudio.com/download下载。
安装后,打开VSCode,点击右则导航栏的3+1方块图标,进入扩展安装,然后搜索esp-idf安装即可:

安装ESP-IDF编译工具

安装完ESP-IDF扩展后,点击右边导航栏的乐鑫圆形图标,在Advanced中点击设置ESP-IDF扩展,然后选择EXPRESS进入安装设置:

在安装设置界面中,按照下图选择从中国服务器下载(for China),并选择v5.3.3版本,再点击Install安装:

然后,耐心等候安装完成:

设置ESP-IDF扩展

安装完成后,从ESP-IDF扩展的安装界面,先设置图标,在选择设置:

在设置界面中,先搜索flash,设置烧录的波特率为921600:

再搜索monitor,设置串口监督的波特率为74880:

编译运行示例步调

如今开发环境已经安装设置好了,为了确保可以或许正常使用,可以运行一个示例步调举行查验。
点击右边导航栏的乐鑫圆形图标,在Advanced中点击展示示例项目,在列出的项目中,选择hello_world,然后点击Select location for hello_world project:

点击后,会提示示例项目保存目次,设置一个目次保存即可。
创建乐成后,会自动打开新建的hello world的项目工作界面:

然后按照下图,点击选择之前在装备管理器中显示的USB转串口工具装备端口号,以及芯片类型esp32c2:

再点击构建图标,即可编译hello_world的源码:

编译乐成后,会显示如下的内存占用情况:

在下一步操作之前,需要从电脑先断开AI-01开发板的Tyep-C数据线,再按住AI-01开发板上的按键不放,然后重新连接到电脑上,让AI-01开发板进入下载固件模式。连接完成后,可以松开按键。
操作完成后,再点击底部的ESP-IDF:构建、烧录和监督图标,并在顶部弹出列表中选择UART:

随后,会自动完成编译源码,烧录固件到AI-01开发板,并启动串口监督:

当VSCode下部的窗口,显示上述信息后,重新插拔AI-01开发板的Tyep-C数据线,AI-01开发板将重新上电运行前面烧录的步调,并输出Hello World:

在举行下一步操作之前,需要点击上述信息输出界面右则各任务输出窗口的回收站图标终止任务,否则后续操作中,烧录和监督串口会有问题。

乐成完成以上各项操作后,ESP-IDF开发环境就预备好了,可以举行后续操作,编译小智AI体系硬件装备的开源代码了。
编译运行DOIT小智AI开源代码

因为AI-01开发板使用的是乐鑫ESP32-C2 + 专属定制的离线语音模组,在小智AI官方的开源代码中没有适配,以是四博智联基于小智AI官方的开源代码,提供了对应的分支版本DOIT_AI,和官方版本的功能没有差异。
下载源码

DOIT_AI的源码,可以从https://github.com/SmartArduino/DOIT_AI下载最新版本:

在上述界面中,可以使用git工具clone源码,也可以直接下载源码的压缩包。
设置编译参数

使用VSCode打开下载的源码,参考前面hello world,设置串口端口号和芯片类型esp32c2。
别的,还需要通过SDK设置编辑器(menuconfig),开设置Xiaozhi的Board Type为Doit-AI-01-Kit:

保存设置后,点击底部的构建来编译源码:

编译乐成后,显示如下信息:

烧录运行

在下一步操作之前,需要从电脑先断开AI-01开发板的Tyep-C数据线,再按住AI-01开发板上的按键不放,然后重新连接到电脑上,让AI-01开发板进入下载固件模式。连接完成后,可以松开按键。
操作完成后,再点击底部的ESP-IDF:构建、烧录和监督图标,并在顶部弹出列表中选择UART:

界面会显示如下信息,表示正在烧录固件:

假如执行后,出现下面的错误,说明串口被占用,大概连接不正确:

烧录完成后,显示信息如下:

当VSCode下部的窗口,显示上述信息后,重新插拔AI-01开发板的Tyep-C数据线,AI-01开发板将重新上电运行前面烧录的步调,并输出小智AI运行的信息:

配网运行

初次烧录运行后,会输出上述配网信息,并语音播报进入配网模式。
此时,使用手机连接Xiaozhi开头的热门:

就能进入配网界面,设置当前环境所使用的WiFi名称和暗码:

设置乐成后,AI-01开发板运行的小智AI体系会自动重启,并输出如下的信息:

激活装备

初次设置网络后,会提示需要激活装备,并语音播报激活信息。
访问小智AI服务平台官网https://xiaozhi.me/,进入控制台注册账号并登录:

然后,添加新的智能体:

添加后,点击添加装备:

然后输入播报大概显示的数字:

激活乐成后,体系会自动重新启动,启动完成,会听到嘟的一声响:

如今,就可以使用你好小智唤醒小智AI,然后举行对话了。也可以使用按键举行唤醒,然后举行对话。

搭建开源后端服务

在AI-01开发板运行的小智体系,默认会连接到小智AI官方的服务平台。
我们可以使用开源后端服务的源码,来运行自己的小智AI后端服务,让AI-01开发板连接到自己的后端服务。
下载后端服务源码

从https://github.com/xinnan-tech/xiaozhi-esp32-server/releases 可以下载最新发布的开源后端服务的源码:

下载后解压源码,找到如下的目次,预备后续的操作:

下载语音识别模型文件

开源后端服务可以在本地运行语音识别服务(ASR),但需要下载对应的模型文件:https://modelscope.cn/models/iic/SenseVoiceSmall/resolve/master/model.pt
下载后,将该文件放置到main/xiaozhi-server/models/目次中:

安装 Anaconda

要运行开源后端服务,还需要Anaconda来安装python环境运行。
从 https://www.anaconda.com/download/success 下载Windows对应的Anaconda安装包 Anaconda3-2024.10-1-Windows-x86_64.exe

下载完成后,打开安装包安装,并在设置时,全部打钩:

安装完成后,搜索Anaconda,打开Anaconda Prompt:

打开后,进入xiaozhi-server对应的目次,并执行下面的命令以查看conda版本,检测是否安装乐成:
  1. conda -V
复制代码

创建Python运行环境

然后,执行下面的命令,创建需要的Python运行环境:
  1. conda create -n xiaozhi-esp32-server python=3.10 -y
复制代码
执行乐成后,会输出如下的信息:

再依次执行下面的每一条命令,使用创建的环境,并安装需要的支持包:
  1. conda activate xiaozhi-esp32-server
  2. conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
  3. conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
  4. conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge
  5. conda install libopus -y
  6. conda install ffmpeg -y
复制代码

安装完成后,执行下面命令,查验是否安装正确:
  1. python -V
  2. conda list opus
  3. conda list ffmpeg
复制代码

末了,执行下面的命令,安装开源后端服务所依赖的包:
  1. pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/
  2. pip install -r requirements.txt
复制代码

安装乐成后,会输出如下信息:

获取大模型apikey

开源后端服务运行时,需要调用LLM(大语言模型)接口,完成AI对话工作。
默认的LLM使用的是ChatGLM,去ChatGLM的官网https://bigmodel.cn/注册登录,然后添加新的Api Key,就可以免费使用:

设置后端服务

要运行小智后端服务,还需要做一些基础的设置。
首先,假如电脑上有多块网卡,大概运行了VMWare等虚拟机服务的话,上面显示的IP地址不一定是实际联网使用的,可以查看网络连接的属性,来获取当前使用的IP地址:

然后,执行下面的命令生成默认的设置文件:
  1. mkdir data
  2. copy config.yaml data\.config.yaml
复制代码

再用VSCode打开后端服务源码目次xiaozhi-server,并打开data目次中的.config.yaml修改设置:

根据设置中的提示,修改如下位置:


  • websocket地址:

修改websocket的地址,使用前面查看网络属性得到的IPv4地址,端口使用8000即可。


  • ChatGLMLLM的api key:

将ChatGLMLLM的api_key,设置为前面获取的ChatGLM的apikey即可。
运行后端服务

上述操作都乐成完成后,执行下面的命令,运行后端服务:
  1. python app.py
复制代码
运行乐成后,将会出现如下的信息:

假如出现下面的提示,一定要点击答应:

根据前面获取的IPv4地址,终极的服务地址如下:


  • OTA接口地址:http://192.168.1.182:8002/xiaozhi/ota/
  • WebSocket接口地址:ws://192.168.1.182:8000/xiaozhi/v1/
测试后端服务

打开如下目次中的test.html,可以通过网页测试后端服务是否正常:

在测试界面中,填入上一步终极得到的OTA接口地址和WebSocket接口地址,就可以连接测试:

设置说明

开源后端服务设置文件中,有很多方面参数可以设置。
比方可以设置AI的人设,以及调用的LLM和TTS设置:

开源后端服务默认使用的LLM是ChatGLM,免费且速度快,但智能的本领并不是最好的,而使用的语音合成(TTS)服务是EdgeTTS,免费但是速度不快。
假如要想使用更好的效果,可以详细查看开源后端服务设置文件的说明,去开通相应平台的账号,获取对应的连接参数填入:


并启用对应的设置:

设置好对应的设置以后,重新启动后端服务即可生效。
别的,上面搭建的是简化版本的开源后端服务,让大家快速体验自己搭建整套小智服务体系。
假如参考开源后端服务的文档,搭建完整版的后端服务,还包括管理界面,功能非常的强大:

设置AI-01开发板OTA地址

如今开源后端服务已经乐成运行了,只需要将AI-01开发板OTA地址,设置为上一节中末了获取的OTA接口地址,就可以连接到自己的后端服务了。
设置OTA地址

使用VSCode打开装备端DOIT_AI源码,参考之前设置编译参数,通过SDK设置编辑器(menuconfig),设置OTA地址:

重新编译源码

设置了OTA参数后,点击底部的构建项目图标,重新编译源码:

构建乐成后,会输出如下信息:

烧录运行

在烧录运行之前,需要把之前打开的监督窗口关闭,否则串口无法重复连接。

在下一步操作之前,需要从电脑先断开AI-01开发板的Tyep-C数据线,再按住AI-01开发板上的按键不放,然后重新连接到电脑上,让AI-01开发板进入下载固件模式。连接完成后,可以松开按键。
操作完成后,再点击底部的ESP-IDF:构建、烧录和监督图标,自动完成编译、烧录、监督操作:

烧录完成后,会输出如下的信息:

待输出上面信息后,重新插拔AI-01开发板的Tyep-C数据线,AI-01开发板将重新上电运行前面烧录的步调,并输出小智AI运行的信息,并听到嘟的一声响:

如今,说你好小智唤醒小智AI,大概使用按键唤醒小智AI,开始对话:

从上面的输出信息可以看到,如今使用的是自己的背景服务地址了。
查看后端服务的输出日志日志,可以看到请求和返回的过程:

演示效果

下面的演示中,服务端设置中,使用了DoubaoLLM和DoubaoTTS:

详细演示效果如下:

     全开源:使用四博AI-01开发板搭建自已的AI小智服务体系
  
从上面的演示中可以看到,使用AI-01开发板和开源后端服务搭建环境,可以顺利的运行提供服务,让我们可以或许拥有自己的小智服务体系了。
别的,演示环境是在本地电脑搭建的,假如是在服务器上搭建的,反馈的速度会更快。假如有充足的显卡资源,还可以自建LLM服务和TTS服务。
鸣谢



  • 感谢虾哥开源小智AI装备端源码:xiaozhi-esp32
  • 感谢开源团队开发后端服务:xiaozhi-esp32-server
  • 感谢四博智联提供AI-01源码:DOIT_AI

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
继续阅读请点击广告

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

tsx81429

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表