快速结论:这条提示通常出现在 Open WebUI 上传并解析含特定内嵌字体的 PDF 时(尤其是开启 “Bypass Embedding and Retrieval” 后),是 pypdf 输出的 WARN 日志,并非 Open WebUI 解析失败。优先排查点在于确认上传与文本提取是否正常,而不是把它当成阻断性错误。
适用环境:Issue 中已确认:Open WebUI v0.13(Docker 安装)、RHEL 8.10;另在 v0.11.4 的 Python 虚拟环境环境中也出现过。Ollama 版本、浏览器等信息未提供。
最快修复方案:暂无确认的一步修复方案;若该日志影响阅读,可在容器内安装可选依赖:pip install fonttools(Issue 评论给出的静默方式,可优先尝试)。
注意事项:该依赖不属于标准安装内容,维护者将其视为预期行为并关闭了 Issue;安装后是否能完全消除该类 WARN 取决于 pypdf 对该字体的处理路径,Issue 中未给出安装后的日志验证结果。安装操作会改动容器内环境,容器重建后可能失效。
问题场景
用户在 Open WebUI 中上传 PDF 文档并触发文档解析流程,同时把 “Bypass Embedding and Retrieval”(绕过嵌入与检索)设为开启。上传后 Open WebUI 功能正常,模型仍能正常输出回答,但 Docker Compose 日志中出现大量 pypdf 相关的 WARN 记录。该现象在多个不同大小、不同内容的 PDF 上均可复现。
报错原文
fontTools is required to fully parse the encoding of a CFF Type1 font in font dictionary
原因分析
评论中的维护者说明:该日志来自 pypdf,不是 Open WebUI 的失败。对于缺少文本映射、且使用特定内嵌字体类型的 PDF,pypdf 会跳过一项可选的额外解码步骤并打印该提示,因此属于可选解析步骤受限,而非上传、文本提取或模型回答链路中断。可能原因与 PDF 内嵌字体本身有关,而非 Open WebUI 的配置错误。
环境排查
- 确认 Open WebUI 安装方式与版本(Issue 中为 Docker,v0.13;另在 v0.11.4 虚拟环境复现)。
- 确认问题 PDF 的类型:是否为含 CFF Type1 内嵌字体、且缺少文本映射的文档。
- 确认日志来源:是否出现在 pypdf 解析阶段,而非 Open WebUI 其他组件。
- 确认功能是否受影响:上传是否成功、文本提取是否正常、模型回答是否正常。
- Python 版本、CUDA、显卡、Ollama 版本在 Issue 中未提供,无需据此判断。
解决步骤
- 先不要把它当作故障处理:按 Issue 结论,上传、文本提取与模型回答可正常使用,可先确认业务功能是否可用。
- 如果日志噪音需要消除,可优先尝试在运行 Open WebUI 的容器内安装可选依赖:
pip install fonttools。 - 注意该安装不属于标准安装内容;如需持久化,应写入自定义镜像或容器启动流程(Issue 未提供具体实现)。
- 若安装后仍有同类日志,回到 PDF 本身排查,或向上游 pypdf / fontTools 侧反馈。
验证方法
重新上传同一批 PDF,检查 Docker Compose 日志中是否仍出现 fontTools is required to fully parse the encoding of a CFF Type1 font in font dictionary;同时确认上传仍成功、文本提取内容完整、模型回答正常。若日志消失且功能正常,说明处理生效。
参考来源
AI 工具推荐
想把多个 AI 模型放在一个入口?
GamsGo AI 集成 ChatGPT、DeepSeek、Gemini、Claude、Midjourney、Veo 等常用模型,适合写作、绘图、视频和日常 AI 工作流。
推广链接:通过此链接购买,我可能获得佣金,不影响你的价格。
这个方案解决了吗?
可以继续搜索完整报错,或查看同一工具的其他排查指南。


![[Bug]: runai_safetensors_weights_iterator yields tensors in nondeterministic order, breaking FP8 inference on some platforms](https://www.chat-gpts.plus/wp-content/uploads/2026/11/38991-8f2a5705-768x403.jpg)