第4回 結果を読む:リランクの改善と、フィルター・ゲートが効く条件
連載:Decision-1をRAGに組み込む:設計・検証・運用の実践・第4回 | 連載のまとめ
Microsoft-Decision-1(以下、Decision-1)を検索拡張生成(RAG)へ組み込んだ結果、主評価で回答スコアが有意に上がったのは、検索候補を20件に広げて5件を選ぶ構成でした。不要な根拠を取り除くフィルターや、回答前の十分性判定には、同じ改善は確認できませんでした。
ただし、生成モデルを変えると結果も変わりました。この記事では、2026年10月16日から20日の検証を、構成全体の効果と生成モデルの動作に着目して読みます。採点結果の人手確認は未実施であり、数値は採点モデルの判断を含みます。[1]
1. 比較した構成と数値の読み方
主評価の生成モデルはgpt-6-lunaです。Microsoft Learn日本語版のAzure Storageに関する文書を使い、96問を各構成で3回実行しました。検索用に分割した文書の断片をチャンクと呼びます。候補を条件で絞る処理がフィルター、回答生成を実行するか決める処理がゲート、候補の順位を付け直す処理がリランクです。
比較に使った構成A〜Eを、処理内容とともに再掲します。
| 構成 | 検索候補 | 生成前の処理 | 生成へ渡す根拠 |
|---|---|---|---|
| A:基準 | 5件 | 判定なし | 検索上位5件 |
| B:関連性フィルター | 10件 | Decision-1で1件ずつ関連性を判定 | 確率0.8以上を確率順に最大5件 |
| C:フィルター+ゲート | 10件 | Bに加え、根拠全体の十分性を判定 | 最大5件。0件または不十分なら生成しない |
| D:リランク | 20件 | Decision-1で有用性を4段階評価して並べ替え | 評価上位5件 |
| E:汎用モデルのフィルター | 10件 | gpt-6-lunaで関連の有無を判定 | 関連ありを検索順に最大5件 |
回答スコアは、正解1点、部分正解0.5点、不正解0点の平均です。元資料の名称は「正答率」ですが、完全正解の件数割合とは区別します。有意差の判定は、質問ごとの3回平均について、構成Aとの差を対応あるブートストラップで比較したものです。
2. 主評価で改善したのは、候補を広げて選ぶ構成
| 構成 | 回答スコア | 根拠への忠実さ | 根拠IDの再現率 | 複数根拠の回答スコア |
|---|---|---|---|---|
| A:基準 | 0.906 | 0.966 | 0.743 | 0.783 |
| B:関連性フィルター | 0.915 | 0.961 | 0.815 | 0.792 |
| C:フィルター+ゲート | 0.911 | 0.957 | 0.815 | 0.800 |
| D:リランク | 0.938 | 0.974 | 0.872 | 0.900 |
| E:汎用モデルのフィルター | 0.898 | 0.971 | 0.754 | 0.675 |
主評価では、Dの回答スコアに有意な改善が報告されています。資料の丸め前の集計による差は+0.031です。表示された平均値同士を引いた差とは、丸めによって一致しない場合があります。[1]
Dでは、複数の根拠を要する質問のスコアが0.783から0.900へ上がりました。根拠IDの再現率も上がっており、検索候補を増やして選ぶことで、回答に必要な断片を渡しやすくなったと考えられます。
ただし、Aの候補は5件、Dは20件です。候補の拡大とDecision-1による選択が同時に変わっています。必要な根拠を渡しやすくなったという見方には合いますが、並べ替えだけの効果を測った結果ではありません。同じ20件から別の方法で5件を選ぶ比較が残ります。
根拠への忠実さは、回答中の主張を渡したチャンクで裏付けられる割合です。Dの値は高くなっていますが、平均が上がった指標をすべて有意な改善と扱わないようにします。また、根拠IDの再現率はラベルに依存し、別の正しい根拠を拾っても評価されない場合があります。
3. 根拠を絞ると、答えられる質問まで控えることがある
主評価のBでは、渡したチャンク中の正解根拠IDの割合が0.173から0.444へ上がりました。それでも、回答スコアや根拠への忠実さの改善は確認できませんでした。根拠を整理する指標と、回答品質が同じ方向に動くとは限りません。
gpt-6-lunaは、Aでも回答不能な22問×3回の66回答すべてで回答を控えていました。今回の質問では、生成モデルが元から不要な根拠を避け、根拠不足なら答えない動作をしていたことが、追加の判定の効果が小さかった理由として考えられます。
追加評価のgpt-5-nanoでは、Bで根拠への忠実さの改善が報告されました。一方、回答可能なのに控える過剰拒否率は0.086から0.158へ増え、回答スコアはAの0.807に対してBは0.800でした。不要な文書を減らす代わりに、必要な文脈まで絞りすぎる副作用が見えます。[2]
一つの断片だけでは答えにならなくても、前提条件やコードの説明として必要なことがあります。フィルターを選ぶ際は、根拠の適合率に加え、複数根拠の質問と過剰拒否を確認する必要があります。
4. 回答を止めた二つの条件を区別する
Cには二つの停止条件があります。一つはフィルターを通過した根拠が0件の場合、もう一つは残った根拠全体をDecision-1が不十分と判定した場合です。どちらも生成モデルを呼ばずに回答を控えます。
主評価で十分性判定が「不十分」としたのは288回中3回で、すべて回答可能な質問への過剰拒否でした。また、回答不能な66回のうち63回は、その前のフィルターですでに根拠0件になっていました。十分性判定を追加する余地自体が小さかったことが分かります。
Phi-4-mini-instructでは、回答不能な質問に具体的な答えを断定した件数が、Bの63件からCの3件へ減りました。Cの回答スコアもAの0.556から0.750へ改善しています。[2]
この違いは、十分性を見抜く能力だけでは説明できません。Bでは根拠が0件でも生成を呼び、Cではコードが生成を止めます。空の根拠でも回答を作るモデルに対して、この停止処理が働いたと解釈できます。なお、63件から3件という比較の基準はBです。Aの56件からの比較と混同しないようにします。
この結果から得られる設計上の学びは、生成を止める条件をコードで実装すると、その条件下での生成を抑えられるということです。ただし、0件にしたフィルターの誤判定は別に残るため、回答可否の正しさまで保証するものではありません。
5. 出力不良も実験結果として残す
生成モデルを変えたときの、AとDの回答スコアは次のとおりです。検索と判定の結果を再利用し、回答生成だけを差し替えています。Eのフィルターはgpt-6-lunaのままで、モデルごとの推論設定にも違いがあります。[2]
| 生成モデル | A:基準 | D:リランク | 読み取り |
|---|---|---|---|
| gpt-6-luna | 0.906 | 0.938 | Dで有意な改善 |
| gpt-5-nano | 0.807 | 0.870 | Dで有意な改善 |
| Phi-4-mini-instruct | 0.556 | 0.424 | Dで有意な悪化。出力不良を含む |
Phi-4-mini-instructのDでは、3回目の実行で、96回答中51回答が意味のない繰り返しなどで出力上限800トークンに達しました。不都合な回答を生成し直して平均を上げることはせず、元の結果を残しています。
上限に達した回答を除いた参考値はDが0.550、Aが0.569でした。ただし、除外すると比較対象が変わるため、この参考値で主結果を置き換えることもできません。出力の不安定さを含めた評価として読む必要があります。
したがって、「リランクはどのモデルでも改善する」とは結論できません。今回改善を確認した二つの生成モデルと、出力不良が目立ったモデルを分けて記述します。
6. 導入判断と、残る比較
今回の結果は、フィルター、ゲート、リランクを一括して「RAGを改善する追加処理」と扱わない方がよいことを示しています。必要な根拠を集める処理と、不要な根拠を落とす処理と、回答を止める処理は、別の失敗へ対処します。
自社の失敗が根拠の取りこぼしなら、検索候補を増やして選ぶ構成を試す理由があります。根拠不足でも生成してしまうなら、停止条件を実装する理由があります。すでに生成モデルが根拠を選んで回答を控えられる場合、追加のフィルターは過剰拒否と費用を増やすかもしれません。
採用前に残る比較は、同じ候補数での選択方法、既存のリランカー、別分野の文書、採点結果の人手確認です。今回の差は、自社の検証を始める材料として使い、製品やモデルの普遍的な順位とは扱わないことが適切です。
参考資料
資料の確認日:2026年10月23日。実行ログを取得しての再集計は行わず、以下の検証資料と集計表を照合しています。
- Decision-1 RAG評価検証・資料リリース(筆者、2026年10月22日版)。「04_PoC報告と考察」「05_検証手法」を参照。
- 生成モデルの差し替え比較(筆者、確認時のコミット)。追加評価、過剰拒否、回答不能時の断定、出力上限到達件数を参照。