TL;DR
検索された各ページを小型の判断モデル(Kev-4B)にHTMLのまま読ませ、AIへの指示や誤導目的のページかを判定するゲートです。公開済みの対策だけでは注入成功率13.6%の条件で、ゲート追加により5.7%へ低下。汚染では上位10件に絞る前に候補全体を選別すると偽ページ露出0.5%・精度83%を保ちます。LLM審査員はより高精度ですが約10倍のコストで、HTML入力がテキスト入力より有効と報告されています。
既存手法との違い
Corpus A(8B生成器、BM25上位5件)では、無防備27.9%、サニタイズ+Unicode正規化+引用促しで13.6%、TF-IDF検出器併用で10.6%に対し、Kevゲート併用は5.7%(しきい値0.5)。Kev単体はしきい値0.35で10.2%だがFPR 27.4%。LLM審査員はAUROC 0.99/1.00(Kev 0.94)だが約10倍コストで、70B審査員をドロップゲートにするとASR 0.4%・FPR 18.3%に対しKevは5.7%・2.2%。Corpus B(汚染2/3)では無防備の精度28%に対し、候補プール事前選別で83%。上位10件のみの除去は残りが少なく精度23%。
使える条件
HTMLを取得でき、検索されたページを生成前に選別したいRAG/LLMシステム。原論文は公開重みのKev-4B等を1台のRTX PRO 4500で実行し、8B生成器・BM25・上位5件(Corpus A)や200 MS MARCOクエリ・上位10件(Corpus B)で評価。しきい値は許容できるFPRから設定する想定。他の検索器・言語・ドメイン、独自モデル、JavaScriptや非テキスト媒体、埋め込みへの攻撃、ゲートの重みを知る攻撃は提示本文からは確認できない/対象外。
限界と未検証の範囲
攻撃成功率は文字列一致等による代理指標で、成功と数えた事例の93.5〜95.5%が実際の従順と監査されたが完全な正確性指標ではない。Corpus Aは元研究の設計を踏襲しデータは独自で、hard negativeは8テンプレート由来でクエリ間で再利用。ブートストラップ区間はしきい値選択とラベルノイズを無視。計画されたアブレーションは欠け、TF-IDF/perplexityベースラインの詳細は提示本文が途中で切れて確認できない。HTML優位は1チャンクよりページ全体を見る影響もありうる。トップ投票回答との一致は粗い正確性代理。0.35は報告クエリで選ばれており、展開時の一般化は未検証。
解説
智也くん、RAGって検索したページをそのままAIに読ませるんだよね? それって怪しい指示が混ざってても気づきにくいってこと?
そう。検索結果には、人間向けじゃなくてAI向けの指示が隠れてたり、順位を取りにいくための偽ページが混ざりうる。論文はそこを生成前に小型モデルで選別する話だよ。
小型の判断モデルって、文章を生成するんじゃなくて質問に答える感じ?
そう。Kev-4Bみたいな公開重みの判断モデルに、HTMLのまま渡して「AIへの指示か」「誤導目的か」「クエリに関連するか」を型付きの質問として採点させる。Q3は将来の再ランキング用で、今回は遅延に含めて数えてるだけ。
判定したあとは、どうやって使うの?
Q1かQ2が高ければ落とす。Q1が中間なら、回答全体を引用促しプロンプト付きで生成する。Corpus Bではランキング前に候補プール全体を選別する置き方も試してる。
前提は? どんな入力と計算資源でやってるの?
論文の範囲だと、HTMLを取得できて、検索されたページを生成前に選別したいRAGが対象。Kev-4Bなどは1台のRTX PRO 4500で実行。Corpus AはBM25上位5件と8B生成器、Corpus Bは200 MS MARCOクエリで上位10件を使ってる。
実際どれくらい効くの?
Corpus Aは8B生成器で、無防備27.9%、公開済みのサニタイズ+正規化+引用促しで13.6%。そこにKevゲート(HTML、しきい値0.5)を足すと5.7%。TF-IDF併用は10.6%。Kev単体0.35は10.2%だけどFPR 27.4%まで上がる。
誤爆とコストは?
Kevは76ms/ページ、FPR 2.2%(186件中4件)。クリーンクエリの応答性は85.6%から86.2%でほぼ据え置き。LLM審査員はAUROC 0.99でKev 0.94より強いけど約10倍コスト。70BをドロップゲートにするとASR 0.4%・FPR 18.3%で、Kevは5.7%・2.2%。
汚染の方は?
Corpus Bは候補の2/3が偽ページ。無防備だと精度28%。上位10件に絞る前に候補全体を選別すると露出0.5%・精度83%。上位10件だけ除去すると残りが少なくて精度23%。HTML入力はテキスト入力より各ゲートで有効だった、と報告されてる。
へえ、じゃあ安い門番を検索と生成の間に入れる感じか。
ただし置き場所が大事。汚染が多いなら上位10件に切る前に見る。サニタイザは残して、生HTMLにゲートを足して、許容できるFPRからしきい値を決める、ってのが論文の示唆。
制限は?
ASRは文字列一致などの代理指標で、成功扱いの93.5〜95.5%が実際の従順だったと監査されてるけど正確性指標ではない。Corpus Aは元研究の設計を踏襲した独自データで、hard negativeは8テンプレート由来で再利用。ブートストラップ区間はしきい値選択とラベルノイズを無視。計画アブレーションは欠けてて、TF-IDFとperplexityの詳細は提示本文が途中で切れて確認できない。HTML優位は1チャンクよりページ全体を見てる影響もありうる。トップ投票回答との一致は粗い代理。0.35は報告クエリで選ばれた値で、他検索器・言語・ドメイン、JSや非テキスト媒体、埋め込み攻撃、ゲート重みを知る攻撃は提示本文からは確認できないか対象外。
じゃあ、私の脳にもKev-4Bを常設して、怪しい情報をHTMLごと弾いてほしいな。
お前の脳はHTML読む前に寝るだろ。