issue: bug: reasoning blocks are not streamed

此问题出现在 Open WebUI v0.11.1 中,表现为思维链(reasoning)内容无法流式输出,必须刷新页面或切换会话才能看到不完整的推理块。优先排查是否使用了旧版本分支,更新到 dev 分支或最新版本通常可以解决。

快速结论:此问题出现在 Open WebUI v0.11.1 中,表现为思维链(reasoning)内容无法流式输出,必须刷新页面或切换会话才能看到不完整的推理块。优先排查是否使用了旧版本分支,更新到 dev 分支或最新版本通常可以解决。

适用环境:Open WebUI v0.11.1(通过 uvx 方式安装);Windows 10;Firefox Developer Edition 155.0b3;Python 3.11;未附加 Ollama 版本信息。

最快修复方案:暂无确认的一步修复方案。根据 Issue 维护者反馈,该问题在 dev 分支已修复,建议升级到最新的 dev 版本(例如使用 ghcr.io/open-webui/open-webui:dev-slim 镜像)进行测试。

注意事项:升级 dev 分支可能引入未发布的实验性功能,建议在测试环境验证后再用于生产。另一个相关 Issue(#26776)描述了类似症状,可能涉及同一个渲染管线,若升级后问题仍存在,可参考该 Issue 的讨论。

问题场景

用户在 Open WebUI v0.11.1 中调用工具(tool call)后,模型返回的思维链(reasoning)内容没有实时显示。普通文本和工具调用输出可以正常流式显示,但 reasoning 块只有在刷新页面或切换对话后才出现,且显示为未完成的状态,或者完全不显示。浏览器控制台和应用 DEBUG 日志均未报错。

报错原文

issue: bug: reasoning blocks are not streamed
reasoning blocks text should be streamed as all other text. Parameter "stream" = true is always set.
reasoning blocks in latest version are not streamed ("stream" = true is always set.). Tools and ordinary text are streamed as expected.
DEBUG    | aiosqlite.core:_connection_worker_thread:67 - operation functools.partial

原因分析

根据 Issue 维护者的回复“Cannot reproduce. Are you maybe impacted by one of the already fixed issues on dev?”,该问题可能已在 dev 分支中被修复。用户反馈切换到 dev-slim 镜像后 reasoning 块恢复正常,进一步支持此判断。可能原因包括:

  • v0.11.1 版本中 reasoning 块的前端渲染逻辑存在缺陷,导致流式更新未能触发。
  • reasoning 块的流式更新与工具调用的渲染逻辑存在冲突,前端状态处理不当。
  • 相关 Issue(#26776、#29040、#28559、#29035)表明 reasoning 块渲染在流式场景中存在多个已知问题,可能共享相同的前端渲染管线。

环境排查

  • 确认当前使用的 Open WebUI 版本是否为最新发布版或 dev 分支版本。
  • 检查一下是否启用了”Fade Effect for Streaming Text”等影响流式文本显示效果的设置,相关 Issue #28559 表明该设置可能影响 reasoning 指示器的渲染。
  • 如果使用 Docker 部署,确认镜像标签是否为 dev / dev-slim,而不是 latest
  • 记录浏览器控制台中的警告信息(用户反馈在 reasoning 未更新时出现了警告提示)。

解决步骤

  1. 优先尝试升级到最新 dev 分支版本。Docker 用户可切换到 ghcr.io/open-webui/open-webui:dev-slim 镜像;uvx 用户可尝试指定 dev 版本标签。此项为 Issue 中验证过的解决方案。
  2. 若不能升级 dev 分支,检查是否启用了与流式文本渲染相关的设置(如”Fade Effect for Streaming Text”),尝试关闭后复测。
  3. 复现问题时,在浏览器开发者工具中打开 Console 面板,留意与 reasoning 更新相关的警告信息,截图保存并提交到 Issue 讨论区。
  4. 如果升级后问题仍存在,提供完整的浏览器控制台日志、DEBUG 模式日志及复现步骤,在 Issue 中继续反馈。

验证方法

升级到 dev 分支后,触发一次包含 reasoning 块的对话(例如调用工具或使用思维链模型),确认 reasoning 内容能够像普通文本一样实时流式输出。反复切换对话、调用多个工具,确认 reasoning 块始终可见且持续更新。若 stream 参数为 true,所有文本块都应保持流式显示。

参考来源

open-webui/open-webui #29128

GamsGo AI

AI 工具推荐

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

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

了解 GamsGo AI

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

这个方案解决了吗?

celebrityanime
celebrityanime
文章: 21246

发表回复

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