当前位置: 首页 > news >正文

【嵌入式人工智能产品开发实战】(二十一)—— 政安晨:源码搭建小智AI嵌入式终端的后端服务(服务器)环境 - 助力嵌入式人工智能开发

政安晨的个人主页:政安晨

欢迎 👍点赞✍评论⭐收藏

希望政安晨的博客能够对您有所裨益,如有不足之处,欢迎在评论区提出指正!

我们开发嵌入式人工智能产品,如果有趁手的本地后端服务框架配合确实会事半功倍,我们这就开始部署我们自己本地的嵌入式终端硬件的AI服务后端。

目录

项目介绍

项目地址

开始部署

下载源码

建立虚拟环境

下载模型文件

配置项目文件

启动服务

配置嵌入式终端

完成


项目介绍

本项目为开源智能硬件项目 xiaozhi-esp32提供后端服务。

开源不仅是一种态度,在现在人工智能崛起的时代里,也成为了一种制衡,笔者二十年来一直热爱着开源、探索着开源,也是开源给了笔者持续做项目的力量,而笔者也是在尽自己力量助力开源世界。

相信,时代的力量。

该项目已经实现的功能:

 

 

具体功能详见项目里的说明。 

项目地址

https://github.com/xinnan-tech/xiaozhi-esp32-server

开始部署

我这里使用源码方式部署:

下载源码

git clone git@github.com:xinnan-tech/xiaozhi-esp32-server.git

建立虚拟环境

conda create -n xiaozhi-esp32-server python=3.10.16 -y

建议预留10G左右的空间。

激活环境:

进入项目源码目录:

进入依赖文件所在目录:

cd main/xiaozhi-server

接下来安装依赖库。

先执行:

conda install libopus -y
conda install ffmpeg -y

安装传输与解码库之后,再执行其它库的依赖安装:

pip install -r requirements.txt

为了安装快一点,在执行依赖安装前,先执行:

pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/

设置一下阿里云的镜像。

下载模型文件

本项目语音识别模型,默认使用`SenseVoiceSmall`模型,进行语音转文字。因为模型较大,需要独立下载,下载后把`model.pt`

文件放在`models/SenseVoiceSmall`

阿里魔塔下载[SenseVoiceSmall](https://modelscope.cn/models/iic/SenseVoiceSmall/resolve/master/model.pt)

配置项目文件

进入项目源码中xiaozhi-server的data目录。

如果你的`xiaozhi-server`目录没有`data`,你需要创建`data`目录。

如果你的`data`下面没有`.config.yaml`文件,你可以把`xiaozhi-server`目录下的`config.yaml`文件复制到`data`,并重命名为`.config.yaml`

你应该做成这样的:

打开这个配置文件:

vim .config.yaml

类似这样的:

找到这些位置,修改为你要用到的模型:

这里会稍微繁琐一点,你可能还需要去已申请一些密钥。

配置好之后,就可以启动服务了。

启动服务

在xiaozhi-server目录下执行:

python app.py

待服务完全启动:

记住这个地址,我们接下来在嵌入式终端的配置中使用。

配置嵌入式终端

 idf.py menuconfig

完成

这部分不知道怎么干的小伙伴去看我前几篇的文章。

现在,重新编译嵌入式端:

idf.py build

你就可以享受完整的AI实体对话服务啦。


祝你成功!

相关文章:

  • 测试基础笔记第七天
  • [FPGA]设计一个DDS信号发生器
  • 每天学一个 Linux 命令(28):ln
  • CentOS stream 中部署Zabbix RPM软件包公钥验证错误
  • 20.3 使用技巧6
  • 自定义 strlen 函数:递归实现字符串长度计算
  • 如何使用人工智能大模型,免费快速写工作计划?
  • kotlin,编码、解码
  • 存储图表数据的模板类QCPDataContainer
  • TDengine 性能监控与调优实战指南(二)
  • 一文粗通 Celery 分布式任务队列
  • RV1126网络环境TFTPNFS搭建(四)
  • 产品经理学习过程
  • PG CTE 递归 SQL 翻译为 达梦版本
  • 指针(2)
  • gorm基础:自定义数据类型
  • 【Vulkan 入门系列】创建帧缓冲、命令池、命令缓存,和获取图片(六)
  • 【leetcode100】一和零
  • Linux | I.MX6ULL 文件系统
  • github新建一个远程仓库并添加了README.md,本地git仓库无法push
  • 金价新高不断,上金所再发风险提示,黄金能否持续闪耀?
  • 阿塞拜疆总统阿利耶夫将访华
  • 张宝亮任山东临沂市委书记
  • 寒武纪一季度营收猛增42倍,净利3.55亿元,连续两个季度盈利
  • 昆明盘龙区一火灾调查报告公布:老人火盆取暖引燃房屋致身亡
  • 陕西省药监局:未检出巨子生物“可复美”存在“表皮生长因子”