API распознавания речи
Speech-to-Text API для распознавания русской речи. Формат как у Deepgram и OpenAI Audio API: в рабочей интеграции меняются адрес и ключ.
Deepgram
Отправка записи
Для проектов с обработкой данных в России это альтернатива Deepgram. Аудио передаётся телом запроса. Авторизация: заголовок Authorization со схемой Token.
from deepgram import DeepgramClient, DeepgramClientOptions
client = DeepgramClient(
"ВАШ_КЛЮЧ",
DeepgramClientOptions(url="https://vtext38.ru/api"),
)
with open("recording.mp3", "rb") as audio:
response = client.listen.rest.v("1").transcribe_file(
{"buffer": audio},
{"smart_format": True, "diarize": True, "utterances": True},
)
print(response.results.channels[0].alternatives[0].transcript)Справочник
Параметры запроса Deepgram
| Параметр | Назначение |
|---|---|
| punctuate | Знаки препинания и заглавные. Синоним smart_format; вместе допустимы. |
| smart_format | Форматирование текста для чтения. То же, что punctuate; числа остаются словами. |
| diarize | Разделение по говорящим для записи в моно. |
| diarize_model | Любое значение включает диаризацию (как у Deepgram). Версия модели игнорируется. |
| multichannel | Разделение по каналам стереозаписи. Для телефонии точнее, чем диаризация. |
| utterances | Разбивка на реплики по паузам и смене говорящего. |
| paragraphs | Дополнительная разбивка реплик на предложения. |
Имя модели принимается любое и на результат не влияет. Язык один: русский.
Расхождения
Чем мы отличаемся от Deepgram
То, что стоит учесть при переносе кода.
OpenAI
Переход с OpenAI Audio API
Меняются ключ и base_url / baseURL (с суффиксом /v1). Адрес: https://vtext38.ru/api/v1/audio/transcriptions. Авторизация Bearer.
from openai import OpenAI
client = OpenAI(
api_key="ВАШ_КЛЮЧ",
base_url="https://vtext38.ru/api/v1",
)
with open("recording.mp3", "rb") as audio:
result = client.audio.transcriptions.create(
model="whisper-1",
file=audio,
language="ru",
response_format="verbose_json",
)
print(result.text)Справочник
Параметры запроса OpenAI
| Поле | Назначение |
|---|---|
| file | Аудиофайл. Формат определяется по содержимому, не по имени. |
| model | Любое значение принимается. На результат не влияет, whisper-1 можно оставить. |
| language | Только русский (ru). Другой язык даёт ошибку 400. |
| response_format | json, verbose_json или text. Неизвестное значение считается json. |
| diarize | true включает разделение по говорящим. Поле наше; если его не передать, спикеров в ответе не будет. |
Поля prompt, temperature и timestamp_granularities можно передавать: они игнорируются и вызов из‑за них не падает.
Расхождения
Чем мы отличаемся от OpenAI
То, что стоит учесть при переносе кода.
Ограничения
Время обработки
Синхронный запрос работает до десяти минут обработки. Базовый адрес: https://vtext38.ru/api. Для SDK OpenAI в клиент передайте https://vtext38.ru/api/v1.
Агенты
Документы для LLM и MCP
Те же факты, что на этой странице, в форматах, которые читают coding-агенты. Ключ для просмотра не нужен.
- /llms.txt — краткий индекс для агентов и AI-поиска
- /openapi.json — машинный контракт обоих диалектов
- /mcp — docs-only MCP (ресурсы и промпты, без вызова распознавания)
Ключ выдаётся сразу после регистрации
15 минут распознавания начислим сразу. Отдельного тарифа для API нет: минуты те же, что в кабинете. Один ключ подходит и для Deepgram SDK, и для OpenAI SDK.