快速结论:该报错发生在 Open WebUI Native Function Calling 模式下,模型调用知识库检索工具(query_knowledge_files 或 kb_exec)时,工具执行器因收到字符串而非预期字典结构而崩溃。优先排查是否启用了 Legacy Function Calling 作为临时绕行方案。
适用环境:Open WebUI v0.9.6 至 v0.11.3(Docker 镜像 ghcr.io/open-webui/open-webui:main),macOS Tahoe(Apple Silicon),Docker Model Runner(llama.cpp-metal),SQLite 后端,SentenceTransformers 嵌入。
最快修复方案:将模型高级参数中的 Function Calling 从 Native 切换为 Legacy,即可恢复知识库检索与引用功能。
注意事项:此方案仅为临时绕行;Native 模式独有的功能(如自动 Memory 管理、指令级单文档范围限定)在 Legacy 下不可用。截至 v0.11.3,官方“fixed in dev”声明未解决问题,相关修复 PR #26926 仅处理了另一个崩溃场景。
问题场景
用户使用 Open WebUI v0.10.2/v0.11.0/v0.11.3,在自定义模型中附加多个知识库(测试中最多 19 个),并将高级参数中的 Function Calling 设为 Native。模型调用内置工具 query_knowledge_files 或启用 kb_exec(ENABLE_KB_EXEC=true)时触发崩溃。同一模型与知识库在 Legacy 模式下可正常检索并给出引用。
报错原文
'str' object has no attribute 'items'
# 触发场景示例:模型调用 query_knowledge_files 后,工具执行器立即抛出该异常
# 一次回答中最多观察到 58 次连续失败的调用,均以该错误终止,最终无有效回答或返回编造内容
原因分析
可能原因:Native Function Calling 模式下,工具调用参数在传递过程中被错误序列化或类型转换,导致工具执行器收到的是字符串(str)而非预期的字典(dict)结构,从而在访问 .items() 时抛异常。该缺陷并非知识库检索特有——用户实测自定义工具调用、内置 Notes 工具的 search_notes 同样触发此错误,说明问题出在 Native 工具执行链路的通用环节。有评论指出模型“调用工具的方式不正确”,但同一模型在 Legacy 模式下不会出错,表明模型侧并非根因。
环境排查
- Open WebUI 版本:确认是否为 v0.10.2 至 v0.11.3(含 Docker 镜像 main 标签拉取时间 2026-09-07)
- Function Calling 模式:检查模型高级参数中为 Native 还是 Legacy
- 知识库数量:确认模型附加的知识库数量(问题在多个知识库时必然复现)
- 后端配置:SQLite、SentenceTransformers 嵌入、Docker Model Runner(macOS Apple Silicon)
- 环境变量:
ENABLE_KB_EXEC是否设为true - 排除变量:Ollama 版本未涉及(Issue 中为 No response)
解决步骤
- 临时绕行(已验证有效):进入 Workspace → Models → 编辑目标模型 → Advanced Params → 将 Function Calling 从 Native 改为 Legacy。保存后重新测试知识库问答,应可正常检索并生成引用。
- 验证是否为通用工具链路问题(用于诊断而非修复):在 Native 模式下创建一个测试自定义工具,单独调用以确认崩溃是否同样出现——若崩溃,则表明非知识库工具独有。
- 单知识库测试(用于定位范围):若需保留 Native 模式,尝试在对话中仅引用单个知识库(使用
#语法),确认该路径可绕过工具调用、不触发错误。 - 跟踪上游修复:关注 Issue #26880 及相关联的 #27073、#29323、#26170、#26655,等待官方在 Native 工具执行链路上的修复发布。勿依赖“fixed in dev”声明——v0.11.0 与 v0.11.3 均已实测仍复现。
验证方法
切换 Legacy 模式后,向模型提出需要依据知识库 PDF 内容回答的问题(例如“What is the oil change interval in my GMC truck?”),确认模型返回内容包含知识库文档引用。若仍报 'str' object has no attribute 'items',说明问题未解决或存在其他配置因素。所有 Native 模式下的功能(自动 Memory、指令控制文档范围等)在 Legacy 模式下不可用,需等待上游修复后才能完整验证。
参考来源
AI 工具推荐
想把多个 AI 模型放在一个入口?
GamsGo AI 集成 ChatGPT、DeepSeek、Gemini、Claude、Midjourney、Veo 等常用模型,适合写作、绘图、视频和日常 AI 工作流。
推广链接:通过此链接购买,我可能获得佣金,不影响你的价格。
这个方案解决了吗?
可以继续搜索完整报错,或查看同一工具的其他排查指南。

![[RFC] RL CI Matrix for vLLM: Behavioral + Physical + Protocol Coverage](https://www.chat-gpts.plus/wp-content/uploads/2026/09/45585-41fefa5f-768x403.jpg)
![[RFC]: Partial Cache Hits for Hybrid Models](https://www.chat-gpts.plus/wp-content/uploads/2026/09/45702-8c7caa82-768x403.jpg)