Open WebUI完全指南:3分钟快速跑出自托管AI聊天界面
2026/8/28 10:09:54 网站建设 项目流程

Open WebUI完全指南:3分钟快速跑出自托管AI聊天界面

【免费下载链接】open-webuiUser-friendly AI Interface (Supports Ollama, OpenAI API, ...)项目地址: https://gitcode.com/GitHub_Trending/op/open-webui

在线AI服务用起来方便,但也有几件不放心:对话存在别人的服务器上、费用月月累计、断网就用不了。Open WebUI 是一个自托管的AI对话界面,部署在自己的机器上就能连上 Ollama 这类本地模型,聊天记录和文件全部留在你自己的服务器里,同时也能接 OpenAI 兼容 API。

它是什么:不是模型,是「聊天窗」

  • 一个独立的 Web 界面,本身不带模型,负责把「模型」和「用户」连起来
  • 兼容 Ollama 本地模型、OpenAI 兼容 API,多个模型可同时接入
  • 支持多用户、分组、权限,个人用是聊天框,团队用是内部平台
  • 内置知识库问答(RAG)、工具扩展、图像生成等能力
  • 适合想摆脱云端依赖的个人用户,以及需要数据不出内网的小团队

3分钟看到第一个效果

一条命令启动,前提是机器上装了 Docker:

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

浏览器打开http://localhost:3000,注册管理员账号,就能看到聊天界面了。-p 3000:8080把容器端口映射到本机 3000 端口;-v open-webui负责持久化数据,删容器也不丢聊天记录;--add-host让容器能找到同一台机器上的 Ollama。

如果你的 Ollama 在别的机器上,加一个环境变量指过去即可:

docker run -d -p 3000:8080 \ -v open-webui:/app/backend/data \ -e OLLAMA_BASE_URL=http://192.168.1.10:11434 \ --name open-webui \ ghcr.io/open-webui/open-webui:main

改端口、换数据卷路径的方式同理。想改源码的话,clone 仓库后按 backend 目录的说明本地开发即可:git clone https://gitcode.com/GitHub_Trending/op/open-webui

最常用的4件事

1. 多模型接入,随聊随切。本地 Ollama 和云端 OpenAI 兼容接口可以同时挂上,聊天窗顶部下拉就能切换模型,同一会话换个模型继续聊毫无障碍。

2. 文档变知识库,问答带出处。上传 PDF、Word、网页后自动切块并向量化入库,提问时先检索知识库再交给模型作答,答案能溯源到原文档。检索与向量库的实现集中在 backend/open_webui/retrieval/ 目录。

3. 多用户与细粒度权限。注册账号后按分组和角色划分权限,哪个知识库、哪个模型给哪些人用,都能单独控制,团队内部署不用额外买权限系统。

4. 不止文字:图像生成与语音。接入图像生成模型后可以直接出图,配 TTS 模型还能语音朗读:

部署上的两个实用建议

团队使用推荐 Docker Compose 一把拉起 Ollama 和 Open WebUI 两个容器,用OLLAMA_BASE_URL=http://ollama:11434走容器网络,省去端口映射和 host 解析的麻烦。

生产环境建议把默认 SQLite 换成 PostgreSQL:设置环境变量DATABASE_URL=postgresql://user:pass@host:5432/openwebui即可,并发写入和查询都会更稳;多实例部署时再加REDIS_URL共享会话。模型资源紧张时,给 Ollama 设置OLLAMA_NUM_PARALLEL=2OLLAMA_MAX_LOADED_MODELS=3控制同时加载的模型数。

你可能踩的3个坑

端口被占用,服务起不来。-p 3000:8080的 3000 换成一个空闲端口就行。

容器里连不上本机的 Ollama。启动时加--add-host=host.docker.internal:host-gateway,并设置OLLAMA_BASE_URL=http://host.docker.internal:11434

内存不够,模型加载失败或崩溃。--memory给容器设上限避免拖垮系统,同时减少 Ollama 并行度,按需加载模型。

最后一句

Open WebUI 把「私有、多模型、可协作」的 AI 聊天入口装进了一个 Docker 容器,数据主权留在自己手里。想深入看 API 接口定义可以看 backend/open_webui/routers/,内置工具的实现则在 backend/open_webui/tools/。

【免费下载链接】open-webuiUser-friendly AI Interface (Supports Ollama, OpenAI API, ...)项目地址: https://gitcode.com/GitHub_Trending/op/open-webui

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询