← Все статьи
Новости9 мин чтения

whisper транскрибация — выбор между локальным запуском и API

Локальный Whisper или облачный API - разбираем на одном обезличенном наборе, кто получает копию аудио, что требует инфраструктура и сколько стоит минута.

Обложка статьи: whisper транскрибация — выбор между локальным запуском и API

Цена за минуту не решает, где распознавать речь. Решает то, кто в итоге получит копию записи. Это стоит зафиксировать до того, как ты запустишь первую команду или отправишь первый файл: дальше выбор становится техническим, а здесь он ещё про маршрут чувствительных данных.

Дальше в статье я не даю универсальный ответ «локально всегда лучше». Я даю метод: взять один обезличенный тестовый набор аудио и прогнать его через оба контура, фиксируя одно и то же - маршрут данных, требования к инфраструктуре и стоимость. Разница между контурами становится видимой только на одинаковом входе. Если наборы разные, сравнение бессмысленно.

Если распознанный текст ты потом отдаёшь языковой модели на суммаризацию или разметку, к маршруту аудио добавляется второй маршрут - маршрут текста, и здесь из России удобно смотреть на provod.ai (российский OpenRouter) как на отдельный API-контур для этого второго шага, а не как на замену самому распознаванию.

Платите в рублях за AI-модели без наценки на токены через provod.ai

Что именно мы сравниваем?

Сравнивать надо не «Whisper вообще», а конкретную реализацию на конкретном входе. Локальный контур - это код и вес модели у тебя на машине. API-контур - это HTTP-запрос с аудиофайлом на чужой сервер. Между ними лежит граница, которую пересекает твоя запись, и именно она важнее тарифа.

Тестовый набор должен быть обезличен до сравнения, а не после. Официальный model card Whisper прямо предупреждает: модель не предназначена для транскрибации записей людей без их согласия, у неё есть риск галлюцинаций - текста, которого в аудио не было, - и неравномерное качество по языкам и акцентам (S2, дата обращения 2026-07-18). Из этого следует практическое требование: перед любым сравнением из аудио убираются прямые идентификаторы, а выход валидируется вручную хотя бы на выборке.

Здесь же честная оговорка от разработчиков. Тот же model card фиксирует dual-use риск: удешевление ASR облегчает построение слежки за счёт масштабирования, и стоимость там не названа ограничивающим фактором (S2). Вывод, который я делаю из этого сам: выбор локального контура не даёт «безопасность данных» по умолчанию. Он меняет маршрут обработки, но не отменяет ответственность за согласие и хранение. Это интерпретация, а не цитата из источника.

Как выглядит локальный контур и что он требует?

Оригинальный openai/whisper распространяется под MIT-лицензией с открытым весом. Для запуска нужен Python 3.8-3.11, PyTorch не ниже 1.10.1 и установленный в PATH ffmpeg; для ускорения на CUDA-GPU CUDA-совместимый PyTorch ставится до самого пакета whisper (S1, дата обращения 2026-07-18). Это не «pip install и поехали» - порядок установки на GPU имеет значение.

Порог по памяти растёт с размером модели. По документации репозитория VRAM составляет примерно: tiny и base - около 1 ГБ, small - около 2 ГБ, medium - около 5 ГБ, large - около 10 ГБ, turbo - около 6 ГБ (S1). На CPU те же модели работают, но заметно медленнее GPU. Это базовые цифры для стандартного инференса; квантование их снижает, но об этом ниже отдельно.

Горизонтальная диаграмма потребности VRAM по размерам моделей Whisper от tiny до large

Компактный старт локального контура на faster-whisper выглядит так - код показывает форму, а не гарантию скорости на твоём железе:

from faster\_whisper import WhisperModel

model = WhisperModel("large-v2", device="cuda", compute\_type="int8") segments, info = model.transcribe("clip\_anon.wav", language="ru") for s in segments: print(s.start, s.end, s.text)

faster-whisper меняет требования к железу

