1日で1,752件の投稿:devblogが新しい12の言語を覚えた話 🌍
2026年11月7日
8月、ゲームは1週間で14の言語を覚えました。でも、devblogはずっと遅れたままでした。フランス語や日本語でサイトを開くと、ブログのページには「この言語の投稿はありません」としか出ませんでした。どの記事の上にもある言語切り替えには14の言語が全部並んでいたのに、そのうち12はエラーページにつながっていたんです。🙈 10月3日から、それはもうありません。
数字で見ると。そのとき、ブログにはドイツ語と英語で146本の記事がありました。たった1日で、そこに12の言語が加わりました。フランス語、スペイン語、イタリア語、ポルトガル語、オランダ語、ポーランド語、トルコ語、ロシア語、ウクライナ語、日本語、韓国語、中国語です。146 × 12 = 1,752本の新しい投稿、それに翻訳されたカテゴリが72件。どの翻訳にも、ドイツ語の元記事の日付がついています。6月20日の投稿は、ポーランド語でも6月20日で、10月3日ではありません。すべての言語版が互いにリンクされていて、言語切り替えを押すと、ほかの言語の同じ記事に移動できます。
翻訳ボタンを押すだけじゃだめ?うちのサイトは Wix で動いていて、Wix は投稿を自分で翻訳することもできます。でもそれだと、「翻訳」を1,752回クリックして、そのあと日付を手で1,752回直すことになります。クレジットも全然足りませんでした。必要なのはおよそ74万6千語なのに、あったのは約4万3千語です。それに、汎用の機械翻訳は、うちのゲームで使う言葉を知りません。
辞書としてのゲーム。そこで、自分たちで作りました。小さなプログラムが、Wix のインターフェース(API、人ではなくプログラムがウェブサイトと話すための扉)からすべての投稿を取ってきて、段落に分けます。AIは段落ごとに翻訳し、ゲーム自身の言語ファイルを辞書として受け取ります。だから、ブログの「作業台」は、ゲームのボタンと同じ名前になります。/tp のようなコマンド、キーの名前、バージョン番号、名前はそのままです。そのあと、チェッカープログラムがすべての翻訳を元の記事と比べます。段落の数、リンク、数字、バージョン番号がぜんぶ合っているか、文字の種類が正しいかを確かめます。日本語は、本当に日本語の文字で書かれていなければいけません。すべて合ったときだけ、投稿は公開されます。
デリケートな話題はもう一度見る。1つの言語につき約25本の投稿には、2回目のレビューを行いました。子どもやスクールクラブのこと、子どもの安全、ライセンス、ストーリーに関するものすべてです。そうした投稿では、言葉をひとつ間違えるだけで本当に害になることがあります。そのあと、その300本の投稿を、公開サイトでもう一度確認しました。
高くついた教訓。💸 最初の挑戦では、どのパッケージにも翻訳者とレビュアーがつきました。どちらもAIエージェントで、必要なファイルを自分で集めてきました。それだと1パッケージあたり約1,000万トークン(トークンはAIの料金計算に使う、言葉の小さなかけらです)かかり、作業の6%が終わったところでアカウントの上限に達しました。2回目の挑戦では、すべてを事前に用意しました。各パッケージに、文章と、ぴったり合う辞書の項目だけをまとめた小さな入力ファイルを1つ。AIは翻訳を大きなまとまりで数回に分けて書き、そのあとチェックを1回だけ走らせます。それには、より小さくて速いモデル(Sonnet)で十分でした。AIアカウントの1分あたりの上限にかからないよう、同時に動かすエージェントは5つまでにしました。こうして98のエージェントが1つもエラーを出さずに走り、全部合わせて、以前の1パッケージ分とほぼ同じ費用で済みました。この教訓はブログだけの話ではありません。必要なものをすべて並べておけば、AIは速くて安い。自分で探しに行かせると、高くつくんです。
完璧ではありません。機械の翻訳は驚くほどうまいですが、完璧ではありません。ゲームの文章では、ベンチが作業台になったり、格納庫が海の湾になったりして、それが8つの言語で同時に起きました。ブログでは、翻訳者に、名前から人の性別を推測しないようにはっきり頼んでいます。それでも一部の言語では、ロシア語、ポーランド語、フランス語などで、やってしまいました。だから、そういう箇所は自分たちでチェックしています。
それからは、ただ回っています。新しい投稿は、アップデートの投稿も含めて、ドイツ語と英語で公開されたら、ほかの12の言語に翻訳されて、同じ日付で公開されます。あとでドイツ語の文章を変えたら、どの翻訳が古くなったかをシステムが気づいて、もう一度翻訳します。そしてバージョン2026.10.4からは、ゲームの「何が新しい?」ウィンドウも、みなさんの言語でお知らせを表示します。
これらの言語を話す方で、おかしな文を見つけたら教えてください。ゲームの中なら F1(ブラウザでは F2)、または GitHub で。🙏
コメント