翻訳プロバイダー
@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キー
ブラウザ認証が失敗する場合(例: Braveブラウザのブロック)、.envにAPIキーを追加してください:
LINGODOTDEV_API_KEY=your_key_here
APIキーはlingo.devのプロジェクト設定で確認できます。
直接LLMプロバイダー
LLMプロバイダーに直接接続して、モデル選択とコストを完全に制御できます。
サポートされているプロバイダー
| プロバイダー | モデル文字列形式 | 環境変数 | APIキーを取得 |
|---|---|---|---|
| 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をプロバイダーのエンドポイントに設定することで、任意の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キーは必要ですか?
いいえ。本番環境ではbuildMode: "cache-only"を使用してください。翻訳は事前に生成されます。ビルドモードを参照してください。
プロバイダーを混在させることはできますか? はい。ロケールペアマッピングを使用して、異なる言語ペアを異なるプロバイダーにルーティングできます。
APIキーが無効な場合はどうなりますか?
コンパイラは明確なエラーメッセージで失敗します。.envファイルを確認し、設定されたプロバイダーに対してAPIキーが正しいことを確認してください。
カスタムモデルを使用できますか? OpenRouterは100以上のモデルをサポートしています。Ollamaはローカルにインストールされた任意のモデルをサポートします。その他のプロバイダーはモデルカタログに制限されます。
API呼び出しなしでテストするにはどうすればよいですか? 開発環境で疑似翻訳機能を有効にします:
{
dev: { usePseudotranslator: true }
}
プロバイダー間のコスト差はどのくらいですか? 大きく異なります。Groqは寛大な無料プランを提供しています。OpenAI GPT-4はプレミアム価格です。Google Geminiは競争力のある価格設定です。各プロバイダーの料金ページをご確認ください。