Truelyは、32言語で200ページ分のコンテンツとランディングページを運用する旅行プラットフォームです。スタート時のやり方は、多くのチームと同じでした。OpenAI APIをそのまま呼び出す方法です。しかし、その運用は長く続きませんでした。
導入前の状態:コントロールできない#
「翻訳にOpenAIをそのまま使うという、ありがちな失敗をしてしまいました」と振り返るのは、Truelyのプロダクトマネージャー、Sebastiaan van Leeuwen氏です。「32言語もあるのに、誰もコントロールできなかった。ドイツ語はひどかったし、オランダ語はさらにひどかったです。」
ステートレスなLLM呼び出しは、ローカライズでいえば土台なしに家を建てるようなものです。リクエストのたびに、コンテキストはゼロから始まります。用語集も、ブランドボイスも、製品用語をドイツ語・オランダ語・ロシア語でどう表現するかという記録もありません。モデルは毎回、その場で新しく推測します。これが32言語、200ページに広がると、その推測の積み重ねがズレとなり、本番に出るまで誰にも気づかれません。
チームは定番の代替手段も試しました。人手による翻訳では、調整に何週間もかかるうえ、製品を理解していない翻訳者が入ることもありました。Crowdinはプロセスを増やしただけで、根本的な問題は解決できませんでした。
「Crowdinは、まるで飛行機のコックピットを開いたような感覚でした」とvan Leeuwen氏は言います。「ボタンが多すぎるし、使わない機能も多すぎる。必要だったのは、複雑さを詰め込んだ万能ナイフではなく、課題解決にフォーカスしたものだったんです。」
ローカライゼーションエンジンへの切り替え#
Lingo.devの違いは、見た目ではなくアーキテクチャにありました。はステートフルです。つまり、Truelyの製品用語、ブランドボイスの設定、ロケールごとの指示を、すべてのリクエストをまたいで保持します。OpenAIをそのまま呼び出す運用では、「provider」を毎回その場で推測していましたが、ローカライゼーションエンジンでは、モデルが1トークンも生成する前に用語集から解決されます。
Truelyに必要だったのは、コンテンツパイプライン向けの並列処理に対応したDirectus CMS連携でした。Lingo.devの共同創業者であるVeronicaは、その連携をわずか数日で実装しました。
「共同創業者は、問題を理解しただけではありません。数日で解決策を形にしてくれました。コアインフラを任せるなら、そういうパートナーが理想です。」
結果#
品質向上の効果は、すぐに現れ、しかも数値で確認できました。
- オランダ語の翻訳が自然に読めるようになった — AIで自然なオランダ語を出すのは珍しく、van Leeuwen氏もこの点を特に評価
- 英語より長くなりがちなロシア語でも、TruelyのUI制約に自動で収まる
- カスタム用語集によって、32言語すべてでブランド用語の一貫性を維持
- 自動翻訳に継続的な設定作業は不要
- 開発者は翻訳管理から完全に解放
「その品質には、誰もが驚きました」とvan Leeuwen氏は言います。「オランダ語の翻訳は自然に読めます。これはAIでは珍しいことです。ロシア語も、単語が長いのに私たちのUIにぴったり収まる。そして用語集機能のおかげで、ブランドボイスを精密にコントロールできます。」
その裏側にある仕組みは、ローカライゼーションエンジンが推論時にブランドボイスのルールとロケールごとの指示を注入することです。ロシア語には文字数制約に関する指示が与えられ、オランダ語には語調や言い回しを整えるブランドボイス設定が適用されます。同じ設定が、あらゆるリクエスト、あらゆるページ、あらゆるリリースで機能します。
実務にもたらした成果#
Truelyは、翻訳管理のオーバーヘッドをほぼゼロに抑えたまま、32言語で200ページを運用しています。ローカライゼーションエンジンが新しいコンテンツも自動で処理し、用語集が用語の揺れを防ぎます。品質は測定でき、継続的に改善できます。
「複雑な問題を解決しながら、複雑さまで増やさないツールはなかなかありません」とvan Leeuwen氏は締めくくります。「Lingo.devは、まさにそれを実現してくれました。」
