リランキング(Reranking)とは、一度検索して得られた複数の候補を、質問との関連性でもう一度評価し、より適切な順番へ並べ直す処理です。
生成AIの分野では、特にRAG(検索拡張生成)の検索精度を改善する方法として使われます。
たとえば、社内マニュアルを検索して10件の候補が見つかったとします。しかし、最初の検索結果が「AIの回答に使う情報として最適な順番」になっているとは限りません。
そこで、質問と各候補の関係を改めて評価し、より役立ちそうな情報を上位へ移動させるのがリランキングです。
この記事では、リランキングの意味や仕組み、RAGで使われる理由、ベクトル検索やリトリーバーとの違い、基本的な使い方を初心者向けに解説します。
リランキングとは?
リランキングとは、簡単にいえば「検索結果をもう一度評価して、順位を付け直すこと」です。
英語の「re-ranking」は、「再び順位付けする」という意味です。
検索結果を「もう一度並べ直す」処理
通常、リランキングの前には最初の検索があります。
たとえば、「育児休業の申請方法を知りたい」という質問に対して、検索システムが次の候補を取得したとします。
- 育児休業制度の概要
- 育児休業の申請書
- 育児休業の申請手順
- 介護休業について
- 就業規則の目次
この中では「育児休業の申請手順」が質問への回答に特に役立ちそうです。
そこで、リランキングによって質問と各文書の関連性を改めて評価し、「育児休業の申請手順」を上位へ並べ直します。
つまり、
最初の検索 → 候補を取得 → リランキング → より関連性の高い順に並べ替える
という流れです。
リトリーバーとの違い
リランキングとリトリーバーは関係していますが、同じ役割ではありません。
リトリーバーは、質問に関連する文書や情報を探して取得する役割です。
一方、リランキングは、取得済みの候補を再評価して順位を調整する処理です。
初心者の場合は、
- リトリーバー:候補を探す
- リランキング:候補を並べ直す
と覚えると整理しやすいでしょう。
リランキングの仕組み
リランキングの実装方法はシステムによって異なります。ただし、基本的には「候補を取得してから、質問との関連性を改めて評価する」という流れです。
1. 質問を受け取る
最初に利用者から質問や検索キーワードを受け取ります。
たとえば、
「出張時のホテル代はいくらまで?」
という質問です。
この質問が検索や評価の基準になります。
2. 検索で候補を取得する
次に、ベクトル検索やキーワード検索などを使い、質問に関連しそうな文書を複数取得します。
この段階では、すべての文書を細かく比較するのではなく、まず有力な候補を絞り込む構成がよく使われます。
3. 候補を再評価する
続いて、取得した候補と質問との関連性を改めて評価します。
リランキング用のモデルを使う場合は、
- 利用者の質問
- 候補となる文書
を組み合わせて評価し、それぞれへ関連性を示すスコアを付けます。
代表的な方法の一つが、質問と文書を組み合わせて評価するクロスエンコーダーです。
ただし、リランキングが必ずクロスエンコーダーだけで行われるわけではありません。利用するサービスやシステムによって方法は異なります。
4. 順位を付け直す
各候補を評価したら、新しいスコアなどをもとに順位を付け直します。
最初の検索で3位だった文書が、リランキング後には1位になることもあります。
重要なのは、検索候補そのものをゼロから探し直すのではなく、すでに取得した候補をさらに絞り込む工程として利用できることです。
5. RAGでは上位の情報をLLMへ渡す
RAGでは、リランキング後に上位となった文書をLLMへ渡し、回答生成の参考情報として利用できます。
大まかな流れは次のとおりです。
- 利用者が質問する
- リトリーバーが関連文書を取得する
- リランキングで文書を再評価する
- 関連性の高い文書を選ぶ
- 選ばれた情報をLLMへ渡す
- LLMが回答を生成する

このように、リランキングは検索と回答生成の間に置かれることがあります。
なぜリランキングが必要なのか
リランキングが利用される理由は、最初の検索だけでは、最終的に使いたい順番まで十分に判断できない場合があるためです。
ベクトル検索では、文章をベクトルで表現し、意味的に近い情報を効率よく探せます。
ただし、「意味が近い文書」と「質問への回答として特に役立つ文書」は、必ずしも完全に一致するとは限りません。
たとえば、
「退職時に返却するものを知りたい」
という質問に対して、
- 退職手続き全般の説明
- 社員証・PC・備品の返却方法
- 退職届の書き方
が検索されたとします。
どれも退職に関係する情報です。しかし、質問への直接的な答えとしては「社員証・PC・備品の返却方法」の優先度が高いでしょう。
リランキングでは、このような候補同士を改めて比較し、質問への関連性が高い情報を上位へ移動させます。

