refactor(rag/nlp): refactor reranking logic to apply post-deduplication and remove debug log

This commit is contained in:
Timebomb2018
2026-04-09 19:35:43 +08:00
parent 130684cac0
commit ca4f7aa65d
2 changed files with 7 additions and 3 deletions

View File

@@ -115,9 +115,8 @@ def knowledge_retrieval(
# Use the specified reranker for re-ranking
if reranker_id:
try:
return rerank(db=db, reranker_id=reranker_id, query=query, docs=all_results, top_k=reranker_top_k)
all_results = rerank(db=db, reranker_id=reranker_id, query=query, docs=all_results, top_k=reranker_top_k)
except Exception as rerank_error:
# If reranker fails, log warning and continue with original results
logger.warning(
"Reranker failed, falling back to original results",
extra={
@@ -254,6 +253,12 @@ def _retrieve_for_knowledge(
seen_ids.add(doc.metadata["doc_id"])
unique_rs.append(doc)
rs = unique_rs
if unique_rs:
rs = vector_service.rerank(
query=kb_config["query"],
docs=unique_rs,
top_k=kb_config["top_k"]
)
if kb_config["retrieve_type"] == "graph":
try:
from app.core.rag.common.settings import kg_retriever

View File

@@ -223,7 +223,6 @@ def create_knowledge_retrieval_tool(kb_config, kb_ids, user_id, citations_collec
retrieve_chunks_result = knowledge_retrieval(query, kb_config)
if retrieve_chunks_result:
logger.warning(f"检索知识结果:{retrieve_chunks_result}")
retrieval_knowledge = [i.page_content for i in retrieve_chunks_result]
context = '\n\n'.join(retrieval_knowledge)
logger.info(