curl --request POST \
--url https://api.example.com/v1/rerank \
--header 'Content-Type: application/json' \
--data '
{
"model": "<string>",
"query": "<string>",
"documents": [
"<string>"
],
"top_n": 123,
"return_documents": true
}
'对搜索结果进行语义重排序
curl --request POST \
--url https://api.example.com/v1/rerank \
--header 'Content-Type: application/json' \
--data '
{
"model": "<string>",
"query": "<string>",
"documents": [
"<string>"
],
"top_n": 123,
"return_documents": true
}
'| 模型 | 说明 |
|---|---|
BAAI/bge-reranker-v2-m3 | 多语言重排序模型,推荐 |
BAAI/bge-reranker-large | 英文为主 |
BAAI/bge-reranker-v2-m3{
"model": "BAAI/bge-reranker-v2-m3",
"results": [
{
"index": 2,
"relevance_score": 0.9875,
"document": { "text": "最相关的文档内容" }
},
{
"index": 0,
"relevance_score": 0.7432,
"document": { "text": "次相关的文档内容" }
},
{
"index": 1,
"relevance_score": 0.1205,
"document": { "text": "不太相关的文档内容" }
}
],
"usage": {
"total_tokens": 128
}
}
import requests
response = requests.post(
"https://crazyrouter.com/v1/rerank",
headers={
"Authorization": "Bearer sk-xxx",
"Content-Type": "application/json"
},
json={
"model": "BAAI/bge-reranker-v2-m3",
"query": "什么是向量数据库",
"documents": [
"向量数据库是专门存储和检索高维向量的数据库系统",
"关系型数据库使用表格存储结构化数据",
"向量数据库支持近似最近邻搜索,适合语义检索场景",
"Redis 是一个内存键值存储系统"
],
"top_n": 2,
"return_documents": True
}
)
data = response.json()
for result in data["results"]:
print(f"[{result['relevance_score']:.4f}] {result['document']['text']}")
用户查询 → Embedding 检索 Top-K → Rerank 精排 → LLM 生成回答