GT ClassMethodsTranslation
translateMany
GT の translateMany メソッドによるバッチ翻訳のAPIリファレンス
概要
translateMany メソッドは、複数のコンテンツアイテムを1回の API リクエストで効率的に翻訳します。
バッチ処理に最適化されており、translate を個別に複数回呼び出す場合よりも高いパフォーマンスを発揮します。
const gt = new GT({
  apiKey: 'your-api-key',
  projectId: 'your-project-id'
});
const result = await gt.translateMany([
  { source: 'Hello, world!' },
  { source: 'Welcome to our app' },
  { source: 'Click here to continue' }
], { targetLocale: 'es' });リファレンス
パラメータ
Prop
Type
パラメーターの説明
| Parameter | Description | 
|---|---|
| sources | ソース内容と、項目ごとの任意のメタデータを含む Entryオブジェクトの配列 | 
| globalMetadata | すべてのエントリに適用されるグローバルなメタデータ。必須の targetLocaleを含みます | 
Entry オブジェクトの構造
sources 配列の各 Entry には、次の項目を含めることができます。
interface Entry {
  source: Content;           // 翻訳するコンテンツ
  targetLocale?: string;     // グローバルターゲットlocaleを上書き
  context?: string;          // このエントリの翻訳コンテキスト
  tags?: string[];          // カテゴリ化用のタグ
  // ... その他のEntryMetadataプロパティ
}戻り値
Promise<TranslateManyResult>結果には、翻訳済みのエントリとエラー情報が含まれます。
interface TranslateManyResult {
  translations: Array<TranslationResult | TranslationError>;
  metadata: {
    totalRequests: number;
    successCount: number;
    errorCount: number;
    processingTime: number;
  };
}挙動
グローバルメタデータと項目別メタデータ
- グローバルメタデータは、すべてのEntryにデフォルトとして適用されます
- 項目別メタデータは、特定のEntryのためにグローバル設定を上書きします
- ターゲットlocaleはEntryごとに上書きできます
エラー処理戦略
- 個々の翻訳が失敗しても、バッチ全体は停止しません
- 各結果は成功/失敗をそれぞれ独立して示します
- 部分的な成功にも完全に対応しています
ロケール解決
- グローバルのターゲットlocaleは、すべてのEntryの既定値として使用されます
- エントリごとのターゲット対応ロケールは、グローバル設定を上書きします
- 設定されている場合、すべてのlocaleはカスタムマッピングで解決されます
例
const menuItems = await gt.translateMany([
  { source: 'ホーム' },
  { source: '会社情報' },
  { source: '製品' },
  { source: 'お問い合わせ' }
], {
  targetLocale: 'fr',
  context: 'ナビゲーションメニュー項目'
});
menuItems.translations.forEach((result, index) => {
  if ('translation' in result) {
    console.log(`メニュー項目 ${index}: ${result.translation}`);
  } else {
    console.error(`メニュー項目 ${index} の翻訳に失敗しました: ${result.error}`);
  }
});注意事項
- 1 回の API リクエストで複数の項目を翻訳します
- ある Entry で翻訳に失敗しても、他の Entry には影響しません
- 結果は入力した Entry と同じ順序を保持します
- グローバルなメタデータは各 Entry のメタデータとマージされます(各 Entry が優先)
次のステップ
- translate を使った単一の翻訳について学ぶ
- Entry と EntryMetadata の型 を確認する
- TranslateManyResult の構造 を理解する
このガイドはどうでしたか?

