OpenAI Transcribe: как расшифровать аудио и выбрать способ

В этой статье

Запрос «openai transcribe» звучит так, будто речь идёт о названии отдельного продукта. Обычно за ним скрывается более простой вопрос: как получить текст из готовой аудиозаписи с помощью OpenAI и какой инструмент для этого нужен.

Здесь важно не смешать несколько похожих сценариев. Вам нужно расшифровать файл на исходном языке, перевести речь на английский, сделать субтитры, подписать реплики разных людей или распознавать звук прямо во время разговора? Для каждого случая маршрут будет своим.

Если у вас уже есть аудиофайл

Для готовой записи используется file transcription: файл отправляют в метод audio/transcriptions, а API возвращает текст. В актуальной документации OpenAI рекомендует начинать с модели gpt-transcribe — это основной путь для интеграции в собственное приложение, скрипт или рабочий процесс.

У file transcription есть ограничение по размеру — 25 МБ. Поддерживаются, в частности, mp3, mp4, mpeg, mpga, m4a, wav и webm (документация по распознаванию речи). В запросе можно указать язык записи, добавить prompt с контекстом и передать термины или языки, которые встречаются в аудио. Это помогает не потерять, например, название продукта или фамилию.

Но подсказка не должна превращаться в сочинение за говорящего. Если в prompt написать редкий термин, которого на записи не было, результат всё равно нужно сверить с оригиналом. Контекст помогает выбрать правильное написание услышанного, а не добавляет новые реплики.

Примерный выбор выглядит так:

  • обычная расшифровка интервью, лекции или заметки — audio/transcriptions;
  • субтитры — расшифровка с временными метками и экспорт в SRT/VTT; поддержка готового формата зависит от выбранной модели;
  • структурированный ответ для дальнейшей обработки — json или другой поддерживаемый формат;
  • текст с временными отрезками и метками говорящих — diarization-модель и формат diarized_json.

Подробности параметров и доступных форматов перечислены в справочнике метода Create transcription. Самое существенное: API-транскрибация требует доступа к OpenAI API и не является отдельной подпиской ChatGPT.

Что выбрать: API или ChatGPT

Если вам нужно один раз превратить голосовую заметку в текст, писать интеграцию необязательно. В ChatGPT есть диктовка: приложение расшифровывает сказанное и показывает текст, который можно отредактировать перед отправкой (FAQ о голосовой диктовке). Это удобно для личного сообщения, черновика письма или короткой идеи.

В голосовом режиме ChatGPT приложение, наоборот, принимает речь как часть диалога и готовит ответ. При этом транскрипт Voice не обязательно будет дословной стенограммой: его задача — поддержать разговор, а не выдать юридически точную расшифровку (справка о ChatGPT Voice).

Отсюда простая развилка. Нужен готовый пользовательский интерфейс, чтобы надиктовывать сообщения без разработки? Подойдёт ChatGPT. Нужно регулярно принимать файлы от пользователей, сохранять результаты, строить субтитры или включать распознавание в свой сервис? Нужен API.

Если для диктовки или голосового режима вам нужен именно готовый ChatGPT, подписку ChatGPT на аккаунт покупателя можно оформить через Amber Market: заказ оформляется вручную, оплатить его из России можно через СБП, автоматических списаний нет. Это подключение ChatGPT, а не пополнение баланса OpenAI API — для API всё равно понадобятся отдельный доступ и ключ.

Расшифровка — не то же самое, что перевод

Допустим, запись сделана по-русски, а на выходе нужен английский текст. Это уже не просто транскрибация. Сначала можно получить расшифровку на исходном языке, а затем перевести её; либо использовать отдельный метод /audio/translations, если задача именно в переводе аудио на английский. В справочнике для этого метода указан whisper-1 (метод Create translation).

Разница заметна в постановке задачи:

«Запишите, что сказал спикер, по-русски» — транскрибация.

«Сделайте английские субтитры из русской записи» — перевод.

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

Когда нужен realtime

Обычная транскрибация начинается после того, как файл уже записан. Если микрофон, телефонный канал или медиапоток идут прямо сейчас, загружать завершённый файл неудобно: у вас ещё нет завершённого файла. Для такого сценария документация направляет к Realtime transcription (руководство по speech-to-text).

Realtime подходит, когда текст должен появляться по ходу звонка, встречи, трансляции или голосового интерфейса. Это другой тип интеграции: приложение поддерживает соединение и обрабатывает поступающий звук, а не отправляет один объект размером до 25 МБ.

Поэтому вопрос «можно ли расшифровать поток обычным методом?» лучше заменить на «нужны ли мне промежуточные результаты во время записи?». Если нет — сохраните файл и используйте file transcription. Если да — смотрите в сторону realtime.

А что такое Whisper large-v3

Whisper large-v3 — отдельный путь, не синоним OpenAI API. Его выбирают, когда распознавание нужно запускать самостоятельно: локально, на своём сервере или в среде, где аудио не должно уходить во внешний API. В этом варианте вы сами отвечаете за установку модели, вычислительные ресурсы, скорость обработки, хранение файлов и обновление окружения.

API удобнее, если важны быстрый запуск и готовый сервисный интерфейс. Локальный Whisper может быть уместнее, если критичны контроль над данными и независимость от сетевого соединения. Отдельное сравнение самостоятельного запуска и API есть в материале о Whisper large-v3.

Короткий выбор по задаче

Если запись уже закончена и нужен текст на языке оригинала — отправляйте файл в audio/transcriptions.

Если нужны субтитры — проверьте поддержку временных меток и форматов выбранной моделью. При отсутствии готового SRT/VTT потребуется отдельное преобразование результата; обычный текст не содержит таймкодов.

Если в записи несколько участников — используйте diarization и проверяйте, правильно ли сервис разделил реплики.

Если нужен английский результат из русской или другой записи — рассматривайте перевод отдельно от транскрибации.

Если звук поступает с микрофона, телефона или медиапотока в реальном времени — используйте Realtime transcription.

Если хочется просто надиктовать сообщение и поправить его перед отправкой — достаточно диктовки в ChatGPT. Если же приложение должно делать это автоматически для множества файлов, хранить результаты и отдавать их пользователю, выбирайте API.

Так что «OpenAI Transcribe» — скорее бытовое обозначение задачи, чем название отдельной подписки. Для готового файла это обычно audio/transcriptions; для живого звука — realtime; для личной диктовки — ChatGPT; для самостоятельного запуска — Whisper. Сначала определите, где находится звук и что должно произойти с текстом после распознавания, — и лишняя развилка исчезнет.

Источники

Есть следующая задача?Ещё по теме «Голосовой режим» →