Обычно, чтобы перевести голос в текст, инженерам приходится жонглировать несколькими SDK или разворачивать собственные Whisper-серверы. Теперь OpenRouter предлагает единый API, который делает это за один вызов — и с тем же ключом, что и для чата.
OpenRouter запустил новый API для транскрипции аудио, который использует тот же ключ и метод аутентификации, что и для чат-комплишенов. Это избавляет разработчиков от необходимости устанавливать отдельные SDK для преобразования речи в текст или разворачивать свои STT-серверы. Аудио отправляется в формате base64, а в ответ приходит JSON с текстовой расшифровкой и объектом использования.
Платформа автоматически балансирует нагрузку между моделями разных провайдеров. Если одна модель доступна у нескольких поставщиков, запросы распределяются между ними. Это исключает привязку к одному вендору и позволяет выбрать оптимальный вариант по цене. Для поиска доступных STT-моделей используется фильтр output_modalities=transcription.
OpenRouter поддерживает два типа STT-моделей: Whisper-класса, которые тарифицируются за длительность аудио (посекундно), и новые токен-ориентированные STT-модели, тарифицируемые за количество токенов. Собственных наценок OpenRouter не добавляет, а фактическая стоимость каждого запроса указывается в поле usage.cost.
Для транскрипции аудио OpenRouter принимает данные двумя способами:
- Base64-кодированный аудиофайл в теле JSON-запроса.
- Multipart/form-data в стиле OpenAI, с файлом до 25 МБ. Файлы больше 25 МБ требуют кодирования в base64.
API позволяет передавать следующие параметры:
model— slug STT-модели (например,openai/whisper-1).input_audio.data— аудио в base64.input_audio.format— формат аудио (wav, mp3, flac, m4a, ogg, webm, aac).language— код языка (ISO-639-1, опционально, автоопределение).temperature— температура семплирования (0 до 1, опционально).response_format— формат ответа (jsonилиverbose_jsonдля временных меток).timestamp_granularities— детализация временных меток (segmentилиwordсverbose_json).provider— провайдер-специфичные опции (например, подсказки для Groq).
Основные ограничения, которые нужно учитывать:
- Таймаут обработки — примерно 60 секунд. Длинные аудиозаписи нужно разбивать на части.
- Отсутствие поддержки URL для аудио.
- Нет вывода в форматах SRT/VTT. Субтитры создаются вручную из временных меток
verbose_json.
Новый API OpenRouter снимает с инженеров задачу по выбору и управлению отдельными STT-провайдерами, унифицируя работу с голосом и текстом в рамках одной платформы. Это упрощает разработку мультимодальных приложений и позволяет точно отслеживать расходы. Однако, для очень длинных аудио или автоматического создания субтитров в форматах SRT/VTT, потребуется дополнительная ручная обработка.