Zerank-1
综合介绍
ZeroEntropy的Zerank-1是一个高性能的AI重排序工具,旨在提升搜索结果的精度。它通过跨编码器技术优化初始搜索结果,尤其适用于RAG(检索增强生成)和AI代理系统。Zerank-1分为两个版本:4B参数的Zerank-1(非商业许可)和1.7B参数的Zerank-1-small(Apache 2.0开源许可)。前者适合企业级应用,后者为开源社区提供高效解决方案。Zerank-1在多项基准测试中超越了其他重排序模型,甚至优于更大的模型如Gemini Flash 2.5。它通过API和Hugging Face模型中心提供,易于集成到现有搜索系统中。
功能列表
- 提升搜索精度:优化初始检索结果,显著提高NDCG@10得分,确保更相关的文档排名靠前。
- 支持跨编码器:使用跨编码器模型处理查询和文档对,生成精准的排名分数。
- 提供开源和非商业版本:Zerank-1-small为开源,Zerank-1需联系获取商业许可。
- 兼容多种初始检索方法:支持BM25、OpenAI的text-embedding-small及混合检索方式。
- API集成:通过ZeroEntropy的API端点
/models/rerank
快速调用重排序功能。 - 高效性能:Zerank-1-small虽小,但性能接近4B参数模型,适合资源受限场景。
使用帮助
安装与设置
Zerank-1和Zerank-1-small无需复杂安装,直接通过Hugging Face模型中心或ZeroEntropy的API使用。以下是两种主要使用方式的详细步骤:
通过Hugging Face模型中心使用
- 安装依赖:确保Python环境已安装
sentence_transformers
库。运行以下命令:pip install sentence-transformers
- 加载模型:使用Python加载Zerank-1或Zerank-1-small模型。示例代码如下:
from sentence_transformers import CrossEncoder model = CrossEncoder("zeroentropy/zerank-1-small", trust_remote_code=True)
- 说明:
trust_remote_code=True
允许加载Hugging Face上的远程代码。Zerank-1-small为开源模型,直接可用;Zerank-1需确认许可。
- 说明:
- 输入查询和文档:准备查询和文档对,格式为列表,包含元组(查询,文档)。例如:
query_documents = [ ("What is 2+2?", "4"), ("What is 2+2?", "The answer is definitely 1 million") ]
- 运行重排序:调用模型的
predict
方法,获取每个文档的排名分数:scores = model.predict(query_documents) print(scores)
- 输出示例:
[0.99, 0.01]
,表示第一个文档更相关。
- 输出示例:
- 解读结果:分数越高,文档与查询的相关性越强。开发者可根据分数对文档重新排序。
通过ZeroEntropy API使用
- 注册API:访问ZeroEntropy官网(https://www.zeroentropy.dev),联系
founders@zeroentropy.dev
获取API密钥(Zerank-1需要商业许可)。 - 调用API:使用API端点
/models/rerank
发送查询和文档数据。示例请求(以Python为例):import requests url = "https://api.zeroentropy.dev/models/rerank" headers = {"Authorization": "Bearer YOUR_API_KEY"} data = { "query_documents": [ {"query": "What is 2+2?", "document": "4"}, {"query": "What is 2+2?", "document": "The answer is definitely 1 million"} ] } response = requests.post(url, json=data, headers=headers) print(response.json())
- 处理响应:API返回的分数用于重新排序文档,优化搜索结果。
主要功能操作
提升搜索精度
Zerank-1通过跨编码器模型分析查询和文档的语义相关性,生成精确的排名分数。它在NDCG@10(归一化折损累积增益)指标上表现优异,特别适合需要高精度检索的场景。例如,结合OpenAI的text-embedding-small
作为初始检索器,Zerank-1能显著提高前10个结果的相关性,NDCG@10得分在50-85之间,远超传统向量搜索。
兼容多种检索方法
Zerank-1支持多种初始检索方法,包括:
- BM25:基于关键词的传统检索方法。
- 向量搜索:如OpenAI的
text-embedding-small
。 - 混合检索:使用倒数排名融合(Reciprocal Rank Fusion)结合BM25和向量搜索。开发者可根据需求选择初始检索器,Zerank-1在后续重排序中均能提升精度。
开源与商业版本
- Zerank-1-small:1.7B参数,Apache 2.0许可,完全开源,适合个人开发者或研究者。模型体积小,推理速度快,适合资源受限的设备。
- Zerank-1:4B参数,非商业许可,需联系ZeroEntropy获取商业许可,适合企业级应用。
特色功能操作
ELO排名训练
Zerank-1采用创新的ELO排名训练方法,将合成配对判断转化为排名模型。这是首个可扩展的ELO排名训练管道,提升了模型在复杂搜索任务中的表现。开发者无需了解底层训练细节,只需通过API或Hugging Face调用即可享受高精度排名。
跨域适用性
Zerank-1在多个领域(如学术搜索、电商搜索、问答系统)均表现出色。通过API测试,Zerank-1在私有数据上的表现优于其他闭源重排序器,适合多样化的搜索场景。
注意事项
- 许可要求:Zerank-1-small为开源,Zerank-1需商业许可,开发者需确认使用场景。
- 资源需求:Zerank-1-small适合轻量级部署,4B参数的Zerank-1需要更高算力。
- API费用:API调用按每百万token 0.025美元计费,具体费用需参考ZeroEntropy官网。
应用场景
- 学术研究搜索研究人员使用Zerank-1优化学术论文检索。初始检索可能返回数百篇论文,Zerank-1通过重排序确保最相关的论文排在前列,节省筛选时间。
- 电商平台产品推荐电商网站利用Zerank-1改进产品搜索结果。例如,用户搜索“无线耳机”,Zerank-1可将最匹配用户需求的产品(如高评分、低价格)优先展示。
- AI代理问答系统在RAG系统中,Zerank-1提升知识库查询精度,确保AI代理返回的答案更准确,适合客服或智能助手应用。
- 企业内部文档检索企业使用Zerank-1优化内部知识库搜索,帮助员工快速找到相关文档,提高工作效率。
QA
- Zerank-1和Zerank-1-small有什么区别?Zerank-1是4B参数模型,性能更强但需商业许可;Zerank-1-small是1.7B参数模型,开源且体积小,适合轻量级应用。两者精度相近,但Zerank-1在复杂任务中稍优。
- 如何选择初始检索器?可根据需求选择BM25(关键词检索)、向量搜索(如OpenAI的text-embedding-small)或混合检索。Zerank-1对所有检索器均能提升精度,混合检索效果最佳。
- Zerank-1的API费用是多少?每百万token 0.025美元,具体费用请参考ZeroEntropy官网。
- 是否需要GPU运行Zerank-1-small?Zerank-1-small因体积小,可在普通CPU上运行,但GPU可加速推理。Zerank-1建议使用GPU以获得最佳性能。