目录

Open WebUI 教程:为 Ollama 添加类似 ChatGPT 的网页界面

终端对话很方便,但要分享给家人或同事使用,就需要一个网页界面。Open WebUI 是最受欢迎的开源选择之一,界面和 ChatGPT 很像,而且功能丰富:

  • 对话记录、多模型切换、Markdown 与代码显示
  • 上传文档,让模型根据文档回答(内置 RAG)
  • 多用户账号与权限管理
  • 自定义模型(系统提示词、参数)
  • 支持 Ollama,也支持 OpenAI 兼容的 API

使用 Docker 安装(推荐)

如果 Ollama 已经安装在本机:

docker run -d --name open-webui \
  -p 3000:8080 \
  --add-host=host.docker.internal:host-gateway \
  -v open-webui:/app/backend/data \
  --restart always \
  ghcr.io/open-webui/open-webui:main

打开 http://localhost:3000。首次打开时创建的账号会成为管理员。

  • --add-host=host.docker.internal:host-gateway:让容器可以连接到主机上的 Ollama(Linux 需要;Docker Desktop 本身就支持这个名称)。
  • -v open-webui:/app/backend/data:保存账号、对话记录与设置。

如果想让 Ollama 和 Open WebUI 都在 Docker 中运行,请使用使用 Docker 运行 Ollama中的 Compose 示例。

使用 pip 安装

如果不想使用 Docker(需要 Python 3.11):

pip install open-webui
open-webui serve

默认网址是 http://localhost:8080。

无法连接 Ollama?

进入管理员设置 → 连接,确认 Ollama API 的地址:

情况地址
Open WebUI 在 Docker 中、Ollama 在主机上http://host.docker.internal:11434
两者都在同一个 Compose 中http://ollama:11434
两者都直接安装在主机上http://localhost:11434
Ollama 在另一台电脑上http://那台电脑的IP:11434(该电脑需设置 OLLAMA_HOST=0.0.0.0)

在 Linux 上,主机上的 Ollama 默认只监听 127.0.0.1,容器可能无法连接。可以将 OLLAMA_HOST 设为 0.0.0.0(并使用防火墙限制外部连接),或使用 --network host 运行 Open WebUI,此时网址改为 http://localhost:8080。

基本使用

  1. 在左上角选择模型。已下载的 Ollama 模型会自动显示。
  2. 管理员也可以在模型菜单中直接输入名称下载新模型(例如 qwen3:8b)。
  3. 对话记录会保存在左侧栏中。

上传文档问答

在对话框中点击 + 上传 PDF、Word 或文本文件,然后直接询问文档内容。Open WebUI 会自动切块、生成嵌入并检索相关段落。

如果想长期使用同一批文档,可以在工作区 → 知识库中创建知识库,对话时使用 # 引用。

建议在管理员设置 → 文档中将嵌入模型改为多语言模型(例如通过 Ollama 使用 bge-m3),这样检索中文文档的效果会更好。原理说明见文本嵌入与 RAG。

自定义模型

在工作区 → 模型 → 新增中,可以基于任一模型进行设置:

  • 系统提示词(例如“始终使用简体中文”)
  • 参数(temperature、上下文长度)
  • 默认绑定的知识库

创建好的模型会显示在所有用户的模型菜单中,例如“客服助手”“代码审查”。

多人使用

  • 管理员设置 → 用户:新用户注册后默认处于“待审核”状态,管理员批准后才能使用。
  • 可以设置用户组,以及每个组可以使用哪些模型。
  • 如果要让局域网内的其他人使用,请让他们访问 http://你的电脑IP:3000。

如果要开放到互联网,请在前面配置 HTTPS 反向代理,并关闭公开注册。

更新

docker pull ghcr.io/open-webui/open-webui:main
docker rm -f open-webui
# 使用原来的 docker run 命令重新创建;Volume 中的数据不会丢失

常见问题

模型列表为空

Open WebUI 无法连接 Ollama,请按照上方“无法连接 Ollama?”检查地址。可以在容器内测试:

docker exec open-webui curl -s http://host.docker.internal:11434/api/tags

回答很慢

Open WebUI 只是界面,速度取决于 Ollama 和你的硬件,请参阅 GPU 与性能调优。

忘记管理员密码

管理员密码保存在 Volume 中的数据库里。最简单的方法是让其他管理员重置;如果只有一个管理员,请参阅 Open WebUI 官方文档中的重置密码说明。

更新于 2026年10月12日