Xinference部署reranker模型

利用Xinference部署,代码形式:

pip install "xinference[transformers]" -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install "xinference[vllm]" -i https://pypi.tuna.tsinghua.edu.cn/simple
# 终端1
export XINFERENCE_ENDPOINT=http://0.0.0.0:9999
xinference-local --host 0.0.0.0 --port 9999
# 终端2
export XINFERENCE_ENDPOINT=http://127.0.0.1:9999
## 本地下载重排序模型之后
xinference launch --model-name bge-reranker-v2-m3 --model-type rerank --model-path /data/RAGFlow/Model_bgereranker

测试:

curl -s -X POST http://127.0.0.1:9999/v1/rerank   -H 'accept: application/json'   -H 'Content-Type: application/json'   -d '{
    "model": "bge-reranker-v2-m3",
    "query": "一个男人在吃披萨。",
    "return_documents": true,
    "top_n": 5,                      
    "documents": [
        "一个男人在吃食物。",
        "一个男人在吃一块面包。",
        "那个女孩正抱着一个婴儿。",
        "一个男人正在骑马。",         
        "一个女人正在拉小提琴。"
    ]
  }' | jq .

这里面有以下问题:

1.为什么要重复设置两次环境变量呢?

这个和export的作用域有关,一次export只在当前的终端内有效,如果想启动一个终端就自动加载export XINFERENCE_ENDPOINT=http://0.0.0.0:9999 那么就如下设置即可

# 添加到 ~/.bashrc 文件(针对当前用户)
echo 'export XINFERENCE_ENDPOINT=http://0.0.0.0:9999' >> ~/.bashrc
nohup xinference-local --host 0.0.0.0 --port 9999
xinference launch --model-name bge-reranker-v2-m3 --model-type rerank --model-path /data/RAGFlow/Model_bgereranker

这样每打开一个终端,就会自动设置

否则就在两个终端内各设置一次即可

2.部署了之后怎么设置输入输出呢?

import requests
import json

def rerank_documents(query, documents):
    url = "http://127.0.0.1:9999/v1/rerank"
    headers = {
        'accept': 'application/json',
        'Content-Type': 'application/json'
    }
    payload = {
        "model": "bge-reranker-v2-m3",
        "query": query,
        "return_documents": True,
        "top_n": 5,
        "documents": documents
    }
    response = requests.post(url, headers=headers, json=payload)
    return response.json()["results"]
if __name__ == "__main__":
    # 使用示例
    query = "一个男人在吃披萨。"
    documents = [
        "一个女人正在拉小提琴。",
        "一个男人在吃食物。",
        "一个男人在吃一块面包。",
        "那个女孩正抱着一个婴儿。",
        "一个男人正在骑马。",
    ]

    results = rerank_documents(query, documents)
    print(results)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值