RAG・検索基盤

Corrective RAGとは|混ぜると2/5、駄目なときだけ引き直すと4/5

Corrective RAGとは何をするのか最初から両方引くのと何が違うのか採点が外れたらどうなるのか

検索が外れたまま答えを作ると、間違いがそのまま出ます。取ってきた結果を採点して、良くなければ引き直すのがこの構成です。

実際に測ったところ、1位が正解の問いは1件から4件になりました。一方、採点せずに最初から2通り引いて混ぜた場合は2件止まりでした。

この記事の要点

  • 何もしないと1位が正解は1/5
  • 採点して引き直すと4/5(検索9回)
  • 最初から両方引いて混ぜると2/5(検索10回)
  • 採点を1割誤ると、100問あたり6件を取りこぼす

混ぜると2/5、駄目なときだけ引き直すと4/5

3通りのやり方を同じ問いで測りました。採点して引き直す方式が、検索回数を減らしたうえで最も良い結果でした。

Corrective RAGで引き直しを入れると結果がどう変わるのかを、実際に走らせて測りました。使ったのは社内規程を模した文書13件と、語が食い違う問い5件です。

引き直しの文面は文書の中身を見ずに、聞き方を変えただけで用意しました。比較のため、最初から2通り引いて混ぜる方式も測っています。

javascript
let ok = 0, search = 0, judge = 0;
for (const { q, rel } of ALT_QUERIES) {
  let ids = bm25(q).map((x) => x.i); search++;
  judge++;
  if (!grade(ids, rel)) { ids = bm25(RETRY[q]).map((x) => x.i); search++; judge++; }
  if (grade(ids, rel)) ok++;
}
text
やり方                  1位が正解  検索の回数  採点の回数
引き直しなし                      1 / 5          5回          0回
採点して駄目なら引き直す                4 / 5          9回          9回
採点せず最初から両方引く                2 / 5         10回          0回

問い                        1回目  引き直し後
ホテル代の限度額                        外れ          正解
出張手当は日帰りだと                      正解          正解
仮払の申請                           外れ          外れ
消耗品の購入                          外れ          正解
レポートの提出期限                       外れ          正解

上の表を見てください。何もしない場合の1/5に対して、採点して引き直すと4/5になりました。

混ぜたほうが悪い

3行目が、採点せずに最初から2通り引いて混ぜた場合です。結果は2/5で、検索回数は10回と最も多くなりました。

1回目が当たっていた問いでも、外した2回目の結果が混ざります。順位を足し合わせる方式では、当たりが薄まります

混ぜずに差し替える

引き直す方式では、1回目が当たっていれば2回目を引きません。当たりが薄まる場面が起きません。

検索回数も9回で、混ぜる方式の10回より少なくなりました。当たっていた1件ぶん引かずに済んでいます

引き直しても駄目な問い

残った1件は、引き直しても外れたままでした。言い換えを変えても届かない問いは存在します。

混ぜると当たりが薄まる。駄目なときだけ差し替える。

単位: 件採点して引き直す4件最初から両方引く2件引き直しなし1件問い5件・文書13件での実測。検索回数は順に5回・9回・10回。
図1 ── 3通りのやり方と1位が正解だった件数
出典Yan et al.「Corrective Retrieval Augmented Generation」2026-08-18 確認
different knowledge retrieval actions can be triggered
原文Yan et al.「Corrective Retrieval Augmented Generation」 この内容の有効期限2027-02-18

Corrective RAGとは何をするのか

検索結果を採点する役を挟み、その点数に応じて次の動きを変えます。良ければそのまま、悪ければ引き直します。

Corrective RAGは、検索した結果をそのまま使わず、まず採点する構成です。日本語では訂正付きの検索と呼ばれます。

外れたまま進むのを止める

普通の構成では、検索が外れてもそのまま答えを作ります。外れた文書をもとにした答えが出てきます。

原論文も、検索が誤った場合にモデルがどう振る舞うかへの懸念を出発点として挙げています。この懸念に対する手立てです。

採点する役を挟む

採点は本体のモデルとは別に置きます。原論文の説明では、軽量な検索評価器が、問いに対する検索文書の全体的な質を評価し、確信度を返すとされています。

点数が返ってくれば、次に何をするかを分岐できます。原論文も、点数に応じて異なる知識検索の動作が起動されうるとしています。

