From dd0dd4432084b5efb2601b8a5668164cf1cf9253 Mon Sep 17 00:00:00 2001 From: hailin Date: Sun, 11 May 2025 14:20:59 +0800 Subject: [PATCH] . --- app/api/search.py | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/app/api/search.py b/app/api/search.py index d736f1d..b3f8105 100644 --- a/app/api/search.py +++ b/app/api/search.py @@ -115,18 +115,17 @@ def search_docs(request: QueryRequest, user_id: str = Query(..., description=" - # 确保 response 是一个有效的列表 - if response and isinstance(response, list): # 检查 response 是否有效且为可迭代的列表 + # 确保 response 是一个有效的列表且非空 + if isinstance(response, list) and response: # 检查 response 是否是非空列表 # 返回检索结果 result = { "user_id": user_id, "query": request.query, "results": [] } - - # 遍历 response 中的每个 node + for i, node in enumerate(response): - # 确保每个 node 具有必要的方法和属性 + # 检查每个 node 是否具有必要的方法和属性 if hasattr(node, 'get_content') and hasattr(node, 'embedding'): result["results"].append({ "score": float(node.score or 0), # 评分(如果有的话) @@ -140,10 +139,6 @@ def search_docs(request: QueryRequest, user_id: str = Query(..., description=" logger.info(f" Embedding Length: {len(embedding)}") # 打印向量长度(维度) else: logger.warning(f"Result {i + 1} is missing necessary attributes.") - - # 如果没有有效的结果 - if not result["results"]: - logger.warning("No valid results found in response.") else: logger.warning("No valid results found in response or response is not a list.") result = { @@ -156,7 +151,6 @@ def search_docs(request: QueryRequest, user_id: str = Query(..., description=" - logger.info(f"Search results for user {user_id}: {result}") return result