アーキテクチャの概要
本プロジェクトは、プロプライエタリなJavaベースの大規模シミュレーション・アプリケーションを日本語に翻訳するために構築された包括的なローカライズパイプラインです。このソフトウェアには、6,700以上の複雑なインタラクティブ・ノード、環境描写、独自のJavaロジックにまたがる、極めて専門的で世界観豊かなテキストが膨大に含まれています。
標準的なWebアプリケーションとは異なり、プロプライエタリなレガシーJavaエンジンをローカライズするには、テキスト・パイプラインをリバース・エンジニアリングし、アプリケーションのコンパイル、UIレンダリング、基盤となるスクリプト呼び出しを壊すことなく、大規模なデータセットを翻訳するための堅牢なワークフローを確立する必要があります。
解決されたエンジニアリング課題
バイトコード・エンジニアリングとアーキテクチャの転換
このアプリケーションをローカライズする上で、根本的な制限を克服する必要がありました。プロプライエタリなUIエンジンは、表示文字列を内部のルックアップキーとして使用していたため、アプリケーションをクラッシュさせずに実行時に翻訳することは不可能でした。体系的なリバース・エンジニアリングを通じてこの事実を発見した後、動的なJVMエージェント・アーキテクチャから、Javassistのコンスタントプール操作を用いた静的なバイトコード書き換えアプローチへと方針を転換しました。これにより、元のソースコードにアクセスすることなく、UTF-8の日本語グリフをネイティブにゼロクラッシュで注入し、エンコーディングの制約を解決することができました。
エージェンティックAI翻訳パイプライン
盲目的な機械翻訳では、シミュレーションデータの極めて専門的で喚起的なニュアンスを捉えることは完全に不可能でした。そこで、専門的なLLMサブエージェントを展開するアジャイル的なワークフローを設計しました。これらのエージェントは厳密な翻訳メモリ(TM)データベースを読み込み、大規模なデータチャンク全体で完璧なコンテキスト認識と一貫性を確保します。このパイプラインでは、自動化されたLLMクリティック(批評)ループと複雑な正規表現置換を利用して、不変の用語や $variables(変数)を安全なプレースホルダーの後ろに一時的に隠し、翻訳プロセス中の機能ロジックを保持します。
戦略的成果
- クラッシュゼロのローカライズ: 重要なアプリケーションパラメータ、ルールID、スクリプト呼び出しを一切変更することなく、何千もの翻訳されたノードを正常にマージし、SHA-256整合性チェックを通じて検証しました。