Amazon Translate

75 以上の言語ペアに対応し、リアルタイム翻訳とバッチ翻訳の両方を提供するニューラル機械翻訳サービス

概要

Amazon Translate は、ニューラル機械翻訳技術を用いて 75 以上の言語間のテキスト翻訳を提供するフルマネージドサービスです。リアルタイム翻訳 API とバッチ翻訳の 2 つのモードを備え、Web アプリケーションのリアルタイム多言語化から大量ドキュメントの一括翻訳まで幅広いユースケースに対応します。カスタム用語集 (Custom Terminology) を登録することで、社内固有の製品名や専門用語の翻訳精度を向上させることができます。

リアルタイム翻訳とバッチ翻訳の使い分け

Translate のリアルタイム翻訳は、TranslateText API を呼び出すことで即座に翻訳結果を返します。1 回のリクエストで最大 10,000 バイトのテキストを処理でき、Web アプリケーションのチャット翻訳、カスタマーサポートのリアルタイム多言語対応、ユーザー生成コンテンツの即時翻訳などに適しています。レスポンスタイムは通常 100〜300 ミリ秒程度で、ユーザー体験を損なわない速度です。一方、バッチ翻訳 (StartTextTranslationJob API) は S3 上のドキュメントを一括で翻訳する非同期処理です。HTML、DOCX、XLIFF、プレーンテキスト形式に対応し、数千ファイルを 1 つのジョブで処理できます。バッチ翻訳はリアルタイム翻訳と比較して文字あたりの単価が同じですが、大量処理時のスループットが高く、API 呼び出しのオーバーヘッドを削減できます。翻訳元と翻訳先の言語ペアを指定するだけで、ソース言語の自動検出にも対応しています。Comprehend と組み合わせれば、テキストの言語を自動判定してから適切な言語ペアで翻訳するパイプラインも構築できます。

カスタム用語集と翻訳品質の制御

カスタム用語集 (Custom Terminology) は、特定の単語やフレーズの翻訳を固定するための機能です。CSV または TMX 形式で用語集ファイルを登録し、翻訳リクエスト時に用語集名を指定すると、登録された用語はニューラル翻訳モデルの出力を上書きして固定訳が適用されます。製品名、ブランド名、社内用語など、汎用翻訳モデルでは正確に訳せない固有表現の品質を担保するために不可欠です。用語集は最大 256 個まで登録でき、1 つの用語集に最大 5,000 エントリを含められます。翻訳リクエストごとに最大 1 つの用語集を指定できるため、ドメインごとに用語集を分けて管理する設計が実用的です。さらに、翻訳の形式性 (Formality) を制御するオプションも提供されています。フォーマル (敬語) とインフォーマル (カジュアル) を指定でき、ビジネス文書には敬語、SNS 投稿にはカジュアルな表現を適用するといった使い分けが可能です。プロファニティマスキング機能を有効にすれば、不適切な表現を自動的にマスクした翻訳結果を得ることもできます。

パイプライン統合とコスト構造

Translate を既存のデータパイプラインに統合するパターンは多岐にわたります。Lambda 関数から TranslateText API を呼び出すサーバーレス構成が最もシンプルで、API Gateway 経由のリクエストを Lambda で受け取り、翻訳結果を返すマイクロサービスとして実装できます。S3 にアップロードされたドキュメントを EventBridge + Lambda で検知し、バッチ翻訳ジョブを自動起動するイベント駆動パイプラインも実用的です。Step Functions でオーケストレーションすれば、Comprehend による言語検出 → Translate による翻訳 → S3 への保存という多段階パイプラインを構築できます。コスト構造は翻訳した文字数に基づく従量課金で、100 万文字あたり 15 USD です。無料利用枠として、最初の 12 か月間は月 200 万文字まで無料で利用できます。コスト最適化のポイントは、翻訳結果のキャッシュです。同一テキストの再翻訳を避けるため、DynamoDBElastiCache に翻訳結果を保存し、キャッシュヒット時は API 呼び出しをスキップする設計が有効です。

共有するXB!