- 公開日
検索用に質問を書き換えるときは、元の質問を残し、対象・除外条件・期間が変わっていないかを検索前に照合します。略語を正式名へ補うことと、質問の範囲を広げることは別です。「旧製品を除く」を落とした検索文は、結果が多く出ても採用しません。
Query Rewritingは、利用者の質問を検索に使う表現へ変換する処理です。会話の指示語を具体化したり、資料で使われている用語を補ったりできます。Query Rewriting in Retrieval-Augmented Large Language Modelsは、入力と必要な知識を探す検索文との間を扱い、Rewrite–Retrieve–Readという構成を提案した研究です。ただし、全業務での改善や、否定・時点の自動的な保持を保証したものではありません。
検索文の候補を作った後、元の質問と条件を照合し、合わない案を実行前に差し戻す段階を置きます。
検索語へ変えてよい部分を分ける
「この機種」のような表現は、会話で対象が一意に確定しているなら、製品名や識別番号へ置き換えられます。社内で使う略称を正式な規程名と併記する方法もあります。ただし、検索結果から見つけた製品を後付けで「この機種」だったことにすると、利用者の質問が検索結果に引きずられます。
変換前に、質問を次の項目へ分けて保持すると照合しやすくなります。
- 何を知りたいか。条件の確認、比較、対象資料の一覧など
- 対象は何か。製品、企業、部署、契約と、その識別子
- 何を含めないか。「除く」「ではない」「以外」などの範囲
- いつの話か。基準日、開始日・終了日、時点を表す言葉
- どの地域・法域・利用条件か
これらを必ず一つの自然文へ詰め込む必要はありません。元の質問、解決済みの指示語、検索文、検索後も守る条件を分けて保持できます。否定が検索エンジンでどう解釈されるか分からないのに、「除く」と書けば除外されると期待するのは避けます。検索文の意味の保持と、取得結果に条件を適用する実装の確認は両方必要です。
権限条件も検索文とは別に維持します。書き換えモデルが「全社の資料を検索」と出力しても、利用者の閲覧範囲を広げる許可にはなりません。実行側は認証された利用者と許可済みの資料範囲を使い、生成された文言でその境界を上書きしない設計にします。
「旧製品を除き、今期」をどう具体化するか
架空の営業担当者が、「旧製品を除き、今期の国内販売品の返品条件を確認して」と質問したとします。これは実在の販売条件ではなく、書き換えの照合を説明する例です。
この場面では、承認された社内の商品台帳と会計期間の設定から、次の前提を確認できたと仮定します。現在の対象製品はP-20とP-30、除外する旧製品はP-10です。「国内」は日本向け販売条件、「今期」は2026年10月1日から12月31日までを意味します。担当者は、この範囲の返品規程を閲覧できるものとします。
原文だけでこれらが分かるわけではありません。別の企業では期の区切りが異なり、「国内」が別の国を指す場合もあります。前提の出所を持たずに、実行日の月や日本語の質問であることから補ってはいけません。ここでの「日本向け」は架空の販売規程の対象区分であり、個別の法律の適用を判定した意味ではありません。元質問に法域の指定がある場合は、その指定も書き換えで維持します。
| 照合する項目 | 原文と確認済みの文脈 | 検索に引き継ぐ意味 |
|---|---|---|
| 目的 | 返品条件を確認 | 返品の対象・期限などの条件を調べる |
| 対象 | 国内販売品。現行はP-20、P-30 | 日本向けのP-20とP-30を両方扱う |
| 除外 | 旧製品を除く。旧製品はP-10 | P-10の条件を回答の根拠へ混ぜない |
| 期間 | 今期は2026年10月1日~12月31日 | この期間に適用される条件を探す |
| 権限 | 担当者に許可された返品規程 | 検索のために範囲を広げない |
書き換え案Aは、「日本向け販売製品P-20・P-30の返品条件。対象期間は2026年10月1日~12月31日。旧製品P-10を除外」とします。意味の対応は保たれていますが、この自然文を検索へ渡すだけで正しいフィルタが実行されるとは限りません。取得した資料でも対象と期間を照合します。期間内に条件が改訂される資料なら、一つの条件が全期間に当てはまるとせず、適用期間ごとに分けて確かめます。
案Bの「全製品の最新の返品条件」は差し戻します。P-10の除外を失い、二製品の範囲を全製品へ広げ、「今期」を「最新」に変えています。検索語が短くなったことや、高い関連度スコアが出たことは、この変更の理由にはなりません。
単語を見比べるだけでは不十分な場合もあります。「P-10以外を除く」はP-10だけを残す意味になり、元の「P-10を除く」と逆です。否定語の有無に加え、何に否定がかかっているかを確認します。「P-20とP-30」を「P-20またはP-30のどちらか一つ」に変えることも、二製品を調べる目的を失わせます。二重否定などで対象を確定できなければ、書き換え案を実行へ回さず、原文へ戻ります。
資料を得た後も、元の問いで答えを確認する
例の資料集合に、次の短い規程があると仮定します。いずれも架空で、検索順位や取得結果を測定したものではありません。
- D1:日本向けP-20、2026年10月1日~12月31日適用。「未開封に限り、納品後14日以内に返品を受け付ける」
- D2:日本向けP-30、同期間適用。「初期不良に限り、納品後7日以内に返品を受け付ける」
- D3:旧製品P-10の規程。「理由を問わず、納品後30日以内に返品を受け付ける」
案Aを用いた処理で期待するのは、D1とD2を取得し、製品ごとに条件を分けて回答することです。「P-20は未開封に限り納品後14日以内、P-30は初期不良に限り納品後7日以内」と、対象期間と出典を添えます。D1の未開封条件をP-30へ適用したり、二つの期限を一律14日にしたりしません。
案BならD3が取得候補へ混ざる可能性があります。ただし、混入や誤回答が必ず起きると実証した例ではありません。仮にD3が取れても、元の質問に戻って対象を照合する仕組みがあれば、P-10は根拠から外せます。書き換えの不適合、検索候補の混入、最終回答の誤りは別々に記録します。
D1しか取れなかった場合も、P-30に同じ条件を当てはめません。「P-20の条件は確認できました。P-30の適用資料は未確認です」と分け、許可済みの資料範囲でP-30を再確認します。質問が二製品を含む以上、一製品だけの回答で完了したことにはしません。
書き換えだけを変えて比較する
書き換えの効果を調べるなら、同じ質問を、原文のまま検索する場合と、照合済みの案Aで検索する場合で比べます。資料版、利用者の権限、検索器、索引、取得件数、Reranker、フィルタ、生成モデルと設定を固定します。変えるのは検索文です。実際の取得文書が変わることは、その変更の結果として扱います。
最初に見るのは、書き換え後の意味です。目的、P-20とP-30、P-10の除外、日本向け、期間が保持されているかを、人が確認した参照条件と照合します。この確認に落ちる案は、本番検索へ使わず差し戻します。検索性能が良ければ意味の変更を許す、という基準にはしません。
次に、取得した文書IDと該当箇所を保存し、D1とD2の必要情報が得られたか、D3を回答の根拠から除けたかを点検します。最後に、回答が二製品の条件を分け、原文にない条件を足していないかを採点します。正しい資料が取得できても、回答が条件を取り違えたなら、検索と生成を分けて修正します。この切り分けの考え方は、RAGはハルシネーション対策の万能薬ではないでも説明しています。
複数の検索文へ分割する方法もあります。P-20用とP-30用を作るなら、それぞれに日本向けと期間を引き継ぎ、両方の結果を元の質問へ戻して統合します。ただし、検索文の表現と検索回数が同時に変わるため、一回検索との比較を「書き換え表現だけの改善」と説明できません。回数と待ち時間を含む処理全体の比較にします。
一問だけで採否を決めず、期間の境界、似た製品名、否定を含む質問、文脈不足の質問でも確認します。言い換え生成が実行ごとに変わる場合は、生成された検索文も記録して反復します。未実行の期待結果を成功率へ変換せず、効果を報告するときは評価質問、固定条件、変更条件、判定不能の件数を併記します。
不明な条件は、広げずに確かめる
「今期」の期間を確認できなければ、「対象期間は何月から何月ですか」と尋ねます。旧製品の一覧が不明なら、対象製品の番号や台帳の範囲を確認します。曖昧な部分を勝手に広げて検索し、もっともらしい結果から後付けで意味を決めないようにします。
元質問での検索へ戻せる場合もありますが、未解決の曖昧さが消えるわけではありません。明確な範囲だけを調べるなら、何を仮定し、何を回答できないかを示します。期間や製品の特定が結論を変える場合は、その回答を保留します。
記録には元質問、書き換え案、補った情報の出所、照合結果、実際に使った検索文、取得した根拠を対応づけます。必要以上の会話履歴や秘密情報を記録する必要はありません。誤った回答が出たとき、質問の解釈、書き換え、取得、生成のどこで条件を失ったかを追える形にします。
書き換え案の採用は、原文との対応、取得した根拠、最終回答の三か所で確かめます。検索結果が増えたことだけを合格にせず、P-20とP-30の条件へ正しく答えられたかまで戻って確認します。
検索スコアが低いときに回答を止める基準は「検索スコアが低いとき回答生成を止める閾値設計」、RAGを工程として管理する基本は「RAGを工程の連なりとして管理する:文書投入から回答までの基本」で解説しています。

