Локализация больших кодовых баз с помощью LLM: Рабочий процесс разработчика для 4500 UI-ключей

Разработчик задокументировал свой процесс локализации крупного игрового проекта с примерно 4500 ключами интерфейса, хранящимися в файле en-US.json размером 500 КБ. Он использовал многоэтапный рабочий процесс с LLM для обработки извлечения, перевода и улучшения качества.
Первоначальные попытки извлечения и перевода
Сначала он использовал Claude для сканирования кодовой базы, извлечения жёстко заданных строк интерфейса и их миграции в стандарты i18n, создав файл локали. Для перевода на итальянский он изначально попробовал Claude и Gemini Pro (через Gemini CLI и Antigravity). Обе облачные модели выдавали переводы неприемлемого качества. Gemini Pro также столкнулась с ошибками из-за большого файла, потребовав его разделения на 10 меньших частей.
Переход на локальные модели и ключевое прозрение
Затем он попробовал TranslateGemma локально через LM Studio, переводя ключ за ключом. Хотя качество было немного лучше, оно всё ещё оставалось неприемлемым. Ключевым прозрением стало то, что слова в интерфейсе часто неоднозначны, и для перевода требуется устранение неоднозначности и контекст использования.
Чтобы решить эту проблему, он вернулся к Claude для создания второго файла. Для каждого из 4500 ключей Claude анализировал использование в коде, чтобы предоставить контекст: где появляется строка, её функция (метка кнопки, описание, подсказка для ввода) и её влияние на игровой процесс.
Финальный конвейер перевода
Он построил автоматизированный конвейер перевода со следующими шагами:
- Группировка ключей вместе с их сгенерированным контекстом.
- Использование промпта, сфокусированного на функциональном (а не буквальном) переводе.
- Обеспечение сохранения заполнителей и тегов.
- Отправка запросов локальной модели через LM Studio.
TranslateGemma не справилась с форматом промпта, насыщенного контекстом, поэтому он сменил модели. Тестирование проводилось на Mac Mini M1 с 16 ГБ унифицированной памяти.
Производительность моделей и результаты
Qwen 3 4B показала хорошие результаты, но Qwen 3 8B оказалась оптимальной, допуская меньше грамматических ошибок и предлагая лучшие формулировки, оставаясь при этом управляемой для локального запуска. Финальный конвейер может перевести более 4500 ключей на несколько языков, занимая примерно 8 часов на одну локаль на его машине. Он использует квантованную модель, чтобы можно было продолжать работу, пока она выполняется в фоновом режиме.
Разработчик отмечает, что этот подход дал качество, достаточное для выпуска, и показался ему лучше, чем многие автоматически переведённые проекты, которые он видел.
📖 Read the full source: r/LocalLLaMA
👀 Смотрите также

Создание системы линейного искусства SwiftUI с помощью Claude Code: тематическое исследование One Good Thing
Разработчик создал иллюстрации для iOS-приложения в стиле линейного рисунка целиком с помощью SwiftUI Canvas, используя Claude Code в качестве партнера по программированию. Ключевой урок: относитесь к Claude как к терпеливому коллеге, а не как к торговому автомату.

OpenCLAW для VPS против Mac Mini: почему VPS за $5 побеждает Mac Mini за $599 для продакшн-агентов
Создатель OpenCLAW Питер Штайнбергер призвал пользователей не покупать Mac Mini, а вместо этого спонсировать разработчиков. VPS за €5 с 2 vCPU и 4 ГБ ОЗУ справляется с непрерывными нагрузками OpenCLAW при 3-8% CPU, в то время как Mac Mini стоит от $599 плюс $10-15 в месяц за электричество.

Непрограммист создал полный стек поиска с помощью Claude Code и API
Пользователь Reddit без опыта программирования за выходные создал полную систему исходящего поиска клиентов, используя Claude Code, Crustdata для поиска компаний и людей, FullEnrich для обогащения контактов и Instantly для отправки писем.

Критический подход Клода к проверке резюме в сравнении с ChatGPT и Gemini
Разработчик протестировал Claude, ChatGPT и Gemini для оптимизации резюме и обнаружил, что Claude уникальным образом задавал вопросы о пробелах в опыте и результатах проектов, рассматривая резюме как аргумент для анализа, а не просто как факты для полировки.