什么是 Rerank?

Rerank(重排序)是信息检索和 RAG 流程中的一个进阶阶段。在传统的向量检索(如余弦相似度)或关键词检索(如 BM25)快速召回大量候选文档后,Rerank 引入一个计算成本更高但理解能力更强的交叉编码器(Cross-Encoder)模型。该模型同时接收用户的查询(Query)和候选文档(Document),计算它们之间深度的语义相关性得分,并据此重新排列文档顺序,从而将最相关的片段推至最前列,供 LLM 生成最终答案。

快速了解

全称Reranking in RAG (Retrieval-Augmented Generation)
创建时间随着 2023-2024 年 RAG 技术的工程化落地,Rerank 作为解决检索痛点的核心手段被广泛采用。

工作原理

随着 RAG 技术的普及,开发者很快发现仅依靠向量数据库进行初步检索(初排/召回)存在局限性。向量检索通常使用双编码器(Bi-Encoder)将查询和文档分别映射到高维空间并比较距离,这种方法速度极快,适合从海量库中筛选出 Top-K,但容易忽略词序、细微语境以及复杂的逻辑关系。这导致大模型经常收到“字面上相似但逻辑无关”的垃圾上下文,引发幻觉。Rerank 模型的引入彻底改变了这一局面。它将初排选出的少数文档(如前 50 篇)与用户的查询拼接在一起输入到一个强大的评分模型(如 BGE-Reranker, Cohere Rerank)中。因为模型同时看到了问题和答案候选,它能捕捉到深度语义交互,计算出极其精确的匹配度。虽然这个过程较慢,但由于只处理少量候选者,因此在系统延迟和检索精度之间取得了完美的平衡。如今,'向量检索 + Rerank' 几乎成为了生产级 RAG 架构的标配。

主要特点

  • 两阶段检索架构:通常作为初排(向量检索或 BM25)之后的第二阶段
  • 交叉编码器 (Cross-Encoder):同时输入 Query 和 Document 交互计算,而非预先计算独立向量
  • 计算成本较高:比普通向量检索慢,因此只能处理初排过滤后的少数候选文档
  • 即插即用:大多数重排器(如 Cohere API 或本地部署的 BGE 模型)可以轻松集成到现有的 LangChain 或 LlamaIndex 流程中
  • 显著提升 RAG 质量:极大提高 Top-1 到 Top-5 文档的相关性,直接减少 LLM 的幻觉生成

常见用途

  1. 企业级 RAG 问答系统:在海量公司文档中,确保提供给大模型的是最精准的几段规定或说明
  2. 电商商品搜索:在初步筛选出符合品类的商品后,根据用户搜索意图的细微差别进行精确排序
  3. 智能客服与工单匹配:准确理解用户复杂的报错描述,从历史知识库中重排最匹配的解决方案
  4. 法律与医疗文献检索:在对术语精度要求极高的领域,过滤掉表面相似但法条或病理无关的段落
  5. 多路召回融合:当结合了关键词检索(BM25)和向量检索的结果时,使用 Rerank 作为统一的最终裁判来排序

示例

loading...
Loading code...

常见问题

为什么不直接用 Rerank 模型去搜索整个数据库?

因为计算复杂度太高。Rerank(交叉编码器)需要在查询时同时处理问题和文档的组合,无法像向量(双编码器)那样预先计算好索引并进行极速的近似最近邻搜索(ANN)。如果用它去扫描几百万篇文档,响应时间可能需要几分钟甚至几小时,所以它只能作为二次筛选的轻量级裁判。

有哪些开源的 Rerank 模型推荐?

目前业界非常流行开源模型,尤其是北京智源人工智能研究院开源的 BGE-Reranker 系列(如 bge-reranker-large),在多语言和中文上表现优异。此外,Jina AI 和 Nomic 也有非常出色的开源重排模型,可以通过 Hugging Face 或 Ollama 在本地部署。

使用了 Rerank,RAG 还需要做向量优化吗?

需要。Rerank 就像是一个精明的面试官,但前提是人力资源(初排/向量检索)能把有潜力的候选人先招进来。如果初排连包含答案的文档都没能捞进前 50 名,Rerank 也无能为力(俗称“巧妇难为无米之炊”)。所以优化 Chunking 策略和 Embedding 模型依然非常重要。

相关工具

相关术语

检索增强生成

检索增强生成是一种 AI 架构,通过在生成响应之前从外部知识库检索相关信息来增强大语言模型的输出,结合信息检索系统和生成式 AI 的优势,产生更准确、更新和可验证的答案。

大语言模型

大语言模型(LLM,Large Language Model)是一种在海量文本数据上训练的人工智能模型,能够以出色的流畅性和上下文感知能力理解、生成和处理人类语言,为对话式 AI 到代码生成等应用提供支持。

Hybrid Search

Hybrid Search(混合检索)是一种在信息检索和 RAG(检索增强生成)系统中同时使用多种搜索算法的技术。最常见的组合是将捕获上下文和概念含义的**密集向量检索(Dense Vector Retrieval)**与专注于精确词汇匹配和特定实体查找的**稀疏关键词检索(Sparse Keyword Retrieval,通常指 BM25 算法)**融合在一起。系统分别运行这两路搜索,然后通过融合算法(如 RRF,倒数排名融合)将它们的结果合并,从而在理解用户意图的同时,确保不会漏掉包含特定产品名称、ID 或行业黑话的关键文档。

GraphRAG

GraphRAG(Graph Retrieval-Augmented Generation)是一种高级的 AI 检索架构。它在数据入库阶段使用 LLM 提取文本中的实体和关系构建知识图谱,在查询阶段结合图谱检索和向量检索,从而显著提升 LLM 在处理复杂逻辑、跨文档推理和全局摘要任务时的准确性。

相关文章