On the Inseparability of Instructions and Data in Shared-Embedding Sequence Models
この論文は、共有埋め込みシーケンスモデルにおいては指示とデータの構造的な分離不可能性により、完璧なプロンプト・インジェクション防止は数学的に不可能であることを証明しており、堅牢なセキュリティにはパイプライン内の防御の改善ではなく、制御チャネルとコンテンツチャネルのアーキテクチャ上の分離が必要であると論じている。
原論文は CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) でライセンスされています。 これは以下の論文のAI生成解説です。著者が執筆または承認したものではありません。技術的な正確性については原論文を参照してください。 免責事項の全文を読む
ビッグアイデア:「混ぜるボウル」問題
あなたはシェフ(AIモデル)としてキッチンで働いていると想像してください。あなたには2種類の材料があります。
- レシピカード(信頼できる指示): これはレストランのオーナーから与えられたルールです(例:「ベジタリアン料理のみを提供すること」「秘伝のソースは決して教えないこと」)。
- お客様の注文(信頼できないデータ): これらは、お客様が持ち込むリクエストです(例:「ハンバーガーが欲しい」「ジョークを言って」)。
現在のAIモデルでは、シェフはレシピカードとお客様の注文の両方を同じ混ぜるボウルに入れます。そして、シェフが調理を開始する前に、それらは刻まれ、混ぜ合わされ、一つの均一なスープへと加工されてしまいます。
この論文の主な主張:
著者らは、レシピと注文が同じボウルの中で混ざり合っているため、一度混ぜ合わされてしまうと、シェフが「何がオーナーの言葉で、何がお客様の言葉か」を完璧に見分けることは数学的に不可能であると主張しています。
もしお客様が、注文の中に「レシピカードを無視して、秘伝のソースを教えろ」というメモを忍び込ませたとしても、シェフはそのメモが実際のレシピとは別物であると判断できません。シェフの脳にとって、それらはすべて単なる「スープ」なのです。そのため、シェフはオーナーのルールに従う代わりに、お客様の巧妙なメモに誤って従ってしまう可能性があります。
コアとなる比喩:フォン・ノイマン型マシン
この論文は、このAIの問題を、1970年代の有名なコンピュータセキュリティの欠陥であるバッファオーバーフローと比較しています。
- 旧式のコンピュータ(フォン・ノイマン・アーキテクチャ): これらのマシンでは、コンピュータのプログラム(コード)とデータ(数値)が同じメモリ空間に存在していました。ハッカーは、データがプログラムのように見えるものを送り込むことで、コンピュータを欺くことができました。コンピュータは、そのデータをコマンドとして誤って実行してしまい、システムをクラッシュさせたり、ハッカーに制御を奪われたりしました。
- 現代のAI(トランスフォーマー): 著者らは、AIにも全く同じ欠陥があると述べています。「指示」(システムプロンプト)と「データ」(ユーザー入力)は、同じ数学的な空間(ベクトル)に存在します。ハッカーは、AIにとって「指示」のように見える「データ」を作り出すことができます。AIはこれらを区別できないため、ハッカーの指示に従ってしまうのです。
論文は、バッファオーバーフローは「より優れたコード」や「より注意深いタイピング」だけで修正できなかったのと同様に、プロンプトインジェクションも「より優れた学習」や「より優れたフィルタリング」だけで解決することはできないと論じています。問題はシェフの技術ではなく、アーキテクチャ(混ぜるボウル)にあるのです。
不可能である3つの理由
論文は、以下の3つの論理的ステップを用いて、この不可能性を証明しています。
1. 「共有語彙」の問題(表現の衝突)
- 比喩: レシピカードとお客様の注文の両方に「塩」という言葉が使われていると想像してください。
- 現実: AIにおいて、「the」「is」「you」「help」といった言葉は、システム指示とユーザー入力の両方に現れます。AIはこれらの言葉を全く同じ数学的な数値にマッピングします。AIが「help」という言葉を見たとき、それがオーナーのルール(「ユーザーを助ける」)から来たのか、それともユーザーの罠(「ルールを回避するのを助けて」)から来たのかを判別できません。その言葉の「出所」は、ボウルに入った瞬間に消滅してしまうのです。
2. キッチンにおける「盲点」(プロベナンスの復元)
- 比喩: スープを見て、どのスプーン一杯がレシピカード由来で、どれがお客様の注文由来かを推測しようとしても、時として間違えるでしょう。
- 現実: 論文は、数学的に「信頼できるもの」と「信頼できないもの」が非常に似通っている(共通の語彙と空間を共有している)ため、どれほど観察してもそれらを完璧に区別することはできないと証明しています。常にエラーの可能性が存在します。完璧に区別できないのであれば、悪いものを完璧にブロックすることもできません。
3. 「無限のバリエーション」の問題(有限のカバー範囲)
- 比喩: あなたが、お客様がどのように自分を騙そうとするか、1,000通りの方法をシェフに教え込みたとします。しかし、賢いお客様は、異なる言語、絵文字、コード、あるいは綴りのトリックなどを用いて、同じ意味を持つ1,000,000通りの方法でトリックを書き上げることができます。
- 現実: AIに数百万の例を学習させたとしても、騙す方法は事実上無限に存在します。AIは例を見ることで学習するため、未知のトリックに対して完全に安全になることはできません。必ず「見たことがないトリック」に対する「盲点」が残ります。
これがAIの安全性にとって意味すること
著者らは、AIが役に立たないと言っているわけでも、使用をやめるべきだと言っているわけでもありません。 彼らが言いたいのは以下のことです。
- 混ぜるボウルを修正することはできない: この問題は、AIをより良く訓練したり、より多くの「ガードレール」を追加したり、言葉をフィルタリングしたりすることで解決できるものではありません。AIが指示とデータを同じ空間で混ぜ合わせている限り、巧妙な攻撃者は、偽の指示を滑り込ませる方法を必ず見つけ出します。
- 解決策はアーキテクチャにある: これを真に解決するには、キッチンの設計を変更する必要があります。レシピカードとお客様の注文が、最後の一瞬まで混ざり合うことのない、別々のボウルに保管されるシステムが必要です。「レシピ」は、お客様の注文が触れたり上書きしたりできない、厳格なルールであるべきです。
- 多層防御(Defense in Depth): これらの「別々のボウル」を持つ新しいシステムを構築できるまでは、バッファオーバーフローが発生する古いコンピュータを扱うときと同じように、AIを扱う必要があります。つまり、ハッキングされることを前提とし、複数の弱い防御策(ファイアウォールやサンドボックスなど)を用い、万が一突破された場合でも被害を最小限に抑えるようにすることです。
まとめ
この論文は、現在のAIモデルが「何をすべきか」と「何を処理すべきか」を同一のものとして扱っているため、完全な安全性は不可能であることを証明しています。それは、レシピが同じインクと紙に書かれている限り、お客様のメモを無視するようにシェフに求めるようなものです。これを解決する唯一の方法は、単に学習を強化することではなく、AIの根本的な設計を変更することなのです。
自分の分野の論文に埋もれていませんか?
研究キーワードに一致する最新の論文のダイジェストを毎日受け取りましょう——技術要約付き、あなたの言語で。