FlashRank

让搜索排序快如闪电,CPU 上也能跑大模型重排序。

FlashRank 是一个轻量级、超快的重排序库,专为搜索和检索管道设计。它解决了在生产环境中部署大型重排序模型时面临的延迟和资源消耗问题,通过优化推理过程,实现了比传统交叉编码器快数倍的速度,同时保持高精度。核心能力包括支持基于 LLM 的 Listwise 和 Pairwise 重排序方法,以及多种交叉编码器模型,并提供简洁的 API 集成。它基于 ONNX Runtime 和 CTranslate2 等高效推理引擎,无需 GPU 即可在 CPU 上快速运行,适合资源受限的环境。项目由 Prithivi Da 创建,积极欢迎社区贡献,目前处于成长阶段。

开源 free 搜索知识
访问官网 ↗ GitHub ↗ 文档 ↗
GitHub 星标 ★ 1006
维护状态 维护中
是否开源
定价模式 free

项目数据

分类搜索知识
开发团队PrithivirajDamodaran
所属国家
官网地址
定价模式free
价格说明开源项目,Apache-2.0许可证,完全免费,可自行部署使用。
访问状态
是否开源
开源协议Apache-2.0
主要语言Python
技术栈/模型cross-encoder,full-text-search,hybrid-search,lexical-search,rag,ranking,reranking,retrieval-augmented-generation,semantic-search,vector-database,vector-search
GitHub 星标★ 1006
30天Star增速
HF 下载量
上线时间2023-12-04 00:00:00
最近更新2026-09-11 00:00:00
维护状态维护中
中文支持
访问方式
移动端支持
综合评分
收录时间2026-08-09
浏览次数1

使用教程

难度:入门 约 10 分钟 部署方式:库/依赖 4 步

⚠ 该项目 README 未提供完整安装说明,以下步骤为通用流程,请以官方文档为准。

环境要求

  • Python 运行环境(README 未指定版本)
  • 无需 GPU,可在 CPU 上运行
  • 无需安装 Torch 或 Transformers
  • AWS Lambda 等无服务器环境需准备可写目录用于存放模型

安装与启动步骤

  1. 1安装 FlashRank

    README 的 Installation 章节内容为空,未给出安装命令;此处 install 命令由示例中的 flashrank 包名推断,请以官方仓库为准。

    pip install flashrank
  2. 2验证导入

    确认库已正确安装,能导入 Ranker 与 RerankRequest 两个核心类。

    python -c "from flashrank import Ranker, RerankRequest"
  3. 3初始化重排序器

    README 示例使用默认的交叉编码器模型,并按需指定缓存目录;模型名与路径均为 README 中的示例值。

    from flashrank import Ranker, RerankRequest
    
    ranker = Ranker(model_name="ms-marco-MiniLM-L-12-v2", cache_dir="/opt")
  4. 4无服务器环境配置

    AWS Lambda 等环境中整个 VM 为只读,需在 Dockerfile 里自建目录并通过 cache_dir 传入,同时可作为热启动间的缓存。

    ranker = Ranker(model_name="ms-marco-MiniLM-L-12-v2", cache_dir="/opt")

关键配置

配置项必填说明示例
model_name指定使用的重排序模型名称ms-marco-MiniLM-L-12-v2
cache_dir模型下载与缓存目录,只读环境必填/opt

如何确认成功

执行 `from flashrank import Ranker, RerankRequest` 无报错,且 Ranker 能成功初始化并加载模型,即表示可用。

常见问题

Q:需要 GPU 吗?

A:不需要。README 说明该库不依赖 Torch 或 Transformers,可在 CPU 上运行,适合资源受限环境。

Q:在 AWS Lambda 中报只读文件系统错误怎么办?

A:无服务器环境整个 VM 只读,需在 Dockerfile 中创建自定义目录,并通过 cache_dir 参数(如 /opt)指定模型加载与缓存位置。

Q:支持哪些类型的重排序模型?

A:支持 Pairwise/Pointwise 交叉编码器模型(最大 512 token)以及基于 LLM 的 Listwise 重排序模型(最大 8192 token)。

Q:模型体积和速度如何?

A:README 称其拥有约 4MB 的极小重排序模型;重排耗时取决于段落 token 数量与模型层数。

注意事项

  • README 的安装章节为空,实际安装命令以官方仓库当前说明为准。
  • 示例中的 model_name 与 cache_dir 为 README 给出的示例值,可按需替换。
  • 重排序速度受段落 token 数与模型深度(层数)影响。
  • 建议在检索结果送入 LLM 之前先做重排序以提升效果。

核心亮点

  • 推理速度极快,比传统交叉编码器快 10 倍以上
  • 支持 Listwise 和 Pairwise 重排序,灵活适配不同场景
  • 无需 GPU,CPU 上即可运行,降低部署成本

不足之处

  • 项目较新,文档和社区生态尚待完善
  • 模型覆盖范围有限,可能不如成熟库全面

适用场景

  • 生产环境中的搜索排序,需要低延迟响应
  • 资源受限的服务器或边缘设备上的检索增强生成(RAG)
  • 快速原型验证,需要快速集成重排序功能

替代项目

Cohere Rerank、Cross-Encoder (sentence-transformers)、RankLLM

项目介绍

FlashRank 是搜索知识领域的开源项目,由 PrithivirajDamodaran 开发,2023 年首次发布。

在全站 13,014 个收录项目中,它的 GitHub 星标数(1,006)位列前 30%,在搜索知识分类中处于中上游。

项目仍在小幅维护中,最近一次代码更新于 2026-09-11。Apache-2.0许可证,完全免费,可自行部署使用。

它主要面向的使用场景是:生产环境中的搜索排序,需要低延迟响应。同类可对比的替代方案包括 Cohere Rerank、Cross-Encoder (sentence-transformers)、RankLLM。

上一篇:SearChat

下一篇:GraphRAG-SDK

同类项目推荐

firecrawl 开源

网页抓取像喝水一样简单,开发者省下整周加班

The web data API to search, scrape, and interact at scale.

★ 183325 2026-08-09
contoso-chat 开源

一键跑通 Azure RAG 应用,从代码到评估部署全流程

This sample has the full End2End process of creating RAG application with Prompty an···

★ 766 2026-08-09
graphify 开源

整个代码库画成一张图,找问题一眼定位

Turn any codebase, with its docs, SQL schemas, configs, and PDFs, into a queryable k···

★ 120493 2026-08-09
ragflow 开源

让大模型用上你的私有知识,搭建可靠的企业级RAG应用

RAGFlow is a leading open-source Retrieval-Augmented Generation (RAG) engine that fu···

★ 91170 2026-08-09