# AI Translation пропускает локаль португальского языка (pt) — пост переведён на все языки, кроме португальского

**URL:** https://meta.discourse.org/t/ai-translation-skips-portuguese-pt-locale-post-translated-to-all-languages-except-portuguese/400612
**Category:** Bug
**Tags:** ai, dynaloc
**Created:** [14.Апрель.2026 15:04:01 UTC](https://meta.discourse.org/t/ai-translation-skips-portuguese-pt-locale-post-translated-to-all-languages-except-portuguese/400612 "2026-04-14T15:04:01Z")
**Posts on this page:** 7
**Page:** 2

<div class="post-metadata">

### Author: ![Moin](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/moin/32/554653_2.png) [@Moin](https://meta.discourse.org/u/Moin)
#### Post date: [21.Апрель.2026 16:15:12 UTC](https://meta.discourse.org/t/ai-translation-skips-portuguese-pt-locale-post-translated-to-all-languages-except-portuguese/400612/21 "2026-04-21T16:15:12Z")

</div>

Извините, я полагался на информацию, указанную в первом сообщении

> [@Denis\_Kovalenko](#):
>
> Версия Discourse: 2026.1.3

---

<div class="post-metadata">

### Author: ![nat](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/nat/32/235063_2.png) [@nat](https://meta.discourse.org/u/nat)
#### Post date: [21.Апрель.2026 16:22:01 UTC](https://meta.discourse.org/t/ai-translation-skips-portuguese-pt-locale-post-translated-to-all-languages-except-portuguese/400612/22 "2026-04-21T16:22:01Z")

</div>

> [@Denis\_Kovalenko](#):
>
> Суть в том, что когда Mistral возвращает ошибку 503, Discourse AI молча отбрасывает перевод без уведомления администратора, без очереди повторных попыток и без возможности узнать, какие темы были пропущены.

На самом деле утверждение о том, что повторных попыток нет, неверно.

Процесс догрузки (backfill) всегда начинает с самых последних постов и тем, поэтому технически они будут повторно обработаны в течение часа или даже нескольких минут. Поэтому я не совсем понимаю, какое именно «исправление» вы здесь ищете.

Использование версии `v2026.4.0-latest` — это хорошо. Возможно, обновления AI-агентов просто не переносятся в эту ветку из-за чрезвычайно быстрого развития AI-интерфейсов.

---

<div class="post-metadata">

### Author: ![pmusaraj](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pmusaraj/32/119489_2.png) [@pmusaraj](https://meta.discourse.org/u/pmusaraj)
#### Post date: [21.Апрель.2026 17:04:00 UTC](https://meta.discourse.org/t/ai-translation-skips-portuguese-pt-locale-post-translated-to-all-languages-except-portuguese/400612/23 "2026-04-21T17:04:00Z")

</div>

> [@Denis\_Kovalenko](#):
>
> Суть в том, что когда Mistral возвращает ошибку 503, Discourse AI молча отбрасывает перевод без какого-либо уведомления администратора, без очереди повторных попыток и без возможности узнать, какие темы были пропущены. Это именно та проблема UX, на которую я указываю — а не стоимость токенов.

Я понял это, я просто говорю, что мы не предпринимаем агрессивных повторных попыток перевода, чтобы защитить сайты от неконтролируемого роста счетов за токены.

Но, как отмечает @nat, мы действительно повторяем попытки в фоновом режиме. При нормально работающей LLM ваш контент со временем будет переведён.

---

<div class="post-metadata">

### Author: ![Denis\_Kovalenko](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/denis_kovalenko/32/549496_2.png) [@Denis\_Kovalenko](https://meta.discourse.org/u/Denis_Kovalenko)
#### Post date: [22.Апрель.2026 13:28:23 UTC](https://meta.discourse.org/t/ai-translation-skips-portuguese-pt-locale-post-translated-to-all-languages-except-portuguese/400612/24 "2026-04-22T13:28:23Z")

</div>

После тщательного расследования я выяснил, что то, что казалось одной проблемой с переводом, на самом деле представляет собой три отдельные проблемы, возникшие одновременно, что вызвало значительную путаницу.

Особая благодарность Ричарду из Communiteq за его коммуникацию, компетентность и особенно за предложение использовать подход [Data Explorer](https://meta.discourse.org/t/32566?silent=true) — именно благодаря SQL-запросам мне наконец удалось выявить все три проблемы. Большое уважение.

* * *

**Проблема 1: Неверное определение локали LLM**

LLM, используемая для определения локали, ошибочно классифицирует сообщения, написанные на английском языке, но содержащие названия мест на португальском.

Пример: Сообщение с заголовком _«Выставка WA Ханамаро Чаки открылась в крепости Сан-Жуан-ду-Пики»_ написано полностью на английском. Однако детектор локали классифицировал его как `pt-BR` — вероятно, из-за португальских названий мест в тексте («крепость Сан-Жуан-ду-Пики», «Дом культуры Санта-Крус»).

Последствие: поскольку система посчитала, что сообщение уже на португальском, она никогда не переводила его на португальский. Вместо этого она перевела его на английский, воспринимая английский как «отсутствующий» язык.

Это особенно проблематично в многоязычных сообществах, где сообщения на одном языке часто содержат названия мест или собственные имена на другом языке.

**Предлагаемое решение:** Использовать более мощную модель для определения локали (например, Mistral Large), которая лучше понимает контекст и различает язык основного текста и собственные имена, встроенные в него.

* * *

**Проблема 2: Ошибки 503 от API Mistral, приводящие к сбоям заданий в середине пакета**

Mistral периодически возвращает ошибки `503 unreachable_backend`. Хотя функция доукомплектования (backfill) в конечном итоге повторяет некоторые из этих попыток, задание `Jobs::LocalizeTopics` прерывается посередине выполнения при возникновении ошибки 503 — в результате оставшиеся темы в пакете остаются без перевода до следующего запланированного запуска.

Это создает непредсказуемую картину отсутствия переводов для случайных локалей в случайных темах.

Данные из логов:

```plaintext
DiscourseAi::Translation: Переведено 13 тем на de
[сбой в localize_topics.rb:57]

```

Задание перевело 13 тем, затем произошло прерывание. Оставшиеся темы не получили немецкий перевод до следующего цикла доукомплектования.

* * *

**Проблема 3: Целевые категории для перевода ИИ — непоследовательное автоматическое заполнение подкатегорий**

В моем случае я никогда вручную не добавлял категории в настройку «Целевые категории для перевода ИИ» — они, казалось, добавлялись автоматически. Однако две подкатегории (Viewpoints и Beaches) **не** были автоматически добавлены, хотя существовали и содержали контент.

Моя гипотеза: система автоматически добавляет подкатегорию в целевой список только тогда, когда в ней создается новый пост **после** включения перевода. Поскольку Viewpoints и Beaches были заполнены до включения перевода, они никогда не были автоматически добавлены и, следовательно, никогда не переводились.

Это сбивающее с толку поведение. Если логика автоматического заполнения существует, она должна быть последовательной и ретроспективной, либо интерфейс должен гораздо яснее указывать, что подкатегории необходимо добавлять вручную.

* * *

**Итог**

Все три проблемы возникли одновременно, что крайне затруднило диагностику. Сообщение могло остаться без перевода из-за ошибочного определения локали, сбоя с кодом 503 или просто потому, что его категория отсутствовала в целевом списке — и не было способа различить эти случаи без глубокого анализа логов и SQL-запросов.

Запрос [Data Explorer](https://meta.discourse.org/t/32566?silent=true), предложенный Ричардом, стал ключом к расследованию. Надеюсь, эта подробная разбивка будет полезна команде. Готов предоставить дополнительные логи или примеры, если потребуется.

Спасибо команде за активность в этой теме!

 ![ai target](https://global.discourse-cdn.com/meta/original/4X/1/8/0/1809d1582de20fe67e602174265a9f25d2611c83.png)

---

<div class="post-metadata">

### Author: ![Denis\_Kovalenko](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/denis_kovalenko/32/549496_2.png) [@Denis\_Kovalenko](https://meta.discourse.org/u/Denis_Kovalenko)
#### Post date: [22.Апрель.2026 13:58:35 UTC](https://meta.discourse.org/t/ai-translation-skips-portuguese-pt-locale-post-translated-to-all-languages-except-portuguese/400612/25 "2026-04-22T13:58:35Z")

</div>

У меня возникла следующая проблема: если детектор локалей неправильно определяет язык, и я не согласен с этим, я не могу изменить локаль на ту, которая, по моему мнению, является правильной.  
Как решить эту проблему?

---

<div class="post-metadata">

### Author: ![pmusaraj](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pmusaraj/32/119489_2.png) [@pmusaraj](https://meta.discourse.org/u/pmusaraj)
#### Post date: [22.Апрель.2026 14:00:09 UTC](https://meta.discourse.org/t/ai-translation-skips-portuguese-pt-locale-post-translated-to-all-languages-except-portuguese/400612/26 "2026-04-22T14:00:09Z")

</div>

Спасибо за подробное обновление, @Denis_Kovalenko, ценим это!

> [@Denis\_Kovalenko](#):
>
> В моём случае я никогда вручную не добавлял категории в настройку «Целевые категории для перевода ИИ» — они, казалось, добавлялись автоматически. Однако две подкатегории (Viewpoints и Beaches) **не** были добавлены автоматически, хотя они существовали и содержали контент.

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

> [@Denis\_Kovalenko](#):
>
> Если детектор локалей определяет язык неправильно, и я не согласен с этим, я не могу изменить локаль на ту, которую считаю правильной.

Вы должны иметь возможность сделать это через эту кнопку в редакторе:

 ![image](https://global.discourse-cdn.com/meta/original/4X/8/5/3/853ed8260c96249398ccd3af30066a7d562e4116.png)

Убедитесь, что вы обновляете это в оригинальном посте (а не в каких-либо переводах).

---

<div class="post-metadata">

### Author: ![Falco](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/falco/32/179432_2.png) [@Falco](https://meta.discourse.org/u/Falco)
#### Post date: [15.Июль.2026 15:02:48 UTC](https://meta.discourse.org/t/ai-translation-skips-portuguese-pt-locale-post-translated-to-all-languages-except-portuguese/400612/28 "2026-07-15T15:02:48Z")

</div>



[Previous page](https://meta.discourse.org/t/ai-translation-skips-portuguese-pt-locale-post-translated-to-all-languages-except-portuguese/400612.md?page=1)
