Open WebUI 是一个用户友好的 Web 界面,让你既可以轻松使用本地运行的语言模型(Ollama)又可以连接 OpenAI 的 API。
简介
Open-WebUI 是一个开源的、功能丰富且用户友好的自托管 AI 平台,主要设计用于与各种大型语言模型 (LLM) 运行器进行交互,并提供一个直观的 Web 用户界面。
主要特点和用途:
- LLM 前端界面: 它提供了一个美观、响应式的 Web 界面,让用户可以方便地与本地或远程部署的大型语言模型(如通过 Ollama 运行的模型)进行对话和交互。它也支持与 OpenAI 兼容的 API。
- 离线运行能力: 设计为可以完全离线运行,这意味着你可以在本地机器上托管并与 AI 模型交互,无需依赖外部云服务。
- 多模型支持: 能够管理和切换不同的 LLM 模型,支持包括 LLaMA、Mistral、Qwen、Gemma 等多种开源模型。
- 会话管理: 提供多会话管理、指令模式等功能,方便用户组织和回顾与 AI 的对话历史。
- RAG(检索增强生成)集成: 内置推理引擎,支持 RAG 功能,这意味着它可以结合外部文档或知识库来增强模型的回答,例如与本地 PDF、CSV、TXT、MD、DOCX 等文档进行对话。
- 功能扩展: 允许通过 Functions 和 Pipelines 等机制进行功能扩展,例如实现自定义函数调用、构建复杂的 RAG 流程、消息监控、速率限制过滤、实时翻译等。
- 易于部署: 支持通过 Docker、Kubernetes 等容器化技术轻松部署,简化了设置过程。
- 用户权限管理: 提供细粒度的用户权限和用户组管理功能,确保多用户环境下的安全性和定制化体验。
部署
source
uv(未完成)
安装 uv
1
2
|
# On macOS and Linux.
curl -LsSf https://astral.sh/uv/install.sh | sh
|
1
2
|
# On Windows.
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
|
创建环境,并激活
1
2
|
uv venv
source .venv/bin/activate
|
下载 vllm
运行模型
1
2
|
# Load and run the model:
vllm serve "HuggingFaceTB/SmolLM-135M"
|
pip
docker compose
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
services:
open-webui:
image: ghcr.io/open-webui/open-webui:latest
container_name: open-webui
ports:
- 8080:8080
environment:
- ENABLE_OPENAI_API=False # 禁用 OpenAI 集成,卡死的原因就是这个
- OFFLINE_MODE=True # 启用离线模式,不从 HuggingFace 拉取模型数据
# - OLLAMA_BASE_URL=http://<Ollama-Server-IP>:<Port>
- USE_OLLAMA_DOCKER=False # 不使用集成 Ollama 容器
- TZ=Asia/Shanghai
restart: unless-stopped
volumes:
- ./open-webui_data:/app/backend/data
|
访问
IP:8080
配置
使用 OpenAI 格式兼容的 API 服务
- 左下角或者右上角头像
- Admin Panel
- Settings
- Connections,开启OpenAI API
- 添加 api,注意 url 端点需要加上版本号
v1
图像生成
- 左下角或者右上角头像
- Admin Panel
- Settings
- Images
- 开启图像生成
- 选择图像生成服务