Зачем еще один голосовой ассистент? (Потому что все остальные шпионят)
Вы говорите "окей, гугл" или "привет, сири" и ваши слова летят в облака, где их анализируют, хранят и используют для чего угодно, кроме вашей пользы. Надоело? Тогда Strix Halo - ваш выбор. Это не просто скрипт, а целый стек, который превращает ваш ПК или сервер в полноценного голосового ассистента, который понимает контекст, ищет в интернете, пишет код и даже генерирует картинки. И все это без единого байта, покидающего вашу сеть.
Strix Halo - это open-source стек для локального голосового ассистента, который работает на вашем железе. Никаких облаков, никаких подписок, только ваш голос и ваши данные. Архитектура, проверенная в бою: Lemonade Server управляет всем, Whisper превращает речь в текст, Qwen3-Coder-Next думает и отвечает, а ComfyUI рисует по запросу.
Архитектура: что внутри этого Франкенштейна
Собрать "AI-монстра" из кусочков - это одно. Заставить его работать слаженно - совсем другое. Strix Halo решает эту проблему, используя модульный подход, где каждый компонент отвечает за свою задачу. Если один упадет, остальные продолжат работать.
| Компонент | Версия (2026) | Зачем нужен | Альтернативы |
|---|---|---|---|
| Lemonade Server | v2.4.1 | Ядро системы. Принимает аудио, маршрутизирует задачи между моделями, возвращает ответ. | LocalAI, SillyTavern |
| Whisper NPU | Whisper v3 Large | Распознавание речи (STT). Ключевое слово "NPU" - использует нейропроцессор для ускорения, если есть. | Qwen3-ASR, Voxtral-Mini |
| Qwen3-Coder-Next | Qwen3-Coder-Next-32B-Instruct | Мозг ассистента (LLM). Понимает запрос, генерирует ответ, может писать и исполнять код через инструменты. | Llama 3.3 70B, DeepSeek-Coder |
| ComfyUI | ComfyUI v0.3.5 | Генерация изображений по текстовому описанию. Интегрируется как отдельный сервис. | Automatic1111, Fooocus |
| Инструменты (Tools) | Lemonade Tools v1.2 | Поиск в интернете, выполнение shell-команд, работа с файлами. | LangChain, MCP-серверы |
1Подготовка поля боя: железо и софт
Прежде чем что-то качать, оцените свои ресурсы. Qwen3-Coder-Next-32B в 4-битной квантовке требует около 20 ГБ VRAM. Whisper v3 Large на CPU будет тормозить. ComfyUI любит видеопамять.
- Минимальная конфигурация (будет медленно): CPU 8 ядер, 32 ГБ ОЗУ, GPU с 8 ГБ VRAM (например, RTX 3070).
- Рекомендуемая конфигурация: CPU 12+ ядер, 64 ГБ ОЗУ, GPU с 24 ГБ VRAM. В 2026 году отличным выбором будет NVIDIA RTX 5090 с 32 ГБ памяти - хватит на все модели сразу.
- Операционная система: Ubuntu 24.04 LTS или Rocky Linux 9. На Windows через WSL2 тоже можно, но готовьтесь к танцам с бубном.
Устанавливаем системные зависимости:
# Для Ubuntu/Debian
sudo apt update && sudo apt upgrade -y
sudo apt install -y python3-pip python3-venv git curl wget build-essential cmake ffmpeg
# Установка Docker и Docker Compose (обязательно!)
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
sudo usermod -aG docker $USER
# Перелогиньтесь или выполните 'newgrp docker'Не пропускайте шаг с добавлением пользователя в группу docker. Без этого все команды Docker придется выполнять через sudo, что сломает права доступа к файлам и усложнит жизнь.
2Разворачиваем Lemonade Server - дирижера оркестра
Lemonade Server - это центральный хаб. Он предоставляет API, принимает аудио, вызывает Whisper для транскрипции, отправляет текст в LLM, получает ответ и, если нужно, запускает генерацию изображений.
# Клонируем репозиторий
git clone https://github.com/lemonade-ai/lemonade-server.git
cd lemonade-server
# Копируем конфиг-пример и редактируем
cp .env.example .env
nano .envВ файле .env критически важны следующие настройки:
# Язык по умолчанию для Whisper
WHISPER_LANGUAGE=ru
# URL для доступа к модели LLM (пока не трогаем, настроим позже)
LLM_API_URL=http://localhost:11434 # Для Ollama
# Включение инструментов (поиск, код)
ENABLE_TOOLS=true
TOOLS_TIMEOUT=30
# Путь к модели Whisper (скачаем отдельно)
WHISPER_MODEL_PATH=/models/whisper-large-v3.ggufЗапускаем сервер через Docker Compose:
docker compose up -dПроверяем, что он работает:
curl http://localhost:8080/healthДолжен вернуться JSON со статусом "healthy". Если нет - смотрите логи: docker compose logs lemonade.
3Загружаем и настраиваем Whisper v3 Large
Whisper NPU - это оптимизированная версия Whisper от OpenAI, которая может использовать NPU (нейропроцессоры) в современных Intel и AMD CPU для ускорения. Если NPU нет, она просто работает на CPU.
Скачиваем квантованную модель в формате GGUF (она меньше и быстрее):
# Создаем директорию для моделей
sudo mkdir -p /models
sudo chown -R $USER:$USER /models
cd /models
# Качаем Whisper v3 Large (квантованная версия Q4_K_M - лучший баланс)
wget https://huggingface.co/ggerganov/whisper.cpp/resolve/main/ggml-large-v3-q4_k_m.gguf -O whisper-large-v3.ggufТеперь нужно запустить сервер Whisper, который будет слушать запросы от Lemonade. Используем whisper.cpp с поддержкой HTTP API:
git clone https://github.com/ggerganov/whisper.cpp.git
cd whisper.cpp
make server
# Запускаем сервер на порту 9090, указываем путь к модели
./server -m /models/whisper-large-v3.gguf --port 9090 --host 0.0.0.0 -t 8Параметр -t 8 - количество потоков CPU. Настройте под свое железо.
4Запускаем Qwen3-Coder-Next - мозги системы
Здесь есть два пути: использовать Ollama (проще) или vLLM (быстрее и для продакшена). Рассмотрим Ollama, так как он не требует лишних телодвижений.
Устанавливаем Ollama:
curl -fsSL https://ollama.ai/install.sh | shЗагружаем модель Qwen3-Coder-Next-32B-Instruct в 4-битном формате:
ollama pull qwen3-coder-next:32b-instruct-q4_K_MЗапускаем сервер Ollama (он обычно запускается как служба автоматически):
ollama serve
# Проверяем, что модель загрузилась
ollama listТеперь нужно сказать Lemonade Server, где искать LLM. Возвращаемся к файлу .env в директории lemonade-server и меняем строку:
LLM_API_URL=http://localhost:11434/api/generate # API endpoint Ollama
LLM_MODEL_NAME=qwen3-coder-next:32b-instruct-q4_K_MПерезапускаем Lemonade Server:
cd ~/lemonade-server
docker compose restart5Подключаем ComfyUI для генерации изображений (опционально)
Если вам не нужны картинки, этот шаг можно пропустить. Но именно возможность сказать "нарисуй кота в шляпе, который пишет код на Python" и через 20 секунд получить результат - это та магия, которая впечатляет.
Запускаем ComfyUI через официальный Docker-образ:
docker run -d --gpus all --name comfyui -p 8188:8188 -v ~/comfyui/models:/app/models -v ~/comfyui/output:/app/output comfyanonymous/comfyui:latestТеперь нужно, чтобы Lemonade Server знал, как обращаться к ComfyUI. В файле .env добавляем:
ENABLE_IMAGE_GEN=true
COMFYUI_API_URL=http://localhost:8188
# Идентификатор рабочего процесса (workflow) в ComfyUI. Нужно будет загрузить готовый.
COMFYUI_WORKFLOW_ID=text_to_image_basicСамый сложный момент - подготовить workflow в ComfyUI. Нужно зайти в его веб-интерфейс (http://localhost:8188), импортировать JSON-схему пайплайна генерации и получить его ID. Готовые схемы можно найти в репозитории Lemonade Server в папке workflows/.
ComfyUI - это отдельная вселенная со своими нодами и настройками. Если вы с ним никогда не работали, выделите пару часов, чтобы разобраться с базовыми концепциями. Или начните с простых готовых workflow.
6Интеграция и первый запуск: момент истины
Все компоненты работают. Осталось их соединить и протестировать. Lemonade Server предоставляет единый WebSocket endpoint для голосового взаимодействия.
Для теста понадобится простой клиент. Можно использовать пример из репозитория Lemonade:
cd ~/lemonade-server/examples/python
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
python test_voice_client.py --server ws://localhost:8080/ws/voiceЕсли все настроено правильно, вы сможете говорить в микрофон и получать текстовый ответ, а если запрос подразумевает картинку - ссылку на сгенерированное изображение.
Где собака зарыта: нюансы и типичные ошибки
В теории все гладко. На практике вы обязательно наткнетесь на эти грабли.
- Ошибка: "CUDA out of memory" при запуске Qwen3. Решение: используйте более агрессивную квантовку (например, q3_K_S вместо q4_K_M) через Ollama:
ollama pull qwen3-coder-next:32b-instruct-q3_K_S. Или добавьте флаг--num-gpu-layers 40в команду запуска Ollama, чтобы часть модели ушла в CPU. - Ошибка: Whisper не распознает русскую речь. Убедитесь, что в .env стоит
WHISPER_LANGUAGE=ruи вы скачали многоязычную модель (large-v3). - Большая задержка между вопросом и ответом (>10 сек). Скорее всего, тормозит LLM. Попробуйте меньшую модель, например, Qwen3-Coder-Next-14B. Или перейдите на vLLM для эффективного батчинга. Если собираете систему для телефонных звонков, изучите наш гайд про AI-автосекретаря с субсекундной задержкой.
- Lemonade Server не видит инструменты (поиск, выполнение кода). Проверьте, что в .env стоит
ENABLE_TOOLS=trueи что у вас установлены и запущены соответствующие MCP-серверы (например, для поиска DuckDuckGo).
Частые вопросы (FAQ)
Можно ли использовать Strix Halo на Mac с Apple Silicon?
Да, можно. Whisper.cpp и Ollama имеют нативную поддержку ARM. Для ускорения LLM на M3/M4 используйте флаг --metal в Ollama. ComfyUI также имеет сборку для macOS.
Как добавить свой голос для TTS (синтеза речи)?
Strix Halo по умолчанию возвращает только текст. Чтобы добавить озвучку, нужно интегрировать TTS-движок, например, Qwen3-TTS.cpp или XTTS v2. Lemonade Server имеет слот для подключения TTS-провайдера через конфиг.
Где взять готовые сборки (Docker образы) для всего стека?
Официальных единых образов нет, и это сознательное решение. Архитектура слишком гибкая, компоненты обновляются часто (напомню, сейчас 2026 год). Сборка из исходников гарантирует, что вы получите самые последние версии и полный контроль. Если же времени нет, можно поискать community-образы на Docker Hub, но их безопасность и актуальность - на ваш страх и риск.
Как масштабировать систему для нескольких пользователей?
Lemonade Server сам по себе не масштабируется горизонтально. Для нескольких одновременных пользователей нужно: 1) Поставить балансировщик нагрузки (Nginx) перед несколькими экземплярами Lemonade. 2) Использовать vLLM с поддержкой continuous batching для LLM. 3) Вынести состояние (сессии) в Redis. Это уже уровень продакшена, тема для отдельной статьи.
Что дальше? (Вместо заключения)
Вы запустили Strix Halo. Он работает. Вы говорите ему "найди рецепт борща" и он ищет в интернете. Говорите "напиши скрипт для резервного копирования" и он пишет. Это чувствуется как суперсила. Но не останавливайтесь на этом.
Подключите его к Home Assistant для управления умным домом. Настройте автоматическое ведение логов разговоров в базу. Обучите RAG-пайплайн на ваших личных документах, чтобы ассистент знал о вас все. Экспериментируйте с другими локальными моделями, например, для полноценного дуплексного диалога присмотритесь к PersonaPlex от NVIDIA.
Главный совет: не гонитесь за размером модели. 32B параметров - это круто, но 14B модель с грамотной настройкой и хорошим контекстом часто работает не хуже, а в 3-4 раза быстрее. Скорость ответа - это то, что пользователь чувствует кожей. А приватность, которую дает локальный запуск, - это то, что позволит вам спать спокойно.