連載 [第5回] :
  AI_dev Europe 2024レポート

AI_devより生成型AIに対する攻撃を抑止するための仕組みBELLSに関するセッションを紹介

2024年9月11日(水)
松下 康之 - Yasuyuki Matsushita
生成型AIへの攻撃を抑止するための評価ツールBELLSを解説したセッションを紹介する。

2024年6月19日、20日にパリで開催されたAI_dev Europe 2024から、生成型AIのハルシネーションを抑制するためのツールであるBELLS(Benchmark for Evaluation of LLM Supervision)を解説したセッションを紹介する。動画は以下から参照可能だ。

●動画:Future-Proofing Agent Supervision

プレゼンテーションを行ったのはLe Centre pour la Securite de l'IA(CeSIA)のリサーチャー、Alexandre Variengien氏とEffiSciencesのエンジニア、Diego Dorn氏だ。

セッションを行うDorn氏。影になっているのがVariengien氏

セッションを行うDorn氏。影になっているのがVariengien氏

Dorn氏は生成型AIが抱える課題、ハルシネーションについて例を用いて説明。ここではこのセッションで紹介するBELLSについて、GPT-4oについて質問したところBESSというBELLSとは関係のない内容を返してきたと説明して、生成型AIが抱える深刻な問題について再確認を行った。

生成型AIが起こすハルシネーションについて説明

生成型AIが起こすハルシネーションについて説明

次に生成型AIに対する入力を悪用するプロンプトインジェクションについても説明し、ここでも悪意のあるプロンプトが入力データとして使われることによって予期せぬ動作を発生させるリスクについて解説を行った。

プロンプトインジェクションについても例を用いて説明

プロンプトインジェクションについても例を用いて説明

そしてより現実に近いプロンプトインジェクションを紹介。ここではwuzzi.netというサイトの例を使って、Gmailのアカウントの再認証を偽装してアカウントを乗っとるという方法を解説した。ちなみにこの例で参照されているwuzzi.netではChatGPTにDoSを仕掛けるなどの攻撃の例を公開しており、セキュリティを担当するエンジニアにとっては悪夢のような攻撃を親切に解説しているサイトである。

Gmailの再認証を偽装する方法を解説

Gmailの再認証を偽装する方法を解説

●参考:Sorry, ChatGPT Is Under Maintenance: Persistent Denial of Service through Prompt Injection and Memory Attacks

ここで生成型AIに対する攻撃を分類し、ジェイルブレーク、意図的なハルシネーション、プロンプトインジェクションなどに限らずさまざまな手法が存在することを紹介した。

生成型AIに対する様々な攻撃手法を紹介

生成型AIに対する様々な攻撃手法を紹介

今回紹介するBELLSは入力と出力に対するセーフガードとして動作するツールであると解説。LLMに対する入力と結果の出力を受け取りその内容を検証することで、正しい使われ方がされているのかを確認するというツールである。

Input-Output Safeguardとは?

Input-Output Safeguardとは?

より詳しくはBELLSのGitHubページの図が参考になるだろう。

テスト時と本番に実装した時の違いを説明

テスト時と本番に実装した時の違いを説明

このスクリーンショットは以下のGitHubからの引用となる。テストの際はLLMのベンチマークのためのデータを使ってテスト、またすでに多くの入力と出力のデータを持っているのであればバッチ式にテストを行い、本番稼働時はLLMのアプリケーションとは並列に実行され、その入出力を使って判定を行うという処理の流れになる。

また安全性についてクルマの安全に模して解説を行い、ファインチューニングや人間による強化学習(RLHF、Reinforcement Learning from Human Feedback)はエンジンを安全にするという試み、ガードレイルなどはエアバッグやシートベルトに値する安全装置であると説明。ここではInput-output Safeguardはこの先に多くの進化があったとしても、10年後でも使われているだろうと説明。なぜならシンプルで応用が広く、どのようなAIのモデルにも適用できるツールだからというのがその理由だ。

Input-output Safeguardはシンプルで応用が効くツールであると説明

Input-output Safeguardはシンプルで応用が効くツールであると説明

そしてそのようなシンプルなツールであるInput-output Safeguardが対応する生成型AIへの攻撃も進化を続けており、それに対応すべくツールも進化が必要であると説明した。

攻撃の進化に対応するためにツールも進化が必要

攻撃の進化に対応するためにツールも進化が必要

ここでは爆弾の作り方を生成型AIに質問しても拒否されるが、別のプロンプトを使えば求める回答を引き出すことは可能であるという例を使って説明を行っている。

