From 8aa57537f1cab1276ffa1f6a2fd9e3dfe375aa6e Mon Sep 17 00:00:00 2001 From: HuangHai <10402852@qq.com> Date: Tue, 19 Aug 2025 08:03:39 +0800 Subject: [PATCH] 'commit' --- dsSchoolBuddy/ElasticSearch/T2_BgeM3.py | 18 ++---------------- 1 file changed, 2 insertions(+), 16 deletions(-) diff --git a/dsSchoolBuddy/ElasticSearch/T2_BgeM3.py b/dsSchoolBuddy/ElasticSearch/T2_BgeM3.py index 370cedc6..7d185508 100644 --- a/dsSchoolBuddy/ElasticSearch/T2_BgeM3.py +++ b/dsSchoolBuddy/ElasticSearch/T2_BgeM3.py @@ -78,35 +78,21 @@ if len(results) > 1: response.raise_for_status() # 检查请求是否成功 rerank_result = response.json() - # 打印完整响应以调试 - print("重排API响应:", json.dumps(rerank_result, ensure_ascii=False, indent=2)) - - # 尝试提取分数,兼容不同的字段名称 + # 处理重排结果,提取relevance_score if "results" in rerank_result: - # 处理BAAI/bge-reranker-v2-m3模型的响应格式 for item in rerank_result["results"]: doc_idx = item.get("index") - # 尝试不同的分数字段名称 - score = item.get("score", item.get("relevance_score", 0.0)) - if 0 <= doc_idx < len(results): - reranked_docs_with_scores.append((results[doc_idx], score)) - elif "rankings" in rerank_result: - # 处理其他可能的响应格式 - for item in rerank_result["rankings"]: - doc_idx = item.get("index") - score = item.get("score", item.get("relevance_score", 0.0)) + score = item.get("relevance_score", 0.0) if 0 <= doc_idx < len(results): reranked_docs_with_scores.append((results[doc_idx], score)) else: print("警告: 无法识别重排API响应格式") - # 使用原始结果,分数设为0.0 reranked_docs_with_scores = [(doc, 0.0) for doc in results] print("重排后结果数量:", len(reranked_docs_with_scores)) except Exception as e: print(f"重排模型调用失败: {e}") print("将使用原始搜索结果") - # 使用原始结果,分数设为0.0 reranked_docs_with_scores = [(doc, 0.0) for doc in results] else: # 只有一个结果,无需重排