Главная/Провайдеры/Политики фолбэка ENУКРРУС API-справочник (ReDoc) ↗

Политики фолбэка

Что делает провайдер с ненастроенным региональным языком — и почему ни один не едет на strict.

fallback_policy провайдера решает одно: что ответить для регионального языка без явной строки. Она никогда не влияет на базовые языки и никогда не перекрывает существующую строку.

Три политики

base_language

Отправить код базового языка. pt-BRpt, de-CHde, ar-EGar.

{ "language": "pt-BR", "code": "pt", "match": "base_language", "via_language": "pt" }

Вы теряете региональное различие, но получаете код, который провайдер наверняка понимает. Именно на этом едут все провайдеры, и именно это делает консоль сегодня.

passthrough

Отправить канонический код без изменений. pt-BR остаётся pt-BR.

{ "language": "pt-BR", "code": "pt-BR", "match": "passthrough" }

Для движков, чей набор принимаемых кодов не является стандартом: клиентская дообученная модель знает ровно те теги, на которых её учили, и обрезание до базового тега — худшая догадка, чем не обрезать.

strict

Ответить supported: false, code: null. Не гадать.

{ "language": "pt-BR", "code": null, "supported": false, "match": null }

Для API, отклоняющих неизвестные теги с 4xx, — после того, как вы скурировали, какие пары действительно работают. Ошибочная догадка там стоит упавшей задачи; упасть раньше дешевле.

Почему ни один не едет на strict

Соблазнительно пометить DeepL, Azure и Amazon как strict — их API действительно отдают 400 на неизвестные теги, и их notes это говорят.

Это сломало бы прод.

Фолбэк консоли — lang_region_list.code[:2], так что сегодня незамапленный pt-BR доходит до Amazon Translate как pt — и работает, потому что pt не является неизвестным тегом для Amazon. У Amazon 6 явных строк консоли на 87 активных региональных языков; остальные 81 резолвятся именно через это обрезание прямо сейчас. Засеять Amazon как strict означало бы превратить 81 рабочую пару в supported: false в тот день, когда сервис пошёл в бой.

Правило

strict — это опт-ин по провайдеру, включается после того, как действительно неподдерживаемые пары этого провайдера зафиксированы явно, а не до. Пометить пару неподдерживаемой — утверждение о факте; пометить провайдера strict — утверждение обо всём, что вы не проверяли.

Поле notes провайдера несёт шортлист кандидатов.

Пометить одну пару неподдерживаемой

strict нужен редко. Если вы знаете, что конкретная пара падает, зафиксируйте именно её — из матрицы, кнопкой ✕ Unsupported, или:

POST /admin/mapping
provider=deepl_api&language=ceb&action=unsupported

Это даёт supported: false для пары, которую вы проверили, и не трогает ни одну другую. См. Закрепить код провайдера.

Изменение политики

АдминкаProviders → выберите провайдера → Fallback policy. Действует со следующего запроса; кеш каталога сбрасывается при записи.

Прежде чем переводить провайдера на strict, посмотрите на его счётчик derived в таблице покрытия. Это ровно то количество пар, которые начнут отвечать supported: false.

Далее