Как запустить мультимодальный ИИ на своем ноутбуке без облаков и лишних трат
Помните эффектное демо GPT-4o, где нейросеть через камеру смартфона смотрела на мир и непринужденно болтала с пользователем? Тогда казалось, что для такого уровня быстродействия нужны серверные стойки размером с холодильник. Но технологии не стоят на месте. Недавно я наткнулся на проект parlоr, который делает ровно то же самое, но локально.
В основе идеи лежит простая боль разработчика. Создатель проекта, Фикри Карим, хостил бесплатный ИИ-сервис для изучения английского языка. Когда пользователей стало много, счета за облачные API начали кусаться. Логичный выход — перенести вычисления на устройство пользователя. Еще полгода назад для работы голосовых моделей в реальном времени требовалась условная RTX 5090, а сегодня Parlor запускается на обычном MacBook с чипом M3 Pro.
Что умеет этот проект
Parlor — это не просто чат-бот. Это связка из зрения, слуха и синтеза речи, которая работает «в одном флаконе». Вы открываете страницу в браузере, даете доступ к камере и микрофону, и начинаете общаться. ИИ видит то, что показываете вы, слышит ваш голос и отвечает вслух.
В проекте реализовано несколько критически важных для живого общения штук:
- Голосовая активация (VAD). Не нужно нажимать кнопки «запись» или Push-to-Talk. Система сама понимает, когда вы начали говорить и когда закончили.
- Возможность перебивать. Если ИИ понес куда-то не туда, вы просто начинаете говорить, и он замолкает, переключаясь на прослушивание.
- Потоковый синтез речи. Звук начинает воспроизводиться сразу, как только готова первая фраза, не дожидаясь окончания генерации всего текста.
Как это устроено внутри
Архитектура Parlor выглядит на удивление стройной. Вся тяжелая работа ложится на плечи Python-сервера на FastAPI, а браузер выступает лишь в роли интерфейса.
https://github.com/user-attachments/assets/cb0ffb2e-f84f-48e7-872c-c5f7b5c6d51f
Связь между фронтендом и бэкендом идет через WebSocket. Браузер отправляет аудиопоток в формате PCM и кадры с камеры в JPEG. На сервере крутятся две основные модели. Первая — Gemma 4 E2B от Google. Это свежая и очень компактная мультимодальная модель, которая через LiteRT-LM понимает и картинки, и речь. Вторая — Kokoro, крошечная модель на 82 миллиона параметров, которая отвечает за качественный синтез речи.
Интересно реализована кроссплатформенность для TTS (Text-to-Speech). На macOS используется библиотека MLX для максимального ускорения на железе Apple, а для Linux предусмотрен запуск через ONNX, чтобы задействовать видеокарты сторонних производителей.
Производительность и требования
Для запуска не нужен суперкомпьютер, но и на калькуляторе завести не получится. Вам понадобится:
- Python 3.12 или новее.
- macOS на Apple Silicon или Linux с GPU.
- Около 3 ГБ свободной оперативной памяти.
На MacBook M3 Pro цифры выглядят вполне рабочими. Полный цикл от момента, когда вы закончили фразу, до начала ответа ИИ, занимает около 2.5–3 секунд. Сама генерация текста идет со скоростью примерно 83 токена в секунду. Этого более чем достаточно, чтобы диалог не превращался в мучительное ожидание.
Как попробовать самому
Автор использует менеджер пакетов uv, что сильно упрощает жизнь. Процесс установки выглядит так:
git clone https://github.com/fikrikarim/parlor.git
cd parlor
cd src
uv sync
uv run server.py
При первом запуске скрипт сам выкачает около 2.6 ГБ весов моделей с HuggingFace. После этого заходите на localhost:8000 и можно начинать тесты.
Учтите, что проект сейчас находится в стадии Research Preview. В коде могут встретиться баги, а документация пока ограничивается файлом README. Но как база для создания собственного ассистента или тренажера для языков — это отличный фундамент.
Кому это пригодится
В первую очередь Parlor интересен тем, кто хочет разобраться, как работают мультимодальные системы в 2024 году. Это отличный пример того, как собрать воедино VAD, LLM и TTS в одном пайплайне.
Проект идеально подходит для образовательных целей. Представьте приложение для изучения языков, где вы наводите камеру на предмет и спрашиваете: «Как это называется по-английски?». При этом вы не платите ни копейки за токены OpenAI или Anthropic. Весь интеллект живет на вашем железе, обеспечивая приватность и отсутствие задержек из-за сетевых лагов облачных провайдеров.
