小智 AI 與 DeepSeek:裝置與大模型如何分工
小智 AI 與 DeepSeek:裝置與大模型如何分工
January 15, 2025
很多人看到“小智 + DeepSeek”會以為大模型跑在 ESP32 上。實際上不是:小智裝置不直接連線大模型。它是一個語音入口,大模型在服務端對接。上游 README 對專案的定位是:小智 AI 聊天機器人作為語音互動入口,利用 Qwen / DeepSeek 等大模型的 AI 能力,透過 MCP 協議實現多端控制。
本文把這套分工講清楚,並以社群服務端為例,演示在服務端配置 DeepSeek 的方法。
本文已於 2026-10-23 修訂:刪除了沒有上游依據的效能對比數字、“混合路由演算法”、路線圖和應用場景範例,只保留能在韌體原始碼、官方文件和服務端儲存庫中核對的內容。本站沒有對任何大模型做效能評測,也不提供對比資料。
一、裝置與服務端各做什麼
| 環節 | 位置 | 說明 |
|---|---|---|
| 喚醒詞檢測 | 裝置 | 基於 ESP-SR 的離線語音喚醒,支援自訂喚醒詞 |
| 音訊採集與播放 | 裝置 | 麥克風採集後編碼為 Opus 音訊流上行;服務端下發的音訊在裝置解碼播放 |
| 顯示與表情 | 裝置 | OLED / LCD 顯示文字與表情 |
| 語音識別(ASR) | 服務端 | 把上行語音轉成文字 |
| 大模型對話(LLM) | 服務端 | DeepSeek 等大模型在這一環節接入 |
| 語音合成(TTS) | 服務端 | 把回覆文字合成為語音下發 |
| 裝置控制 | 裝置端 MCP | 透過裝置端 MCP 控制音量、燈光、電機、GPIO 等 |
上游 README 說明,韌體採用 Opus 音訊流,既支援傳統的流式 ASR + LLM + TTS 方案,也支援 Realtime 端到端語音模型。裝置與服務端之間的通訊協議見 WebSocket 與 MQTT + UDP。
二、兩種接入路徑
| 路徑 | 模型從哪裡選 | 適合誰 |
|---|---|---|
| 使用官方伺服器(預設) | 以官方控制檯提供的為準,個人使用者註冊賬號後可免費使用 Qwen 實時模型 | 想直接用,不想維護服務端 |
| 自建服務端 | 服務端支援什麼就能接什麼,包括 DeepSeek | 想自選大模型、語音識別和語音合成 |
韌體裡沒有也不需要大模型的 API Key。金鑰應該只儲存在你的服務端配置裡。自建服務端的整體思路、安全警示和裝置如何指向你的伺服器,見自建服務端。
三、在服務端配置 DeepSeek(以 xiaozhi-esp32-server 為例)
xinnan-tech/xiaozhi-esp32-server 是社群開源的服務端(MIT 授權條款)。下面的配置取自其 v0.9.7 標籤的 main/xiaozhi-server/config.yaml:
# Excerpt of main/xiaozhi-server/config.yaml (xiaozhi-esp32-server v0.9.7)
selected_module:
LLM: DeepSeekLLM
LLM:
DeepSeekLLM:
type: openai
model_name: deepseek-v4-flash
url: https://api.deepseek.com
api_key: <your DeepSeek API key>幾點說明:
selected_module.LLM選擇使用哪一個 LLM 配置名,這裡指向下面定義的DeepSeekLLM;type: openai表示透過 OpenAI 相容介面呼叫,該服務端當前支援的 LLM 型別為openai、dify、ollama;model_name會隨 DeepSeek 的模型更新而變化,請以 DeepSeek 開放平台 的最新說明為準;- 服務端文件建議把自己的改動寫在
data/.config.yaml,它會覆蓋config.yaml,這樣升級時不會被沖掉; - API Key 是敏感資訊,不要提交到程式碼儲存庫,也不要貼到公開的 issue 裡。
四、五步跑通一次對話
- 燒錄韌體:在韌體下載頁選擇你的開發板變體,用燒錄工具寫入;
- 配網與啟用:按首次啟動完成 Wi-Fi 配網;
- 部署服務端:按服務端專案文件部署,記下它的 OTA 位址和 WebSocket 位址;
- 讓裝置指向你的伺服器:在配網頁面的「進階」分頁填寫 OTA 位址,或在編譯時設定
Default OTA URL; - 配置並驗證:在服務端填好 DeepSeek 的介面和金鑰,用喚醒詞或按鍵發起一次對話,在服務端日誌裡確認請求已到達。
五、選擇 DeepSeek 前要想清楚的事
這些是工程層面的通用考慮,不是評測結論:
- 延遲:一次語音對話要依次經過識別、大模型和合成,大模型首個字的回傳時間直接影響“等多久才開口”。請在你自己的網路和服務端上實測;
- 費用與限流:大模型按呼叫計費並可能限流,請閱讀服務商的計費和使用條款;
- 隱私:對話文字會傳送給第三方 API。如果在意隱私,請先閱讀服務商的資料政策,必要時選擇可本地部署的模型;
- 可替換性:服務端把 LLM 抽象成配置項,換模型通常只需改配置,不要把模型細節寫死在業務邏輯裡;
- 安全:自建服務端未經安全評測,公網部署務必做好防護,詳見自建服務端的安全警示。
相關閱讀
對照來源
- 上游 78/xiaozhi-esp32 v2.5.2 的
README_zh.md; - 社群專案 xiaozhi-esp32-server
v0.9.7標籤的main/xiaozhi-server/config.yaml; - 核對日期:2026-10-23。更正或補充請發郵件到 [email protected]。