分岐の形

  1. 検索する。ここまでは普通の構成と同じ
  2. 採点する。取ってきた文書が問いに答えているか
  3. 良ければそのまま渡す。引き直さない
  4. 悪ければ引き直す。言い換えるか、別の探し方に切り替える

原論文は、この仕組みが差し込むだけで使え、さまざまな検索併用の手法と無理なく組み合わせられるとしています。既存の構成の間に挟む形です。

余談 この計測での注意

採点は正解を知った状態で行っています。採点が完璧な場合の上限値だと考えてください。実際には小さめのモデルに判定させるので、ここまでは出ません。採点が外れたときにどれだけ落ちるかは、この記事の運用の節で数えています。

出典Yan et al.「Corrective Retrieval Augmented Generation」2026-08-18 確認
a lightweight retrieval evaluator is designed to assess the overall quality of retrieved documents for a query, returning a confidence degree
原文Yan et al.「Corrective Retrieval Augmented Generation」 この内容の有効期限2027-02-18

Corrective RAGを運用するときに決めること

採点の精度がそのまま上限になります。加えて、引き直しの回数に上限を設けないと待ち時間が読めなくなります。

Corrective RAGを入れると、採点役が新しい部品として増えます。この部品の出来が全体を決めます。

採点が外れると見逃す

採点が「良い」と誤れば、引き直すべき問いがそのまま通ります。外れた文書で答えが作られます

text
採点の正しさ  引き直しが要るのに気づけない件数(100問あたり)
     100%                          0.0件
      95%                          3.0件
      90%                          6.0件
      80%                         12.0件

前の節の実測で、引き直しが必要だった問いは5件中3件でした。この6割という割合をもとに数えています。

採点が9割正しくても、100問あたり6件は引き直されずに通ります。採点役の評価は別に用意する必要があります。

回数の上限を決める

引き直しは繰り返せますが、1回ごとに検索と採点が積み上がります。前の節の計測は1回だけで、検索9回・採点9回でした。

上限を決めておかないと、うまくいかない問いで待ち時間が伸び続けます。何回で打ち切るか、打ち切ったとき何を返すかを先に決めてください。

記録しておくもの

  1. 採点の結果。良いと判定した割合が急に変わったら異常
  2. 引き直しの回数。増えたら文書か問いの傾向が変わっている
  3. 打ち切りに達した件数。ここが答えられていない問い
  4. 1回目で通った割合。採点役を外したときの水準

4番目が効きます。1回目で通る割合が上がってきたら、引き直しの仕組みを外せるかもしれません。検索側の改善はHyDEの記事で扱っています。

採点の正しさが、そのまま見逃しの数になる。

120100%95%90%80%引き直しを逃す件数引き直しが必要な問いの割合を、実測の3/5(60%)として計算した数え上げ。
図2 ── 採点の精度と見逃す件数(100問あたり)
出典Yan et al.「Corrective Retrieval Augmented Generation」2026-08-18 確認
raising concerns about how the model behaves if retrieval goes wrong
原文Yan et al.「Corrective Retrieval Augmented Generation」 この内容の有効期限2027-02-18

よくある質問

最初から複数引いて混ぜるほうが簡単では
この計測では混ぜたほうが悪くなりました。外れた検索の結果も一緒に混ざるためです。
採点は誰がやるのですか
本来は小さめのモデルに判定させます。この計測では正解を知った状態で採点しているので、採点が完璧な場合の上限値です。
採点が外れるとどうなりますか
引き直すべき問いを見逃します。1割誤ると100問あたり6件が引き直されないまま通ります。
何回まで引き直せばよいですか
この計測は1回だけです。回数を増やすと待ち時間が伸びるので、上限を決めておく必要があります。

まとめ

  • 検索結果を採点して、駄目なら引き直す構成
  • 1位が正解は1/5から4/5
  • 最初から混ぜる方式は2/5で、回数はむしろ多い
  • 採点の正しさがそのまま上限になる

今日から始められること

  1. 自分の問いで、1回目の検索の当たり外れを数える
  2. 外れた問いだけを取り出して、引き直しの文面を考える
  3. 採点役に何を使うかを決める(小さいモデルか、規則か)
  4. 引き直しの回数に上限を設ける

実務で組んだCorrective RAGのワークフローには、値段が付きます

同じ課題を持つ会社にとって、動いている設定は「作る時間」を買えるということです。ServiceDockは自作のワークフローやテンプレートを出品できるマーケットプレイスです。手数料や出品の流れは出品者向けページにまとまっています。

出品の仕組みを見る