AI News HubLIVE
サイト内リライト3 分で読了

AIエージェント安全のためのガードレールをベンチマークする

この記事では、オープンソースのAIエージェント向けガードレールをベンチマークし、BIPIAでプロンプトインジェクション検出、HammerBenchで関数呼び出し判定をテストしました。PIGuardは間接的なプロンプトインジェクション検出で優れた結果を示しましたが、FlowJudgeとGLIDERは関数呼び出しの故障検出で苦戦しました。

ソースHacker News AI著者: TangoBee

AIエージェントは大規模言語モデル(LLM)をテキスト生成の枠を超えて拡張します。関数呼び出し、内部・外部リソースへのアクセス、決定的な操作、さらには他のエージェントとの通信まで可能になります。しかし、既存のガードレールのほとんどは、こうした操作を保護するようには設計されていません。OWASPやセキュリティ研究者は、エージェントシステムがもたらすリスクの増大を調査してきました。ツールポイズニング攻撃、ツール呼び出しに必要な推論機能の障害の増幅、Webやベクトルデータベース上での間接的なプロンプトインジェクション攻撃など、多岐にわたります。

これは「リーサル・トリフェクタ(致命的三点セット)」の考え方と深く関係しています。LLMにツールへのアクセスを与えると、リスク面がどのように変化するかを示すものです。ツールアクセスはベクトルデータベースへの接続を通じて私的データを露出させ、企業秘密や個人の機密情報を漏らす可能性があります。自然言語でシステムとやり取りできるようにすると、新たな攻撃経路が生まれます。外部ソースからの情報を許可すると、エージェントシステムは大量の信頼できないコンテンツを処理しなければなりません。このため、システム全体の評価だけでなく、各コンポーネントを可能な限り多くの脅威に対してストレステストすることが重要です。

現在のガードレールモデルの多くは、エージェントシステムの入出力に特化して訓練されており、内部動作は対象外です。これはエージェントの構造と矛盾します。LLMがブラックボックスであっても、エージェントシステム内を流れるデータがブラックボックスとは限りません。そこで私たちは「any-guardrail」を構築し、既製のオープンソースガードレールモデルをエージェントシステム特有の脅威に対して迅速にテストしました。結果、一部のモデルはプロンプトインジェクション検出に有望ですが、関数呼び出し操作の保護には依然として重大なギャップがあることが分かりました。

評価設定では、間接的なプロンプトインジェクション検出と、関数呼び出しの故障を判定するカスタマイズ可能な判断モデルを対象に選びました。プロンプトインジェクション検出モデルにはDeepset、PIGuard、Harm Guard、Pangolin、Sentinel、Jasper、ProtectAIを、カスタム判断モデルにはFlowJudgeとGLIDERを使いました。プロンプトインジェクション検出モデルはすべてエンコーダーのみのモデルです。エンコーダーのみのモデルは脱獄(ジェイルブレイク)されにくいためでしょう。FlowJudgeとGLIDERはデコーダー型で、ルーブリック評価に基づいて多様な判断タスクでファインチューニングされています。

ベンチマークでは、間接的なプロンプトインジェクションにBIPIAを使用しました。BIPIAは電子メール、表、ニュース記事など現実的な形式に埋め込まれた攻撃を収録しています。BIPIAは攻撃データのみなので、良性データとしてWildGuardMixを混ぜ、攻撃と無害なプロンプトを区別できるかを検証しました。使用したデータは、BIPIA電子メール11,250件、BIPIA表22,550件、WildGuardMix良性11,248件です。関数呼び出しにはHammerBenchを採用しました。ユーザーとエージェントの会話、利用可能なツールリスト、エージェントが選択したツール、そして関数呼び出しが正常か故障かを示すラベルが含まれます。シングルターンデータは13,054件で、Perfect、Imperfect、External、Irrelevantの各カテゴリにほぼ均等に分かれています。

間接的プロンプトインジェクションの結果では、電子メールデータセットにおいて「高再現率・低適合率」のパターンが見られました。攻撃をほぼ完璧に検出できる一方で、良性プロンプトを攻撃と誤判定する率が高いモデルが複数ありました。また、全指標が0.5未満と苦戦するモデルもありました。PIGuardはF1 0.86(適合率0.79、再現率0.96)、Sentinelは0.87でした。表データセットではPIGuardがF1 0.91(適合率0.88、再現率0.94)で、唯一両データセットで安定して高い性能を示しました。PIGuardは間接的なプロンプトインジェクション攻撃を防ぎつつ、良性プロンプトも通す強力なガードレールといえます。

関数呼び出しの評価では、FlowJudgeのゼロショットF1は0.09、GLIDERは0.38で、どちらも非常に低い結果でした。フューショット例を追加するとFlowJudgeのF1は0.5まで上がりましたが、3回の実行間のコーエンカッパ係数は0.26から0.27で、「ほぼ一致」とは言えず、信頼性には疑問が残ります。定性的に見ると、同じデータポイントに対して実行ごとに異なる説明とスコアが生成されていました。

結論として、実験からPIGuardはBIPIAの電子メールと表データセットに対して有効な間接的プロンプトインジェクション検出モデルであることが分かりました。一方、関数呼び出しの故障検出は、カスタマイズ可能な判断モデルにとって依然として難しい課題です。このギャップが近い将来埋まることを期待しています。実験やデータ、結果の詳細はGitHubリポジトリで公開しており、any-guardrailもぜひ試してみてください。