open-webui 介绍
了解项目的详细信息和使用方法
Open WebUI 👋
Open WebUI 是一个可扩展、功能丰富且用户友好的自托管 AI 平台,旨在完全离线运行。它支持各种大语言模型(LLM)执行器,例如 Ollama 和 兼容 OpenAI 的 API,同时具备用于检索增强生成(RAG)的内置推理引擎,使其成为一个强大的 AI 部署解决方案。
欲了解更多信息,请参阅我们的 Open WebUI 文档。
Open WebUI 的主要功能 ⭐
-
🚀 轻松安装:通过 Docker 或 Kubernetes(kubectl、kustomize 或 helm)无缝安装,支持带有
:ollama
和:cuda
标签的镜像,体验无忧使用。 -
🤝 Ollama/OpenAI API 集成:轻松整合与 OpenAI 兼容的 API,支持通过 Ollama 模型进行多样化对话。定制 OpenAI API URL,以链接 LMStudio、GroqCloud、Mistral、OpenRouter 等。
-
🛡️ 细粒度权限和用户组:通过允许管理员创建详细的用户角色和权限,我们确保了安全的用户环境。这种细粒度不仅增强了安全性,还允许定制的用户体验,增强用户的参与感和责任感。
-
📱 响应式设计:在台式机、笔记本电脑和移动设备上享受无缝体验。
-
📱 适用于移动设备的渐进式 Web 应用(PWA):在您的移动设备上享受类原生应用程序体验,通过我们的 PWA 提供本地访问的离线功能及无缝的用户界面。
-
✒️🔢 完整的 Markdown 和 LaTeX 支持:通过全面的 Markdown 和 LaTeX 功能提升您的大语言模型体验,创造更丰富的互动。
-
🎤📹 免提语音/视频呼叫:体验无缝交流,集成的免提语音和视频呼叫功能提供了更具动态和互动性的聊天环境。
-
🛠️ 模型构建器:通过 Web UI 轻松创建 Ollama 模型。创建和添加自定义角色/代理,自定义聊天元素,并通过 Open WebUI 社区 整合轻松导入模型。
-
🐍 本地 Python 函数调用工具:通过内置代码编辑器支持,在工具工作区中增强您的大语言模型。通过简单添加您的纯 Python 函数,实现与大语言模型的无缝集成(BYOF)。
-
📚 本地 RAG 集成:通过开创性的检索增强生成(RAG)支持,深入探讨聊天互动的未来。此功能无缝将文档互动整合到您的聊天体验中。您可以直接在聊天中加载文档,或将文件添加到您的文档库,使用
#
命令在查询前轻松访问。 -
🔍 用于 RAG 的网页搜索:使用如
SearXNG
、Google PSE
、Brave Search
、serpstack
、serper
、Serply
、DuckDuckGo
、TavilySearch
、SearchApi
和Bing
等供应商执行网页搜索,并直接将结果注入到您的聊天体验中。 -
🌐 网页浏览功能:使用
#
命令后接 URL,轻松将网页集成到您的聊天体验中。此功能允许您直接在对话中整合网页内容,丰富互动。 -
🎨 图像生成集成:通过诸如 AUTOMATIC1111 API 或 ComfyUI(本地)以及 OpenAI 的 DALL-E(外部)等选项无缝集成图像生成功能,使您的聊天体验充满动态视觉内容。
-
⚙️ 多模型交互:轻松与多个模型同时交互,利用其独特的优势以获得最佳响应。通过并行使用多种模型,提升您的互动体验。
-
🔐 基于角色的访问控制(RBAC):确保安全访问,限制权限;只有授权人员才能访问您的 Ollama,专属的模型创建/拉取权限只对管理员开放。
-
🌐🌍 多语言支持:享受以您偏好的语言体验 Open WebUI,我们的国际化(i18n)支持正不断扩展!我们正积极寻找贡献者来扩充支持的语言!
-
🧩 管道和 Open WebUI 插件支持:使用 Pipelines Plugin Framework 无缝将自定义逻辑和 Python 库集成到 Open WebUI 中。启动您的 Pipelines 实例,将 OpenAI URL 设置为管道 URL,探索无限可能。示例 包括函数调用、用户速率限制以控制访问、使用如 Langfuse 的使用监控、支持多语言的实时翻译与 LibreTranslate、有害信息过滤等。
-
🌟 持续更新:我们致力于通过定期更新、修复和新增功能,不断改进 Open WebUI。
想了解 Open WebUI 的更多功能?请查看我们的 Open WebUI 文档 获取全面概览!
🔗 欢迎访问 Open WebUI 社区!
别忘了探索我们的兄弟项目 Open WebUI 社区,在这里您可以发现、下载和探索定制的模型文件。Open WebUI 社区为增强您的 Open WebUI 聊天互动提供了丰富的可能性!🚀
如何安装 🚀
通过 Python pip 安装 🐍
Open WebUI 可以通过 Python 包管理器 pip 安装。在进行安装之前,请确保您使用的是 Python 3.11 以避免兼容性问题。
-
安装 Open WebUI: 打开终端,运行以下命令以安装 Open WebUI:
bash1pip install open-webui
-
运行 Open WebUI: 安装后,您可以通过执行以下命令启动 Open WebUI:
bash1open-webui serve
这将启动 Open WebUI 服务器,您可以通过 http://localhost:8080 访问它。
使用 Docker 快速启动 🐳
[!NOTE]
请注意,对于某些 Docker 环境,可能需要额外配置。如果您遇到任何连接问题,欢迎查阅我们在 Open WebUI 文档 中的详细指南。
[!WARNING] 使用 Docker 安装 Open WebUI 时,请确保在 Docker 命令中包含
-v open-webui:/app/backend/data
。此步骤非常关键,因为它确保您的数据库正确挂载并防止任何数据丢失。
[!TIP]
如果您希望使用包含 Ollama 的 Open WebUI 或 CUDA 加速,我们建议您利用官方标记为:cuda
或:ollama
的镜像。要启用 CUDA,您必须在您的 Linux/WSL 系统上安装 Nvidia CUDA container toolkit。
使用默认配置进行安装
-
如果 Ollama 在本地计算机上,请使用以下命令:
bash1docker 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:bash1docker 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,请使用以下命令:
bash1docker 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
安装仅用于 OpenAI API 使用
-
如果您仅使用 OpenAI API,请使用以下命令:
bash1docker 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
安装含打包 Ollama 支持的 Open WebUI
此安装方法使用一个包含 Open WebUI 与 Ollama 的单一容器镜像,通过单个命令实现简化的安装。根据您的硬件设置选择合适的命令:
-
支持 GPU 的版本: 通过运行以下命令利用 GPU 资源:
bash1docker 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,请改用以下命令:
bash1docker 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 2```这两条命令提供了内置的、无烦恼的安装方法,使得同时安装 Open WebUI 和 Ollama 变得非常简单快捷。
安装完成后,你可以通过 http://localhost:3000 访问 Open WebUI。祝你使用愉快!😄
其他安装方法
我们提供了多种安装替代方案,包括非 Docker 的本地安装方法、Docker Compose、Kustomize 和 Helm。如果需要详细指引,请访问我们的 Open WebUI 文档 或加入我们的 Discord 社区。
故障排查
遇到连接问题?请查看我们的 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 命令示例:
bash1docker 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
保持 Docker 安装的最新状态
如果你想将本地 Docker 安装更新到最新版本,可以使用 Watchtower 进行更新:
bash1docker run --rm --volume /var/run/docker.sock:/var/run/docker.sock containrrr/watchtower --run-once open-webui
在命令的最后部分,如果你的容器名称不同,请将 open-webui
替换为你的容器名称。
查看我们的迁移指南,详见 Open WebUI 文档 。
使用开发分支 🌙
[!WARNING]
:dev
分支包含最新的不稳定特性和更改。请自行承担使用风险,因为可能存在错误或不完整的特性。
如果你想体验最新的尖端特性,并能接受偶尔的不稳定问题,你可以使用 :dev
标签,如下所示:
bash1docker 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
离线模式
如果你在离线环境中运行 Open WebUI,可以将 HF_HUB_OFFLINE
环境变量设置为 1
,以阻止尝试从互联网下载模型。
bash1export HF_HUB_OFFLINE=1
接下来是什么?🌟
在 Open WebUI 文档 中探索即将推出的功能。
许可证 📜
本项目采用 MIT License 授权 —— 详情请查看 LICENSE 文件。📄
由 Timothy Jaeryang Baek 创建 —— 让我们一起让 Open WebUI 更加出色!💪