From ee41279569f9b16097bf439a40d603123830ac8f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9C=B1=E6=BD=AE?= Date: Mon, 8 Dec 2025 22:15:49 +0800 Subject: [PATCH] add last_message --- agent/prompt_loader.py | 3 ++- prompt/guideline_prompt.md | 8 +++++++- routes/chat.py | 3 ++- 3 files changed, 11 insertions(+), 3 deletions(-) diff --git a/agent/prompt_loader.py b/agent/prompt_loader.py index b593484..ddb3311 100644 --- a/agent/prompt_loader.py +++ b/agent/prompt_loader.py @@ -280,7 +280,7 @@ async def load_mcp_settings_async(project_dir: str, mcp_settings: list=None, bot return merged_settings -async def load_guideline_prompt(chat_history: str, guidelines_text: str, tools: str, scenarios: str, terms: str, language: str, user_identifier: str = "") -> str: +async def load_guideline_prompt(chat_history: str, last_message: str, guidelines_text: str, tools: str, scenarios: str, terms: str, language: str, user_identifier: str = "") -> str: """ 加载并处理guideline提示词 @@ -317,6 +317,7 @@ async def load_guideline_prompt(chat_history: str, guidelines_text: str, tools: datetime_str = format_datetime_by_language(language) if language else format_datetime_by_language('en') # 替换模板中的占位符 system_prompt = safe_replace(guideline_template, '{chat_history}', chat_history) + system_prompt = safe_replace(system_prompt, '{last_message}', last_message) system_prompt = safe_replace(system_prompt, '{guidelines_text}', guidelines_text) system_prompt = safe_replace(system_prompt, '{terms}', terms) system_prompt = safe_replace(system_prompt, '{tools}', tools) diff --git a/prompt/guideline_prompt.md b/prompt/guideline_prompt.md index 60dff61..d422ee5 100644 --- a/prompt/guideline_prompt.md +++ b/prompt/guideline_prompt.md @@ -5,9 +5,10 @@ ## 思考框架 ### 1. 理解阶段 (Understanding) -- **目标分析**: 用户的核心需求是什么? +- **目标分析**: 分析用户最新问题的核心需求是什么? - **上下文总结**: 从聊天记录中提取关键信息 - **约束识别**: 识别限制条件、规则和要求 +- **关注当前问题**: 只需要对用户最新问题进行答复 ### 2. 分析阶段 (Analysis) - **问题拆解**: 将复杂问题分解为可管理的小任务 @@ -28,6 +29,11 @@ {chat_history} ``` +## 用户最新问题 (User's Last Message) +``` +{last_message} +``` + ## 工具列表 (Tools) ``` {tools} diff --git a/routes/chat.py b/routes/chat.py index 12910f7..f79a79d 100644 --- a/routes/chat.py +++ b/routes/chat.py @@ -165,7 +165,8 @@ Action: Provide concise, friendly, and personified natural responses. """ if guidelines: chat_history = format_messages_to_chat_history(messages) - guideline_prompt = await load_guideline_prompt(chat_history, guidelines, tools, scenarios, terms_analysis, language, user_identifier) + query_text = get_user_last_message_content(messages) + guideline_prompt = await load_guideline_prompt(chat_history, query_text, guidelines, tools, scenarios, terms_analysis, language, user_identifier) guideline_task = process_guideline( chat_history=chat_history, guideline_prompt=guideline_prompt,