Оригинальный репозиторий - не единственная локальная реализация, и это ломает миф о «едином локальном контуре». faster-whisper на CTranslate2 заявлен разработчиком как до 4 раз быстрее оригинального openai/whisper при том же качестве и меньшем потреблении памяти (S6, дата обращения 2026-07-18). Требования к среде другие: Python не ниже 3.9, для GPU нужны cuBLAS для CUDA 12 и cuDNN 9 (для CUDA 11 - более старый ctranslate2 3.24.0), а зависимость FFmpeg упакована через PyAV и отдельной установки не требует (S6).

В опубликованном разработчиком тесте на 13-минутном аудио, модель large-v2 на GPU: оригинальный Whisper прошёл его за 2 минуты 23 секунды при 4708 МБ VRAM, а faster-whisper в INT8 - за 59 секунд при 2926 МБ VRAM (S6). Это результат на одной конфигурации, не независимо воспроизведённый, поэтому читаю его как порядок величины, а не как обещание для любого железа. Но вывод для выбора контура важный: квантованная локальная реализация снижает порог входа, и «локально» перестаёт означать «нужна большая карта».

Dumbbell-диаграмма сравнения времени и VRAM оригинального Whisper и faster-whisper INT8

Сколько стоит API и что происходит с данными?

Облачный контур тарифицируется по времени аудио. На дату сверки 2026-07-18 openai whisper api берёт за минуту: whisper-1, gpt-4o-transcribe и gpt-4o-transcribe-diarize - $0.006, gpt-4o-mini-transcribe - $0.003 (S3). Тарифов по объёму или корпоративных скидок на этих эндпоинтах не описано.

Цифры датированы намеренно. Тарифная политика может измениться, и как постоянные я их не подаю.

У whisper ai api есть жёсткие технические границы: эндпоинты принимают файлы до 25 МБ в форматах MP3, MP4, MPEG, MPGA, M4A, WAV, WebM; более длинные записи нужно резать на части или сжимать перед отправкой (S4). Форматы вывода тоже различаются: whisper-1 даёт JSON, text, SRT, verbose_json, VTT и таймстемпы по словам и сегментам, а линейка gpt-4o-transcribe - только JSON или plain text без word-level таймстемпов (S4). Если тебе нужны субтитры с точными временными метками, выбор модели API определяет форму сравнительной карты заранее.

Про данные - без обобщений. По политике open ai whisper api данные, отправленные через эндпоинт /v1/audio/transcriptions, по умолчанию не используются для обучения без явного согласия клиента, для этих эндпоинтов нет application-state retention и по умолчанию действует Zero Data Retention (S5). Но логи контроля злоупотреблений в общем случае могут храниться до 30 дней, а расширенный ZDR на всю организацию требует одобрения аккаунт-тимом и сам по себе не включается (S5).

Ноль записей об аудио - это не ноль логов вообще.

Горизонтальная диаграмма цен API-транскрибации за минуту по четырём моделям

Как выбрать контур под свои данные?

Сведём это в сравнительную карту. Оси в ней подобраны так, чтобы решение складывалось из трёх твоих величин: критичности набора, наличной инфраструктуры и срока.

Ось сравненияЛокальный контурAPI-контур
Маршрут аудиозапись не покидает машинуфайл уходит на чужой сервер
Порог входаPython, PyTorch/CTranslate2, ffmpeg, VRAM по модели (S1, S6)ключ и HTTP-запрос
Стоимостьжелезо и поддержка команды$0.003-0.006/мин на 2026-07-18 (S3)
Лимит на файлограничен только диском/памятью25 МБ, иначе резать (S4)
Форматы выводазависят от реализацииword-level только у whisper-1 (S4)
Хранениепод твоим контролемZDR по умолчанию, abuse-логи до 30 дней (S5)
Производительностьнеизвестна до замера на твоём железепредсказуема по времени аудио

Строку «производительность локально» я специально не заполнил цифрой. Фактическая скорость на конкретном железе, сети и нагрузке команды не задокументирована ни одним источником и остаётся величиной, которую сравнение должно измерить, а не предположить.

Моя нормативная позиция как владельца чувствительных данных: при критичном аудио выбирай локальный запуск, если команда готова нести операционную нагрузку - установку, драйверы CUDA, обновления, валидацию выхода. Готовность держать инфраструктуру здесь - обязательное условие, а не деталь. Если критичности данных нет, а важна скорость старта, API выигрывает по времени внедрения. Спорный тезис «выбор транскрибации определяется только ценой API» этот метод как раз и опровергает.

