XiaoZhi AI и DeepSeek: как устройство и большая модель делят работу
Услышав «XiaoZhi + DeepSeek», многие думают, что модель работает на самом ESP32. Это не так: устройство XiaoZhi не подключается к большой модели напрямую. Оно служит голосовым входом, а модель подключается на стороне сервера. Так проект описан в README основного репозитория: чат-бот XiaoZhi AI — это точка голосового взаимодействия, которая использует возможности больших моделей, таких как Qwen и DeepSeek, и управляет множеством конечных устройств по протоколу MCP.
В статье разобрано это разделение ролей и на примере сервера сообщества показано, как настроить DeepSeek на стороне сервера.
1. Что делает устройство, а что — сервер
| Этап | Где | Пояснение |
|---|---|---|
| Обнаружение слова активации | Устройство | Офлайн-пробуждение на базе ESP-SR, поддерживаются собственные слова активации |
| Захват и воспроизведение звука | Устройство | Микрофон захватывает звук, он кодируется в поток Opus и уходит на сервер; звук от сервера декодируется и воспроизводится |
| Дисплей и эмоции | Устройство | Текст и эмоции на OLED / LCD |
| Распознавание речи (ASR) | Сервер | Превращает принятую речь в текст |
| Диалог с большой моделью (LLM) | Сервер | DeepSeek и другие модели подключаются именно на этом этапе |
| Синтез речи (TTS) | Сервер | Превращает текст ответа в речь |
| Управление устройствами | MCP на устройстве | Громкость, свет, моторы, GPIO и другое |
README основного репозитория сообщает, что прошивка использует потоки Opus и поддерживает как классическую потоковую схему ASR + LLM + TTS, так и сквозные голосовые модели Realtime. Протоколы между устройством и сервером описаны в разделах WebSocket и MQTT + UDP.
2. Два способа подключения
| Способ | Откуда берётся модель | Кому подходит |
|---|---|---|
| Официальный сервер (по умолчанию) | Из того, что предлагает официальная консоль; личные пользователи после регистрации могут бесплатно использовать модель Qwen Realtime | Хотите просто пользоваться и не поддерживать сервер |
| Собственный сервер | Из того, что поддерживает ваш сервер, включая DeepSeek | Хотите сами выбирать большую модель, распознавание и синтез речи |
В прошивке нет и не нужно API-ключа большой модели. Храните ключи только в конфигурации своего сервера. Общий подход к собственному серверу, предупреждение о безопасности и способ направить устройство на ваш сервер описаны на странице Собственный сервер.
3. Настройка DeepSeek на сервере (на примере xiaozhi-esp32-server)
xinnan-tech/xiaozhi-esp32-server — открытый сервер сообщества (лицензия MIT). Конфигурация ниже взята из main/xiaozhi-server/config.yaml в теге v0.9.7:
# 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-совместимый интерфейс; сервер сейчас поддерживает типы LLMopenai,difyиollama;model_nameменяется по мере обновления моделей DeepSeek, актуальные данные смотрите на платформе DeepSeek;- документация сервера советует хранить свои изменения в
data/.config.yaml: этот файл переопределяетconfig.yaml, и при обновлении они не пропадут; - API-ключ — чувствительные данные. Не коммитьте его в репозиторий и не вставляйте в публичные issue.
4. Пять шагов до первого диалога
- Прошейте устройство: выберите вариант своей платы на странице Загрузка прошивки и запишите его программой для прошивки.
- Настройка сети и активация: настройте Wi-Fi по инструкции Первый запуск.
- Разверните сервер: следуйте документации проекта сервера и запишите его OTA URL и WebSocket URL.
- Направьте устройство на свой сервер: введите OTA URL на вкладке «Дополнительно (Advanced)» страницы настройки или задайте
Default OTA URLпри сборке. - Настройте и проверьте: укажите на сервере адрес и ключ DeepSeek, начните диалог словом активации или кнопкой и убедитесь по журналу сервера, что запрос дошёл.
5. О чём подумать перед выбором DeepSeek
Это общие инженерные соображения, а не результаты тестов:
- Задержка: один голосовой ход последовательно проходит распознавание, модель и синтез, а время до первого токена модели напрямую влияет на ожидание. Измеряйте в своей сети и на своём сервере.
- Стоимость и лимиты: модели тарифицируются за вызовы и могут иметь ограничения по частоте. Читайте тарифы и условия поставщика.
- Приватность: текст диалога отправляется стороннему API. Если приватность важна, сначала прочтите политику данных поставщика и рассмотрите модель, которую можно запустить локально.
- Заменяемость: сервер описывает LLM как параметр конфигурации, поэтому смена модели обычно сводится к изменению настроек; не зашивайте детали модели в бизнес-логику.
- Безопасность: собственный сервер не проходил оценку безопасности. Перед публикацией в интернете обеспечьте защиту; см. предупреждение на странице Собственный сервер.
Читайте также
- Собственный сервер: подключите устройства XiaoZhi к своему серверу
- Экосистема: серверы, клиенты и порты
- Прошивка XiaoZhi ESP32 v2.5: обзор
Источники
- Основной репозиторий 78/xiaozhi-esp32 v2.5.2:
README.md. - Проект сообщества xiaozhi-esp32-server,
main/xiaozhi-server/config.yamlв тегеv0.9.7. - Проверено 2026-10-23. Об ошибках и дополнениях пишите на [email protected].