🤖 自动格式化代码 [skip ci]

This commit is contained in:
github-actions[bot]
2025-04-30 06:49:22 +00:00
parent 7789050a45
commit 837b0b3688
2 changed files with 23 additions and 20 deletions

View File

@@ -235,18 +235,20 @@ class ActionPlanner:
recent_knowledge = conversation_info.knowledge_list[-3:] recent_knowledge = conversation_info.knowledge_list[-3:]
for i, knowledge_item in enumerate(recent_knowledge): for i, knowledge_item in enumerate(recent_knowledge):
if isinstance(knowledge_item, dict): if isinstance(knowledge_item, dict):
query = knowledge_item.get('query', '未知查询') query = knowledge_item.get("query", "未知查询")
knowledge = knowledge_item.get('knowledge', '无知识内容') knowledge = knowledge_item.get("knowledge", "无知识内容")
source = knowledge_item.get('source', '未知来源') source = knowledge_item.get("source", "未知来源")
# 只取知识内容的前 150 个字,避免太长 # 只取知识内容的前 150 个字,避免太长
knowledge_snippet = knowledge[:150] + "..." if len(knowledge) > 150 else knowledge knowledge_snippet = knowledge[:150] + "..." if len(knowledge) > 150 else knowledge
knowledge_info_str += f"{i+1}. 关于 '{query}' 的知识 (来源: {source}):\n {knowledge_snippet}\n" knowledge_info_str += (
f"{i + 1}. 关于 '{query}' 的知识 (来源: {source}):\n {knowledge_snippet}\n"
)
else: else:
# 处理列表里不是字典的异常情况 # 处理列表里不是字典的异常情况
knowledge_info_str += f"{i+1}. 发现一条格式不正确的知识记录。\n" knowledge_info_str += f"{i + 1}. 发现一条格式不正确的知识记录。\n"
if not recent_knowledge: # 如果 knowledge_list 存在但为空 if not recent_knowledge: # 如果 knowledge_list 存在但为空
knowledge_info_str += "- 暂无相关知识和记忆。\n" knowledge_info_str += "- 暂无相关知识和记忆。\n"
else: else:
# 如果 conversation_info 没有 knowledge_list 属性,或者列表为空 # 如果 conversation_info 没有 knowledge_list 属性,或者列表为空
@@ -259,7 +261,6 @@ class ActionPlanner:
knowledge_info_str += "- 处理知识列表时出错。\n" knowledge_info_str += "- 处理知识列表时出错。\n"
# --- 知识信息字符串构建结束 --- # --- 知识信息字符串构建结束 ---
# 获取聊天历史记录 (chat_history_text) # 获取聊天历史记录 (chat_history_text)
chat_history_text = "" chat_history_text = ""
try: try:
@@ -385,7 +386,7 @@ class ActionPlanner:
time_since_last_bot_message_info=time_since_last_bot_message_info, time_since_last_bot_message_info=time_since_last_bot_message_info,
timeout_context=timeout_context, timeout_context=timeout_context,
chat_history_text=chat_history_text if chat_history_text.strip() else "还没有聊天记录。", chat_history_text=chat_history_text if chat_history_text.strip() else "还没有聊天记录。",
knowledge_info_str=knowledge_info_str knowledge_info_str=knowledge_info_str,
) )
logger.debug(f"[私聊][{self.private_name}]发送到LLM的最终提示词:\n------\n{prompt}\n------") logger.debug(f"[私聊][{self.private_name}]发送到LLM的最终提示词:\n------\n{prompt}\n------")

View File

@@ -137,8 +137,8 @@ class ReplyGenerator:
else: else:
goals_str = "- 目前没有明确对话目标\n" # 简化无目标情况 goals_str = "- 目前没有明确对话目标\n" # 简化无目标情况
# --- 新增:构建知识信息字符串 --- # --- 新增:构建知识信息字符串 ---
knowledge_info_str = "【供参考的相关知识和记忆】\n" # 稍微改下标题,表明是供参考 knowledge_info_str = "【供参考的相关知识和记忆】\n" # 稍微改下标题,表明是供参考
try: try:
# 检查 conversation_info 是否有 knowledge_list 并且不为空 # 检查 conversation_info 是否有 knowledge_list 并且不为空
if hasattr(conversation_info, "knowledge_list") and conversation_info.knowledge_list: if hasattr(conversation_info, "knowledge_list") and conversation_info.knowledge_list:
@@ -146,17 +146,19 @@ class ReplyGenerator:
recent_knowledge = conversation_info.knowledge_list[-3:] recent_knowledge = conversation_info.knowledge_list[-3:]
for i, knowledge_item in enumerate(recent_knowledge): for i, knowledge_item in enumerate(recent_knowledge):
if isinstance(knowledge_item, dict): if isinstance(knowledge_item, dict):
query = knowledge_item.get('query', '未知查询') query = knowledge_item.get("query", "未知查询")
knowledge = knowledge_item.get('knowledge', '无知识内容') knowledge = knowledge_item.get("knowledge", "无知识内容")
source = knowledge_item.get('source', '未知来源') source = knowledge_item.get("source", "未知来源")
# 只取知识内容的前 150 个字 # 只取知识内容的前 150 个字
knowledge_snippet = knowledge[:150] + "..." if len(knowledge) > 150 else knowledge knowledge_snippet = knowledge[:150] + "..." if len(knowledge) > 150 else knowledge
knowledge_info_str += f"{i+1}. 关于 '{query}' (来源: {source}): {knowledge_snippet}\n" # 格式微调,更简洁 knowledge_info_str += (
f"{i + 1}. 关于 '{query}' (来源: {source}): {knowledge_snippet}\n" # 格式微调,更简洁
)
else: else:
knowledge_info_str += f"{i+1}. 发现一条格式不正确的知识记录。\n" knowledge_info_str += f"{i + 1}. 发现一条格式不正确的知识记录。\n"
if not recent_knowledge: if not recent_knowledge:
knowledge_info_str += "- 暂无。\n" # 更简洁的提示 knowledge_info_str += "- 暂无。\n" # 更简洁的提示
else: else:
knowledge_info_str += "- 暂无。\n" knowledge_info_str += "- 暂无。\n"
@@ -201,7 +203,7 @@ class ReplyGenerator:
persona_text=persona_text, persona_text=persona_text,
goals_str=goals_str, goals_str=goals_str,
chat_history_text=chat_history_text, chat_history_text=chat_history_text,
knowledge_info_str=knowledge_info_str knowledge_info_str=knowledge_info_str,
) )
# --- 调用 LLM 生成 --- # --- 调用 LLM 生成 ---