Диагностическая схема выбора между локальным и API-контуром распознавания речи

Теперь про тот второй маршрут, который я упомянул в самом начале. Транскрипт почти всегда уходит дальше, в языковую модель, на суммаризацию или разметку, и здесь из России упираешься уже не в приватность аудио, а в оплату и доступ. Переписывать интеграцию при этом не нужно: provod.ai отвечает по OpenAI-совместимому протоколу, так что тот же SDK, которым ты дёргал транскрибацию, переключается на Claude, GPT, Gemini или DeepSeek сменой base_url и ключа, а платится всё с рублёвого баланса - картой, через СБП или по счёту, без VPN и без наценки на цену модели.

Границы этого сравнения

Локальный контур не делает данные приватными автоматически. Он убирает передачу аудио наружу, но галлюцинации модели, вопрос согласия на запись и хранение копий у тебя на дисках остаются твоей ответственностью (S2). Выбор маршрута снижает риск, но сам по себе ничего не гарантирует.

Этот разбор не утверждает абсолютную приватность ни локального, ни API-контура. Он не измеряет качество распознавания на твоём языке и акцентах - model card прямо предупреждает о его неравномерности (S2). И он не заменяет собой сам обезличенный набор: без него сравнение остаётся планом, а не результатом.

Чужой бенчмарк faster-whisper тоже не переносится на твой стенд как гарантия: производительность локального контура остаётся величиной, которую измеряешь ты сам. Наконец, whisper транскрибация в облаке всё равно упрётся в 25 МБ на файл и в отсутствие word-level таймстемпов у моделей gpt-4o (S4) - это ограничения формата, а не вкусовой выбор.

Частые вопросы

Локальный запуск точно безопаснее API? Он меняет маршрут аудио, а не гарантирует безопасность. Согласие, обезличивание и контроль хранения нужны в обоих контурах (S2, S5).

Хватит ли слабой карты для локального контура? Оригинальный large хочет около 10 ГБ VRAM, но faster-whisper в INT8 в опубликованном тесте укладывался в 2926 МБ (S1, S6). Точный ответ - только замер на твоём железе.

API вообще не хранит мои данные? По умолчанию нет обучения на них и действует ZDR, но abuse-логи в общем случае живут до 30 дней, а организационный ZDR включается отдельно (S5).

Какую модель API брать под субтитры? whisper-1: только у неё есть SRT/VTT и таймстемпы по словам, у линейки gpt-4o их нет (S4).

Схема: обезличенный транскрипт уходит в защищённый российский контур provod.ai для анализа

provod.ai — единая основа для AI-функций бизнеса

Стройте ассистентов, поиск, автоматизацию и медиасценарии поверх одного совместимого слоя: команда быстрее развивает продукт и не поддерживает отдельную инфраструктуру для каждого поставщика.

В одном каталоге — актуальные модели для текста и медиа: GPT от OpenAI, Claude от Anthropic, Gemini от Google, Grok от xAI, DeepSeek, Qwen, GLM, Kimi и MiniMax; для изображений — Nano Banana 2 Pro и GPT Image; для видео — последние версии Seedance, Kling, Veo и Google Omni. Также доступны модели для reasoning, поиска, документов, эмбеддингов, музыки и аудио.

Фундамент остаётся экономически прозрачным: цены соответствуют официальным тарифам 1:1, без собственной наценки provod.ai; оплата в рублях и документы упрощают работу компании.

Подключите AI к своему продукту: форма регистрации · цены на модели · защита данных по 152-ФЗ · API и интеграции

Источники

  • S1, S2: OpenAI, репозиторий и model card openai/whisper, обращение 2026-07-18, github.com/openai/whisper.
  • S3, S4, S5: OpenAI Developers - pricing, speech-to-text guide, data policy, обращение 2026-07-18, developers.openai.com.
  • S6: SYSTRAN, репозиторий faster-whisper, обращение 2026-07-18, github.com/SYSTRAN/faster-whisper.