feat: 优化milvus检索总结提示词

This commit is contained in:
martsforever
2025-10-29 17:21:18 +08:00
parent a5630f77b3
commit 90ad5e7cfb
+3 -12
View File
@@ -98,27 +98,18 @@ class MilvusService:
result_nodes = [node for node in result_nodes if node.score >= 0.3] result_nodes = [node for node in result_nodes if node.score >= 0.3]
chain = ChatPromptTemplate.from_template(""" chain = ChatPromptTemplate.from_template("""
你将收到一个用户问题和一组来自LlamaIndex的检索结果。你的任务是: 请根据context标签中的内容来回答用户问题,如果与用户问题相关的内容,请回答"在提供的资料中未找到相关信息";
1. 分析检索结果内容
2. 提取与用户问题直接相关的信息片段
3. 基于这些相关信息生成准确、简洁且有帮助的回答
用户问题如下<question/>标签中的内容所示:
<question>
{question}
</question>
检索结果如下<context/>标签中的内容所示:
<context> <context>
{context} {context}
</context> </context>
处理要求: 处理要求:
- 仅关注检索结果中与用户问题直接相关的内容
- 忽略任何无关或关联性较弱的信息
- 如果检索结果中没有相关信息,请明确回答:"在提供的资料中未找到相关信息" - 如果检索结果中没有相关信息,请明确回答:"在提供的资料中未找到相关信息"
- 不要添加检索结果之外的额外知识 - 不要添加检索结果之外的额外知识
- 回答时优先使用检索结果中的原文表述 - 回答时优先使用检索结果中的原文表述
用户的问题是:{question}
""") | create_llm(disable_streaming=True) | StrOutputParser() """) | create_llm(disable_streaming=True) | StrOutputParser()
chain_input = {"context": "\n".join([node.node.text for node in result_nodes]), "question": param.question} chain_input = {"context": "\n".join([node.node.text for node in result_nodes]), "question": param.question}