From 552c36f44502ac02f7003debc90657e6cde7bcc0 Mon Sep 17 00:00:00 2001 From: hailin Date: Sun, 11 May 2025 14:04:32 +0800 Subject: [PATCH] . --- app/api/search.py | 29 +++++++++++++++++++++-------- 1 file changed, 21 insertions(+), 8 deletions(-) diff --git a/app/api/search.py b/app/api/search.py index 32cc429..f79260f 100644 --- a/app/api/search.py +++ b/app/api/search.py @@ -78,15 +78,28 @@ def search_docs(request: QueryRequest, user_id: str = Query(..., description=" response = query_engine.query(request.query) logger.info(f"Query response: {response}") - # 打印出每个结果的向量和文本 - for i, node in enumerate(response): - logger.info(f"Result {i+1}:") - logger.info(f" Text: {node.get_content()}") # 打印文本 - # 打印向量及其长度 - embedding = node.embedding - logger.info(f" Embedding (Vector): {embedding}") # 打印向量 - logger.info(f" Embedding Length: {len(embedding)}") # 打印向量的长度(即向量的维度) + + + # 打印出每个结果的向量和文本 + if response and isinstance(response, list): # 检查 response 是否有效且为可迭代的列表 + for i, node in enumerate(response): + # 确保每个 node 是合法的,具有必要的方法和属性 + if hasattr(node, 'get_content') and hasattr(node, 'embedding'): + logger.info(f"Result {i + 1}:") + logger.info(f" Text: {node.get_content()}") # 打印文本 + + # 打印向量及其长度 + embedding = node.embedding + logger.info(f" Embedding (Vector): {embedding}") # 打印向量 + logger.info(f" Embedding Length: {len(embedding)}") # 打印向量的长度(即向量的维度) + else: + logger.warning(f"Result {i + 1} is missing necessary attributes.") + else: + logger.warning("No valid results found in response or response is not a list.") + + + # 返回检索结果 result = {