Робот-собеседник на Raspberry Pi 5: четыре локальные модели, лицо на Python и поворот головы на сервоприводах
Автор собрал голосового робота-собеседника на Raspberry Pi 5 с 8 ГБ памяти, плату взял на Авито. Задача была не про умную колонку с часами, а про персонажа, который работает без обязательного интернета.
Лицо вынесено в отдельное приложение на Python и Tkinter, и его отрисовка не зависит от обработки голоса и генерации ответа. Пока модель думает или ждёт сеть, робот всё равно моргает и меняет мимику: у лица есть состояния «слушаю», «думаю» и спокойное.
Модели автор отбирал сам: скачал около двадцати кандидатов и проверял, держат ли они характер, отвечают ли на простые вопросы и следуют ли инструкциям. В финале остались четыре GGUF-модели, основной стала Qwen3-4B-Instruct-2507 – лучший баланс качества и времени ответа. Gemma 4 E2B отвечает быстрее и годится для короткого разговора, Gemma 4 E4B сильнее в объяснениях, но медленнее, а Qwen3.5 9B DeepSeek Distill осталась запасным экспериментом.
На самом Pi скорость вышла примерно 4,3 токена в секунду у Qwen3 4B и 7,1 токена в секунду у Gemma E2B. Автор оговаривает, что это замеры его набора задач и настроек, а не универсальный рейтинг моделей. Речь тоже локальная: распознавание через Vosk, синтез через Piper, базовый голос «Ирина» замедлен и поднят по высоте до мультяшного звучания.
Голова поворачивается на сервоприводах MG90S и MG996R через плату PCA9685. Отдельный урок вышел по питанию: логика идёт от 3,3 В Raspberry Pi, а силовая шина сервоприводов на 5 В, и видимость контроллера по I²C ещё не значит, что мотор запитали. Камера IMX708 с автофокусом выдала 50,03 кадра в секунду на полном угле обзора и 29,90 результата в секунду с включённым поиском лица, чего хватило для плавного слежения; экран – сенсорный Waveshare 3.5-inch DSI LCD (H) на 480×800, микрофон ICS-43434 подключён по I²S, звук выводится через USB-карту и усилитель.
Взгляд в камеру запускает запись, по имени робот останавливается, а имя и лицо меняются в настройках без правок в коде. Дополнительно автор прикрутил обращение к DeepSeek по API – ответы стали богаче, но локальный стек из Vosk, Piper и модели на Pi он оставил. Сейчас это стенд с напечатанной пробной головой, продолжение автор обещает, а подробности и замеры собраны в разбор с замерами на Хабре.
━━━━━━━━━━━━━━━━━━━━
📢 AI❤️4Life — канал об искусственном интеллекте
🤖 SyntxAI — все самые нужные нейросети в одном сервисе
🔒 MaxVpn — Удобный и быстрый VPN
🧠 Google AI Pro — подписка на личный Google-аккаунт на 18 месяцев за 990₽
━━━━━━━━━━━━━━━━━━━━
👑 Авторский курс по созданию персональных ИИ-агентов
#AI #LLM #RaspberryPi #EdgeAI
Post #849
23
