Навигация

MOD-TRANSLATE — Автоперевод

Лицензия: Платный

Модуль, который делает контент платформы многоязычным. Переводится не интерфейс (для него есть словари), а пользовательские данные: сообщения чата, названия задач, карточки — всё, что люди пишут сами. Модуль-источник после записи кладёт текст в очередь translate.request (fire-and-forget) и не ждёт результата, а при чтении забирает готовые переводы батчем через translate.get. Какие модули переводить — решается настройкой, без правки кода.

Перевод привязан к версии оригинала: вместе с текстом хранится его хэш, и запрос с orig_hashes вернёт только переводы актуальной версии — устаревший перевод не подменит собой новый текст. Изменился или удалён исходник — кэш сбрасывается через translate.invalidate.

Отдельный контур — защита данных. Перед отправкой во внешний переводчик текст проходит PII-гейт: персональные данные не уходят наружу, а при неверной конфигурации модуль честно отказывает, а не переводит «как получится». Провайдер выбирается настройкой: внутренний llm-gateway по умолчанию, а также DeepL, Google Translate и self-hosted LibreTranslate.

Именно этот модуль обеспечивает трёхъязычность (русский, английский, сербский) этого сайта и документации, которую вы читаете.

Возможности

  • Асинхронный перевод полей сущностей: очередь и фоновый воркер
  • Батчевое чтение готовых переводов при отрисовке списков
  • Привязка перевода к версии оригинала по хэшу исходного текста
  • Синхронный перевод произвольного текста без записи в базу
  • Сброс кэша переводов при изменении или удалении оригинала
  • Провайдеры: внутренний llm-gateway, DeepL, Google Translate, LibreTranslate
  • PII-гейт перед внешним провайдером с честным отказом при небезопасной конфигурации
  • Выбор переводимых модулей настройкой enabled_modules
  • Языки как открытый список строк — новый язык добавляется без миграций

Основные MCP-инструменты

ИнструментНазначение
translate__translate.requestПоставить поле сущности в очередь перевода
translate__translate.getПолучить переводы из кэша (батчем, с проверкой версии)
translate__translate.textПеревести текст синхронно, без записи в базу
translate__translate.invalidateСбросить кэш переводов записи
translate__settings.getТекущие настройки модуля
translate__settings.setИзменить провайдера, языки и PII-режим
translate__check_readyПроверка готовности модуля

Связанные модули

  • MOD-CHAT — сообщения, переводимые на язык собеседника
  • MOD-TASK — названия и описания задач на языке пользователя
  • MOD-RAG — многоязычный корпус знаний
  • MOD-ASSISTANT — ответы ассистента на языке пользователя
Открыть чат-бот