そのため、検索結果の上位精度を改善したい場合や、RAGでLLMへ渡す情報を絞り込みたい場合に利用できます。
リランキングとベクトル検索・Embedding・リトリーバーの違い
RAGを学んでいると、リランキングと一緒にEmbedding、ベクトル検索、リトリーバーなどの用語が登場します。
それぞれの役割は次のように整理できます。
| 用語 | 初心者向けの意味 | 主な役割 |
|---|---|---|
| Embedding | 文章などを数値の並びで表現する方法 | 意味を比較しやすくする |
| ベクトル検索 | ベクトル同士の近さなどから情報を探す方法 | 関連候補を検索する |
| リトリーバー | 質問に関連する情報を取得する仕組み | 文書や情報を取得する |
| リランキング | 取得済みの候補を再評価して並べ直す処理 | 上位候補の精度を高める |
| LLM | 大量の文章を扱う大規模言語モデル | 文章生成や質問回答など |
| RAG | 外部情報の検索と生成を組み合わせる仕組み | 取得情報を回答生成に活用する |
特に重要なのは、リランキング=検索そのものではないという点です。
最初に候補を取得する検索処理があり、その後の候補をさらに評価する工程がリランキングです。
リランキングはどのように使う?
リランキングは、検索結果の中から「本当に使いたい情報」をさらに選びたい場面で活用できます。
RAGで参照情報を絞り込む
代表的な用途がRAGです。
たとえば、100件の社内規程からベクトル検索によって20件の候補を取得し、その20件をリランキングして上位5件をLLMへ渡す、といった構成を考えられます。
候補数やLLMへ渡す件数に決まった正解があるわけではありません。データや質問、利用するモデルなどに合わせて調整します。
社内文書検索
大量のマニュアル、規程、FAQ、議事録などを検索すると、同じキーワードや似た内容を含む文書が多数見つかる場合があります。
リランキングを追加すれば、それらの候補を質問との関連性でもう一度比較できます。
FAQやカスタマーサポート
FAQ検索でも利用できます。
利用者の質問に似たFAQを最初に広めに取得し、その後でリランキングを行うことで、より質問に合う候補を上位に表示する設計が可能です。
検索システムの結果改善
リランキングはRAGだけの仕組みではありません。
キーワード検索、ベクトル検索、ハイブリッド検索などで取得した候補に対し、追加のランキング工程として組み込むこともできます。

リランキングを使うメリット
リランキングの主なメリットは、最初の検索結果をそのまま使うのではなく、質問との関連性を基準にもう一段階絞り込めることです。
具体的には、次のような効果が期待できます。
- 質問に関連する文書を上位へ配置しやすくなる
- RAGでLLMへ渡す文書を絞り込みやすくなる
- ベクトル検索などの初期検索を補完できる
- 関係の薄い文書が上位へ残る問題を減らせる可能性がある
- 検索部分と生成部分を分けて改善しやすくなる
ただし、リランキングを追加しただけで、回答の正確性が保証されるわけではありません。
元の情報や最初の検索結果に必要な文書が含まれていることも重要です。
リランキングを使う際の注意点
リランキングは便利ですが、万能ではありません。
最初の検索で必要な情報を取得する必要がある
リランキングは、基本的に取得済みの候補を並べ直します。
そのため、正解に必要な文書が最初の候補に含まれていなければ、並べ替えるだけでは取り戻せません。
まずは検索段階で必要な情報を取得できていることが重要です。
処理が一段階増える
通常の検索にリランキングを追加すると、評価処理が増えます。
そのため、利用するモデルやサービス、候補数によっては、処理時間やコストとのバランスを考える必要があります。
候補を増やせば必ず良くなるわけでもないため、実際の質問を使って評価することが大切です。
リランキング後の順位を実際に評価する
仕組みを導入しただけでは、改善したかどうかは分かりません。
たとえば、
- 正解に必要な文書が上位に来ているか
- 関係のない文書が下がっているか
- リランキング前より検索結果が改善したか
- 最終的なRAGの回答品質が改善したか
などを確認します。
リランキングは「入れれば終わり」ではなく、検索結果を評価しながら調整することが重要です。
よくある質問:リランキングの疑問を解説
リランキングとは簡単にいうと何ですか?
検索で取得した候補をもう一度評価し、質問との関連性が高い順へ並べ直す処理です。
RAGでは、LLMへ渡す情報を選びやすくするために利用されます。
リランキングとリトリーバーは同じですか?
同じではありません。
リトリーバーは質問に関連する情報を検索・取得する役割です。一方、リランキングは取得した候補を再評価し、順位を付け直します。
リランキングはRAGに必須ですか?
必須とは限りません。
シンプルなRAGでは、リトリーバーで取得した文書をそのままLLMへ渡す構成もあります。
ただし、初期検索だけでは上位の関連性が十分でない場合などに、リランキングを追加して検索部分を改善できます。
リランキングでは必ずクロスエンコーダーを使いますか?
必ずしもクロスエンコーダーだけを使うわけではありません。
クロスエンコーダーは代表的な方法の一つですが、利用するサービスやシステムによって再評価の方法は異なります。
ベクトル検索の後にもリランキングできますか?
できます。
ベクトル検索で候補を取得し、その候補をリランキングする構成は代表的な利用方法の一つです。
また、キーワード検索など別の検索方法で取得した結果を再評価する用途にも利用できます。
リランキングを使えば生成AIの回答は正確になりますか?
正確性が保証されるわけではありません。
検索対象の情報が間違っている場合や、必要な文書が最初の検索で取得されていない場合は、リランキングだけでは解決できません。
検索結果と生成された回答の両方を評価することが大切です。
まとめ
リランキングとは、最初の検索で取得した候補を改めて評価し、質問との関連性が高い順へ並べ直す処理です。
初心者は次のように整理すると理解しやすいでしょう。
- 検索・リトリーバー:関連しそうな候補を探す
- リランキング:取得した候補をもう一度評価する
- LLM:選ばれた情報を参考に回答を生成する
- RAG:検索した外部情報を生成処理へ活用する
リランキングは、特にRAGで検索結果の上位精度を高めたいときに役立ちます。
一方、必要な文書を最初の検索で取得できなければ、リランキングだけでは解決できません。そのため、ベクトル検索、リトリーバー、データの品質などと合わせて考えることが重要です。
