fix:修正知识获取逻辑,调整知识相关性输出顺序,并添加知识长度限制

This commit is contained in:
墨梓柒
2025-04-30 18:22:06 +08:00
parent 5963214d95
commit c8c27a1483

View File

@@ -11,6 +11,8 @@ from .lpmmconfig import global_config
from .utils.dyn_topk import dyn_select_top_k from .utils.dyn_topk import dyn_select_top_k
MAX_KNOWLEDGE_LENGTH = 10000 # 最大知识长度
class QAManager: class QAManager:
def __init__( def __init__(
self, self,
@@ -112,8 +114,10 @@ class QAManager:
for res in query_res for res in query_res
] ]
found_knowledge = "\n".join( found_knowledge = "\n".join(
[f"{i + 1}条知识:{k[1]}\n 该条知识对于问题的相关性:{k[0]}" for i, k in enumerate(knowledge)] [f"{i + 1}条知识:{k[0]}\n 该条知识对于问题的相关性:{k[1]}" for i, k in enumerate(knowledge)]
) )
if len(found_knowledge) > MAX_KNOWLEDGE_LENGTH:
found_knowledge = found_knowledge[:MAX_KNOWLEDGE_LENGTH] + "\n"
return found_knowledge return found_knowledge
else: else:
logger.info("LPMM知识库并未初始化使用旧版数据库进行检索") logger.info("LPMM知识库并未初始化使用旧版数据库进行检索")