快速结论:该报错出现在 Open WebUI v0.11.1 的 Banner 渲染环节,当横幅内容包含 `…`(下划线标记)时,marked 解析器抛出 “Token with underline type was not found” 异常。问题根源是 `underlineExtension()` 注册了 tokenizer 但缺少对应的 renderer,优先排查 marked 扩展的注册与渲染配置。
适用环境:Open WebUI v0.11.1(Docker 部署),服务端 Ubuntu 24.04.4 LTS (aarch64, NVIDIA GH200),客户端 macOS 27.0 + Chrome 浏览器,marked 版本 9.1.0(package.json 中锁定)。此问题与 Ollama 无关,纯客户端渲染缺陷。
最快修复方案:暂无确认的一步修复方案。Issue 中提到的修复方案(#29118)已在 dev 分支验证,但未确认是否已合并到正式发布版本。可优先尝试升级到包含修复的 dev 分支版本,或等待包含修复的下一个正式版本。
注意事项:该问题在 v0.11.0 及更早版本中不存在,属于 v0.11.1 的回归缺陷。修复方案在 dev 分支已验证,但尚未确认正式发布时间线。临时规避方案可考虑避免在横幅内容中使用 `` 标签,改用其他视觉标识。
问题场景
用户在 Open WebUI v0.11.1(Docker 部署)中通过 Admin Panel → Settings → Interface → Banners 创建包含 `…` 标签的横幅内容(例如 `More info on model choice check out the [FAQ](https://example.com/faq.html)`)。当用户打开聊天页面时,`Markdown.svelte` 模块顶层调用 `marked.use(markedExtension(options))` 注册了 underline tokenizer,随后横幅渲染调用 `marked.parse()` 时抛出异常,导致横幅无法显示。
报错原文
Uncaught Error: Token with "underline" type was not found.
Please report this to https://github.com/markedjs/marked.
at Ee.parseInline (marked.esm.js:2015:31)
at Ee.parse (marked.esm.js:1915:57)
at parse (marked.esm.js:1801:23)
at si.parse (marked.esm.js:2297:28)
at Y [as parse] (marked.esm.js:2330:27)
at Banner.svelte:103:39
原因分析
可能原因:Open WebUI 的 `underlineExtension()` 在 marked 扩展中注册了 `underline` tokenizer,但没有注册对应的 renderer。marked 在解析阶段成功匹配到 `` 标签并生成 underline 类型的 token,但在渲染阶段找不到对应的 renderer 函数,因此抛出 “Token with underline type was not found” 异常。这是一个典型的”注册不完整”缺陷,与 #9276(inlineKatex token)和 #26904(下划线格式被静默丢弃)属于同一类问题。
该问题在 v0.11.0 及更早版本中不存在,说明 v0.11.1 中的某个改动破坏了 underline 扩展的完整性。Issue 作者确认在 `dev` 和 `main` 分支上,`underlineExtension()` 仍然没有 renderer,因此该问题在最新源码中依然存在(截至提交时)。
环境排查
- 确认 Open WebUI 版本是否为 v0.11.1(当前最新发布版)
- 确认 marked 版本是否为 9.1.0(package.json 中锁定的版本)
- 确认部署方式是否为 Docker,容器日志中应无相关错误(GET/POST /api/v1/configs/banners 均返回 200)
- 确认浏览器是否为 Chrome(其他浏览器可能也有相同问题,但未在 Issue 中验证)
- 检查服务端系统为 Ubuntu 24.04.4 LTS(aarch64 架构,NVIDIA GH200)
解决步骤
- 临时规避:编辑横幅内容,移除 `` 标签,改用其他格式(如 ``、``)或纯文本。这是已验证可用的临时方案。
- 确认问题是否为回归:检查 v0.11.0 中相同横幅内容是否正常渲染,以确认此问题是否为 v0.11.1 引入。
- 查看 Issue #29118 中提出的修复方案,该方案已在 dev 分支验证有效。
- 如果必须使用 `` 标签,可优先尝试升级到 dev 分支版本,或等待包含修复的下一个正式版本发布。
- 如自行编译,可检查 `underlineExtension()` 的源码实现,确认 tokenizer 与 renderer 的注册是否完整,参考 #29118 的修复方式补齐 renderer。
验证方法
在修复后,重新创建一个包含 `[FAQ](https://example.com/faq.html)` 的横幅,然后打开聊天页面。如果横幅正常渲染且 “FAQ” 文字显示为下划线链接样式,且浏览器控制台无 “Token with underline type was not found” 错误,则说明问题已解决。同时可检查 Docker 容器日志,确认无新的异常抛出。
参考来源
AI 工具推荐
想把多个 AI 模型放在一个入口?
GamsGo AI 集成 ChatGPT、DeepSeek、Gemini、Claude、Midjourney、Veo 等常用模型,适合写作、绘图、视频和日常 AI 工作流。
推广链接:通过此链接购买,我可能获得佣金,不影响你的价格。
这个方案解决了吗?
可以继续搜索完整报错,或查看同一工具的其他排查指南。
![[bug]: InvokeAI v6.14.0-RC1 Crashed while generating Krea-2 Image](https://www.chat-gpts.plus/wp-content/uploads/2026/09/9444-d6bdc60c-768x403.jpg)
![[Question]: Shared embedded chat URL fails to access documents after logout or when accessed by other users](https://www.chat-gpts.plus/wp-content/uploads/2026/09/15895-cf3f7033-768x403.jpg)
