
Open WebUI部署本地模型
Open WebUI部署本地模型
介绍
Open WebUI 是一个开源的、用户友好的 Web 用户界面,专为管理和操作大型语言模型(LLMs)设计。它支持多种模型运行器,包括 Ollama 和兼容 OpenAI API 的模型,提供了丰富的功能和直观的界面,使用户能够轻松地与本地或云端的大模型进行交互。
特点
- 支持代码语法高亮、Markdown 和 LaTeX 渲染,提升交互体验
- 支持多种 LLM 运行器,包括 Ollama 和 OpenAI 兼容的 API
- 支持多模态交互(如文本、图像),适用于复杂的 AI 应用场景
- 集成检索增强生成(RAG)技术,允许用户将文档、网站等内容作为上下文信息
- 支持语音输入和图像生成功能(如 DALL-E API)
- 提供基于角色的访问控制(RBAC),确保只有授权用户才能访问敏感信息
- 丰富的社区贡献和插件支持
仓库
仓库:Open WebUI
官网:Open WebUI
部署
使用 docker compose 部署,docker-compose.yml
:
# version: '3'
# services:
# openwebui:
# image: ghcr.io/open-webui/open-webui:main
# ports:
# - "3000:8080"
# volumes:
# - ./data:/app/backend/data
# version: '8'
services:
ollama:
image: ollama/ollama
container_name: ollama
ports:
- "11434:11434"
volumes:
- ./ollama:/root/.ollama
networks:
- ollama-net
open-webui:
image: ghcr.io/open-webui/open-webui:main
container_name: open-webui
ports:
- "3000:8080"
environment:
- OLLAMA_API_BASE=http://ollama:11434
volumes:
- ./open-webui:/app/backend/data
depends_on:
- ollama
networks:
- ollama-net
networks:
ollama-net:
driver: bridge
ollama 是本地模型管理器,需要配合使用
如果你部署的机器有 NVIDIA 显卡,可以增加 GPU 的支持:
services:
open-webui:
image: ghcr.io/open-webui/open-webui:cuda
deploy:
resources:
reservations:
devices:
- capabilities: [gpu]
如果是 AMD 的显卡,需要配置环境变量:HSA_OVERRIDE_GFX_VERSION
以支持特定 GPU 架构,更详细的配置可以参考官方文档:🏡 Home | Open WebUI
配置ollama
使用 docker compose up -d
启动容器之后,访问 http://localhost:3000
即可进入管理界面,创建好管理员账户之后登录后台面板,如果需要公网访问,只需使用 nginx 或者其他工具反代 3000 端口,ollama 的链接不用反代,内网容器之间进行访问即可。
首先设置 ollama 链接,打开管理员面板 - 设置 - 外部链接:
IP 地址为本地 IP,端口为 docker-compose.yml
中设置的 ollama 端口,保存即可
本地模型
打开管理员面板 - 设置 - 模型:
点击右上角的管理模型图标,输入模型标签,点击下载模型即可,模型标签可以在 ollama 官网中找到:
ollama 官网:Ollama Models
以 DeepSeek-R1 为例:
需要注意的是,模型标签为
ollama run
命令后面的deepseek-r1:1.5b
,不是整个命令。
下载好模型之后如图所示:
有模型 ID 的,就是本地模型,没有的就是在线 API 模型,下面说怎么设置 API 模型。
在线模型
打开管理员面板 - 设置 - 外部链接:
可以通过加号来添加 API,通过齿轮图标来进行设置,
需要注意的是,这里默认是 openai 的 API,如果你的机器不能直接访问 openai,建议关闭 openai api,否则会导致卡在初始图标界面,无法进入。在线模型的 API 访问速度会影响 open-webui 的打开速度。
对于 deepseek 的 api,不需要指定模型id,默认会加载全部模型,也就是 deepseek-chat 和 deepseek-reasoner:
对于其他兼容 OpenAI 的 API,则可能需要指定模型 ID:
然后保存更新之后就可以在模型列表中看到添加的在线模型了。
配置模型
添加好的本地模型或者在线模型,默认只能管理员进行访问,如果需要开放给其他用户进行使用,还需要配置自定义模型。
打开工作空间 - 模型,选择添加模型:
然后填入对应的参数:
open-webui会根据输入的模型名称自动生成一个模型 ID,所以模型名称不要和添加本地模型或在线模型的 ID 一致,
基础模型就是下载好的本地模型或者通过 API 引入的在线模型,可见性设置为 public 才可以被其他用户访问到。
输入完参数后,最下面点击保存即可,然后就可以点击左上角的新对话,选择创建好的模型使用啦~
选择模型的时候,模型的顺序可以在管理员面板 - 设置 - 模型 - 设置中调整:
设置好排序后点击下方的保存即可。