Py学习  »  Git

狂揽 13.6 万 Star,GitHub 上最火的 AI 界面,凭什么?

Java知音 • 13 小时前 • 13 次点击  

 

本地跑大模型这件事,越来越多的人在做。Ollama 让下载和运行模型变得简单,但每次都在命令行里聊天,终究不顺手。用了一段时间之后,你大概都会搜到同一个东西:Open WebUI。

这篇文章就来好好聊聊这个项目,从它是什么到能做什么,再到怎么装上。


它是什么

Open WebUI 是一个开源、自托管的 AI 操作界面,目前 Star 数超过 13 万。

它最开始叫 Ollama WebUI,顾名思义就是给 Ollama 配的网页端界面。后来功能越加越多,改了名字,现在已经不只是 Ollama 的前端了,它可以同时连接本地模型和各种云端 API,比如 OpenAI、Anthropic、Groq、Mistral 等等,统一在一个界面里管理。

项目由 Timothy Jaeryang Baek 发起,社区很活跃,Discord 里有数万名开发者。Docker 镜像累计拉取次数超过 2 亿,这个数字说明用的人确实不少。

核心特点用一句话说就是:完全私有、离线可用、功能齐全。你可以在自己的服务器或者本地机器上部署,数据不出去,没有账号限制,也没有每月的 API 费用上限。


界面长什么样

打开之后的第一印象很接近 ChatGPT,但细看会发现功能入口多不少。左边是对话历史,右边是聊天区,顶部可以切换模型。操作习惯和主流的 AI 聊天产品差不多,不需要花太多时间适应。

主题多样,可以自由选择;

亮色模式

暗黑模式

自定义主题

响应式设计做得也不错,手机上用同样流畅,还支持 PWA,可以把网页版安装到手机桌面,用起来像个原生 App。


主要功能

统一管理多个模型

这是 Open WebUI 最实用的地方之一。你可以把本地的 Ollama 模型和远端的 OpenAI API 同时配置进来,在同一个界面里切换使用。聊到一半觉得这个模型不够用,换一个,上下文还在。

还有一个"多模型对比"功能,可以把同一个问题同时发给两个模型,左右排列对比回答。评估不同模型在特定任务上的表现,这个功能很好用。

支持接入的服务包括 Ollama、OpenAI、Anthropic、Gemini、GroqCloud、LMStudio、OpenRouter 等,基本上主流的都覆盖了。

知识库与 RAG

你可以上传 PDF、Word、TXT、CSV 等文件,建成一个私有知识库。对话的时候用 # 命令引用知识库内容,模型会基于你的文档来回答,而不是凭印象乱说。

底层支持 9 种向量数据库,包括 ChromaDB、PGVector、Qdrant、Milvus 等,根据自己的情况选。文档解析也支持多个引擎:Tika、Docling、Mistral OCR、PaddleOCR 都可以用。

搜索增强也有,支持接入 SearXNG、Google、Bing、DuckDuckGo、Perplexity 等 15 个以上的搜索提供方。本地模型接了网络搜索之后,时效性的问题基本就解决了。

语音和图片

语音转文字支持本地 Whisper、OpenAI、Deepgram、Azure;文字转语音支持 Azure、ElevenLabs、OpenAI 等。用麦克风直接说话,模型回答,再用语音播出来,这个流程是通的。

甚至还支持视频通话模式,摄像头对着你,模型通过视觉能力分析画面,和你互动。

图片生成集成了 DALL-E、Gemini、ComfyUI 和 AUTOMATIC1111,不需要单独开另一个工具,在聊天窗口里直接生图。

自定义 Agent

Open WebUI 把这个功能叫 Model Builder,逻辑和 GPTs 差不多。你可以选一个基础模型,给它写 System Prompt,绑定特定的知识库,再附上几个工具,打包成一个专用的 Agent。

比如做一个"代码审查助手",写进你们团队的编码规范;或者做一个"合同分析助手",上传公司常用的合同模板。每次用不需要重新配置,直接打开用。

动态变量也支持,比如 {{ USER_NAME }}{{ CURRENT_DATE }} 会自动替换成当前用户名和日期,System Prompt 里用起来方便。

