Конвейер перевода
Бэкенд разделяет этапы приёма, перевода, валидации и реконструкции, чтобы каждый формат файла сохранял свою структуру, а движок перевода фокусировался на смысле, терминологии и согласованности.
Загруженные файлы валидируются, анализируются и преобразуются в структурированные единицы, пригодные для перевода, до начала вызовов моделей.
- Проверки типа файла и MIME отклоняют неподдерживаемые загрузки до попадания в очередь.
- Документы извлекаются в текстовые узлы, таблицы, слайды, сегменты или структурированный JSON в зависимости от формата.
- Термины глоссария и игнорируемые слова сопоставляются с безопасными идентификаторами, чтобы названия брендов, плейсхолдеры и защищённые фразы сохранялись при переводе.
Система направляет подготовленный контент через выбранные LLM и облачные сервисы перевода с контекстно-зависимыми подсказками.
- В бэкенде поддерживаются сервисы OpenAI, Claude, Gemini, Grok, Mistral, Google Cloud и AWS.
- Контент разбивается с учётом лимитов токенов моделей с сохранением контекста, где это возможно.
- Воркеры Bull на базе Redis обрабатывают задачи перевода асинхронно, чтобы крупные файлы не блокировали API.
После перевода результат проверяется на соответствие ожидаемой структуре и корректируется, если он неполный или некорректный.
- Прогресс отслеживается на этапах предобработки, перевода и постобработки.
- Некорректный JSON, XML или структура документа могут запускать логику исправления и повторных попыток.
- История перевода фиксирует статус, количество слов, размер файла, выбранную модель и процент выполнения.
Проверенные переводы возвращаются в исходную структуру документа, сохраняются и предоставляются только через авторизованные процессы.
- Защищённые термины и сопоставления глоссария восстанавливаются перед финализацией файла.
- Переведённые документы реконструируются в целевой формат и загружаются в безопасное хранилище S3.
- Проверки доступа, владение пользователем и организационный контекст гарантируют, что результаты доступны только нужному аккаунту.