AI評価は、ローカライゼーションエンジンが生成した翻訳を自動でチェックする品質評価です。各翻訳リクエストの後、Lingo.dev は独立したLLM評価を実行して出力を検証し、用語集への準拠、ルールの遵守、さらに定義したカスタム基準を確認します。レビューは非同期で実行されるため、翻訳レスポンスをブロックすることはありません。
仕組み#
ローカライゼーションエンジンが翻訳リクエストを完了すると、該当するレビューが非同期評価用のキューに追加されます。各レビューでは、ソーステキスト、翻訳結果、コンテキスト、評価基準を受け取る独立したLLMが実行されます。返されるのは、合否またはパーセンテージスコアの構造化された結果で、結果が完全でない場合はその理由も含まれます。
どのレビューをそのエンジンで実行するかは、エンジンのReviewsタブで管理します。レビューは次の3つのカテゴリに分かれます。
| カテゴリ | チェック内容 | 結果タイプ | 設定方法 |
|---|---|---|---|
| 用語集項目のAI評価 | 翻訳が、エンジンで適用される用語集の用語に従っているかどうか | 合否 | エンジンごとの組み込みトグル |
| ルールAI評価 | 翻訳が、エンジンで適用される各ルールに従っているかどうか | ルールごとの合否 | エンジンごとの組み込みトグル |
| カスタムAI評価者 | 組織レベルで定義した独自の評価基準 | 合否 または 0〜100% | 組織レベルのAI評価者からエンジンごとに選択 |
組み込みAI評価#
すべてのローカライゼーションエンジンには、エンジンで適用される設定に照らして翻訳を検証する、2種類の組み込みレビューが含まれています。有効化や無効化は、エンジンのReviewsタブで行えます。
用語集項目のAI評価#
翻訳が、該当するすべての用語集の用語に準拠しているかどうかを確認します。エンジンがカスタム翻訳(例: "Deploy" → "Bereitstellen")や非翻訳対象の用語(例: "OAuth")を適用している場合、このレビューでは翻訳がそれらに従っているかを検証します。
このレビューでは文法上のバリエーションも考慮されます。用語集の用語がある文法形式で登録されていても、その用語のすべての形に適用されます。競合する用語集の用語がある場合でも、そのうち1つに従っていれば、その翻訳は準拠していると見なされます。
結果は、翻訳リクエスト全体に対する単一の合否判定として返され、不合格の場合は理由も含まれます。
ルールAI評価#
各ルールを個別に評価します。エンジンに3つのルールが適用されている場合、このレビューでは3つの個別の合否判定が返され、結果が不合格のときはそれぞれに理由も表示されます。
以前、ルールは instructions と呼ばれていました
ダッシュボード、Reviewsタブのトグル、そしてRule adherenceレポートでは、いずれもこれらをルールと呼んでいます。REST API では、個別のルールは現在も/instructionsとして公開されています。
ルールの条件が翻訳対象のコンテンツに当てはまらない場合、そのルールは N/A を返すことがあります。たとえば、敬体・常体のような文体に関するルールは、翻訳に製品名や、文体が関係ない技術用語しか含まれていない場合、N/A を返します。N/A の結果は集計スコアには含まれません。
どちらの組み込みレビューも、エンジンに関連する設定がある場合にのみ実行されます。ロケールの組み合わせに一致する用語集の用語がない場合、glossary items AI評価は実行されません。
エンジンごとのレビュー設定#
そのエンジンでどのレビューを実行するかは、エンジンのReviewsタブで設定します。このタブは2つのセクションに分かれています。
上部の組み込みトグルで、glossary items AI評価とルールAI評価を切り替えられます。これらはそれぞれ独立しているため、エンジンに設定されている内容に応じて、どちらか一方だけを有効にすることもできます。
トグルの下にあるカスタムAI評価者には、組織レベルで定義されたすべてのAI評価者が一覧表示されます。各AI評価者を、そのエンジンに対して個別にオン・オフできます。これにより、品質チェックの共通ライブラリを維持しながら、必要なものだけを選んで適用できます。
1つのエンジンで、組み込みレビューと複数のカスタムAI評価者を同時に実行できます。すべてのレビューは各翻訳リクエスト後に非同期で実行され、結果は翻訳ログとReportsに表示されます。
AI評価者の種類#
ブール型AI評価者#
二択の判定、つまり pass または fail を返します。ルールを満たしているかどうかを明確に判定したい場合に適しています。
例:
- "翻訳ですべてのHTMLタグと属性が保持されていますか?"
- "対象言語の複数形ルールは正しく適用されていますか?"
- "翻訳でドイツ語の敬称(Sie)が使われていますか?"
結果は合格率として集計されます。75% は、評価された4件の翻訳のうち3件が合格したことを意味します。
パーセンテージ型AI評価者#
0〜100 のスコアを返します。品質のように、連続的な尺度で評価したい項目に適しています。
例:
- "ネイティブ話者にとっての翻訳の自然さを評価してください(0〜100)"
- "翻訳が元のトーンと意図をどの程度維持しているかを採点してください(0〜100)"
- "文法的な正確さを0〜100の尺度で評価してください"
結果は、評価期間全体の平均として集計されます。
AI評価者の設定#
| 項目 | 説明 |
|---|---|
| 名前 | AI評価者を識別するラベル(例: "複数形チェック") |
| 指示 | 自然言語で記述する評価基準 |
| タイプ | boolean(合否)または percentage(0〜100) |
| ソースロケール | 一致させるソースロケール、または任意を表す * |
| ターゲットロケール | 一致させるターゲットロケール、または任意を表す * |
| プロバイダー / モデル | 評価に使用するLLM(翻訳モデルとは独立) |
| サンプリング | 評価対象にするリクエストの割合(0〜100%) |
| Allow N/A | 無関係なペアに対してAI評価者が "not applicable" を返せるかどうか |
| Enabled | 設定を削除せずにレビューのオン・オフを切り替え |
AI評価者の指示を書く#
指示フィールドはAI評価者の中核です。評価用LLMに、何をチェックすべきかを正確に伝える役割を持ちます。具体的で、検証可能な基準として記述してください。
良い指示#
ブール型:
Check whether all HTML tags in the source text are preserved
exactly in the translation. Tags must not be added, removed,
modified, or reordered. Pass if all tags are preserved, fail
if any tag is missing or altered.パーセンテージ型:
Rate the fluency of the translation on a scale of 0-100.
100 means a native speaker would find it completely natural.
0 means it reads like machine output. Deduct points for
awkward phrasing, unnatural word order, or overly literal
constructions.良い指示の条件#
- 具体的な基準 - 合否の意味、または 0 と 100 が何を表すかを明確に定義する
- 観察可能な結果 - LLM が意図を推測するのではなく、テキストを読んで評価できる必要がある
- AI評価者ごとに1つの観点 - 多面的な品質チェックは、別々のAI評価者に分ける
ロケールのマッチング#
AI評価者は、ソースロケールとターゲットロケールに基づいて翻訳リクエストにマッチします。ワイルドカード * は任意のロケールに一致します。
| ソースロケール | ターゲットロケール | 一致する対象 |
|---|---|---|
en | de | 英語 → ドイツ語の翻訳のみ |
en | * | 英語からのすべての翻訳 |
* | ja | 日本語へのすべての翻訳 |
* | * | すべての翻訳 |
1つの翻訳リクエストに対して、ロケールペアに一致するAI評価者が複数ある場合は、複数のAI評価者が同時に実行されることがあります。
サンプリング#
すべての翻訳をレビューする必要はありません。サンプリング率によって、一致するリクエストのうち何%を評価するかを制御できます。
| サンプリング | 動作 |
|---|---|
| 100% | 一致するすべてのリクエストをレビュー(網羅的ですがコストは高め) |
| 50% | 一致するリクエストのおよそ半分をレビュー |
| 10% | 10件に1件。個別スコアより傾向把握を重視する高ボリュームのエンジンに有効 |
| 0% | 無効化しなくても、AI評価者を実質的に一時停止できます |
サンプリングは、リクエスト時にランダムチェックで適用されます。十分な件数のリクエストがあれば、実際の評価率は設定した割合に収束します。
N/A サポート#
allowsNA が有効な場合、レビュー用LLMはスコアの代わりに "not applicable" を返せます。これは、基準がすべてのロケールペアに当てはまるわけではないAI評価者に便利です。
例: 敬称の慣習をチェックするAI評価者は、英語 → 英語の翻訳では N/A を返します(英語にはフォーマル/インフォーマルの区別がないため)が、英語 → ドイツ語ではスコアを返します。
レポートでは、N/A の結果は平均値や合格率から除外されます。スコアを下げたり、不自然に押し上げたりすることはありません。
理由#
AI評価者は、結果が完全でない場合に理由も返すため、何が問題だったのかを把握しやすくなります。
- 完全スコア(合格または100%) - 理由は null(説明不要)
- N/A - 理由は null
- 不完全なスコア - 1文の簡潔な説明
これによりレビュー結果をすぐに活用できます。翻訳がチェックに失敗した場合も、手動で調査しなくても理由を把握できます。
レビューモデル#
各AI評価者には、翻訳モデルとは独立した専用のLLMプロバイダーとモデル設定があります。この分離は意図的なものです。翻訳を生成するモデルと、その翻訳を評価するモデルは同じであるべきではありません。
モデルの独立性
翻訳用とは別のモデルでレビューすることで、独立した評価が得られます。たとえば GPT-4o で翻訳を生成し、Claude Sonnet で評価すれば、自己評価ではなくセカンドオピニオンを得られます。
AI評価者レポート#
レビュー結果は、ダッシュボードのAI評価者レポートセクションで可視化され、次の内容を確認できます。
- 合格率の推移 - ブール型AI評価者では、日次の割合として表示
- 平均スコアの推移 - パーセンテージ型AI評価者では、日次平均として表示
- ロケールペアごとの内訳 - 各ソース → ターゲットの組み合わせごとの状況を個別に確認
- 集計ビュー - すべてのロケールペアを1本のトレンドラインに統合
AI評価者レポートは、ボリューム重視のReportsを補完します。両方を組み合わせることで、スループットと品質の全体像を把握できます。
MCP 経由でAI評価者を管理する#
Lingo.dev MCP server を使っている場合は、AIコーディングアシスタントからAI評価者を直接作成・設定できます。
"Create a boolean AI reviewer for all locale pairs that checks
whether HTML tags are preserved in translations.""Add a percentage AI reviewer for English to German that rates
translation fluency on a 0-100 scale, sampling 50% of requests."