[Bug]: Unconsidered await response in an Agent

在 RAGFlow 的 Agent 编辑器中,工作流编排为:Begin(任务)→ Await response(等待用户输入)→ Agent(LLM节点)→ Message(消息输出)。用户希望将 "Await response" 中用户输入的内容通过变量传递给 "Message" 输出,但实际消息

[Bug]: Unconsidered await response in an Agent

[Bug]: Unconsidered await response in an Agent

快速结论:该 Bug 发生在 RAGFlow Agent 的 LLM 消息构建阶段。即使模板变量正确解析,用户提示的变量内容也可能在发送给 LLM 之前被清空,或者因为模型配置中 max_tokens=0 而被丢弃。优先检查 RAGFlow 版本是否包含 PR #16413(2026年7月1日后合并的版本),以及模型配置中的 max_tokens 是否不为 0。

问题场景

在 RAGFlow 的 Agent 编辑器中,工作流编排为:Begin(任务)→ Await response(等待用户输入)→ Agent(LLM节点)→ Message(消息输出)。用户希望将 “Await response” 中用户输入的内容通过变量传递给 “Message” 输出,但实际消息输出为空或回显了 Begin 节点的初始内容,而非用户在 “Await response” 中输入的内容。

报错原文

Agent's log correctly shows the variable content but the answer doesn't reflect it
_sys_prompt_and_msg method skips appending the current user prompt
message_fit_in() treats [max_tokens=0] as a literal zero context window and wipes both system and user content

原因分析

这不是一个简单的变量解析失败问题。主要可能原因有两个:

  • LLM 提示组装逻辑缺陷: 在 Agent 节点的 _sys_prompt_and_msg 方法中,当画布历史消息的最后一条已经是 user 角色时,该方法会跳过追加当前的用户提示,导致最终发送给 LLM 的用户内容为空。这就解释了为什么 Agent 日志中变量解析正确,但实际回答却丢失了用户输入。
  • 模型配置 max_tokens=0 如果你的租户模型配置中 max_tokens 被设置为 0,message_fit_in() 方法会将其视为零上下文窗口,从而清空系统提示和用户提示内容。

环境排查

  • 确认 RAGFlow 版本号:你当前使用的是基于 commit a3e3bdd 的版本。
  • 检查对应的 PR #16413 是否已被合并到当前版本(2026年7月1日后合并)。
  • 检查 Workflow 的画布历史中,是否存在多余的 user 角色消息导致跳过追加。
  • 检查租户(tenant)模型配置中的 max_tokens 参数是否不为 0。

解决步骤

  1. 首要步骤:更新版本 —— 将 RAGFlow 更新到包含 PR #16413 的版本,该修复于 2026年7月1日合并。这是最直接的解决方案。
  2. 临时工作区(变通方案): 在 Agent 节点里,将 “Await response” 的变量放在系统提示(system_prompt)框中,而不是用户提示(user_prompt)框中。此路径的代码逻辑不受此 Bug 影响。
  3. 检查模型配置: 在模型配置页面对话模型条目,确保 max_tokens 参数设置为正数(如 2048 或 4096),而不是 0。
  4. 检查工作流历史: 如果问题持续,检查 “Begin” 节点的模式设置。如果开启了 “Conversational” 模式,可能会导致画布历史中预填 content,干扰后续提示拼接逻辑,可尝试关闭该模式。

验证方法

按原复现步骤重新测试:从 “Begin (Task)” 开始 → 使用 “Await response” → 将变量放入 Agent 的系统提示(临时方案)或升级后放入用户提示 → 运行。确认 “Message” 块输出的是用户在 “Await response” 中输入的内容,而非 Begin 的初始内容或空值。

参考来源

infiniflow/ragflow #16758

infiniflow/ragflow PR #16413

GamsGo AI

AI 工具推荐

想把多个 AI 模型放在一个入口?

GamsGo AI 集成 ChatGPT、DeepSeek、Gemini、Claude、Midjourney、Veo 等常用模型,适合写作、绘图、视频和日常 AI 工作流。

了解 GamsGo AI

推广链接:通过此链接购买,我可能获得佣金,不影响你的价格。

celebrityanime
celebrityanime
文章: 12561

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注