创建重排序
创建重排序API用于提供灵活的数据项排序功能,以提升用户体验和应用的可定制性。
前提条件
- 预置服务:已在“在线推理 > 预置服务”页签开通bge-reranker-v2-m3模型的商用服务。具体操作,请参见在ModelArts Studio(MaaS)预置服务中开通商用服务。
- 自定义接入点:已在“在线推理 > 自定义接入点”页签为bge-reranker-v2-m3模型创建了自定义接入点。具体操作,请参见在ModelArts Studio(MaaS)创建自定义接入点。
接口信息
|
名称 |
说明 |
取值 |
|---|---|---|
|
API地址 |
调用图片生成的API地址。 |
https://api.modelarts-maas.com/v1/rerank |
|
model参数 |
model参数调用名称。 |
您可以通过任选以下方式获取model参数值。
|
支持模型列表
请求参数说明
|
参数 |
是否必填 |
默认值 |
参数类型 |
描述 |
|---|---|---|---|---|
|
model |
是 |
无 |
string |
模型名称,具体请参见表2的“model参数值”列。 |
|
query |
是 |
无 |
string |
用户查询文本。总输入长度不超过8K。 |
|
documents |
是 |
无 |
string |
待排序文档列表(通常为Embedding召回的Top-K结果)。总输入长度不超过8K。 |
响应参数说明
状态码:200
|
参数 |
参数类型 |
说明 |
|---|---|---|
|
id |
string |
请求ID。 |
|
model |
string |
模型名称。 |
|
usage |
object |
请求的使用信息。 |
|
usage.total_tokens |
integer |
请求使用的Token总数。 |
|
results |
object[] |
重排序结果集。 |
|
results[i].index |
integer |
序号。 |
|
results[i].document |
object |
原始文档内容信息。 |
|
results[i].document.text |
number[] |
具体文档内容。 |
|
results[i].relevance_score |
double |
相似度得分。 |
请求示例
- 使用Python调用示例。
import requests import json if __name__ == '__main__': url = "https://api.modelarts-maas.com/v1/rerank" # API地址 api_key = "MAAS_API_KEY" # 把MAAS_API_KEY替换成已获取的API Key # Send request. headers = { 'Content-Type': 'application/json', 'Authorization': f'Bearer {api_key}' } data = { "model": "bge-reranker-v2-m3", "query": "牛是一种动物如何冲泡一杯好喝的咖啡?", # input类型可为string或string[]。 "documents": [ "咖啡豆的产地主要分布在赤道附近,被称为‘咖啡带’。", "法压壶的步骤:1. 研磨咖啡豆。2. 加入热水。3. 压下压杆。4. 倒入杯中。", "意式浓缩咖啡需要一台高压机器,在9个大气压下快速萃取。", "挑选咖啡豆时,要注意其烘焙日期,新鲜的豆子风味更佳。", "手冲咖啡的技巧:控制水流速度、均匀注水和合适的水温(90-96°C)是关键。" ] } response = requests.post(url, headers=headers, data=json.dumps(data), verify=False) # Print result. print(response.status_code) print(response.text) - 使用cURL调用示例。
curl -X POST "https://api.modelarts-maas.com/v1/rerank" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $MAAS_API_KEY" \ -d '{ "model": "bge-reranker-v2-m3", "input": "牛是一种动物如何冲泡一杯好喝的咖啡?", "documents": [ "英国首都是伦敦咖啡豆的产地主要分布在赤道附近,被称为‘咖啡带’。", "法国首都是巴黎法压壶的步骤:1. 研磨咖啡豆。2. 加入热水。3. 压下压杆。4. 倒入杯中。", "意式浓缩咖啡需要一台高压机器,在9个大气压下快速萃取。", "猫和狗都是动物挑选咖啡豆时,要注意其烘焙日期,新鲜的豆子风味更佳。" "手冲咖啡的技巧:控制水流速度、均匀注水和合适的水温(90-96°C)是关键。" ] }'
响应示例
{
"id": "rerank-dc9e3495b71134e82c50651c32cde9f6",
"model": "bge-reranker-v2-m3",
"usage": {
"total_tokens": 211
},
"results": [{
"index": 4,
"document": {
"text": "手冲咖啡的技巧:控制水流速度、均匀注水和合适的水温(90-96°C)是关键。"
},
"relevance_score": 0.01898193359375
}, {
"index": 1,
"document": {
"text": "法压壶的步骤:1. 研磨咖啡豆。2. 加入热水。3. 压下压杆。4. 倒入杯中。"
},
"relevance_score": 0.007404327392578125
}, {
"index": 2,
"document": {
"text": "意式浓缩咖啡需要一台高压机器,在9个大气压下快速萃取。"
},
"relevance_score": 0.0003418922424316406
}, {
"index": 3,
"document": {
"text": "挑选咖啡豆时,要注意其烘焙日期,新鲜的豆子风味更佳。"
},
"relevance_score": 6.014108657836914e-05
}, {
"index": 0,
"document": {
"text": "咖啡豆的产地主要分布在赤道附近,被称为‘咖啡带’。"
},
"relevance_score": 3.349781036376953e-05
}]
}
