Асинхронное распознавание речи

Автоматизация распознавания речи с использованием API.

Основные шаги:

  1. Загрузка аудиофайла через HTTP-протокол в наше хранилище.
  2. Запуск задачи распознавания с нужными параметрами.

Стоимость — до 1,8 рубля за минуту расшифровки. Скидки предоставляются по запросу — направьте заявку на info@yazapishu.ru

Пример запроса на загрузку и распознавание:
curl https://yazapishu.ru/upload_and_transcribe.php \
--header "Authorization: <API token>" \
-F "upload=@<file_name>" \
-F "language=<language_code>" \
-F "json=yes"
Дополнительные параметры:
Доступные языки распознавания:

ru, en, en_uk, en_us, en_au, es, it, zh, ko, de, nl, pl, pt, tr, fr, fi, ja

Пример параметра:
"language": "ru"

Формат JSON-ответа:

Ответ содержит полный текст, информацию по словам и высказываниям спикеров.

ПолеТипОписание
textstringРаспознанный текст
wordsarrayИнформация по каждому слову
utterancesarrayВысказывания отдельных спикеров
utterances[i].speakerstringИдентификатор говорящего
words[i].textstringСлово
words[i].startnumberНачало (мс)
words[i].endnumberКонец (мс)
words[i].confidencenumberУверенность
words[i].speakerstringСпикер (если включено)
statusstringСтатус (completed или error)
audio_durationnumberДлительность аудио
idnumberID распознавания
Запрос по ID распознавания:
curl https://yazapishu.ru/api/api_request.php \
--header "Authorization: <api_token>" \
--header "Content-Type: application/json" \
--data '{
  "id": "<id>"
}'
Пример в SHELL:
audio='test.mp3'

text=$(curl https://yazapishu.ru/upload_and_transcribe.php \
  --header "Authorization: 773fec3ac25bc87c9e5951ef7f7ddad8" \
  -F "upload=@$audio" \
  -F "language=ru" \
  -F "timecod=yes" \
  -F "json=yes")

printf '%s\n' "$text"
Пример на Python:

import requests

audio_file = 'test.mp3'
url = 'https://yazapishu.ru/upload_and_transcribe.php'
headers = {
    'Authorization': '773fec3ac25bc87c9e5951ef7f7ddad8'
}
files = {
    'upload': open(audio_file, 'rb')
}
data = {
    'language': 'ru',
    'timecod': 'yes',
    'json': 'yes'
}

response = requests.post(url, headers=headers, files=files, data=data)

if response.ok:
    print(response.text)
else:
    print(f'Ошибка: {response.status_code} — {response.text}')
  

Поддерживаемые форматы: mp3, wav, mp4, avi, aac, m4a, ac3, flac, ogg, wma, mov, flv, 3gp, asf, wmv, mkv, webm.

Все результаты доступны в личном кабинете. Возможен запуск до 100 параллельных распознаваний.