← 返回首页
🧠

Open WebUI

📂 llm ⏱ 2 min 203 words

--- title: "Open WebUI" description: "Open WebUI多用户管理、RAG集成、模型切换功能详解,打造企业级本地LLM交互平台" tags: ["Open WebUI", "多用户", "RAG集成", "模型切换"] category: "llm" icon: "🧠"

Open WebUI

Open WebUI简介

Open WebUI(原名Ollama WebUI)是一个功能丰富的自托管LLM交互平台。它以ChatGPT般的用户体验为目标,同时支持多种后端模型(Ollama、OpenAI API兼容服务等)。Open WebUI特别适合团队和企业使用,提供了完善的用户管理、权限控制和知识库集成能力。

安装部署

Docker是推荐的安装方式:

# 单机部署
docker run -d -p 3000:8080 \
  --add-host=host.docker.internal:host-gateway \
  -v open-webui:/app/backend/data \
  --name open-webui \
  ghcr.io/open-webui/open-webui:main

# 与Ollama集成
docker run -d -p 3000:8080 \
  --add-host=host.docker.internal:host-gateway \
  -e OLLAMA_BASE_URL=http://host.docker.internal:11434 \
  -v open-webui:/app/backend/data \
  --name open-webui \
  ghcr.io/open-webui/open-webui:main

# Docker Compose部署
version: '3.8'
services:
  open-webui:
    image: ghcr.io/open-webui/open-webui:main
    ports:
      - "3000:8080"
    environment:
      - OLLAMA_BASE_URL=http://ollama:11434
      - ENABLE_SIGNUP=false
      - WEBUI_AUTH=true
    volumes:
      - open-webui-data:/app/backend/data
    depends_on:
      - ollama

  ollama:
    image: ollama/ollama
    volumes:
      - ollama-data:/root/.ollama
    deploy:
      resources:
        reservations:
          devices:
            - driver: nvidia
              count: all
              capabilities: [gpu]

多用户管理

Open WebUI提供完善的用户管理系统:

# 管理员功能
# 1. 注册第一个用户自动成为管理员
# 2. 在管理面板中管理用户

# 通过环境变量控制注册
-e ENABLE_SIGNUP=false  # 禁止公开注册
-e WEBUI_SECRET_KEY=your-secret-key  # 设置密钥

管理员可以:创建和删除用户、分配用户角色(管理员/普通用户)、查看用户使用统计、设置API密钥、管理模型访问权限。支持LDAP/SSO集成,适配企业身份认证系统。

RAG知识库集成

Open WebUI内置了强大的RAG功能,可以将本地文档作为知识库:

# RAG配置参数
rag_config = {
    "embedding_model": "nomic-embed-text",
    "chunk_size": 500,
    "chunk_overlap": 50,
    "top_k": 5,
    "score_threshold": 0.5
}

# 支持的文档格式
supported_formats = [
    ".pdf", ".docx", ".txt", ".md",
    ".csv", ".xlsx", ".pptx",
    ".epub", ".html", ".json"
]

使用流程:

  1. 在WebUI中进入"Workspace" → "Knowledge"
  2. 创建知识库(Collection)
  3. 上传文档或粘贴文本内容
  4. 在对话中引用知识库(使用 # 符号选择知识库)
# 在对话中使用知识库
用户:根据我们的产品文档,解释一下核心功能
助手:[自动检索知识库中的相关内容并回答]

# 或者手动引用
用户:#knowledge-base 产品文档,请总结主要功能点

模型切换与管理

Open WebUI支持无缝切换不同的模型:

# 支持的后端
# 1. Ollama - 本地模型管理
# 2. OpenAI API兼容 - 对接各种推理服务
# 3. 自定义模型 - 通过配置文件添加

# 添加外部模型服务
# 在Settings → Connections中配置
# 支持多个后端同时连接

模型切换支持:一键切换不同模型、保留对话上下文、模型性能对比、设置默认模型、为不同任务选择不同模型。

高级功能

对话管理:支持对话导入导出、文件夹分类、搜索历史对话、对话分享。

提示词模板:内置丰富的提示词模板,支持自定义模板创建和社区分享。

{
    "title": "代码审查助手",
    "content": "你是一位专业的代码审查专家。请审查以下代码并提供改进建议:\n\n代码:\n{code}\n\n请从以下方面进行审查:\n1. 代码质量\n2. 性能优化\n3. 安全性\n4. 可维护性"
}

多模态支持:支持图片输入(视觉模型)、文件上传解析、语音输入(需配置Whisper)。

Web搜索集成:集成SearXNG等搜索引擎,让LLM能够实时获取网络信息。

Open WebUI以其友好的界面和完善的功能,成为搭建私有化LLM平台的首选方案,特别适合需要多用户协作和知识管理的企业场景。