Запуск NVIDIA Parakeet локально с GGUF квантованием: порт на ggml vs NeMo | AiManual
AiManual Logo Ai / Manual.
31 Май 2026 Инструмент

Как запустить NVIDIA Parakeet локально с GGUF‑квантованием: порт на ggml и сравнение с NeMo

Как запустить ASR модель NVIDIA Parakeet без Python на CPU/GPU с GGUF квантованием. Сравнение с NeMo, примеры команд, кому подойдет.

Когда NeMo бесит: альтернатива для ASR на минималках

NeMo от NVIDIA — зверь. Он умеет всё: и транскрибацию, и синтез, и классификацию эмоций. Но попробуйте развернуть его на домашнем сервере без GPU. Вы начнете с того, что поставите Python 3.10, потом C++ компилятор, потом соберете PyTorch с CUDA (хотя CUDA нет), потом будете полчаса ждать установку NeMo, а в конце получите ошибку сегментации. Знакомо?

Для тех, кто устал от этого цирка, сообщество сделало порт ASR-модели NVIDIA Parakeet на чистый C-фреймворк ggml с квантованием в GGUF. Теперь speech-to-text работает на процессоре, влезает в 200 МБ и не требует танцев с бубном вокруг Python.

Parakeet — это CTC-трансформер, обученный на 100 000+ часов англоязычных аудиоданных. Существуют версии на 0.6B и 1.1B параметров. Оригинал живет в NeMo и использует тяжелый рантайм TensorRT или ONNX. Порт на ggml выбрасывает всё лишнее и оставляет только ядро модели.

Parakeet под капотом: CTC-трансформер, который выучили на 100k часов

Модель построена на архитектуре Conformer (сверточный трансформер с поточным механизмом). На входе — логарифмические мел-спектрограммы, на выходе — токены, которые декодируются в текст. В NeMo все это обернуто в сотни строк Python-кода, а здесь — просто бинарник, который принимает .wav-файл и выдает строку.

GGUF-версия поддерживает квантование Q4_0, Q5_1 и Q8_0. Это значит, что модель Parakeet 1.1B в Q4_0 весит около 700 МБ (вместо 4.4 ГБ в fp16). Скорость инференса на CPU — 5-15x в зависимости от железа. Даже на старом Intel i5-8400 вы получите реальное время транскрибации (файл 10 минут обработается за ~3 минуты).

GGUF-порт: как это работает

Порт базируется на форке llama.cpp, который уже поддерживает не только LLM, но и аудиомодели. Разработчики добавили слой для загрузки весов Parakeet, имплементацию CTC-дешера (beam search с шириной 10) и интеграцию с фильтрацией шума. Весь код написан на C++, без единой строки Python.

Квантованные файлы выложены на Hugging Face. Достаточно скачать .gguf-файл и бинарник llama-parakeet (или llama-cli с флагом --model-type parakeet).

Важный нюанс: на данный момент поддерживается только английский язык. Модель обучена на LibriSpeech, Fisher, Switchboard и внутренних датасетах NVIDIA. Русский — в планах, но точность на английском выше 6% WER (Word Error Rate).

Запускаем: от скачивания до транскрипции

Никакого pip install. Только терминал и папка с бинарником.

1Скачиваем бинарник и GGUF-модель

# Клонируем репозиторий с портом (или берем готовый бинарник из релизов)
git clone https://github.com/ggml-ai/llama-parakeet.git
cd llama-parakeet
# Качаем квантованную модель Parakeet 1.1B Q5_1 (рекомендуется баланс качества и скорости)
wget https://huggingface.co/ggml-community/parakeet-1.1b-gguf/resolve/main/parakeet-1.1b-q5_1.gguf

Если вы уже сталкивались со скачиванием GGUF-моделей, процесс аналогичен инструкции по Llama 3.3 8B.

2Транскрибируем аудиофайл

# Простейшая команда для WAV (16kHz, mono, 16 bit)
./llama-parakeet --model parakeet-1.1b-q5_1.gguf --file speech.wav --output text.txt

Через несколько секунд в text.txt появится распознанный текст. Можно добавить --beam-size 5 для более быстрого (но менее точного) декодирования или --lang en (хотя пока только en).

Поддерживаются форматы WAV, MP3, FLAC и OGG. Встроенный ресемплер поднимет частоту до 16 кГц, если нужно.

Сравнение с NeMo: что теряем, что приобретаем

NeMo — это инструмент для исследователей и инженеров, которым нужна гибкость. Parakeet GGUF — для тех, кто хочет просто транскрибировать речь, а не писать пайплайны.

ХарактеристикаParakeet GGUF (Q5_1)NVIDIA NeMo (Parakeet 1.1B)
Размер на диске~1.1 ГБ~4.4 ГБ (fp16)
Зависимостинет (статический бинарник)Python 3.10+, PyTorch, CUDA Toolkit, NeMo
Скорость (CPU i7-12700)~0.3 RTF (фактор реального времени)~0.8 RTF (без GPU)
Точность WER (LibriSpeech clean)2.8%2.6% (разница в пределах погрешности)
Поддержка языковтолько ENEN + многоязычные модели

Как видите, при квантовании точность практически не падает (разница 0.2% — это несколько слов на тысячу). Зато скорость на CPU растёт в 2-3 раза, а установка превращается в одну команду.

Ещё один бонус GGUF-порта — отсутствие зависимости от версий Python. Вы точно не получите ошибку "ModuleNotFoundError: No module named 'torch'" через полгода, когда решите обновить систему.

Кому это вообще нужно?

Порт Parakeet на ggml — спасение для конкретных сценариев:

  • Владельцы homelab, которые хотят добавить голосовой ввод в свои проекты, но не хотят ставить Python на каждый контейнер. В статье про homelab-оптимизацию мы уже обсуждали, как одна модель может заменить три.
  • Разработчики, которым нужен офлайн ASR на встраиваемых системах (Raspberry Pi 5, Orange Pi) — бинарник весит 15 МБ, модель 1 ГБ, всё работает без интернета.
  • Любители локального AI, которые уже используют llama.cpp для запуска LLM. Ранее мы показывали, как конвертировать мультимодальные модели NVIDIA — теперь ASR добавляется в ту же экосистему.
  • Те, кто хочет подготовить свою инфраструктуру к эре голосовых агентов. Если вы уже разворачиваете Gemma 4 локально (см. гид по локальному запуску Gemma 4), то Parakeet станет идеальным слуховым интерфейсом.

Тем, кому нужна высокая точность на шумных записях или поддержка русского языка, пока лучше оставаться с NeMo. Но для английского — GGUF-версия бьёт оригинал по удобству.

Прогноз: порт Parakeet на ggml — это только начало. Уже сейчас в бета-версии появилась поддержка низкоуровневой интеграции с llama.cpp: можно загрузить 50 МБ бинарник, который умеет и слушать, и отвечать. Через год ASR на C++ без Python станет стандартом де-факто для встраиваемых решений. NVIDIA, кстати, тоже это заметила — в NeMo 2.0 ожидается официальная поддержка экспорта в GGUF. Но это пока слухи.

Подписаться на канал