Языки
QuillAI распознаёт около 98 языков и по умолчанию определяет язык автоматически. Подсказку передавайте только тогда, когда нужно перекрыть детектор — для коротких фрагментов, шумного аудио или крайних случаев, где он ошибается.
Как работает определение языка
Если поле language не передано, модель определяет язык по самой записи и возвращает его ISO-639-1-код в поле language объекта транскрипции. Дополнительных запросов и задержек это не требует — определение выполняется по ходу обработки.
Принудительная установка языка
Передайте ISO-639-1-код (две строчные буквы) в поле language тела POST /v1/transcriptions. Модель пропустит этап определения и будет транскрибировать на указанном языке.
curl -X POST https://api.quillhub.ai/v1/transcriptions \
-H "Authorization: Bearer $QAI_KEY" \
-H "Content-Type: application/json" \
-d '{
"url": "https://youtu.be/dQw4w9WgXcQ",
"language": "en"
}'В ответе то же значение возвращается в поле language, поэтому код клиента может обрабатывать его одинаково — и при автоопределении, и при принудительной установке.
Поддерживаемые языки
Сквозная поддержка — около 98 языков. Качество зависит от уровня: топовые языки готовы к продакшену, языки длинного хвоста работают, но иногда требуют лёгкой постобработки. Ниже — характерная выборка; полный список смотрите в справочнике API.
| Код | Название | Уровень |
|---|---|---|
| en | Английский | Топ |
| es | Испанский | Топ |
| fr | Французский | Топ |
| de | Немецкий | Топ |
| ru | Русский | Топ |
| pt | Португальский | Топ |
| it | Итальянский | Топ |
| zh | Китайский (мандарин) | Топ |
| ja | Японский | Топ |
| ko | Корейский | Топ |
| nl | Нидерландский | Стандарт |
| pl | Польский | Стандарт |
| tr | Турецкий | Стандарт |
| hi | Хинди | Стандарт |
| vi | Вьетнамский | Длинный хвост |
Большинство европейских и распространённых языков Южной и Юго-Восточной Азии относятся к стандартному уровню. Длинный хвост покрывает региональные языки с меньшим объёмом обучающих данных — транскрипция работает, но точность может иногда снижаться.
Смешанное по языкам аудио
Если в файле звучит несколько языков, автоопределение выбирает доминирующий и транскрибирует весь файл под него. Переключения языка по сегментам нет — слова на втором языке будут переданы фонетически или приближённо средствами доминирующей модели.
Если нужен чистый результат по каждому языку, разрежьте запись по паузам или границам спикеров и отправьте каждый фрагмент отдельной транскрипцией с явно указанным language.
Как повысить точность
- Для записей короче ~15 секунд задавайте язык явно — у автоопределения слишком мало сигнала.
- Чистый вход помогает больше любых параметров. Моно-дорожки голоса 16 кГц и выше с минимумом фоновой музыки стабильно обходят шумный стерео-микс.
- Бренды, названия продуктов и редкие аббревиатуры иногда передаются фонетически. Заложите постобработку или шаг find-and-replace для доменной лексики.
- Разделение по спикерам и принудительный язык работают вместе без нюансов — включайте оба параметра в одном запросе, когда нужны размеченные спикеры на известном языке.