From 1fbe8dab7772e37c03f664a2d258e25cf678a05e Mon Sep 17 00:00:00 2001
From: hrz <1710360675@qq.com>
Date: Sat, 20 Sep 2025 08:04:00 +0800
Subject: [PATCH] =?UTF-8?q?update:=E6=9E=B6=E6=9E=84=E5=9B=BE=E5=A2=9E?=
=?UTF-8?q?=E5=8A=A0mqtt?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
README.md | 27 +++++++++++----------------
README_en.md | 25 +++++++++++++------------
docs/images/demo4.png | Bin 413663 -> 86053 bytes
docs/images/deploy2.png | Bin 215242 -> 267792 bytes
main/xiaozhi-server/config/logger.py | 2 +-
5 files changed, 25 insertions(+), 29 deletions(-)
diff --git a/README.md b/README.md
index b3d6ff1f..c0d474df 100644
--- a/README.md
+++ b/README.md
@@ -63,6 +63,13 @@ Spearheaded by Professor Siyuan Liu's Team (South China University of Technology
+
@@ -241,7 +241,7 @@ Websocket接口地址: wss://2662r3426b.vicp.fun/xiaozhi/v1/

| 功能模块 | 描述 |
|:---:|:---|
-| 核心架构 | 基于MQTT+UDP网关、WebSocket、HTTP服务器,提供完整的控制台管理和认证系统 |
+| 核心架构 | 基于[MQTT+UDP网关](https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/mqtt-gateway-integration.md)、WebSocket、HTTP服务器,提供完整的控制台管理和认证系统 |
| 语音交互 | 支持流式ASR(语音识别)、流式TTS(语音合成)、VAD(语音活动检测),支持多语言识别和语音处理 |
| 声纹识别 | 支持多用户声纹注册、管理和识别,与ASR并行处理,实时识别说话人身份并传递给LLM进行个性化回应 |
| 智能对话 | 支持多种LLM(大语言模型),实现智能对话 |
@@ -249,7 +249,8 @@ Websocket接口地址: wss://2662r3426b.vicp.fun/xiaozhi/v1/
| 意图识别 | 支持LLM意图识别、Function Call函数调用,提供插件化意图处理机制 |
| 记忆系统 | 支持本地短期记忆、mem0ai接口记忆,具备记忆总结功能 |
| 工具调用 | 支持客户端IOT协议、客户MCP协议、服务端MCP协议、MCP接入点协议、自定义工具函数 |
-| 管理后台 | 提供Web管理界面,支持用户管理、系统配置和设备管理 |
+| 指令下发 | 依托MQTT协议,支持从智控台将MCP指令下发到ESP32设备 |
+| 管理后台 | 提供Web管理界面,支持用户管理、系统配置和设备管理;界面支持中文简体、中文繁体、英文显示 |
| 测试工具 | 提供性能测试工具、视觉模型测试工具和音频交互测试工具 |
| 部署支持 | 支持Docker部署和本地部署,提供完整的配置文件管理 |
| 插件系统 | 支持功能插件扩展、自定义插件开发和插件热加载 |
@@ -263,13 +264,7 @@ Websocket接口地址: wss://2662r3426b.vicp.fun/xiaozhi/v1/
---
## 产品生态 👬
-小智是一个生态,当你使用这个产品时,也可以看看其他在这个生态圈的优秀项目
-
-| 项目名称 | 项目地址 | 项目描述 |
-|:---------------------|:--------|:--------|
-| 小智安卓客户端 | [xiaozhi-android-client](https://github.com/TOM88812/xiaozhi-android-client) | 一个基于xiaozhi-server的Android、IOS语音对话应用,支持实时语音交互和文字对话。 现在是flutter版本,打通IOS、Android端。 |
-| 小智电脑客户端 | [py-xiaozhi](https://github.com/Huang-junsen/py-xiaozhi) | 该项目提供了一个基于 Python 实现的小白 AI 客户端,使得在不具备实体硬件条件的情况下, 依然能够体过代码体验小智 AI 的功能。 |
-| 小智Java服务端 | [xiaozhi-esp32-server-java](https://github.com/joey-zhou/xiaozhi-esp32-server-java) | 小智开源后端服务 Java 版本是一个基于 Java 的开源项目。 它包括前后端的服务,旨在为用户提供一个完整的后端服务解决方案。 |
+小智是一个生态,当你使用这个产品时,也可以看看其他在这个生态圈的[优秀项目](https://github.com/78/xiaozhi-esp32?tab=readme-ov-file#%E7%9B%B8%E5%85%B3%E5%BC%80%E6%BA%90%E9%A1%B9%E7%9B%AE)
---
diff --git a/README_en.md b/README_en.md
index 5432eae8..a50006f8 100644
--- a/README_en.md
+++ b/README_en.md
@@ -62,6 +62,13 @@ Want to see the usage effects? Click the videos below 🎥
|
+
+
+
+
+
+
+ |
@@ -83,13 +90,6 @@ Want to see the usage effects? Click the videos below 🎥
|
-
-
-
-
-
-
- |
|
@@ -237,15 +237,16 @@ This project provides the following testing tools to help you verify the system

| Feature Module | Description |
|:---:|:---|
-| Core Architecture | Based on WebSocket and HTTP servers, provides complete console management and authentication system |
+| Core Architecture | Based on [MQTT+UDP gateway](https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/mqtt-gateway-integration.md), WebSocket and HTTP servers, provides complete console management and authentication system |
| Voice Interaction | Supports streaming ASR(speech recognition), streaming TTS(speech synthesis), VAD(voice activity detection), supports multi-language recognition and voice processing |
| Voiceprint Recognition | Supports multi-user voiceprint registration, management, and recognition, processes in parallel with ASR, real-time speaker identity recognition and passes to LLM for personalized responses |
| Intelligent Dialogue | Supports multiple LLM(large language models), implements intelligent dialogue |
| Visual Perception | Supports multiple VLLM(vision large models), implements multimodal interaction |
| Intent Recognition | Supports LLM intent recognition, Function Call function calling, provides plugin-based intent processing mechanism |
| Memory System | Supports local short-term memory, mem0ai interface memory, with memory summarization functionality |
+| Command Delivery | Supports MCP command delivery to ESP32 devices via MQTT protocol from Smart Console |
| Tool Calling | Supports client IOT protocol, client MCP protocol, server MCP protocol, MCP endpoint protocol, custom tool functions |
-| Management Backend | Provides Web management interface, supports user management, system configuration, and device management |
+| Management Backend | Provides Web management interface, supports user management, system configuration and device management; Supports Simplified Chinese, Traditional Chinese and English display |
| Testing Tools | Provides performance testing tools, vision model testing tools, and audio interaction testing tools |
| Deployment Support | Supports Docker deployment and local deployment, provides complete configuration file management |
| Plugin System | Supports functional plugin extensions, custom plugin development, and plugin hot-loading |
@@ -259,7 +260,7 @@ If you are a software developer, here is an [Open Letter to Developers](docs/con
---
## Product Ecosystem 👬
-Xiaozhi is an ecosystem. When using this product, you can also check out other excellent projects in this ecosystem
+Xiaozhi is an ecosystem. When using this product, you can also check out other [excellent projects](https://github.com/78/xiaozhi-esp32?tab=readme-ov-file#%E7%9B%B8%E5%85%B3%E5%BC%80%E6%BA%90%E9%A1%B9%E7%9B%AE) in this ecosystem
| Project Name | Project Address | Project Description |
|:---------------------|:--------|:--------|
@@ -280,7 +281,7 @@ Xiaozhi is an ecosystem. When using this product, you can also check out other e
| FastGPT interface calls | FastGPT | - |
| Coze interface calls | Coze | - |
-In fact, any LLM that supports OpenAI interface calls can be integrated and used.
+In fact, any LLM that supports OpenAI interface calls can be integrated and used, including Xinference and HomeAssistant interfaces.
---
@@ -298,7 +299,7 @@ In fact, any VLLM that supports OpenAI interface calls can be integrated and use
| Usage Method | Supported Platforms | Free Platforms |
|:---:|:---:|:---:|
-| Interface calls | EdgeTTS, Volcano Engine Doubao TTS, Tencent Cloud, Alibaba Cloud TTS, CosyVoiceSiliconflow, TTS302AI, CozeCnTTS, GizwitsTTS, ACGNTTS, OpenAITTS, Lingxi Streaming TTS | Lingxi Streaming TTS, EdgeTTS, CosyVoiceSiliconflow(partial) |
+| Interface calls | EdgeTTS, Volcano Engine Doubao TTS, Tencent Cloud, Alibaba Cloud TTS, AliYun Stream TTS, CosyVoiceSiliconflow, TTS302AI, CozeCnTTS, GizwitsTTS, ACGNTTS, OpenAITTS, Lingxi Streaming TTS, MinimaxTTS | Lingxi Streaming TTS, EdgeTTS, CosyVoiceSiliconflow(partial) |
| Local services | FishSpeech, GPT_SOVITS_V2, GPT_SOVITS_V3, MinimaxTTS | FishSpeech, GPT_SOVITS_V2, GPT_SOVITS_V3, MinimaxTTS |
---
diff --git a/docs/images/demo4.png b/docs/images/demo4.png
index 7b57ab25f7f70dbae980a64bad403da8bfefe739..e0b5ba76e70c9efc29a02fa81c936bf6360dcab0 100644
GIT binary patch
literal 86053
zcmV(_K-9m9P)EYP#
z=-=Jh)#l>f<=@-?|NrRb=IQ9-=;Y$_@a*sF=k4t1=j!M1?da|5;_m9@=HlP$>gMU}
z==k#D@bByN@#^gF>gD6$>EhhFVa+_V3^7?&;^~Ezzr+1Bdk=TT5k?#}=Hcw<-|_0>^zY#8=i=t$+0m=
z>E__*=iS=a;osc#@#5d!+ve=)@afy;-q-W&=HcMp=-}Dv@9XF8>E7Db^6cK@?CROq
z)8XFP^6T5`w|)T-R9<)n3d1Y%5QINI$X=m@~*r1=C
znwpocuB+A4&wzk^dwO_`i;0Mbg?M;&si~&w=G@B2#g>(m=HT4T%g5a0;&pX%g@uFT
z;^MKetyNT0!@<7r?B#xad%(WCy}P)`#=_&>)#&Z&-{$4IxwdR
z+T`U;bKTqC+tlCS*4WmNkBs5s;N#uc`S|x(S61ug*IQayWo2Z_%*tL}T-DXn&e6|f
zV`1jt(oAsI+~VJ1U|#g}^rWSvx4O8-$j8#v(z3O)!^Xtv;?#9>aJ#*`;oHr=z`o?(
z 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⋙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 |