mirror of
https://github.com/infiniflow/ragflow.git
synced 2025-12-08 20:42:30 +08:00
feat: support xinference rerank model (#1466)
### What problem does this PR solve? support xinference rerank model #1455 ### Type of change - [x] New Feature (non-breaking change which adds functionality)
This commit is contained in:
@ -136,4 +136,22 @@ class YoudaoRerank(DefaultRerank):
|
||||
else: res.extend(scores)
|
||||
return np.array(res), token_count
|
||||
|
||||
class XInferenceRerank(Base):
|
||||
def __init__(self,model_name="",base_url=""):
|
||||
self.model_name=model_name
|
||||
self.base_url=base_url
|
||||
self.headers = {
|
||||
"Content-Type": "application/json",
|
||||
"accept": "application/json"
|
||||
}
|
||||
|
||||
def similarity(self, query: str, texts: list):
|
||||
data = {
|
||||
"model":self.model_name,
|
||||
"query":query,
|
||||
"return_documents": "true",
|
||||
"return_len": "true",
|
||||
"documents":texts
|
||||
}
|
||||
res = requests.post(self.base_url, headers=self.headers, json=data).json()
|
||||
return np.array([d["relevance_score"] for d in res["results"]]),res["tokens"]["input_tokens"]+res["tokens"]["output_tokens"]
|
||||
|
||||
Reference in New Issue
Block a user