Skip to main content
Sponsored by Open WebUI Inc.
Open WebUI Inc.

We are hiring! Shape the way humanity engages with intelligence.

warning

本教程由社区贡献,不属于 Open WebUI 官方团队的支持范围。它仅作为如何针对特定用例自定义 Open WebUI 的演示。想要贡献吗?请查看 贡献教程

在离线模式下运行 Open WebUI 🔌

如果您想在离线模式下运行 Open WebUI,您必须考虑您的安装方法并相应地调整所需的功能。在本指南中,我们将介绍实现与在线版本基本相似设置的不同方法。

什么是离线模式?

Open WebUI 的离线模式允许您在没有活动互联网连接的情况下运行应用程序。这使您可以为您的 LLM 和工具创建一个“物理隔离 (Air-gapped)”的环境(完全的“物理隔离”环境需要将实例与互联网彻底隔离开来)。

info

启用离线模式时禁用的功能:

  • 自动版本更新检查(由 ENABLE_VERSION_UPDATE_CHECK 控制)
  • 从 Hugging Face Hub 下载嵌入模型(由 HF_HUB_OFFLINE 控制)
    • 如果您在激活离线模式之前没有下载嵌入模型,RAG、网页搜索和文档分析功能将无法正常工作
  • 嵌入、重排序和 Whisper 模型的自动模型更新
  • UI 中的更新通知

仍可正常使用的功能:

  • 外部 LLM API 连接(OpenAI 等)
  • OAuth 身份验证提供商
  • 使用外部 API 的网页搜索和 RAG

如何启用离线模式?

离线模式需要设置多个环境变量,以完全断开 Open WebUI 与外部网络依赖项的连接。主要变量包括:

必需的环境变量:

  • OFFLINE_MODE=true - 禁用版本检查并防止自动模型下载
  • HF_HUB_OFFLINE=1 - 指示 Hugging Face Hub 在离线模式下运行,阻止所有自动下载

可选但推荐:

  • RAG_EMBEDDING_MODEL_AUTO_UPDATE=false - 防止自动更新嵌入模型
  • RAG_RERANKING_MODEL_AUTO_UPDATE=false - 防止自动更新重排序模型
  • WHISPER_MODEL_AUTO_UPDATE=false - 防止自动更新 Whisper 模型

根据您的部署方法应用这些环境变量。

关键:HF_HUB_OFFLINE 的行为

当设置 HF_HUB_OFFLINE=1 时:

  • 模型、Sentence Transformers 和其他 Hugging Face 内容的下载将无法工作
  • 如果在未预先下载模型的情况下启用此项,RAG 将无法在默认安装中工作
  • 只有预先下载到正确缓存目录中的模型才可访问

此变量提供了最严格的离线强制执行,但需要仔细准备。

tip

考虑您是否需要从部署开始就离线启动应用程序。如果您的用例不需要立即具备离线能力,请遵循 方案 II 以获得更简单的设置。

方案 I

I: 语音转文本 (Speech-To-Text)

本地 whisper 安装默认不包含模型。在这方面,如果您想使用外部模型/提供商,只能部分遵循 指南。要使用本地 whisper 应用程序,您必须首先下载您选择的模型(例如 Huggingface - Systran)。

from faster_whisper import WhisperModel

faster_whisper_kwargs = {
"model_size_or_path": "Systran/faster-whisper-large-v3",
"device": "cuda", # 设置此项以下载 cuda 调整后的模型
"compute_type": "int8",
"download_root": "/path/of/your/choice"
}

WhisperModel(**faster_whisper_kwargs)

下载目录的内容必须复制到 Open WebUI 部署中的 /app/backend/data/cache/whisper/models/。直接通过 环境变量 声明您的 whisper 模型是有意义的,如下所示:WHISPER_MODEL=Systran/faster-whisper-large-v3

I: 文本转语音 (Text-To-Speech)

默认的本地 Transformer 已经可以处理文本转语音功能。如果您更喜欢不同的方法,请遵循 指南 之一。