issue: Dependency collision when using E-Mail file loader

用户在 Open WebUI (v0.10.2) 中,为了支持解析 .msg 邮件文件(通过 OutlookMessageLoader),手动将 extract_msg 依赖添加到 requirements.txt ,随后执行构建时触发依赖冲突。

快速结论:该问题出现在尝试为 Open WebUI 的 E-Mail 文件加载器安装 extract_msg 依赖时。优先排查是否因手动添加 extract_msgrequirements.txt 导致与现有依赖 unstructured 的版本冲突。

问题场景

用户在 Open WebUI (v0.10.2) 中,为了支持解析 .msg 邮件文件(通过 OutlookMessageLoader),手动将 extract_msg 依赖添加到 requirements.txt,随后执行构建时触发依赖冲突。

报错原文

2026-07-02T08:41:56.260656Z 01E #22 781.2   × No solution found when resolving dependencies:
2026-07-02T08:41:56.260669Z 01E #22 781.2   ╰─▶ Because unstructured==0.22.31 depends on beautifulsoup4>=4.14.3,=4.14.3,<5.0.0.
2026-07-02T08:41:56.260671Z 01E #22 781.2       And because you require beautifulsoup4==4.13.5, we can conclude that
2026-07-02T08:41:56.260672Z 01E #22 781.2       your requirements are unsatisfiable.

原因分析

此问题的根本原因是用户自行添加的 extract_msg 包依赖于 beautifulsoup4==4.13.5(版本 <4.14),而 Open WebUI 项目中已有的 unstructured==0.22.31 依赖于 beautifulsoup4>=4.14.3,<5.0.0。这两个版本约束冲突,导致包管理器无法完成依赖解析。需要注意的是,在原版 Open WebUI 中 extract_msg 并非官方依赖,因此干净安装不会触发此错误——该冲突仅发生在用户自行修改 requirements.txt 之后。

环境排查

  • 确认 Open WebUI 版本是否为 v0.10.2 或更新版本。
  • 检查是否修改过 backend/requirements.txt,特别是是否手动添加了 extract_msg
  • 确认 Python 版本(日志显示为 3.11.15)
  • 检查 unstructured 版本是否为 0.22.31

解决步骤

  1. 不需要安装 extract_msg:Open WebUI 已通过 PR #26704(fix/msg-loader-collision)删除对 OutlookMessageLoader 的依赖,转而使用 unstructuredpartition_msg(基于 python-oxmsg)来解析 .msg 文件,该功能已内置于项目中,无需额外依赖。
  2. 移除手动添加的 extract_msg:从 backend/requirements.txt 中删除任何手动添加的 extract_msg 条目。
  3. 更新到包含修复的版本:拉取最新的 Open WebUI 代码(包含 fix/msg-loader-collision 分支或后续发布版本),重新执行构建。
  4. 可优先尝试:如果无法立即更新代码,可以尝试将 beautifulsoup4 版本升级到 >=4.14.3 且 <5.0.0 的范围,但这仅为权宜之计,官方推荐还是采用新实现。

验证方法

成功完成构建(不再出现“No solution found when resolving dependencies”错误),并且上传 .msg 文件到 Open WebUI 后能够正常解析,不再提示“extract-msg not installed”或类似错误。

参考来源

open-webui/open-webui #26690

GamsGo AI

AI 工具推荐

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

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

了解 GamsGo AI

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

这个方案解决了吗?

celebrityanime
celebrityanime
文章: 16230

发表回复

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