团队协作与权限管理

如果是给团队部署,Open WebUI 这块功能很完整。

权限管理基于 RBAC(基于角色的访问控制),可以细化到每个模型的使用权限。比如研发团队可以用代码模型,财务团队只能用通用对话模型,互相不干扰。

用户认证支持 LDAP/Active Directory、SSO 单点登录、SCIM 2.0 自动化用户同步,公司如果有现成的账号体系,接进来不麻烦。

Channels 功能有点像 Slack,可以建频道,团队成员在同一个频道里和 AI 协作,用 @模型名 召唤不同的模型参与讨论,所有人看到的是同一条时间线。

管理员面板有用量统计,能看到每个用户调用了哪些模型、消耗了多少 Token,方便做内部成本核算。

工具扩展:Python 函数、Pipeline 和 MCP

这部分是 Open WebUI 和一般聊天界面拉开差距的地方。

Python 工具:可以直接在界面内写 Python 函数,让模型具备查数据库、调外部 API、做计算等能力。不需要单独搭服务,内置了代码编辑器,写完直接绑到 Agent 上用。

Pipelines:插件框架,用来自定义消息的过滤、路由和转换逻辑。社区已经有现成的例子,比如用 Langfuse 做 usage 监控、用 LibreTranslate 做实时翻译、做敏感词过滤等等。

MCP 支持:原生支持 Model Context Protocol,理论上可以接入数以千计的第三方服务和数据源。这个协议是 Anthropic 推出的,现在生态已经很大了,Open WebUI 支持之后,扩展性大幅提升。


怎么安装

Docker 是最推荐的方式,也最简单。

如果 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

跑起来之后打开 http://localhost:3000 就能用。

如果想把 Ollama 和 Open WebUI 打包在一起,用 :ollama 镜像更方便,一个容器全搞定:

# 有 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

只用 OpenAI API,不跑本地模型,也可以:

docker run -d -p 3000:8080 \
  -e OPENAI_API_KEY=你的key \
  -v open-webui:/app/backend/data \
  --name open-webui --restart always \
  ghcr.io/open-webui/open-webui:main

如果不想用 Docker,也可以直接用 pip 安装,前提是 Python 版本 3.11:

pip install open-webui
open-webui serve

装完访问 http://localhost:8080

镜像有几个变体,:main 是标准版,:cuda 加了 NVIDIA GPU 支持,:main-slim 体积小一些,首次启动时再下载 Whisper 等模型。生产环境建议锁定版本号,比如 v0.9.0,避免更新引入不兼容的变化。


适合谁用

个人开发者:想在本地跑大模型但不想每次用命令行的,Open WebUI 给你一个好用的界面,还能管理多个模型。隐私有保障,费用只有电费。

小团队:不想花钱买 ChatGPT Team 或 Claude for Work 的,可以自己搭一套,权限管理和用量统计都有,够用。

企业内部部署:有合规要求,数据不能出内网的场景,Open WebUI 支持完全离线运行,LDAP/SSO/SCIM 的集成也到位,对接公司现有账号体系不麻烦。

AI 工具研究者:想测试不同模型在相同任务上的表现,多模型对比功能用起来比较高效。


最后说几句

Open WebUI 在功能覆盖上已经很全面了,基本上你能想到的 AI 交互需求,它都有对应的模块。但功能多也意味着初次配置的时候要花点时间摸清楚,文档写得还行,社区活跃,遇到问题 Discord 里大概率有人帮你。

Star 数到了 13 万,这在开源工具里算是相当大的数字,说明它经受住了不少真实用户的检验。更新也很频繁,每隔一段时间都有新功能进来。

如果你正在用 Ollama 跑本地模型,或者在找一个可以私有化部署的 AI 界面,Open WebUI 值得试试。装起来并不麻烦,花半小时配好,之后大概率会一直用下去。

Open WebUI GitHub Star 增长趋势
Open WebUI GitHub Star 增长趋势

GitHub 地址:https://github.com/open-webui/open-webui

官方文档:https://docs.openwebui.com

 

点击下方卡片,关注Java知音

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/196013