issue: Assistant messages are stored with empty content, causing conversation context loss in v0.10.2

用户使用 Docker 部署的 Open WebUI v0.10.2 连接本地 Ollama 实例(v0.31.1),在 Ubuntu 24.04 系统上通过 Edge 浏览器启动新对话。选择 gemma4:e4b 或 qwen3:8b 模型进行多轮对话时,助理无法记住前文内容。而在 Ollama

issue: Assistant messages are stored with empty content, causing conversation context loss in v0.10.2

issue: Assistant messages are stored with empty content, causing conversation context loss in v0.10.2

快速结论:该问题发生在 Open WebUI v0.10.2 Docker 部署环境中,助理回复的对话历史在后续请求中丢失。优先排查是否为模型上下文窗口(context window)限制导致,而非直接认为是 Open WebUI 数据库存储问题。

问题场景

用户使用 Docker 部署的 Open WebUI v0.10.2 连接本地 Ollama 实例(v0.31.1),在 Ubuntu 24.04 系统上通过 Edge 浏览器启动新对话。选择 gemma4:e4b 或 qwen3:8b 模型进行多轮对话时,助理无法记住前文内容。而在 Ollama CLI 中直接运行相同模型,对话历史正常保留。

报错原文

Assistant messages are stored with empty content:
{
  "role": "assistant",
  "content": ""
}
while the actual response is stored only inside:
output[].content[].text

原因分析

经过 Open WebUI 开发团队验证,从 v0.10.2 的 output-items 重构开始,助理回复文本被有意地存储在 output[].content[].text 字段中,而数据库中的 content 字段预期为空。后端在每次向模型发送请求时,会从数据库重新加载消息链并重建助理消息内容(包括为 Ollama 模型重包装 reasoning 内容到 <think> 标签中)。因此,SQLite 中 content 字段为空本身 不是 导致对话上下文丢失的原因。

如果实际出现上下文丢失,最可能的原因是模型自身的上下文窗口(context window)限制导致历史被截断,而非 Open WebUI 的数据库存储布局问题。

环境排查

  • Open WebUI 版本:v0.10.2(Docker 部署)
  • Ollama 版本:0.31.1
  • 操作系统:Ubuntu 24.04 LTS(Docker 宿主)
  • 浏览器:Edge
  • 模型:gemma4:e4b、qwen3:8b(也建议测试其他模型)
  • 需确认模型的 context window 大小及实际上下文长度是否超出限制

解决步骤

  1. 启用 Ollama 调试日志:在 Ollama 服务端开启 debug 级别日志(如设置环境变量 OLLAMA_DEBUG=1),捕获 Open WebUI 发送给 Ollama 的实际 messages 数组内容。
  2. 检查发送给模型的上下文:查看 Ollama 收到的请求中的 messages 数组,确认对话历史(user 消息 + assistant 重建消息)是否完整传递到 Ollama。
  3. 如果上下文完整:说明问题出在 Ollama 一侧,可能是模型上下文窗口不足导致历史被截断。尝试缩短对话长度、减少 token 消耗(如限制响应长度),或使用更大上下文窗口的模型。
  4. 如果上下文不完整:说明 Open WebUI 后端在重建消息链时存在问题,可尝试清理浏览器缓存、重启 Docker 容器,或升级到更高版本(如有修复发布)。
  5. 直接使用 Ollama CLI 复现:在终端运行 ollama run <model_name> 并进行相同对话测试,以排除模型本身的问题。

验证方法

在进行解决步骤后,开启新对话重复原始测试:先发送 Guarde este número: 7392.,再发送 Qual foi o número que eu acabei de informar?。如果助理能正确回答 7392,说明上下文恢复。同时检查 Ollama 调试日志,确认发送给模型的 messages 数组包含完整的用户/助理历史。

参考来源

open-webui/open-webui #26996

GamsGo AI

AI 工具推荐

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

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

了解 GamsGo AI

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

celebrityanime
celebrityanime
文章: 12658

发表回复

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