文章目录
一、关于 Open WebUI 👋
Open WebUI 是一个 可扩展的、功能丰富且用户友好的自托管 WebUI,旨在完全离线操作。
它支持各种 LLM 运行器,包括 Ollama 和兼容 OpenAI 的 API。有关更多信息,请务必查看我们的 Open WebUI 文档。
- github : https://github.com/open-webui/open-webui
- 官方文档:https://docs.openwebui.com/roadmap/
- 💬 Discord | Open WebUI 社区 : https://openwebui.com/
- 赞助:https://github.com/sponsors/tjbck
- 许可证 📜 - MIT
Open WebUI 的关键特性 ⭐
- 🚀 轻松设置:使用 Docker 或 Kubernetes(kubectl、kustomize 或 helm)无缝安装,支持
:ollama
和:cuda
标签镜像,体验无忧。 - 🤝 Ollama/OpenAI API 集成:轻松集成兼容 OpenAI 的 API,与 Ollama 模型进行多才多艺的对话。自定义 OpenAI API URL,以连接到 LMStudio、GroqCloud、Mistral、OpenRouter 和更多。
- 🛡️ 细粒度权限和用户组:通过允许管理员创建详细的用户角色和权限,我们确保了安全的环境。这种粒度不仅增强了安全性,还允许定制用户体验,激发用户的主权和责任感。
- 📱 响应式设计:在桌面 PC、笔记本电脑和移动设备上享受无缝体验。
- 📱 移动设备上的渐进式 Web 应用 (PWA):使用我们的 PWA 在您的移动设备上享受原生应用般的体验,提供本地主机上的离线访问和无缝用户界面。
- ✒️🔢 完整的 Markdown 和 LaTeX 支持:使用全面的 Markdown 和 LaTeX 功能提升您的 LLM 体验,增强交互。
- 🎤📹 免提语音/视频通话:通过集成的免提语音和视频通话功能,体验无缝的沟通,创造更加动态和互动的聊天环境。
- 🛠️ 模型构建器:通过 Web UI 轻松创建 Ollama 模型。创建和添加自定义角色/代理,自定义聊天元素,并通过 Open WebUI 社区 集成轻松导入模型。
- 🐍 原生 Python 函数调用工具:通过工具工作区中的内置代码编辑器支持增强您的 LLM,通过简单添加您的纯 Python 函数来实现自己的函数(BYOF),使 LLM 集成无缝。
- 📚 本地 RAG 集成:通过检索增强生成(RAG)支持,深入了解聊天交互的未来。此功能将文档交互无缝集成到您的聊天体验中。您可以直接将文档加载到聊天中,或添加文件到您的文档库,使用查询前的
#
命令轻松访问它们。 - 🔍 Web 搜索用于 RAG:使用
SearXNG
、Google PSE
、Brave Search
、serpstack
、serper
、Serply
、DuckDuckGo
、TavilySearch
、SearchApi
和Bing
等提供商进行网络搜索,并将结果直接注入到您的聊天体验中。 - 🌐 Web 浏览能力:使用
#
命令后跟 URL,无缝将网站集成到您的聊天体验中。此功能允许您直接将网络内容纳入您的对话中,增强交互的丰富性和深度。 - 🎨 图像生成集成:使用 AUTOMATIC1111 API 或 ComfyUI(本地)以及 OpenAI 的 DALL-E(外部)等选项无缝集成图像生成功能,使用动态视觉内容丰富您的聊天体验。
- ⚙️ 多模型对话:轻松与各种模型同时进行对话,利用它们独特的优势以获得最佳响应。通过并行利用多种模型来增强您的体验。
- 🔐 基于角色的访问控制 (RBAC):确保安全访问,仅限授权个人可以访问您的 Ollama,并将独家模型创建/提取权限保留给管理员。
- 🌐🌍 多语言支持:使用我们的国际化(i18n)支持,在您首选的语言中使用 Open WebUI。加入我们,共同扩展我们支持的语言!我们正在积极寻求贡献者!
- 🧩 管道,Open WebUI 插件支持:使用 Pipelines 插件框架 将自定义逻辑和 Python 库无缝集成到 Open WebUI 中。启动您的 Pipelines 实例,将 OpenAI URL 设置为 Pipelines URL,并探索无限可能。示例 包括 函数调用、用户 速率限制以控制访问、使用监控与 Langfuse 等工具、多语言支持的实时翻译、有毒信息过滤等等。
- 🌟 持续更新:我们致力于通过定期更新、修复和新功能来改进 Open WebUI。
想了解更多关于 Open WebUI 特性的信息?请查看我们的 Open WebUI 文档 以获得全面的概述!
🔗 也请查看 Open WebUI 社区!
别忘了探索我们的姐妹项目,Open WebUI 社区,在那里您可以发现、下载和探索自定义的 Modelfiles。Open WebUI 社区为增强您与 Open WebUI 的聊天交互提供了广泛的可能性! 🚀
二、如何安装 🚀
1、通过 Python pip 安装 🐍
Open WebUI 可以使用 pip,Python 软件包安装程序进行安装。在继续之前,请确保您正在使用 Python 3.11 以避免兼容性问题。
1、安装 Open WebUI:
打开您的终端并运行以下命令以安装 Open WebUI:
pip install open-webui
2、运行 Open WebUI:
安装完成后,您可以通过以下命令启动 Open WebUI:
open-webui serve
这将启动 Open WebUI 服务器,您可以在 http://localhost:8080 访问它
2、使用Docker快速入门 🐳
[!NOTE]
请注意,对于某些 Docker 环境,可能需要额外的配置。如果您遇到任何连接问题,我们详尽的Open WebUI 文档指南可以为您提供帮助。
[!WARNING]
当使用Docker安装Open WebUI时,请确保在你的Docker命令中包含-v open-webui:/app/backend/data
。这一步至关重要,因为它确保你的数据库被正确挂载,并防止任何数据丢失。
[!TIP]
如果您希望使用包含 Ollama 或 CUDA 加速的 Open WebUI,我们建议使用我们官方的带有 :cuda
或 :ollama
标签的镜像。要启用 CUDA,您必须在您的 Linux/WSL 系统上安装 Nvidia CUDA 容器工具包。
3、使用默认配置安装
如果 Ollama 安装在您的电脑上,请使用以下命令:
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
如果Ollama在不同的服务器上,使用以下命令:
要连接到另一台服务器上的 Ollama,请将 OLLAMA_BASE_URL
修改为服务器的 URL:
docker run -d -p 3000:8080 -e OLLAMA_BASE_URL=https://example.com -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main
要运行支持 Nvidia GPU 的 Open WebUI,请使用以下命令:
docker run -d -p 3000:8080 --gpus all --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:cuda
4、仅用于 OpenAI API 的安装
如果您只使用 OpenAI API,请使用此命令:
docker run -d -p 3000:8080 -e OPENAI_API_KEY=your_secret_key -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main
5、使用 Bundled Ollama 支持安装 Open WebUI
此安装方法使用单个容器镜像,将 Open WebUI 与 Ollama 打包在一起,允许通过单个命令实现简化的设置。根据您的硬件配置选择合适的命令:
支持 GPU
通过运行以下命令来利用 GPU 资源:
docker run -d -p 3000:8080 --gpus=all -v ollama:/root/.ollama -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:ollama
仅适用于CPU:
如果您不使用GPU,请使用以下命令代替:
docker run -d -p 3000:8080 -v ollama:/root/.ollama -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:ollama
两个命令都简化了Open WebUI和Ollama的内置安装过程,确保您可以快速将一切设置好并运行。
安装完成后,您可以通过 http://localhost:3000 访问 Open WebUI。享受吧! 😄
5、其他安装方法
我们提供各种安装选择,包括非Docker原生安装方法、Docker Compose、Kustomize 和 Helm。访问我们的Open WebUI 文档或加入我们的Discord 社区以获取全面指导。
6、故障排除
遇到连接问题?我们的Open WebUI 文档可以帮您解决问题。如需进一步帮助并加入我们充满活力的社区,请访问Open WebUI Discord。
Open WebUI:服务器连接错误
如果您遇到连接问题,这通常是因为WebUI docker容器无法连接到容器内的Ollama服务器(127.0.0.1:11434 或 host.docker.internal:11434)。在您的docker命令中使用 --network=host
标志可以解决这个问题。注意,端口从3000更改为8080,导致链接变为 http://localhost:8080
。
示例 Docker 命令:
docker run -d --network=host -v open-webui:/app/backend/data -e OLLAMA_BASE_URL=http://127.0.0.1:11434 --name open-webui --restart always ghcr.io/open-webui/open-webui:main
7、保持您的 Docker 安装更新
如果想要将您的本地Docker安装更新到最新版本,您可以使用Watchtower:
docker run --rm --volume /var/run/docker.sock:/var/run/docker.sock containrrr/watchtower --run-once open-webui
在命令的最后部分,如果您使用的容器名称与 open-webui
不同,请将其替换为您的容器名称。
检查我们提供的迁移指南,可在我们的 Open WebUI 文档 中找到。
使用 Dev 分支 🌙
警告::dev
分支包含最新的不稳定功能和更改。请自行承担风险使用,因为它可能存在错误或不完整的功能。
如果您想尝试最新的前沿功能并且可以接受偶尔的不稳定性,您可以使用 :dev
标签,如下所示:
docker run -d -p 3000:8080 -v open-webui:/app/backend/data --name open-webui --add-host=host.docker.internal:host-gateway --restart always ghcr.io/open-webui/open-webui:dev
2025-04-16(三)