Альфа
Compiler от Lingo.dev находится в альфе. Он нестабилен, не рекомендуется для использования в production, а API могут меняться от релиза к релизу.
Compiler от Lingo.dev поддерживает несколько провайдеров перевода: от управляемого движка локализации Lingo.dev до прямых подключений к LLM-провайдерам и локальных моделей. Провайдеры настраиваются через опцию models, которая принимает либо строку с одним провайдером, либо объект, сопоставляющий пары локалей с конкретными провайдерами.
Движок Lingo.dev (рекомендуется)#
Движок локализации Lingo.dev — провайдер по умолчанию. Он отправляет переводы через управляемый пайплайн с динамическим выбором модели, автоматическими fallback-сценариями, применением глоссария и профилями тональности бренда.
{
models: "lingo.dev",
}Пройдите аутентификацию через CLI:
npx lingo.dev@latest loginИли задайте API-ключ в .env:
LINGODOTDEV_API_KEY=your_key_hereПочему стоит использовать движок Lingo.dev
Движок локализации подбирает оптимальную модель для каждой пары локалей, применяет ваши правила glossary и тональность бренда, а если провайдер недоступен — переключается на альтернативные модели. Прямые LLM-провайдеры этих возможностей не дают.
Прямые LLM-провайдеры#
Подключитесь напрямую к любому поддерживаемому LLM-провайдеру, указав строку provider:model:
| Провайдер | Формат модели | Переменная окружения | Пример |
|---|---|---|---|
| OpenAI | openai:<model> | OPENAI_API_KEY | openai:gpt-4o |
| Anthropic | anthropic:<model> | ANTHROPIC_API_KEY | anthropic:claude-3-5-sonnet |
google:<model> | GOOGLE_API_KEY | google:gemini-2.0-flash | |
| Groq | groq:<model> | GROQ_API_KEY | groq:llama-3.3-70b-versatile |
| Mistral | mistral:<model> | MISTRAL_API_KEY | mistral:mistral-large |
| OpenRouter | openrouter:<model> | OPENROUTER_API_KEY | openrouter:anthropic/claude-3.5-sonnet |
| Ollama | ollama:<model> | Нет (локально) | ollama:llama3.2 |
Один провайдер для всех локалей#
Укажите строку, чтобы использовать один провайдер для всех пар локалей:
{
models: "openai:gpt-4o",
}Ollama (локальные модели)#
Ollama запускает модели локально и не требует API-ключа. Установите Ollama, загрузите модель и выполните настройку:
{
models: "ollama:llama3.2",
}Локальные модели удобны для офлайн-разработки и для команд, которым нельзя отправлять контент во внешние API. Качество перевода зависит от размера модели: более крупные модели обычно дают более точный результат.
Сопоставление пар локалей#
Опция models принимает объект, который позволяет направлять определённые пары локалей к разным провайдерам. Ключи используют формат source:target с поддержкой wildcard (*):
{
models: {
"*:*": "lingo.dev", // Default for all pairs
"*:ja": "anthropic:claude-3-5-sonnet", // Japanese via Anthropic
"*:zh-Hans": "anthropic:claude-3-5-sonnet", // Simplified Chinese via Anthropic
"en:de": "openai:gpt-4o", // English-to-German via OpenAI
},
}Compiler сопоставляет пары локалей от наиболее конкретных к наименее конкретным:
Точное совпадение
en:de соответствует только переводам с английского на немецкий.
Wildcard для целевой локали
*:ja соответствует любому исходному языку при переводе на японский.
Полный wildcard
*:* используется как вариант по умолчанию для любой пары, если нет более точного совпадения.
Такое сопоставление помогает оптимизировать затраты и качество. Например, можно использовать быструю модель для европейских языков и модель с более сильной поддержкой CJK для восточноазиатских локалей.
Пользовательские промпты#
Опция prompt задаёт системный промпт для LLM, выполняющей перевод. Используйте {SOURCE_LOCALE} и {TARGET_LOCALE} как плейсхолдеры — compiler подставит вместо них фактические коды локалей во время перевода:
{
prompt: "You are translating a SaaS application UI from {SOURCE_LOCALE} to {TARGET_LOCALE}. Keep translations concise. Preserve technical terms in English. Use formal register.",
}Пользовательские промпты применяются только к прямым LLM-провайдерам. Если вы используете движок локализации Lingo.dev, вместо этого настройте instructions и тональность бренда в панели управления Lingo.dev.
