Распознавание речи
URL
https://ai.wormsoft.ru/api/v1.Авторизация:
Bearer YOUR_API_KEY
Настройка транскрибации
Для настройки транскрибации самостоятельно агентом скачайте и передайте ему эту документацию.
Эндпоинт
- POST /api/v1/audio/transcriptions
- Преобразует речь в текст на исходном языке.
Структура запроса
Тип содержимого: multipart/form-data
- file * — Аудиофайл. Форматы: mp3, wav, flac, ogg, opus. Максимум 25 МБ.
- model * — Доступные модели: gigaam — рекомендуется для русской речи; whisper-large — для любого языка.
- response_format — Формат ответа. По умолчанию json. Доступные значения: jsontext, srt, vtt, verbose_json.
- language — Язык аудио в формате ISO-639-1 (например, ru, en).
* Обязательный параметр
Тарификация
- Фиксированная цена за секунду аудио (округление вверх до целой секунды) 10 кредитов.
- Пример: аудио длительностью 47.3 сек → округление до 48 сек → спишется 480 кредитов
Примеры интеграции
Python — OpenAI SDK
from openai import OpenAI
client = OpenAI(
api_key="ваш_api_ключ",
base_url="https://ai.wormsoft.ru/api/v1",
)
with open("audio.mp3", "rb") as f:
transcription = client.audio.transcriptions.create(
model="gigaam",
file=f,
language="ru",
response_format="text",
)
print(transcription)cURL
curl https://ai.wormsoft.ru/api/v1/audio/transcriptions \ -H "Authorization: Bearer ваш_api_ключ" \ -F "file=@audio.mp3" \ -F "model=gigaam" \ -F "language=ru" \ -F "response_format=json"
Примеры ответов
json — по умолчанию
{ "text": "Привет, мир!" }text
Привет, мир!
srt
1 00:00:00,000 --> 00:00:02,500 Привет, мир!
vtt
WEBVTT 00:00:00.000 --> 00:00:02.500 Привет, мир!
verbose_json
{
"task": "transcribe",
"language": "russian",
"duration": 2.5,
"text": "Привет, мир!", "segments": [
{
"id": 0,
"start": 0.0,
"end": 2.5,
"text": "Привет, мир!",
"tokens": [],
"temperature": 0,
"avg_logprob": 0,
"compression_ratio": 1,
"no_speech_prob": 0
}
],
"words": []
}Ошибки и лимиты
Все ошибки возвращаются в формате, совместимом с OpenAI:
{
"error": {
"message": "Missing required parameter: 'file'.",
"type": "invalid_request_error",
"param": "file",
"code": null
}
}400
Неверный запрос пользователя
401
Неверный или отсутствует API ключ
402
Недостаточно кредитов для обработки файла
429
Закончились лимиты подписки
500+
Ошибка на стороне нашего сервиса