本项目为开源智能硬件项目
xiaozhi-esp32提供后端服务
根据小智通信协议使用Python实现
帮助您快速搭建小智服务器
English · 简体中文 · 更新日志 · 部署文档 · 反馈问题
本项目需要配合 ESP32 硬件设备使用。如果您已经购买了 ESP32 相关硬件,且成功对接过虾哥部署的后端服务,并希望独立搭建自己的
xiaozhi-esp32
后端服务,那么本项目非常适合您。
想看使用效果?请猛戳视频 🎥
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
建议 4 核 CPU、8G 内存的电脑。如果开启ASR也使用API,可运行在2核CPU、2G内存的服务器中。请参考部署架构图
1、本项目为开源软件,本软件与对接的任何第三方API服务商(包括但不限于语音识别、大模型、语音合成等平台)均不存在商业合作关系,不为其服务质量及资金安全提供任何形式的担保。 建议使用者优先选择持有相关业务牌照的服务商,并仔细阅读其服务协议及隐私政策。本软件不托管任何账户密钥、不参与资金流转、不承担充值资金损失风险。
2、本项目成立时间较短,还未通过网络安全测评,请勿在生产环境中使用。 如果您在公网环境中部署学习本项目,请务必在配置文件
config.yaml
中开启防护:
server:
auth:
# 开启防护
enabled: true
开启防护后,您需要根据实际情况校验机器的 token 或 mac 地址,详细请参见配置说明。
一、部署文档
本项目支持以下三种部署方式,您可根据实际需求选择。
适合快速体验的普通用户,不需过多环境配置。缺点是,拉取镜像有点慢。视频教程可参考美女大佬教你Docker部署
适用于已安装 Docker 且希望对代码进行自定义修改的软件工程师。
适合熟悉Conda
环境或希望从零搭建运行环境的用户。
对于对响应速度要求较高的场景,推荐使用本地源码运行方式以降低额外开销。视频教程可参考帅哥大佬教你源码部署
二、固件编译
点这里查看固件编译的详细过程。
烧录成功且联网成功后,通过唤醒词唤醒小智,留意server端输出的控制台信息。
如遇到问题或产品建议反馈点这里。
小智是一个生态,当你使用这个产品时,也可以看看其他在这个生态圈的优秀项目
-
一个基于xiaozhi-server的Android、IOS语音对话应用,支持实时语音交互和文字对话。现在是flutter版本,打通IOS、Android端。
-
该项目提供了一个基于 Python 实现的小白 AI 客户端,使得在不具备实体硬件条件的情况下,依然能够体过代码体验小智 AI 的功能。主要功能包括 AI 语音交互、视觉多模态识别、IoT 设备集成、联网音乐播放、语音唤醒、自动对话模式、图形化界面、命令行模式、跨平台支持、音量控制、会话管理、加密音频传输、自动验证码处理等。
-
小智开源后端服务 Java 版本是一个基于 Java 的开源项目,它包括前后端的服务,旨在为用户提供一个完整的后端服务解决方案。
- 通信协议
基于xiaozhi-esp32
协议,通过 WebSocket 实现数据交互。 - 对话交互
支持唤醒对话、手动对话及实时打断。长时间无对话时自动休眠 - 意图识别
支持使用LLM意图识别、function call函数调用,减少硬编码意图判断 - 多语言识别
支持国语、粤语、英语、日语、韩语(默认使用 FunASR)。 - LLM 模块
支持灵活切换 LLM 模块,默认使用 ChatGLMLLM,也可选用阿里百炼、DeepSeek、Ollama 等接口。 - TTS 模块
支持 EdgeTTS(默认)、火山引擎豆包 TTS 等多种 TTS 接口,满足语音合成需求。 - 记忆功能
支持超长记忆、本地总结记忆、无记忆三种模式,满足不同场景需求。 - IOT功能
支持管理注册设备IOT功能,支持基于对话上下文语境下的智能物联网控制。
- 多种心情模式
- 智控台webui
想了解具体开发进度,请点击这里
如果你是一名软件开发者,这里有一份《致开发者的公开信》,欢迎加入!
使用方式 | 支持平台 | 免费平台 |
---|---|---|
openai 接口调用 | 阿里百炼、火山引擎豆包、深度求索、智谱ChatGLM、Gemini | 智谱ChatGLM、Gemini |
ollama 接口调用 | Ollama | - |
dify 接口调用 | Dify | - |
fastgpt 接口调用 | Fastgpt | - |
coze 接口调用 | Coze | - |
实际上,任何支持 openai 接口调用的 LLM 均可接入使用。
使用方式 | 支持平台 | 免费平台 |
---|---|---|
接口调用 | EdgeTTS、火山引擎豆包TTS、腾讯云、阿里云TTS、CosyVoiceSiliconflow、TTS302AI、CozeCnTTS、GizwitsTTS、ACGNTTS、OpenAITTS | EdgeTTS、CosyVoiceSiliconflow(部分) |
本地服务 | FishSpeech、GPT_SOVITS_V2、GPT_SOVITS_V3、MinimaxTTS | FishSpeech、GPT_SOVITS_V2、GPT_SOVITS_V3、MinimaxTTS |
类型 | 平台名称 | 使用方式 | 收费模式 | 备注 |
---|---|---|---|---|
VAD | SileroVAD | 本地使用 | 免费 |
使用方式 | 支持平台 | 免费平台 |
---|---|---|
本地使用 | FunASR、SherpaASR | FunASR、SherpaASR |
接口调用 | DoubaoASR | - |
类型 | 平台名称 | 使用方式 | 收费模式 | 备注 |
---|---|---|---|---|
Memory | mem0ai | 接口调用 | 1000次/月额度 | |
Memory | mem_local_short | 本地总结 | 免费 |
类型 | 平台名称 | 使用方式 | 收费模式 | 备注 |
---|---|---|---|---|
Intent | intent_llm | 接口调用 | 根据LLM收费 | 通过大模型识别意图,通用性强 |
Intent | function_call | 接口调用 | 根据LLM收费 | 通过大模型函数调用完成意图,速度快,效果好 |