エンジン提案
すでに翻訳にAI評価者を使っていれば、品質が落ちたときにすぐ気づけます。たとえば、用語集の用語が守られていない、文体ルールが見落とされている、スコアが基準を下回っている、といったケースです。でも、問題が見えることと、それを適切なエンジンの改善につなげることは別の話です。不合格のレビューを読み、共通点を見つけ、修正すべきなのが用語集なのか、ルールなのか、それともブランドボイスなのかを判断し、実際に書き起こす。この2つ目の工程こそ時間がかかり、しかも静かに後回しにされがちです。
Engine Suggestions が、その作業を代わりに引き受けます。レビュー結果が低いと、Lingo.dev が内容を読み取り、共通パターンを見つけ、エンジンが適用する用語集、ルール、またはブランドボイスに対する的確な編集案を、理由付きで提案します。あとは内容をレビューして Apply をクリックするか、Dismiss を選ぶだけ。低スコアを、具体的なエンジン修正に変えられます。
提案は翻訳の変更ではなく、編集案です
提案とは、エンジンが適用する設定に対する保留中の変更です。適用すると、実際の用語集の用語、ルール、またはブランドボイスのテキストが書き込まれます。つまり、手動で作成するのと同じレコードです。翻訳が再実行されることはなく、変更が反映されるのはエンジンが実行する次回の翻訳です。
低スコアから自動で提案#
これが、提案が表示される主な流れです。AI評価者を実行すると、すべての翻訳はすでに用語集、ルール、カスタム基準に照らして採点されています。低いスコアが続いたり、真偽値チェックに失敗したり、割合が基準を下回ったりした場合は、エンジンのどこかに調整が必要だというサインです。改善を提案を有効にすると、Lingo.dev がそのサインを受けて自動で動きます。失敗したレビューを読み取り、共通点を見つけ出し、あなたが指示しなくてもバックグラウンドで編集案を提案します。
有効にするには、エンジンのレビュー担当者タブにある提案セクションで設定します。以降は、低いスコアが続くと自動で提案が静かに作成され、キューの提案に並びます。
その下には、もうひとつの切り替えである確認せずに適用があります。これを有効にすると、提案は判断のためにキューで待機せず、そのままエンジンに反映されます。これは改善を提案が有効な間だけ機能し、改善を提案をオフにするとこちらもオフになります。
スパムのようには増えません
自動生成にはデバウンスがかかっており、実行はおおむねエンジンごとに10分に1回です。そのため、低スコアが一気に増えても、提案が洪水のように押し寄せるのではなく、よく整理された1つのバッチとして生成されます。さらに、同一の提案は重複排除されるため、同じ編集案が二度表示されることはありません。
どの翻訳でもきっかけになる#
シグナルになるのはレビューのスコアであって、翻訳の出どころではありません。エンジンが 同期呼び出し で実行された場合でも、非同期ジョブ でも、完全な ローカライゼーションパイプライン を通るジョブでも、結果は同じ AI評価者 によって評価され、低スコアであれば同じ提案につながります。つまり、レビュー付きのエンジンを通る翻訳トラフィックが増えるほど、提案は本番で実際に起きている問題をより正確に反映するようになります。
人の修正も、ひとつのシグナルです#
翻訳を手作業で修正したレビュー担当者は、エンジンのどこが間違っていたかをすでに示しています。修正そのものが答えであり、まだ設定に反映されていないだけです。そのため、改善を提案が有効なエンジンで人による編集が完了すると、Lingo.dev はその編集内容とエンジンの出力との差分を比較し、その修正を不要にできたはずのルールを提案します。アプリ内で編集する自分たちのチームでも、外部の認定翻訳者でも、止まっている外部レビューを引き継ぐ同僚でも、受け取るサインは同じで、提案も同じです。対象になるのは、レビュー担当者が実際に変更したキーだけです。つまり、翻訳をそのまま承認してもコストはかからず、学習も起こりません。
編集ベースの提案が勝手に適用されることはありません
修正はチーム外から届くこともあるため、それに基づく提案は、あなたが適用するまでpendingのままです。確認せずに適用が有効でも変わりません。エンジンが外部翻訳者から学ぶには、あなたの承認が必要です。
必要なタイミングで生成#
次の低スコアを待つ必要はありません。ダッシュボードにはそのためのボタンはありませんが、POST /engines/:id/suggestions/generateをエンジン提案APIで実行すれば、改善を提案が有効かどうかにかかわらず、直近の低スコアのレビューとエンジンの現在の設定をもとに、同じ分析をすぐ実行できます。ほかの変更を加えたあとにあらためて見直したいときや、提案が出てくるのを待たずに自分で取得したいときに使ってください。
提案される内容#
各提案は、エンジン設定の3つの要素のいずれかを対象にし、既存エントリへの追加または更新として提示されます。
| 操作 | 適用すると何が起きるか |
|---|---|
| 用語集項目を追加 / 更新 | 用語集の用語を作成または変更します。強制する訳語、または翻訳不可としてマークされた用語です。 |
| ルールを追加・更新 | エンジンが適用するルールセット内の、ロケールごとのルールを作成または変更します。 |
| ブランドボイスを追加 / 更新 | そのロケールに対してエンジンが適用する文体として、ブランドボイスのテキストを作成または変更します。 |
各提案には reasoning が付き、なぜその編集を提案しているのかが短く説明されます。さらに、適用対象のロケールも明示されます。中身の見えない変更をただ信じる必要はありません。何を変えるのか、なぜ変えるのかを確認してから書き込めます。
設定は組織で管理されるため、提案を適用すると、他のエンジンでも使われているコンテナが編集される場合があります。提案には対象が明記されるので、承認前にどこまで変更が及ぶかを確認できます。
提案はピンポイントです
モデルが提案するのは、エンジン全体の書き換えではなく、用語集の用語1件、ルール1件といった粒度の小さい編集です。それぞれを個別にレビューして適用できるので、正しい3つは採用し、合わない1つは外せます。
レビュー、適用、却下#
提案はキュー(/orgs/<org-id>/queue)の提案に、pendingとして並びます。各提案には、提案された変更、対象ロケール、理由、何をもとに提案されたか 低スコアのレビュー、人による修正、またはその両方、そしてどこに反映されるかが表示されます。すでにエンジンが適用しているものに書き込まれる場合は用語集に反映(またはルールセット、あるいはブランドボイス)となり、新しく作成される場合は用語集を作成(またはルールセット、あるいはブランドボイス)となります。操作は2つあります。
Apply
提案された変更を、エンジンが適用する設定に書き込みます。実際の用語集の用語、ルール、またはブランドボイスのテキストとして保存されます。適用は、提案された編集内容をそのまま確定的に書き込む処理です。2回目のAI呼び出しはなく、思いがけない変更もありません。提案にはappliedとマークされ、変更はエンジンの次回の翻訳から反映されます。
Dismiss
提案を取り下げます。製品にとって適切ではない提案だったときに使ってください。用語や表現については、どんなモデルよりもあなたのほうがよくわかっています。Dismiss しても、エンジンには何も書き込まれません。
適用すると、手動で作成するのと同じ種類のレコードが書き込まれるため、適用後にブラックボックスになることはありません。通常の用語集の用語、ルール、またはブランドボイスのテキストとして、ほかと同じように開いて編集・削除できます。
Apply しても再翻訳はされません
提案を適用して変わるのは、エンジンの設定であって過去の翻訳ではありません。すでに翻訳済みのコンテンツは、再度翻訳されるまで既存の出力を保持します。改善が現れるのは、次にエンジンが走ったときです。
自分のフィードバックから生成#
すべての問題が低スコアとして現れるわけではありません。ときには、言語担当者やサポートチケットが、何が問題なのかをそのまま言葉で教えてくれることもあります。たとえば「ドイツ語のコピーが堅すぎる」「製品名は翻訳しないでほしい」といった内容です。そうしたテキストは Engine Suggestions API からそのまま入力でき、同じ種類の提案を得られます。流れはここで紹介しているレビュー・適用・却下と同じで、違うのはきっかけだけです。レビューのスコアではなく、あなた自身が書いたフィードバックがトリガーになります。
評価するのはレビュー、動くのは提案#
AI評価者と Engine Suggestions は、ひとつの品質ループを支える2つの要素です。レビュー担当は測定を行います。各翻訳を用語集、ルール、カスタム基準に照らして採点し、どこで品質が落ちているかを示します。提案は対応します。そうした低スコアを読み取り、改善につながるエンジン変更を提案します。レビュー担当が問題を見つけ、提案が修正案を作り、判断するのはあなたです。こうしてループが閉じます。翻訳し、採点し、提案し、適用する。その次の翻訳は、もっと良くなります。