Refa: fix re-rank scope. (#6152)

### What problem does this PR solve?

#6140

### Type of change


- [x] Refactoring
This commit is contained in:
Kevin Hu 2025-03-17 13:26:29 +08:00 committed by GitHub
parent 5748d58c74
commit fabc5e9259
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -346,16 +346,12 @@ class Dealer:
if not question:
return ranks
RERANK_PAGE_LIMIT = 3
req = {"kb_ids": kb_ids, "doc_ids": doc_ids, "size": max(page_size * RERANK_PAGE_LIMIT, 128),
RERANK_LIMIT = 64
req = {"kb_ids": kb_ids, "doc_ids": doc_ids, "page": page, "size": RERANK_LIMIT,
"question": question, "vector": True, "topk": top,
"similarity": similarity_threshold,
"available_int": 1}
if page > RERANK_PAGE_LIMIT:
req["page"] = page
req["size"] = page_size
if isinstance(tenant_ids, str):
tenant_ids = tenant_ids.split(",")
@ -363,20 +359,17 @@ class Dealer:
kb_ids, embd_mdl, highlight, rank_feature=rank_feature)
ranks["total"] = sres.total
if page <= RERANK_PAGE_LIMIT:
if rerank_mdl and sres.total > 0:
sim, tsim, vsim = self.rerank_by_model(rerank_mdl,
sres, question, 1 - vector_similarity_weight,
vector_similarity_weight,
rank_feature=rank_feature)
else:
sim, tsim, vsim = self.rerank(
sres, question, 1 - vector_similarity_weight, vector_similarity_weight,
rank_feature=rank_feature)
idx = np.argsort(sim * -1)[(page - 1) * page_size:page * page_size]
if rerank_mdl and sres.total > 0:
sim, tsim, vsim = self.rerank_by_model(rerank_mdl,
sres, question, 1 - vector_similarity_weight,
vector_similarity_weight,
rank_feature=rank_feature)
else:
sim = tsim = vsim = [1] * len(sres.ids)
idx = list(range(len(sres.ids)))
sim, tsim, vsim = self.rerank(
sres, question, 1 - vector_similarity_weight, vector_similarity_weight,
rank_feature=rank_feature)
idx = np.argsort(sim * -1)[(page - 1) * page_size:page * page_size]
dim = len(sres.query_vector)
vector_column = f"q_{dim}_vec"