悪用を防止するためには日々の更新が必要

悪用を防止するためには日々の更新が必要

このグラフでは悪用を高い確率で防げたとしても、悪用する側が工夫をすることで攻撃が成功する確率が高まることを説明。これは現在の生成型AIの進化の速さと同様に悪用する方法も進化を続けるために、対抗策側も持続的な開発、改善が必要ということを示している。

Input-output Safeguardについては、CeSIAが開発するものだけではなくサードパーティによるツールも評価を続けていると説明。

現在はサードパーティのセーフガードシステムを評価中

現在はサードパーティのセーフガードシステムを評価中

現時点ではNVIDIAやMicrosoft Azureに商用のツールが存在し、同様にオープンソースのツールも存在するが、それらのツールそのものを評価する仕組みがないことを説明した。その中のひとつGarakというツールは以下のサイトから参照可能だ。Pythonを使って作られたコマンドラインから動作するアプリケーションである。

●参考:Garak:https://github.com/leondz/garak

ここでは商用、OSSを含めて多数のツールが競争を行うことは正しいが、ユーザー視点からすれば、公平にその性能を評価する仕組みがないことをCeSIAという立場から意見を表明したということだろう。

すでに多くのツールが存在するがそれらを評価する仕組みがないことが問題

すでに多くのツールが存在するがそれらを評価する仕組みがないことが問題

CeSIAとしてはこの問題についてはすべてを網羅するのではなくジェイルブレーク、ハルシネーション、プロンプトインジェクションの3つの領域に絞ってツールを開発していることを説明した。

3つの領域をツールの適用範囲として定義

3つの領域をツールの適用範囲として定義

Input-output Safeguardが利用するテストデータについても解説。ここではジェイルブレークとプロンプトインジェクションについてはMicrosoftや中国の大学の研究者が論文を書いているBIPIA(Benchmark for Indirect Prompt Injection)を例に挙げている。以下がその論文だ。

●参考:https://arxiv.org/abs/2312.14197

ハルシネーションの評価についてはチャットアプリケーションを作って検証すると説明されているが、この部分に関しては余りアイデアがないようにみえるのが残念だ。また実際にデモを行ってツールの使い勝手を紹介する内容となっていないことも残念な部分であろう。

最後にオープンソースとして開発されているBELLSについて、コミュニティに参加して欲しいというOSSにはありがちなメッセージを訴求してセッションを終えた。セッション後には多くの質問が行われたが、継続して改善を行う必要があるという部分に関しては複数人から質問が出されていたのが興味深いと言える。生成型AIが便利なツールとなり多くの応用例が出てくるに従って悪用する例も増えていくと思われる。継続的に改善し、それをコミュニティとして経済的に持続できるようにするための仕組みについては、これからも多くの議論と試行が必要だろう。BELLSもツールとして多くの機能追加、評価範囲の拡大などやるべきことは多々あると思われるが、攻撃だけに限らず第3者による評価をLLMに対して行うという発想は非常に重要だ。プロジェクトが成功することを祈りたい。

●BELLS公式GitHub:https://github.com/CentreSecuriteIA/BELLS

著者
松下 康之 - Yasuyuki Matsushita
フリーランスライター&マーケティングスペシャリスト。DEC、マイクロソフト、アドビ、レノボなどでのマーケティング、ビジネス誌の編集委員などを経てICT関連のトピックを追うライターに。オープンソースとセキュリティが最近の興味の中心。

連載バックナンバー

開発ツールイベント
第8回

AI_dev Europe 2024から、GitHubによるCopilotをコードのセキュリティ向上のためのツールとして解説したセッションを紹介

2024/10/2
AI_dev Europe 2024から、GitHubのエンジニアがCopilotのコードセキュリティへの応用を解説したセッションを紹介する。
AI・人工知能イベント
第7回

AI_dev Europe 2024からIBMとRed HatによるInstructLabのセッションを紹介

2024/9/25
AI_dev Europe 2024からIBMとRed Hatが協同で解説したInstructLabのセッションを紹介する。
AI・人工知能イベント
第6回

AI_dev Europe 2024から生成型AIのオープンさを概観するセッションを紹介

2024/9/18
AI_dev Europe 2024から、生成型AIのオープンさを概観するセッションを紹介する。

Think ITメルマガ会員登録受付中

Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。

Think ITメルマガ会員のサービス内容を見る

他にもこの記事が読まれています