This commit is contained in:
parent
dd0dd44320
commit
50e157b1b1
|
|
@ -78,81 +78,7 @@ def search_docs(request: QueryRequest, user_id: str = Query(..., description="
|
||||||
response = query_engine.query(request.query)
|
response = query_engine.query(request.query)
|
||||||
logger.info(f"Query response: {response}")
|
logger.info(f"Query response: {response}")
|
||||||
|
|
||||||
|
return response
|
||||||
|
|
||||||
|
|
||||||
# 打印出每个结果的向量和文本
|
|
||||||
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 = {
|
|
||||||
# "user_id": user_id,
|
|
||||||
# "query": request.query,
|
|
||||||
# "results": [
|
|
||||||
# {"score": float(node.score or 0), "text": node.get_content()} # 确保从 Node 中获取文本
|
|
||||||
# for node in response
|
|
||||||
# ]
|
|
||||||
# }
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# 确保 response 是一个有效的列表且非空
|
|
||||||
if isinstance(response, list) and response: # 检查 response 是否是非空列表
|
|
||||||
# 返回检索结果
|
|
||||||
result = {
|
|
||||||
"user_id": user_id,
|
|
||||||
"query": request.query,
|
|
||||||
"results": []
|
|
||||||
}
|
|
||||||
|
|
||||||
for i, node in enumerate(response):
|
|
||||||
# 检查每个 node 是否具有必要的方法和属性
|
|
||||||
if hasattr(node, 'get_content') and hasattr(node, 'embedding'):
|
|
||||||
result["results"].append({
|
|
||||||
"score": float(node.score or 0), # 评分(如果有的话)
|
|
||||||
"text": node.get_content() # 获取文本内容
|
|
||||||
})
|
|
||||||
# 打印相关信息(如果需要日志记录)
|
|
||||||
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 = {
|
|
||||||
"user_id": user_id,
|
|
||||||
"query": request.query,
|
|
||||||
"results": [] # 返回空结果
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
logger.info(f"Search results for user {user_id}: {result}")
|
|
||||||
return result
|
|
||||||
|
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
logger.error(f"Error processing search request: {e}", exc_info=True)
|
logger.error(f"Error processing search request: {e}", exc_info=True)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue