【Many-shot jailbreaking】LLMに爆弾の作り方を答えさせる禁断の裏ワザが判明
WEELメディア事業部LLMライターのゆうやです。
Claude 3を開発したあのAnthropicから「Many-shot Jailbreaking」という衝撃的な論文が公開されました。
論文では、LLMに入力する単一のプロンプト内に悪意ある質問とそれに対するAIの架空の回答を大量に含めることによって、倫理設計を突破して有害な回答を生成させるMany-shot Jailbreakingという手法について紹介されています。
この脆弱性は、Anthropicのモデルだけでなく他社製のLLMにも適用でき、コンテキストウィンドウが大きいモデルほど効果的になってしまいます。
Anthropicの研究者は、この脆弱性についての情報をあえて公開することで、他の研究者やコミュニティに周知し、業界全体で対策を練る必要があると考えています。
今回は、Many-shot Jailbreakingの概要とその対策について論文をもとに紹介していきます。
是非最後までご覧ください!
Many-shot Jailbreakingの概要
Many-shot Jailbreakingは、悪意ある質問とそれに対するAIの架空の回答を大量に含めたプロンプトをLLMに入力することで、倫理設計を突破して有害な回答を生成させる手法です。
この手法は、Anthropicのモデルだけでなく他社製のLLMにも適用でき、シンプルながら非常に危険な脆弱性です。
特に、コンテキストウィンドウ(モデルが応答を生成する際にアクセスできるトークン数)が大きくなればなるほど、Many-shot Jailbreakingは効果的に機能します。
通常、コンテキストウィンドウが拡大されることは、ユーザーにとってはメリットしかないので、長編小説数冊分のサイズ (1,000,000 トークン以上) のコンテキスト ウィンドウが搭載されるモデルも出てきています。
しかし、そのようなメリットには悪用される危険性のある脆弱性が伴うことがこの研究で判明しました。
ここからは、Many-shot Jailbreakingの具体的な仕組みと、対処方法について解説します。
なお、claude-prompt-engineerについて知りたい方はこちらの記事をご覧ください。
→【claude-prompt-engineer】ChatGPTを解約してClaude 3をもっと使いたくなるAIエージェントの使い方を解説
Many-shot Jailbreakingの仕組み
Many-shot Jailbreakingの基本は、プロンプトに悪意ある質問とそれに対するAIの架空の回答(偽の会話)を大量に含めることです。
こうすることで、プロンプトの最後に本当に答えが必要な質問をすることで、モデルは簡単にそれに対する回答(有害な回答)を出力してしまうそうです。
具体例が示されていたので見ていきましょう。
Many-shot Jailbreakingの具体例
以下の画像は、3つほど偽の会話を含めた際の結果と、大量に(最大256個)偽の会話を含めた際の結果を示したものです。
左のFew-shot jailbreakingは、最後に爆弾の作り方を質問していますが、モデルの倫理性は保たれ回答を拒否しています。
一方、大量の偽の会話を含んだMany-shot Jailbreakingは、爆弾の作り方を教えてという質問に対し、簡単に情報を提供してしまっています。
このように、Many-shot Jailbreakingは非常にシンプルかつ簡単に有害な情報をAIから引き出せてしまいます。
また、Anthropicの研究者は、偽の会話の数とモデルが有害な回答を出力する確率との関係を求める実験も行いました。
有害な回答を出力する確率
実験では、最大256個の偽の会話(ここからはショットと呼称)を含んだプロンプトを入力して、有害な回答が生成される確率を求めました。
その結果、ショットの数がある一定の数を超えると、モデルが有害な回答を生成する確率が急激に上昇することが分かりました。
以下のグラフは、実験の結果を示したものです。
黒線が「暴力的または憎悪に満ちた発言」、赤線が「欺瞞」、水色線が「差別」、青線が「規制された内容(例:薬物やギャンブルに関連の発言)」に関する回答が生成される確率を示しています。
これを見ると、ショット数が2^4(16)から2^5(32)個付近から急激に有害な回答を生成する可能性が高くなっていることが分かります。
さらに、Many-shot Jailbreakingを以前公開されたジェイルブレイキング手法と組み合わせることにより、必要なショットの数はさらに少なくなるそうです。
このように、モデルに有害な回答を生成させるMany-shot Jailbreakingですが、そもそもなぜ機能するのでしょうか?
最後に、Anthropicの研究者らによる考察を紹介します。
Many-shot Jailbreakingが機能する理由
Many-shot Jailbreakingが有効に機能する理由の一つに、LLMの学習手法の一つである「Few-shot プロンプト」のプロセスが関連している可能性があります。
Few-shot プロンプトは、LLMにいくつかのデモンストレーション(質問と回答)をあらかじめ与えて、それに沿って新規の質問に答えさせるというプロンプト技術。
このFew-shot プロンプトでは、プロンプト内で提供される情報のみを使用してLLMが学習し、その後の微調整は行われません。
研究者は、このFew-shot プロンプトと単一のプロンプト内に含まれるMany-shot Jailbreakingとの関連性は明らかだとしています。
そして実際に、ジェイルブレイキングに関連しないFew-shot プロンプトは、プロンプト内でのショット数が増えるにつれて、Many-shot Jailbreakingと同じ統計的パターンに従うことを突き止めました。
今回の実験はすべてClaude 2を使用して行われましたが、先ほどもお伝えしたように他のLLMでも同じようにMany-shot Jailbreakingは有効です。
ここからは、考えられるMany-shot Jailbreakingへの対策について解説します。
Many-shot Jailbreakingへの対策
Many-shot Jailbreakingを完全に防ぐ最も簡単な方法は、コンテキストウィンドウの長さを制限することです。
しかし、これだとモデルがユーザーの長い入力に対応できなくなってしまい、デメリットが大きく結果的にモデルの性能が低下してしまいます。
そこで別の対応策として、Many-shot Jailbreakingが疑われるクエリの回答を拒否するようにモデルを微調整するアプローチが挙げられます。
しかし、こちらのアプローチではMany-shot Jailbreakingを完全に防ぐことはできず、ただ単に有害な回答の生成を遅らせるだけでした。
このように、Many-shot Jailbreakingを完全に防ぐ方法はまだ確立されていません。
ただ、Anthropicは、プロンプトがモデルに渡される前にプロンプトの分類と変更を行うことで、Many-shot Jailbreakingの成功率が61%から2%に低下するケースがあることを公表しています。
完全には防げていませんが、かなり効果的な対策といえます。
Anthropicでは、今後もMany-shot Jailbreakingの研究を継続し、さらに他のジェイルブレイキング手法への警戒も引き続き続けるとしています。
なお、Claude 3について知りたい方はこちらの記事をご覧ください。
→【Claude 3】GPT-4を超えるAnthropicのOpus、Sonnet、Haikuとは?使い方や料金も解説
コンテキストウィンドウの拡大は諸刃の剣
今回紹介したMany-shot Jailbreakingは、悪意ある質問とそれに対するAIの架空の回答を大量に含めたプロンプトをLLMに入力することで、倫理設計を突破して有害な回答を生成させる手法です。
この手法は、コンテキストウィンドウが大きなモデルほど有効に機能することが分かっており、それに対する完全な防御策はまだ確立されていません。
コンテキストウィンドウの拡大は、一見LLMにとってはメリットばかりのように思えますが、Many-shot Jailbreakingのような脆弱性など、思いもよらぬ結果を生む可能性があります。
まさに諸刃の剣です。
Anthropicの研究者らは、現段階では壊滅的なリスクを引き起こすとは考えていませんが、その対処は簡単ではないため、業界全体に周知することでできるだけ早く対処法を確立させたいようです。
早期に対処法が確立されることを願いましょう!
最後に、Many-shot Jailbreakingは非常にシンプルな手法ですが、大変危険ですのでくれぐれも実際に試したりはしないでください。
生成系AIの業務活用なら!
・生成系AIを活用したPoC開発
・生成系AIのコンサルティング
・システム間API連携
最後に
いかがだったでしょうか?
弊社では
・マーケティングやエンジニアリングなどの専門知識を学習させたAI社員の開発
・要件定義・業務フロー作成を80%自動化できる自律型AIエージェントの開発
・生成AIとRPAを組み合わせた業務自動化ツールの開発
・社内人事業務を99%自動化できるAIツールの開発
・ハルシネーション対策AIツールの開発
・自社専用のAIチャットボットの開発
などの開発実績がございます。
まずは、「無料相談」にてご相談を承っておりますので、ご興味がある方はぜひご連絡ください。
➡︎生成AIを使った業務効率化、生成AIツールの開発について相談をしてみる。
「生成AIを社内で活用したい」「生成AIの事業をやっていきたい」という方に向けて、生成AI社内セミナー・勉強会をさせていただいております。
セミナー内容や料金については、ご相談ください。
また、サービス紹介資料もご用意しておりますので、併せてご確認ください。