翻译服务商
@lingo.dev/compiler 支持多种翻译服务商——建议使用 Lingo.dev Engine 以获得最佳体验,或直接连接到 LLM 服务商。
Lingo.dev Engine(推荐)
Lingo.dev Engine 是翻译应用最简单且最强大的方式。它提供:
- 动态模型选择 - 自动为每对语言选择最佳模型
- 自动故障转移 - 主模型失败时自动切换到备用模型
- 翻译记忆库 - 考虑历史翻译以保持一致性
- 术语表支持 - 维护领域专用术语
- 成本优化 - 在合适场景下使用高效模型
配置
-
在 lingo.dev 注册账号
-
进行身份验证:
npx lingo.dev@latest login -
配置:
{ models: "lingo.dev" }
价格: 提供免费 Hobby 套餐,足以满足大多数项目需求。
手动 API Key
如果浏览器认证失败(如 Brave 浏览器拦截),请将 API key 添加到 .env:
LINGODOTDEV_API_KEY=your_key_here
在 lingo.dev 的项目设置中查找您的 API key。
直连 LLM 服务商
可直接连接到 LLM 服务商,自主选择模型并控制成本。
支持的服务商
| 服务商 | 模型字符串格式 | 环境变量 | 获取 API Key |
|---|---|---|---|
| OpenAI | openai:gpt-4o | OPENAI_API_KEY | platform.openai.com |
| Anthropic | anthropic:claude-3-5-sonnet | ANTHROPIC_API_KEY | console.anthropic.com |
google:gemini-2.0-flash | GOOGLE_API_KEY | ai.google.dev | |
| Groq | groq:llama-3.3-70b-versatile | GROQ_API_KEY | console.groq.com |
| Mistral | mistral:mistral-large | MISTRAL_API_KEY | console.mistral.ai |
| OpenRouter | openrouter:anthropic/claude-3.5-sonnet | OPENROUTER_API_KEY | openrouter.ai |
| Ollama | ollama:llama3.2 | (无) | ollama.com(本地) |
简单配置
为所有翻译统一使用一个服务商:
{
models: {
"*:*": "groq:llama-3.3-70b-versatile"
}
}
语言对映射
为不同语言对选择不同的服务商:
{
models: {
// Specific pairs
"en:es": "groq:llama-3.3-70b-versatile", // Fast & cheap for Spanish
"en:de": "google:gemini-2.0-flash", // Good quality for German
"en:ja": "openai:gpt-4o", // High quality for Japanese
// Wildcards
"*:fr": "anthropic:claude-3-5-sonnet", // All sources → French
"en:*": "google:gemini-2.0-flash", // English → all targets
// Fallback
"*:*": "lingo.dev", // Everything else
}
}
模式匹配优先级:
- 精确匹配(
"en:es") - 源语言通配符(
"*:es") - 目标语言通配符(
"en:*") - 全局通配符(
"*:*")
API 密钥设置
将服务商 API 密钥添加到 .env:
# Lingo.dev Engine
LINGODOTDEV_API_KEY=your_key
# OpenAI
OPENAI_API_KEY=sk-...
# Anthropic
ANTHROPIC_API_KEY=sk-ant-...
# Google
GOOGLE_API_KEY=...
# Groq
GROQ_API_KEY=gsk_...
# Mistral
MISTRAL_API_KEY=...
# OpenRouter
OPENROUTER_API_KEY=sk-or-...
切勿提交 .env 文件——请添加到 .gitignore。
模型选择指南
开发环境推荐
使用伪翻译器——即时、免费、无需 API 密钥:
{
dev: {
usePseudotranslator: true,
}
}
预算有限项目推荐
Groq - 推理速度快,免费额度充足:
{
models: {
"*:*": "groq:llama-3.3-70b-versatile",
}
}
Google Gemini - 价格有竞争力,质量良好:
{
models: {
"*:*": "google:gemini-2.0-flash",
}
}
高质量需求推荐
OpenAI GPT-4 - 整体质量最佳:
{
models: {
"*:*": "openai:gpt-4o",
}
}
Anthropic Claude - 适合高要求、细致翻译:
{
models: {
"*:*": "anthropic:claude-3-5-sonnet",
}
}
本地/离线方案
Ollama - 本地运行模型:
{
models: {
"*:*": "ollama:llama3.2",
}
}
安装 Ollama 并拉取模型:
curl -fsSL https://ollama.com/install.sh | sh
ollama pull llama3.2
混合策略(推荐)
通过为不同语言选择不同模型来优化成本:
{
models: {
// Fast & cheap for Romance languages
"en:es": "groq:llama-3.3-70b-versatile",
"en:fr": "groq:llama-3.3-70b-versatile",
"en:pt": "groq:llama-3.3-70b-versatile",
// Higher quality for complex languages
"en:ja": "openai:gpt-4o",
"en:zh": "openai:gpt-4o",
"en:ar": "openai:gpt-4o",
// Good balance for European languages
"en:de": "google:gemini-2.0-flash",
"en:nl": "google:gemini-2.0-flash",
// Fallback
"*:*": "lingo.dev",
}
}
自定义翻译提示词
自定义发送给 LLM 的翻译指令:
{
models: "lingo.dev",
prompt: `Translate from {SOURCE_LOCALE} to {TARGET_LOCALE}.
Guidelines:
- Use a professional tone
- Preserve all technical terms
- Do not translate brand names
- Maintain formatting (bold, italic, etc.)
- Use gender-neutral language where possible`
}
可用占位符:
{SOURCE_LOCALE}:源语言区域代码(例如"en"){TARGET_LOCALE}:目标语言区域代码(例如"es")
编译器会自动附加关于被翻译文本的上下文信息(文件、组件、周边元素)。
特定服务商模型
OpenAI
"openai:gpt-4o" // Best quality
"openai:gpt-4o-mini" // Faster, cheaper
"openai:gpt-4-turbo" // Previous generation
Anthropic
"anthropic:claude-3-5-sonnet" // Best quality
"anthropic:claude-3-haiku" // Faster, cheaper
"anthropic:claude-3-opus" // Highest quality (expensive)
"google:gemini-2.0-flash" // Fast, efficient
"google:gemini-1.5-pro" // Higher quality
Groq
"groq:llama-3.3-70b-versatile" // Fast inference
"groq:mixtral-8x7b-32768" // Good quality
Mistral
"mistral:mistral-large" // Best quality
"mistral:mistral-small" // Faster, cheaper
OpenRouter
OpenRouter 提供对 100+ 个模型的访问。请使用 openrouter.ai/models 上的模型 ID:
"openrouter:anthropic/claude-3.5-sonnet"
"openrouter:google/gemini-2.0-flash"
"openrouter:meta-llama/llama-3.3-70b"
Ollama
可使用任意 Ollama 模型:
"ollama:llama3.2"
"ollama:mistral"
"ollama:qwen2.5"
列出可用模型:ollama list
兼容 OpenAI 的服务商
你可以通过将 OPENAI_BASE_URL 设置为服务商的 endpoint,来使用任何兼容 OpenAI 的 API。这适用于 Nebius、Together AI、Anyscale 和 Fireworks 等服务商。
注意 Nebius 是唯一经过 Lingo.dev 编译器官方测试的 OpenAI 兼容服务商。 下方列出的其他服务商也提供 OpenAI 兼容 API,但尚未经过官方测试。
配置
- 设置环境变量:
OPENAI_API_KEY=<your-provider-api-key>
OPENAI_BASE_URL=<provider-api-endpoint>
- 在服务商的模型 ID 前加上
openai:前缀:
{
models: {
"*:*": "openai:provider-model-id"
}
}
支持的服务商
| 服务商 | 基础 URL | 示例模型 |
|---|---|---|
| Nebius | https://api.tokenfactory.nebius.com/v1 | google/gemma-2-9b-it-fast |
| Together AI | https://api.together.xyz/v1 | meta-llama/Llama-3-70b-chat-hf |
| Anyscale | https://api.endpoints.anyscale.com/v1 | meta-llama/Llama-2-70b-chat-hf |
| Fireworks | https://api.fireworks.ai/inference/v1 | accounts/fireworks/models/llama-v3-70b-instruct |
常见问题
我应该选择哪个服务商? 建议优先使用 Lingo.dev Engine,操作简单。如需完全控制和优化成本,可通过多服务商进行语言对映射。
生产环境需要 API key 吗?
不需要。生产环境下请使用 buildMode: "cache-only",翻译内容会预先生成。详见 构建模式。
可以混合使用多个服务商吗? 可以。通过语言对映射,将不同语言对路由到不同服务商。
如果我的 API key 无效怎么办?
编译器会报出明确的错误信息。请检查 .env 文件,确保 API key 与所配置服务商匹配。
可以使用自定义模型吗? OpenRouter 支持 100+ 个模型。Ollama 支持任意本地安装的模型。其他 provider 仅支持其自有模型目录。
如何在不调用 API 的情况下进行测试? 在开发环境中启用伪翻译器:
{
dev: { usePseudotranslator: true }
}
不同 provider 的费用差异有多大? 差异较大。Groq 提供大方的免费额度。OpenAI GPT-4 属于高端定价。Google Gemini 价格具有竞争力。请查阅各 provider 的定价页面。