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=2、OLLAMA_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),仅供参考