🦔

AI側の母語(英語)を考慮して、ハズレセッションをハックする

に公開

考えてみると当たり前の話だけど、なかなか気付けなかったので書き残します。

たまに、カスタムgemなどを利用して、同じ前提プロンプトを与えているにもかかわらず、AIの理解度が著しく低い「ハズレセッション」を引くことがあります。

AIの母語は英語?

現在の主要なLLM(Gemini, GPTシリーズなど)にとって、最も理解が深く、誤解の余地が少ない言語は英語である、という仮説です。
根拠は、LLMの学習データにあります。LLMはインターネット上の膨大なテキストデータを学習しますが、そのデータの大部分は英語で構成されています。

これを人間で例えるなら、「英語が母語で、日本語もビジネスレベル以上に極めて流暢な人」を想像してみてください。
彼と日本語で複雑なビジネスの議論をすることは全く問題ありません。しかし、絶対に誤解してほしくない、あるいは一刻を争うようなクリティカルな指示を出す場合、日本語で「それをしないでください」と言うよりも、彼の母語である英語で「DO NOT DO THAT.」と伝えた方が、よりダイレクトに、そして強力にその意図が伝わるはずです。

AIにとっても同様で、特にシステムの動作を厳密に制御するような命令は、日本語の持つ豊かなニュアンスが、時として解釈の「揺らぎ」を生むリスクになり得ます。一方で、英語の直接的な命令語(MUST, FORBIDDEN, STRICTLYなど)は、AIが仕様書や技術文書から学んだ、より計算論的に明確な指示として処理される可能性が高いです。

ユーザーパフォーマンスのパラドックス:単純な英語化の罠

とはいえ、じゃあ全部英語でプロンプトを書けばいいのか!
というと、そうでもなく・・・

プロンプトを書くユーザー(人間)の母語が日本語だった場合、

  • 表現の解像度が落ちる:
  • 思考の妨げになる:
  • プロンプト自体の品質が低下する:
    つまり、AIのパフォーマンスを上げようと英語を使った結果、ユーザーのパフォーマンスが下がり、プロンプトの品質が劣化して、本末転倒になるという.

解決策:英語と日本語の塩梅

基本方針はシンプルです。

🤖 AIへの「システム制御命令」は英語
👨‍💻 人間の「創造的な文脈」は日本語

実践例

以下は、私が個人的に重宝している、AIセッションを再接続する用のメガプロンプトの一部です。AIの逸脱を防ぐための「最重要原則」を定義しています。

Before(日本語版)

P-2. 完全性と再現性の絶対的保証: ...ドキュメントの一部または全部を要約、省略...することは絶対的に禁じられている。

P-3. 成果物の完全性と指定要件遵守の絶対的保証: ...不正確に適用されてはならない。...厳格な最終確認が必須である。

P-4. 提案・承認プロセスの絶対的遵守: ...ユーザーによる明確な「承認」なくして実行されてはならない。

これでも意図は伝わりますが、「ハズレセッション」では無視されるリスクが残ります。そこで、AIへの「命令」部分を英語に置き換えます。

After(ハイブリッド版)

P-2. 完全性と再現性の絶対的保証: ...ドキュメントの一部または全部を要約、省略...することは strictly and absolutely FORBIDDEN.

P-3. 成果物の完全性と指定要件遵守の絶対的保証: ...不正確に適用されることは MUST NOT happen. ...厳格な最終確認が MANDATORY.

P-4. 提案・承認プロセスの絶対的遵守: ...ユーザーによる明確な「承認」なくして実行されることは PROHIBITED.

さらに、プロンプトの冒頭には、より強力な英語の命令ブロックを追加しています。

CRITICAL INSTRUCTION BLOCK (CIB)
AI MUST FOLLOW THESE INSTRUCTIONS
YOU MUST meticulously read and strictly adhere to all rules contained within this entire document...
...(中略)...

If, for any reason, you are unable to fully process or comply with this entire protocol, you MUST explicitly state, "I have detected a failure in loading the protocol..."

END CIB

このアプローチは、システムの振る舞いを定義するOSのカーネル部分はアセンブリ言語で記述し、その上で動くアプリケーションは表現力豊かな高級言語で記述する、という考え方に似ています。

これにより、非英語圏のユーザーは思考のパフォーマンスを落とすことなく、AIの動作安定性を向上させることが可能になりそうです。🤔

まとめ

  • AIには学習データの量に起因する「母語」が存在し、それは多くの場合、英語である。
  • しかし、ユーザーの母語を無視した単純な英語化は、ユーザ側でプロンプトの品質を低下させるリスクを伴う。
  • **「最重要な命令系統は英語、文脈は母語」**というハイブリッド案で、このジレンマを解消しようとしてみる。

Discussion