snail-ai-model-rerank 模块职责
什么是 Rerank?
用户提问 → 向量检索(召回 Top-K 文档)→ Rerank 重排序 → 返回最相关的 Top-N 文档 → LLM 生成回答
向量检索速度快但精度有限,Rerank 通过更精细的模型对召回结果重新打分排序,显著提升最终检索质量。
三个子模块
1. snail-ai-model-rerank-core — 核心抽象层
定义适配器接口 + 运行时工厂

查看代码
// 使用示例
RerankModelSpec spec = new RerankModelSpec(
"qwen-rerank",
"qwen",
"https://dashscope.aliyuncs.com/compatible-mode/v1",
"sk-xxx",
"gte-rerank",
config // rerankPath, timeoutMs 等
);
RerankApiClient client = rerankModelRuntime.build(spec);
List<RerankResultItem> results = client.rerank("用户问题", documents, topN);
// 返回按相关性排序的文档索引和分数
2. snail-ai-model-rerank-provider-qwen — Qwen 重排适配器
实现通义千问/DashScope 的 rerank 接口

支持的配置参数:
baseUrl / apiKey / model
rerankPath(默认 /rerank)
timeoutMs(默认 60s)
请求格式:
请求格式:
POST {baseUrl}/rerank
Authorization: Bearer {apiKey}
Content-Type: application/json
{
"model": "gte-rerank",
"query": "用户问题",
"documents": ["文档1", "文档2", "文档3"],
"top_n": 3
}
响应格式:
{
"output": {
"results": [
{"index": 2, "relevance_score": 0.95},
{"index": 0, "relevance_score": 0.82},
{"index": 1, "relevance_score": 0.65}
]
}
}
3. snail-ai-model-rerank-starter — 自动配置层
Spring Boot 自动装配

在 RAG 流程中的位置

与其他模型模块的对比

一句话总结
snail-ai-model-rerank = 重排模型适配层,通过 RerankModelAdapter 接口 + RerankModelRuntime 工厂,将 Rerank 服务(目前支持 Qwen/DashScope)封装为 RerankApiClient,用于 RAG 流程中对向量检索结果进行二次排序,提升检索准确性。

浙公网安备 33010602011771号