跳到主要内容

🌍 环境变量配置

概览

Open WebUI 提供了大量的环境变量,允许您自定义和配置应用程序的各个方面。本页提供了所有可用环境变量的全面参考,包括它们的类型、默认值和描述。随着新变量的引入,本页将随之更新以反映不断增长的配置选项。

信息

本页与 Open WebUI 发布版本 v0.6.5 同步更新,但仍处于完善阶段,后续将包含更准确的描述、列出环境变量的可用选项、默认值,并改进描述。

关于 PersistentConfig 环境变量的重要说明

注意

首次启动 Open WebUI 时,所有环境变量被同等对待,并可用于配置应用程序。但是,对于标记为 PersistentConfig 的环境变量,其值会被持久化并内部存储。

初始启动后,如果您重启容器,PersistentConfig 环境变量将不再使用外部环境变量值。相反,它们将使用内部存储的值。

相比之下,常规环境变量将在每次后续重启时继续更新和应用。

您可以直接在 Open WebUI 内部更新 PersistentConfig 环境变量的值,这些更改将内部存储。这允许您独立于外部环境变量管理这些配置设置。

请注意,PersistentConfig 环境变量在下面的文档中会明确标记,以便您了解它们的行为方式。

应用程序/后端

以下环境变量由 backend/open_webui/config.py 用于提供 Open WebUI 启动配置。请注意,某些变量可能因您是直接运行 Open WebUI 还是通过 Docker 运行而具有不同的默认值。有关日志记录环境变量的更多信息,请参阅我们的日志记录文档

通用

WEBUI_URL

  • 类型: str
  • 默认值: http://localhost:3000
  • 描述: 指定 Open WebUI 可访问的 URL。目前用于搜索引擎支持。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

ENABLE_SIGNUP

  • 类型: bool
  • 默认值: True
  • 描述: 切换用户账户创建功能。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

ENABLE_LOGIN_FORM

  • 类型: bool
  • 默认值: True
  • 描述: 切换电子邮件、密码、登录和“或”元素(仅当 ENABLE_OAUTH_SIGNUP 设置为 True 时)。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。
危险

仅当 ENABLE_OAUTH_SIGNUP 也正在使用并设置为 True 时,才应将此值设置为 False。否则将导致无法登录。

DEFAULT_LOCALE

  • 类型: str
  • 默认值: en
  • 描述: 设置应用程序的默认区域设置。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

DEFAULT_MODELS

  • 类型: str
  • 默认值: 空字符串 (' '),因为默认为 None
  • 描述: 设置默认的语言模型。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

DEFAULT_USER_ROLE

  • 类型: str
  • 选项
    • pending - 新用户处于待处理状态,直到其账户由管理员手动激活。
    • user - 新用户自动激活并具有常规用户权限。
    • admin - 新用户自动激活并具有管理员权限。
  • 默认值: pending
  • 描述: 设置分配给新用户的默认角色。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

PENDING_USER_OVERLAY_TITLE

  • 类型: str
  • 默认值: 空字符串 (' ')
  • 描述: 为待处理用户覆盖层设置自定义标题。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

PENDING_USER_OVERLAY_CONTENT

  • 类型: str
  • 默认值: 空字符串 (' ')
  • 描述: 为待处理用户覆盖层设置自定义文本内容。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

ENABLE_CHANNELS

  • 类型: bool
  • 默认值: False
  • 描述: 启用或禁用频道支持。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

WEBHOOK_URL

  • 类型: str
  • 描述: 设置用于与 Discord/Slack/Microsoft Teams 集成的 webhook。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

ENABLE_ADMIN_EXPORT

  • 类型: bool
  • 默认值: True
  • 描述: 控制管理员用户是否可以导出数据。

ENABLE_ADMIN_CHAT_ACCESS

  • 类型: bool
  • 默认值: True
  • 描述: 允许管理员用户访问所有聊天。

ENABLE_USER_WEBHOOKS

  • 类型: bool
  • 默认值: True
  • 描述: 启用或禁用用户 webhook。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

RESPONSE_WATERMARK

  • 类型: str
  • 默认值: 空字符串 (' ')
  • 描述: 设置一个自定义文本,该文本将在您复制聊天中的消息时包含在内。例如,"This text is AI generated" -> 复制时将把“This text is AI generated”添加到每条消息中。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

THREAD_POOL_SIZE

  • 类型: int
  • 默认值: 0
  • 描述: 设置 FastAPI/AnyIO 阻塞调用的线程池大小。默认情况下(设置为 0 时),FastAPI/AnyIO 使用 40 个线程。在大规模实例和许多并发用户的情况下,可能需要增加 THREAD_POOL_SIZE 以防止阻塞。

SHOW_ADMIN_DETAILS

  • 类型: bool
  • 默认值: True
  • 描述: 切换是否在界面中显示管理员用户详细信息。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

ADMIN_EMAIL

  • 类型: str
  • 描述: 设置由 SHOW_ADMIN_DETAILS 显示的管理员电子邮件。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

ENV

  • 类型: str
  • 选项
    • dev - 启用 /docs 上的 FastAPI API 文档
    • prod - 自动配置多个环境变量
  • 默认值
    • 后端默认: dev
    • Docker 默认: prod
  • 描述: 环境设置。

ENABLE_PERSISTENT_CONFIG

  • 类型: bool
  • 默认值: True
  • 描述: 如果设置为 False,所有 PersistentConfig 变量都将被视为常规变量。

CUSTOM_NAME

  • 类型: str
  • 描述: 设置 WEBUI_NAME,但会轮询 api.openwebui.com 获取元数据。

WEBUI_NAME

  • 类型: str
  • 默认值: Open WebUI
  • 描述: 设置主要的 WebUI 名称。如果被覆盖,会追加 (Open WebUI)

PORT

  • 类型: int
  • 默认值: 8080
  • 描述: 设置运行 Open WebUI 的端口。
信息

如果您通过 Python 运行应用程序并使用 open-webui serve 命令,则无法使用 PORT 配置设置端口。相反,您必须使用 --port 标志将其直接指定为命令行参数。例如:

open-webui serve --port 9999

这将使 Open WebUI 运行在端口 9999 上。在此模式下,PORT 环境变量将被忽略。

ENABLE_REALTIME_CHAT_SAVE

  • 类型: bool
  • 默认值: False
  • 描述: 启用后,系统会将每个流式聊天数据块实时保存到数据库,以确保最大程度的数据持久性。此功能提供了可靠的数据恢复并允许准确的会话跟踪。然而,代价是增加了延迟,因为保存到数据库会引入延迟。禁用此功能可以提高性能并减少延迟,但会面临系统故障或崩溃时潜在的数据丢失风险。根据您的应用程序需求和可接受的权衡使用此功能。

BYPASS_MODEL_ACCESS_CONTROL

  • 类型: bool
  • 默认值: False
  • 描述: 绕过模型访问控制。

WEBUI_BUILD_HASH

  • 类型: str
  • 默认值: dev-build
  • 描述: 用于识别发布的构建的 Git SHA。

WEBUI_BANNERS

  • 类型: list of dict
  • 默认值: []
  • 描述: 要向用户显示的横幅列表。横幅的格式如下:
[{"id": "string","type": "string [info, success, warning, error]","title": "string","content": "string","dismissible": False,"timestamp": 1000}]
  • 持久性: 此环境变量是一个 PersistentConfig 变量。
信息

.env 文件中设置此环境变量时,请确保通过将整个值用双引号括起来并对内部引号使用转义引号 (\") 来转义引号。例如:

WEBUI_BANNERS="[{\"id\": \"1\", \"type\": \"warning\", \"title\": \"Your messages are stored.\", \"content\": \"Your messages are stored and may be reviewed by human people. LLM's are prone to hallucinations, check sources.\", \"dismissible\": true, \"timestamp\": 1000}]"

USE_CUDA_DOCKER

  • 类型: bool
  • 默认值: False
  • 描述: 构建具有 NVIDIA CUDA 支持的 Docker 镜像。为本地 Whisper 和嵌入启用 GPU 加速。

EXTERNAL_PWA_MANIFEST_URL

  • 类型: str
  • 默认值: 空字符串 (' '),因为默认为 None
  • 描述: 如果定义为完全限定的 URL (例如,https://path/to/manifest.webmanifest),则发送到 /manifest.json 的请求将使用外部 manifest 文件。如果未定义,将使用默认的 manifest.json 文件。

ENABLE_TITLE_GENERATION

  • 类型: bool
  • 默认值: True
  • 描述: 启用或禁用聊天标题生成。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

LICENSE_KEY

  • 类型: str
  • 默认值: None
  • 描述: 指定要使用的许可证密钥(仅适用于企业用户)。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

SSL_ASSERT_FINGERPRINT

  • 类型: str
  • 默认值: 空字符串 (' '),因为默认为 None
  • 描述: 指定要使用的 SSL assert fingerprint。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

DEFAULT_PROMPT_SUGGESTIONS

  • 类型: list of dict
  • 默认值: [] (表示使用内置的默认提示建议)
  • 描述: 提示建议列表。提示建议的格式如下:
[{"title": ["Title part 1", "Title part 2"], "content": "prompt"}]

AIOHTTP 客户端

AIOHTTP_CLIENT_TIMEOUT

  • 类型: int
  • 默认值: 300
  • 描述: 指定 AIOHTTP 客户端的超时时长(秒)。这会影响与 Ollama 和 OpenAI 端点的连接等。
信息

这是客户端等待响应的最长时间,超过此时间将发生超时。如果设置为空字符串 (' '),超时将设置为 None,从而有效地禁用超时,允许客户端无限期等待。

AIOHTTP_CLIENT_TIMEOUT_MODEL_LIST

  • 类型: int
  • 默认值: 10
  • 描述: 设置获取模型列表的超时时间(秒)。当网络延迟需要更长的超时时长才能成功检索模型列表时,这会很有用。
注意

默认情况下,AIOHTTP_CLIENT_TIMEOUT_MODEL_LIST 设置为 10 秒,以确保在打开 Web UI 时所有必要的连接都可用。此时长足以在高网络延迟情况下检索模型列表。如果您偏好更快的超时,可以降低此值,但请记住,这样做可能会导致某些连接根据您的网络情况而断开。

AIOHTTP_CLIENT_TIMEOUT_OPENAI_MODEL_LIST

  • 类型: int
  • 描述: 设置获取模型列表的超时时间(秒)。当网络延迟需要更长的超时时长才能成功检索模型列表时,这会很有用。

目录

DATA_DIR

  • 类型: str
  • 默认值: ./data
  • 描述: 指定数据存储的基本目录,包括上传、缓存、向量数据库等。

FONTS_DIR

  • 类型: str
  • 描述: 指定字体目录。

FRONTEND_BUILD_DIR

  • 类型: str
  • 默认值: ../build
  • 描述: 指定构建好的前端文件的位置。

STATIC_DIR

  • 类型: str
  • 默认值: ./static
  • 描述: 指定静态文件的目录,例如 favicon。

Ollama

ENABLE_OLLAMA_API

  • 类型: bool
  • 默认值: True
  • 描述: 启用 Ollama API 的使用。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

OLLAMA_BASE_URL (OLLAMA_API_BASE_URL 已弃用)

  • 类型: str
  • 默认值: http://localhost:11434
  • Docker 默认值
    • 如果设置了 K8S_FLAG: http://ollama-service.open-webui.svc.cluster.local:11434
    • 如果 USE_OLLAMA_DOCKER=True: http://localhost:11434
    • 否则 http://host.docker.internal:11434
  • 描述: 配置 Ollama 后端 URL。

OLLAMA_BASE_URLS

  • 类型: str
  • 描述: 配置负载均衡的 Ollama 后端主机,用 ; 分隔。请参阅 OLLAMA_BASE_URL。优先于OLLAMA_BASE_URL
  • 示例: http://host-one:11434;http://host-two:11434
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

USE_OLLAMA_DOCKER

  • 类型: bool
  • 默认值: False
  • 描述: 构建包含捆绑 Ollama 实例的 Docker 镜像。

K8S_FLAG

  • 类型: bool
  • 默认值: False
  • 描述: 如果设置,则假定 Helm chart 部署,并将 OLLAMA_BASE_URL 设置为 http://ollama-service.open-webui.svc.cluster.local:11434

OpenAI

ENABLE_OPENAI_API

  • 类型: bool
  • 默认值: True
  • 描述: 启用 OpenAI API 的使用。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

OPENAI_API_BASE_URL

  • 类型: str
  • 默认值: https://api.openai.com/v1
  • 描述: 配置 OpenAI API 基础 URL。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

OPENAI_API_BASE_URLS

  • 类型: str
  • 描述: 支持平衡负载的 OpenAI API 基础 URL,用分号分隔。
  • 示例: http://host-one:11434;http://host-two:11434
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

OPENAI_API_KEY

  • 类型: str
  • 描述: 设置 OpenAI API 密钥。
  • 示例: sk-124781258123
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

OPENAI_API_KEYS

  • 类型: str
  • 描述: 支持多个 OpenAI API 密钥,用分号分隔。
  • 示例: sk-124781258123;sk-4389759834759834
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

任务

TASK_MODEL

  • 类型: str
  • 描述: 当使用 Ollama 模型时,用于生成标题和网络搜索查询等任务的默认模型。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

TASK_MODEL_EXTERNAL

  • 类型: str
  • 描述: 当使用 OpenAI 兼容端点时,用于生成标题和网络搜索查询等任务的默认模型。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

TITLE_GENERATION_PROMPT_TEMPLATE

  • 类型: str
  • 描述: 生成聊天标题时使用的提示模板。
  • 默认值: DEFAULT_TITLE_GENERATION_PROMPT_TEMPLATE 环境变量的值。

DEFAULT_TITLE_GENERATION_PROMPT_TEMPLATE:

### Task:
Generate a concise, 3-5 word title with an emoji summarizing the chat history.
### Guidelines:
- The title should clearly represent the main theme or subject of the conversation.
- Use emojis that enhance understanding of the topic, but avoid quotation marks or special formatting.
- Write the title in the chat's primary language; default to English if multilingual.
- Prioritize accuracy over excessive creativity; keep it clear and simple.
### Output:
JSON format: { "title": "your concise title here" }
### Examples:
- { "title": "📉 Stock Market Trends" },
- { "title": "🍪 Perfect Chocolate Chip Recipe" },
- { "title": "Evolution of Music Streaming" },
- { "title": "Remote Work Productivity Tips" },
- { "title": "Artificial Intelligence in Healthcare" },
- { "title": "🎮 Video Game Development Insights" }
### Chat History:
<chat_history>
{{MESSAGES:END:2}}
</chat_history>
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

TOOLS_FUNCTION_CALLING_PROMPT_TEMPLATE

  • 类型: str
  • 描述: 调用工具时使用的提示模板。
  • 默认值: DEFAULT_TOOLS_FUNCTION_CALLING_PROMPT_TEMPLATE 环境变量的值。

DEFAULT_TOOLS_FUNCTION_CALLING_PROMPT_TEMPLATE:

Available Tools: {{TOOLS}}

Your task is to choose and return the correct tool(s) from the list of available tools based on the query. Follow these guidelines:

- Return only the JSON object, without any additional text or explanation.

- If no tools match the query, return an empty array:
{
"tool_calls": []
}

- If one or more tools match the query, construct a JSON response containing a "tool_calls" array with objects that include:
- "name": The tool's name.
- "parameters": A dictionary of required parameters and their corresponding values.

The format for the JSON response is strictly:
{
"tool_calls": [
{"name": "toolName1", "parameters": {"key1": "value1"}},
{"name": "toolName2", "parameters": {"key2": "value2"}}
]
}
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

代码执行

ENABLE_CODE_EXECUTION

  • 类型: bool
  • 默认值: True
  • 描述: 启用或禁用代码执行。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

CODE_EXECUTION_ENGINE

  • 类型: str
  • 默认值: pyodide
  • 描述: 指定要使用的代码执行引擎。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

CODE_EXECUTION_JUPYTER_URL

  • 类型: str
  • 默认值: None
  • 描述: 指定用于代码执行的 Jupyter URL。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

CODE_EXECUTION_JUPYTER_AUTH

  • 类型: str
  • 默认值: None
  • 描述: 指定用于代码执行的 Jupyter 认证方法。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

CODE_EXECUTION_JUPYTER_AUTH_TOKEN

  • 类型: str
  • 默认值: None
  • 描述: 指定用于代码执行的 Jupyter 认证令牌。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

CODE_EXECUTION_JUPYTER_AUTH_PASSWORD

  • 类型: str
  • 默认值: None
  • 描述: 指定用于代码执行的 Jupyter 认证密码。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

CODE_EXECUTION_JUPYTER_TIMEOUT

  • 类型: str
  • 默认值: 空字符串 (' '),因为默认为 None
  • 描述: 指定 Jupyter 代码执行的超时时间。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

代码解释器

ENABLE_CODE_INTERPRETER

  • 类型: bool
  • 默认值: True
  • 描述: 启用或禁用代码解释器。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

CODE_INTERPRETER_ENGINE

  • 类型: str
  • 默认值: pyodide
  • 描述: 指定要使用的代码解释器引擎。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

CODE_INTERPRETER_PROMPT_TEMPLATE

  • 类型: str
  • 默认值: None
  • 描述: 指定用于代码解释器的提示模板。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

CODE_INTERPRETER_JUPYTER_URL

  • 类型: str
  • 默认值: 空字符串 (' '),因为默认为 None
  • 描述: 指定用于代码解释器的 Jupyter URL。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

CODE_INTERPRETER_JUPYTER_AUTH

  • 类型: str
  • 默认值: 空字符串 (' '),因为默认为 None
  • 描述: 指定用于代码解释器的 Jupyter 认证方法。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

CODE_INTERPRETER_JUPYTER_AUTH_TOKEN

  • 类型: str
  • 默认值: 空字符串 (' '),因为默认为 None
  • 描述: 指定用于代码解释器的 Jupyter 认证令牌。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

CODE_INTERPRETER_JUPYTER_AUTH_PASSWORD

  • 类型: str
  • 默认值: 空字符串 (' '),因为默认为 None
  • 描述: 指定用于代码解释器的 Jupyter 认证密码。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

CODE_INTERPRETER_JUPYTER_TIMEOUT

  • 类型: str
  • 默认值: 空字符串 (' '),因为默认为 None
  • 描述: 指定 Jupyter 代码解释器的超时时间。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

直接连接 (OpenAPI/MCPO 工具服务器)

ENABLE_DIRECT_CONNECTIONS

  • 类型: bool
  • 默认值: True
  • 描述: 启用或禁用直接连接。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

自动补全

ENABLE_AUTOCOMPLETE_GENERATION

  • 类型: bool
  • 默认值: True
  • 描述: 启用或禁用自动补全生成。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。
信息

启用 ENABLE_AUTOCOMPLETE_GENERATION 时,请确保相应地配置 AUTOCOMPLETE_GENERATION_INPUT_MAX_LENGTHAUTOCOMPLETE_GENERATION_PROMPT_TEMPLATE

AUTOCOMPLETE_GENERATION_INPUT_MAX_LENGTH

  • 类型: int
  • 默认值: -1
  • 描述: 设置自动补全生成的最大输入长度。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

AUTOCOMPLETE_GENERATION_PROMPT_TEMPLATE

  • 类型: str
  • 默认值: DEFAULT_AUTOCOMPLETE_GENERATION_PROMPT_TEMPLATE 环境变量的值。

DEFAULT_AUTOCOMPLETE_GENERATION_PROMPT_TEMPLATE:

### Task:
You are an autocompletion system. Continue the text in `<text>` based on the **completion type** in `<type>` and the given language.

### **Instructions**:
1. Analyze `<text>` for context and meaning.
2. Use `<type>` to guide your output:
- **General**: Provide a natural, concise continuation.
- **Search Query**: Complete as if generating a realistic search query.
3. Start as if you are directly continuing `<text>`. Do **not** repeat, paraphrase, or respond as a model. Simply complete the text.
4. Ensure the continuation:
- Flows naturally from `<text>`.
- Avoids repetition, overexplaining, or unrelated ideas.
5. If unsure, return: `{ "text": "" }`.

### **Output Rules**:
- Respond only in JSON format: `{ "text": "<your_completion>" }`.

### **Examples**:
#### Example 1:
Input:
<type>General</type>
<text>The sun was setting over the horizon, painting the sky</text>
Output:
{ "text": "with vibrant shades of orange and pink." }

#### Example 2:
Input:
<type>Search Query</type>
<text>Top-rated restaurants in</text>
Output:
{ "text": "New York City for Italian cuisine." }

---
### Context:
<chat_history>
{{MESSAGES:END:6}}
</chat_history>
<type>{{TYPE}}</type>
<text>{{PROMPT}}</text>
#### Output:
  • 描述: 设置自动补全生成的提示模板。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

评估竞技场模型

ENABLE_EVALUATION_ARENA_MODELS

  • 类型: bool
  • 默认值: True
  • 描述: 启用或禁用评估竞技场模型。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

ENABLE_MESSAGE_RATING

  • 类型: bool
  • 默认值: True
  • 描述: 启用消息评分功能。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

ENABLE_COMMUNITY_SHARING

  • 类型: bool
  • 默认值: True
  • 描述: 控制是否向用户显示共享到社区按钮。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

标签生成

ENABLE_TAGS_GENERATION

  • 类型: bool
  • 默认值: True
  • 描述: 启用或禁用标签生成。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

TAGS_GENERATION_PROMPT_TEMPLATE

  • 类型: str
  • 默认值: DEFAULT_TAGS_GENERATION_PROMPT_TEMPLATE 环境变量的值。

DEFAULT_TAGS_GENERATION_PROMPT_TEMPLATE:

### Task:
Generate 1-3 broad tags categorizing the main themes of the chat history, along with 1-3 more specific subtopic tags.

### Guidelines:
- Start with high-level domains (e.g. Science, Technology, Philosophy, Arts, Politics, Business, Health, Sports, Entertainment, Education)
- Consider including relevant subfields/subdomains if they are strongly represented throughout the conversation
- If content is too short (less than 3 messages) or too diverse, use only ["General"]
- Use the chat's primary language; default to English if multilingual
- Prioritize accuracy over specificity

### Output:
JSON format: { "tags": ["tag1", "tag2", "tag3"] }

### Chat History:
<chat_history>
{{MESSAGES:END:6}}
</chat_history>
  • 描述: 设置标签生成的提示模板。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

API 密钥端点限制

ENABLE_API_KEY

  • 类型: bool
  • 默认值: True
  • 描述: 启用 API 密钥认证。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

ENABLE_API_KEY_ENDPOINT_RESTRICTIONS

  • 类型: bool
  • 默认值: False
  • 描述: 启用 API 密钥端点限制以增强安全性和可配置性。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

API_KEY_ALLOWED_ENDPOINTS

  • 类型: str
  • 描述: 当启用 API 密钥端点限制时,指定允许的 API 端点列表(逗号分隔)。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。
注意

API_KEY_ALLOWED_ENDPOINTS 的值应为逗号分隔的端点 URL 列表,例如 /api/v1/messages, /api/v1/channels

JWT_EXPIRES_IN

  • 类型: int
  • 默认值: -1
  • 描述: 设置 JWT 过期时间(秒)。有效时间单位:s, m, h, d, w-1 表示不过期。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

安全变量

ENABLE_FORWARD_USER_INFO_HEADERS

  • 类型: bool
  • 默认值: False
  • 描述: 将用户信息(姓名、ID、电子邮件和角色)作为 X-header 转发到 OpenAI API 和 Ollama API。如果启用,将转发以下 header:
    • X-OpenWebUI-User-Name
    • X-OpenWebUI-User-Id
    • X-OpenWebUI-User-Email
    • X-OpenWebUI-User-Role

ENABLE_WEB_LOADER_SSL_VERIFICATION

  • 类型: bool
  • 默认值: True
  • 描述: 绕过网站 RAG 的 SSL 验证。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。
  • 类型: str
  • 选项
    • lax - 将 SameSite 属性设置为 lax,允许会话 cookie 随第三方网站发起的请求一起发送。
    • strict - 将 SameSite 属性设置为 strict,阻止会话 cookie 随第三方网站发起的请求一起发送。
    • none - 将 SameSite 属性设置为 none,允许会话 cookie 随第三方网站发起的请求一起发送,但仅通过 HTTPS。
  • 默认值: lax
  • 描述: 设置会话 cookie 的 SameSite 属性。
警告

当启用 ENABLE_OAUTH_SIGNUP 时,将 WEBUI_SESSION_COOKIE_SAME_SITE 设置为 strict 可能导致登录失败。这是因为 Open WebUI 使用会话 cookie 来验证 OAuth 提供者的回调,这有助于防止 CSRF 攻击。

但是,strict 会话 cookie 不会随回调请求发送,从而导致潜在的登录问题。如果您遇到此问题,请改用默认值 lax

  • 类型: bool
  • 默认值: False
  • 描述: 如果设置为 True,则设置会话 cookie 的 Secure 属性。
  • 类型: str
  • 选项
    • lax - 将 SameSite 属性设置为 lax,允许认证 cookie 随第三方网站发起的请求一起发送。
    • strict - 将 SameSite 属性设置为 strict,阻止认证 cookie 随第三方网站发起的请求一起发送。
    • none - 将 SameSite 属性设置为 none,允许认证 cookie 随第三方网站发起的请求一起发送,但仅通过 HTTPS。
  • 默认值: lax
  • 描述: 设置认证 cookie 的 SameSite 属性。
信息

如果未设置此值,将使用 WEBUI_SESSION_COOKIE_SAME_SITE 作为回退。

  • 类型: bool
  • 默认值: False
  • 描述: 如果设置为 True,则设置认证 cookie 的 Secure 属性。
信息

如果未设置此值,将使用 WEBUI_SESSION_COOKIE_SECURE 作为回退。

WEBUI_AUTH

  • 类型: bool
  • 默认值: True
  • 描述: 此设置启用或禁用认证。
危险

如果设置为 False,Open WebUI 实例的认证将被禁用。但是,请务必注意,只有在新安装且没有任何现有用户的情况下才能关闭认证。如果已经注册了用户,您不能直接禁用认证。如果您打算关闭 WEBUI_AUTH,请确保数据库中没有任何用户。

WEBUI_SECRET_KEY

  • 类型: str
  • 默认值: t0p-s3cr3t
  • Docker 默认值: 首次启动时随机生成
  • 描述: 覆盖用于 JSON Web Token 的随机生成字符串。
信息

当在多节点集群中部署 Open-WebUI 并使用负载均衡器时,您必须确保所有实例上的 WEBUI_SECRET_KEY 值相同,以便用户在节点被回收或其会话转移到不同节点时能够继续工作。否则,每次底层节点更改时,他们将需要重新登录。

OFFLINE_MODE

  • 类型: bool
  • 默认值: False
  • 描述: 启用或禁用离线模式。

RESET_CONFIG_ON_START

  • 类型: bool
  • 默认值: False
  • 描述: 在启动时重置 config.json 文件。

SAFE_MODE

  • 类型: bool
  • 默认值: False
  • 描述: 启用安全模式,该模式会禁用可能不安全的功能,从而禁用所有函数。

CORS_ALLOW_ORIGIN

  • 类型: str
  • 默认值: *
  • 描述: 设置跨域资源共享 (CORS) 允许的来源。

RAG_EMBEDDING_MODEL_TRUST_REMOTE_CODE

  • 类型: bool
  • 默认值: False
  • 描述: 确定是否允许 Hub 上在其自己的建模文件中定义的自定义模型。

RAG_RERANKING_MODEL_TRUST_REMOTE_CODE

  • 类型: bool
  • 默认值: False
  • 描述: 确定是否允许 Hub 上在其自己的建模文件中定义的自定义模型用于重排序。

RAG_EMBEDDING_MODEL_AUTO_UPDATE

  • 类型: bool
  • 默认值: True
  • 描述: 切换 Sentence-Transformer 模型的自动更新。

RAG_RERANKING_MODEL_AUTO_UPDATE

  • 类型: bool
  • 默认值: True
  • 描述: 切换重排序模型的自动更新。

向量数据库

VECTOR_DB

  • 类型: str
  • 选项
  • chroma, elasticsearch, milvus, opensearch, pgvector, qdrant, pinecone
  • 默认值: chroma
  • 描述: 指定要使用的向量数据库系统。此设置决定了用于管理嵌入的向量存储系统。

ChromaDB

CHROMA_TENANT

  • 类型: str
  • 默认值: chromadb.DEFAULT_TENANT 的值(chromadb 模块中的常量)
  • 描述: 设置 ChromaDB 用于 RAG 嵌入的租户。

CHROMA_DATABASE

  • 类型: str
  • 默认值: chromadb.DEFAULT_DATABASE 的值(chromadb 模块中的常量)
  • 描述: 设置 ChromaDB 租户中用于 RAG 嵌入的数据库。

CHROMA_HTTP_HOST

  • 类型: str
  • 描述: 指定远程 ChromaDB 服务器的主机名。如果未设置,则使用本地 ChromaDB 实例。

CHROMA_HTTP_PORT

  • 类型: int
  • 默认值: 8000
  • 描述: 指定远程 ChromaDB 服务器的端口。

CHROMA_HTTP_HEADERS

  • 类型: str
  • 描述: 包含在每个 ChromaDB 请求中的 HTTP header 列表(逗号分隔)。
  • 示例: Authorization=Bearer heuhagfuahefj,User-Agent=OpenWebUI

CHROMA_HTTP_SSL

  • 类型: bool
  • 默认值: False
  • 描述: 控制是否对 ChromaDB 服务器连接使用 SSL。

CHROMA_CLIENT_AUTH_PROVIDER

  • 类型: str
  • 描述: 为远程 ChromaDB 服务器指定认证提供者。
  • 示例: chromadb.auth.basic_authn.BasicAuthClientProvider

CHROMA_CLIENT_AUTH_CREDENTIALS

  • 类型: str
  • 描述: 指定远程 ChromaDB 服务器的认证凭据。
  • 示例: username:password

Elasticsearch

ELASTICSEARCH_API_KEY

  • 类型: str
  • 默认值: 空字符串 (' '),因为默认为 None
  • 描述: 指定 Elasticsearch API 密钥。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

ELASTICSEARCH_CA_CERTS

  • 类型: str
  • 默认值: 空字符串 (' '),因为默认为 None
  • 描述: 指定 Elasticsearch 的 CA 证书路径。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

ELASTICSEARCH_CLOUD_ID

  • 类型: str
  • 默认值: 空字符串 (' '),因为默认为 None
  • 描述: 指定 Elasticsearch 云 ID。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

ELASTICSEARCH_INDEX_PREFIX

  • 类型: str
  • 默认值: open_webui_collections
  • 描述: 指定 Elasticsearch 索引的前缀。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

ELASTICSEARCH_PASSWORD

  • 类型: str
  • 默认值: 空字符串 (' '),因为默认为 None
  • 描述: 指定 Elasticsearch 的密码。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

ELASTICSEARCH_URL

  • 类型: str
  • 默认值: https://localhost:9200
  • 描述: 指定 Elasticsearch 实例的 URL。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

ELASTICSEARCH_USERNAME

  • 类型: str
  • 默认值: 空字符串 (' '),因为默认为 None
  • 描述: 指定 Elasticsearch 的用户名。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

Milvus

MILVUS_URI

  • 类型: str
  • 默认值: ${DATA_DIR}/vector_db/milvus.db
  • 描述: 指定连接 Milvus 向量数据库的 URI。根据部署配置,这可以指向本地或远程 Milvus 服务器。

MILVUS_DB

  • 类型: str
  • 默认值: default
  • 描述: 指定 Milvus 实例中要连接的数据库。

MILVUS_TOKEN

  • 类型: str
  • 默认值: None
  • 描述: 指定 Milvus 的可选连接令牌。

MILVUS_INDEX_TYPE

  • 类型: str
  • 默认值: HNSW
  • 选项: AUTOINDEX, FLAT, IVF_FLAT, HNSW
  • 描述: 指定在 Milvus 中创建新集合时使用的索引类型。通常建议对 Milvus standalone 使用 AUTOINDEXHNSW 可能会提供更好的性能,但通常需要 Milvus 集群设置。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

MILVUS_METRIC_TYPE

  • 类型: str
  • 默认值: COSINE
  • 选项: COSINE, IP, L2
  • 描述: 指定 Milvus 中向量相似度搜索的度量类型。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

MILVUS_HNSW_M

  • 类型: int
  • 默认值: 16
  • 描述: 指定 Milvus 中 HNSW 索引类型的 M 参数。这会影响构建期间为每个新元素创建的双向链接数量。仅当 MILVUS_INDEX_TYPEHNSW 时适用。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

MILVUS_HNSW_EFCONSTRUCTION

  • 类型: int
  • 默认值: 100
  • 描述: 指定 Milvus 中 HNSW 索引类型的 efConstruction 参数。这会影响索引构建期间最近邻居动态列表的大小。仅当 MILVUS_INDEX_TYPEHNSW 时适用。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

MILVUS_IVF_FLAT_NLIST

  • 类型: int
  • 默认值: 128
  • 描述: 指定 Milvus 中 IVF_FLAT 索引类型的 nlist 参数。这是聚类单元的数量。仅当 MILVUS_INDEX_TYPEIVF_FLAT 时适用。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

OpenSearch

OPENSEARCH_CERT_VERIFY

  • 类型: bool
  • 默认值: False
  • 描述: 启用或禁用 OpenSearch 证书验证。

OPENSEARCH_PASSWORD

  • 类型: str
  • 默认值: None
  • 描述: 设置 OpenSearch 的密码。

OPENSEARCH_SSL

  • 类型: bool
  • 默认值: True
  • 描述: 启用或禁用 OpenSearch 的 SSL。

OPENSEARCH_URI

  • 类型: str
  • 默认值: https://localhost:9200
  • 描述: 设置 OpenSearch 的 URI。

OPENSEARCH_USERNAME

  • 类型: str
  • 默认值: None
  • 描述: 设置 OpenSearch 的用户名。

PGVector

PGVECTOR_DB_URL

  • 类型: str
  • 默认值: DATABASE_URL 环境变量的值
  • 描述: 设置模型存储的数据库 URL。

PGVECTOR_INITIALIZE_MAX_VECTOR_LENGTH

  • 类型: str
  • 默认值: 1536
  • 描述: 指定 PGVector 初始化的最大向量长度。

Qdrant

QDRANT_API_KEY

  • 类型: str
  • 描述: 设置 Qdrant 的 API 密钥。

QDRANT_URI

  • 类型: str
  • 描述: 设置 Qdrant 的 URI。

QDRANT_ON_DISK

  • 类型: bool
  • 默认值: False
  • 描述: 启用使用 memmap(也称为磁盘存储)

QDRANT_PREFER_GRPC

  • 类型: bool
  • 默认值: False
  • 描述: 尽可能使用 gPRC 接口

QDRANT_GRPC_PORT

  • 类型: int
  • 默认值: 6334
  • 描述: 设置 Qdrant 的 gRPC 端口号。

ENABLE_QDRANT_MULTITENANCY_MODE

  • 类型: bool
  • 默认值: False
  • 描述: 启用 Qdrant 集合管理的多租户模式,通过整合相似的向量数据结构,显著减少 RAM 使用和计算开销。建议开启。
信息

这将断开之前模式(非多租户)创建的所有 Qdrant 集合。转到 Admin Settings > Documents > Reindex Knowledge Base 以迁移现有知识库。

之前模式创建的 Qdrant 集合仍会占用资源。因此,当您决定使用多租户模式作为默认模式时,请转到 Admin Settings > Documents 重置 Qdrant,这将删除所有带有 open_webui 前缀的集合,然后进行知识库重建索引。

Pinecone

当使用 Pinecone 作为向量存储时,以下环境变量用于控制其行为。请确保在您的 .env 文件或部署环境中设置这些变量。

PINECONE_API_KEY

  • 类型: str
  • 默认值: None
  • 描述: 设置用于向 Pinecone 服务进行身份验证的 API 密钥。

PINECONE_ENVIRONMENT

  • 类型: str
  • 默认值: None
  • 描述: 指定要连接的 Pinecone 环境(例如,us-west1-gcp, gcp-starter 等)。

PINECONE_INDEX_NAME

  • 类型: str
  • 默认值: open-webui-index
  • 描述: 定义用于存储和查询向量嵌入的 Pinecone 索引名称。

PINECONE_DIMENSION

  • 类型: int
  • 默认值: 1536
  • 描述: 向量嵌入的维度。必须与索引期望的维度匹配(通常基于使用的模型为 768、1024、1536 或 3072)。

PINECONE_METRIC

  • 类型: str
  • 默认值: cosine
  • 选项: cosine, dotproduct, euclidean
  • 描述: 指定在 Pinecone 索引中进行向量比较时使用的相似度度量。

PINECONE_CLOUD

  • 类型: str
  • 默认值: aws
  • 选项: aws, gcp, azure
  • 描述: 指定 Pinecone 索引所在的云提供商。

RAG 内容提取引擎

CONTENT_EXTRACTION_ENGINE

  • 类型: str
  • 选项
    • 留空使用默认值
    • tika - 使用本地 Apache Tika 服务器
    • docling - 使用 Docling 引擎
    • document_intelligence - 使用 Document Intelligence 引擎
    • mistral_ocr - 使用 Mistral OCR 引擎
  • 描述: 设置用于文档摄取的 内容提取引擎。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

MISTRAL_OCR_API_KEY

  • 类型: str
  • 默认值: None
  • 描述: 指定要使用的 Mistral OCR API 密钥。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

TIKA_SERVER_URL

  • 类型: str
  • 默认值: http://localhost:9998
  • 描述: 设置 Apache Tika 服务器的 URL。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

DOCLING_SERVER_URL

  • 类型: str
  • 默认值: http://docling:5001
  • 描述: 指定 Docling 服务器的 URL。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

DOCLING_OCR_ENGINE

  • 类型: str
  • 默认值: tesseract
  • 描述: 指定 Docling 使用的 OCR 引擎。
    支持的值包括: tesseract (默认), easyocr, ocrmac, rapidocr, 和 tesserocr
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

DOCLING_OCR_LANG

  • 类型: str
  • 默认值: eng,fra,deu,spa (使用默认的 tesseract 引擎时)
  • 描述: 指定与配置的 DOCLING_OCR_ENGINE 一起使用的 OCR 语言。
    格式和可用语言代码取决于所选的 OCR 引擎。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

检索增强生成 (RAG)

RAG_EMBEDDING_ENGINE

  • 类型: str
  • 选项
    • 留空为 默认 (SentenceTransformers) - 使用 SentenceTransformers 进行嵌入。
    • ollama - 使用 Ollama API 进行嵌入。
    • openai - 使用 OpenAI API 进行嵌入。
  • 描述: 选择用于 RAG 的嵌入引擎。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

RAG_EMBEDDING_MODEL

  • 类型: str
  • 默认值: sentence-transformers/all-MiniLM-L6-v2
  • 描述: 设置用于嵌入的模型。在本地,使用 Sentence-Transformer 模型。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。
  • 类型: bool
  • 默认值: False
  • 描述: 启用使用 BM25 + ChromaDB 进行集成搜索,并使用 sentence_transformers 模型进行重排序。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

RAG_TOP_K

  • 类型: int
  • 默认值: 3
  • 描述: 设置使用 RAG 时考虑的嵌入结果默认数量。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

RAG_TOP_K_RERANKER

  • 类型: int
  • 默认值: 3
  • 描述: 设置使用 RAG 时考虑的重排序结果默认数量。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

RAG_RELEVANCE_THRESHOLD

  • 类型: float
  • 默认值: 0.0
  • 描述: 设置与重排序一起使用时考虑的文档相关性阈值。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

RAG_TEMPLATE

  • 类型: str
  • 默认值: DEFAULT_RAG_TEMPLATE 环境变量的值。

DEFAULT_RAG_TEMPLATE:

### Task:
Respond to the user query using the provided context, incorporating inline citations in the format [id] **only when the <source> tag includes an explicit id attribute** (e.g., <source id="1">).

### Guidelines:
- If you don't know the answer, clearly state that.
- If uncertain, ask the user for clarification.
- Respond in the same language as the user's query.
- If the context is unreadable or of poor quality, inform the user and provide the best possible answer.
- If the answer isn't present in the context but you possess the knowledge, explain this to the user and provide the answer using your own understanding.
- **Only include inline citations using [id] (e.g., [1], [2]) when the <source> tag includes an id attribute.**
- Do not cite if the <source> tag does not contain an id attribute.
- Do not use XML tags in your response.
- Ensure citations are concise and directly related to the information provided.

### Example of Citation:
If the user asks about a specific topic and the information is found in a source with a provided id attribute, the response should include the citation like in the following example:
* "According to the study, the proposed method increases efficiency by 20% [1]."

### Output:
Provide a clear and direct response to the user's query, including inline citations in the format [id] only when the <source> tag with id attribute is present in the context.

<context>
{{CONTEXT}}
</context>

<user_query>
{{QUERY}}
</user_query>
  • 描述: 将 RAG 文档注入到聊天补全时使用的模板
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

RAG_TEXT_SPLITTER

  • 类型: str
  • 选项
    • 字符
    • 令牌
  • 默认值: character
  • 描述: 设置 RAG 模型的文本分割器。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

TIKTOKEN_CACHE_DIR

  • 类型: str
  • 默认值: {CACHE_DIR}/tiktoken
  • 描述: 设置 TikToken 缓存目录。

TIKTOKEN_ENCODING_NAME

  • 类型: str
  • 默认值: cl100k_base
  • 描述: 设置 TikToken 的编码名称。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

CHUNK_SIZE

  • 类型: int
  • 默认值: 1000
  • 描述: 设置文档分块大小用于嵌入。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

CHUNK_OVERLAP

  • 类型: int
  • 默认值: 100
  • 描述: 指定块之间的重叠量。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

PDF_EXTRACT_IMAGES

  • 类型: bool
  • 默认值: False
  • 描述: 加载文档时,使用 OCR 从 PDF 中提取图像。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

RAG_FILE_MAX_SIZE

  • 类型: int
  • 描述: 设置可上传用于文档摄取的文件最大大小(兆字节)。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

RAG_FILE_MAX_COUNT

  • 类型: int
  • 描述: 设置一次可上传用于文档摄取的文件最大数量。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。
信息

配置 RAG_FILE_MAX_SIZERAG_FILE_MAX_COUNT 时,请确保值合理,以防止文件上传过多和潜在的性能问题。

RAG_RERANKING_MODEL

  • 类型: str
  • 描述: 设置用于重排序结果的模型。在本地,使用 Sentence-Transformer 模型。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

RAG_OPENAI_API_BASE_URL

  • 类型: str
  • 默认值: ${OPENAI_API_BASE_URL}
  • 描述: 设置用于 RAG 嵌入的 OpenAI API 基础 URL。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

RAG_OPENAI_API_KEY

  • 类型: str
  • 默认值: ${OPENAI_API_KEY}
  • 描述: 设置用于 RAG 嵌入的 OpenAI API 密钥。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

RAG_EMBEDDING_OPENAI_BATCH_SIZE

  • 类型: int
  • 默认值: 1
  • 描述: 设置 OpenAI 嵌入的批处理大小。

RAG_EMBEDDING_BATCH_SIZE

  • 类型: int
  • 默认值: 1
  • 描述: 设置 RAG(检索增强生成器)模型中嵌入的批处理大小。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

RAG_OLLAMA_API_KEY

  • 类型: str
  • 描述: 设置 RAG 模型中使用的 Ollama API 的 API 密钥。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

RAG_OLLAMA_BASE_URL

  • 类型: str
  • 描述: 设置 RAG 模型中使用的 Ollama API 的基础 URL。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

ENABLE_RETRIEVAL_QUERY_GENERATION

  • 类型: bool
  • 默认值: True
  • 描述: 启用或禁用检索查询生成。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

QUERY_GENERATION_PROMPT_TEMPLATE

  • 类型: str
  • 默认值: DEFAULT_QUERY_GENERATION_PROMPT_TEMPLATE 环境变量的值。

DEFAULT_QUERY_GENERATION_PROMPT_TEMPLATE:

### Task:
Analyze the chat history to determine the necessity of generating search queries, in the given language. By default, **prioritize generating 1-3 broad and relevant search queries** unless it is absolutely certain that no additional information is required. The aim is to retrieve comprehensive, updated, and valuable information even with minimal uncertainty. If no search is unequivocally needed, return an empty list.

### Guidelines:
- Respond **EXCLUSIVELY** with a JSON object. Any form of extra commentary, explanation, or additional text is strictly prohibited.
- When generating search queries, respond in the format: { "queries": ["query1", "query2"] }, ensuring each query is distinct, concise, and relevant to the topic.
- If and only if it is entirely certain that no useful results can be retrieved by a search, return: { "queries": [] }.
- Err on the side of suggesting search queries if there is **any chance** they might provide useful or updated information.
- Be concise and focused on composing high-quality search queries, avoiding unnecessary elaboration, commentary, or assumptions.
- Today's date is: {{CURRENT_DATE}}.
- Always prioritize providing actionable and broad queries that maximize informational coverage.

### Output:
Strictly return in JSON format:
{
"queries": ["query1", "query2"]
}

### Chat History:
<chat_history>
{{MESSAGES:END:6}}
</chat_history>
  • 描述: 设置查询生成的提示模板。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

BYPASS_EMBEDDING_AND_RETRIEVAL

  • 类型: bool
  • 默认值: False
  • 描述: 绕过嵌入和检索过程。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

DOCUMENT_INTELLIGENCE_ENDPOINT

  • 类型: str
  • 默认值: None
  • 描述: 指定文档智能的端点。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

DOCUMENT_INTELLIGENCE_KEY

  • 类型: str
  • 默认值: None
  • 描述: 指定文档智能的密钥。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

ENABLE_RAG_LOCAL_WEB_FETCH

  • 类型: bool
  • 默认值: False
  • 描述: 启用或禁用 RAG 的本地网页抓取。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

RAG_EMBEDDING_CONTENT_PREFIX

  • 类型
  • 默认值: None
  • 描述: 指定 RAG 嵌入内容的前缀。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

RAG_EMBEDDING_PREFIX_FIELD_NAME

  • 类型
  • 默认值: None
  • 描述: 指定 RAG 嵌入前缀的字段名称。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

RAG_EMBEDDING_QUERY_PREFIX

  • 类型
  • 默认值: None
  • 描述: 指定 RAG 嵌入查询的前缀。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

RAG_FULL_CONTEXT

  • 类型: bool
  • 默认值: False
  • 描述: 指定是否对 RAG 使用完整上下文。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

Google Drive

ENABLE_GOOGLE_DRIVE_INTEGRATION

  • 类型: bool
  • 默认值: False
  • 描述: 启用或禁用 Google Drive 集成。如果设置为 true,并且 GOOGLE_DRIVE_CLIENT_IDGOOGLE_DRIVE_API_KEY 都已配置,Google Drive 将作为上传选项出现在聊天 UI 中。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。
信息

启用 GOOGLE_DRIVE_INTEGRATION 时,请确保您已正确配置 GOOGLE_DRIVE_CLIENT_IDGOOGLE_DRIVE_API_KEY,并已查阅 Google 的服务条款和使用指南。

GOOGLE_DRIVE_CLIENT_ID

  • 类型: str
  • 描述: 设置 Google Drive 的客户端 ID(客户端必须配置为启用 Drive API 和 Picker API)。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

GOOGLE_DRIVE_API_KEY

  • 类型: str
  • 描述: 设置 Google Drive 集成的 API 密钥。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

OneDrive

ENABLE_ONEDRIVE_INTEGRATION

  • 类型: bool
  • 默认值: False
  • 描述: 启用或禁用 OneDrive 集成。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

ONEDRIVE_CLIENT_ID

  • 类型: str
  • 默认值: None
  • 描述: 指定 OneDrive 集成的客户端 ID。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。
  • 类型: bool
  • 默认值: False
  • 描述: 启用网络搜索切换。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

ENABLE_SEARCH_QUERY_GENERATION

  • 类型: bool
  • 默认值: True
  • 描述: 启用或禁用搜索查询生成。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

WEB_SEARCH_TRUST_ENV

  • 类型: bool
  • 默认值: False
  • 描述: 在网络搜索内容抓取期间启用由 http_proxyhttps_proxy 设置的代理。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

WEB_SEARCH_RESULT_COUNT

  • 类型: int
  • 默认值: 3
  • 描述: 要抓取的最大搜索结果数量。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

WEB_SEARCH_CONCURRENT_REQUESTS

  • 类型: int
  • 默认值: 10
  • 描述: 同时抓取搜索结果返回的网页的请求数量。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

WEB_SEARCH_ENGINE

  • 类型: str
  • 选项
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

BYPASS_WEB_SEARCH_EMBEDDING_AND_RETRIEVAL

  • 类型: bool
  • 默认值: False
  • 描述: 绕过网络搜索的嵌入和检索过程。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

SEARXNG_QUERY_URL

  • 类型: str
  • 描述: 支持 JSON 输出的 SearXNG 搜索 API URL。<query> 将被搜索查询替换。示例: http://searxng.local/search?q=<query>
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

GOOGLE_PSE_API_KEY

  • 类型: str
  • 描述: 设置 Google Programmable Search Engine (PSE) 服务的 API 密钥。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

GOOGLE_PSE_ENGINE_ID

  • 类型: str
  • 描述: Google Programmable Search Engine (PSE) 服务的引擎 ID。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

BRAVE_SEARCH_API_KEY

  • 类型: str
  • 描述: 设置 Brave Search API 的 API 密钥。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

KAGI_SEARCH_API_KEY

  • 类型: str
  • 描述: 设置 Kagi Search API 的 API 密钥。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

MOJEEK_SEARCH_API_KEY

  • 类型: str
  • 描述: 设置 Mojeek Search API 的 API 密钥。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

SERPSTACK_API_KEY

  • 类型: str
  • 描述: 设置 Serpstack 搜索 API 的 API 密钥。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

SERPSTACK_HTTPS

  • 类型: bool
  • 默认值: True
  • 描述: 配置是否对 Serpstack 请求使用 HTTPS。免费层请求仅限于 HTTP。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

SERPER_API_KEY

  • 类型: str
  • 描述: 设置 Serper 搜索 API 的 API 密钥。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

SERPLY_API_KEY

  • 类型: str
  • 描述: 设置 Serply 搜索 API 的 API 密钥。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

SEARCHAPI_API_KEY

  • 类型: str
  • 描述: 设置 SearchAPI 的 API 密钥。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

SEARCHAPI_ENGINE

  • 类型: str
  • 描述: 设置 SearchAPI 引擎。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

TAVILY_API_KEY

  • 类型: str
  • 描述: 设置 Tavily 搜索 API 的 API 密钥。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

JINA_API_KEY

  • 类型: str
  • 描述: 设置 Jina 的 API 密钥。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

BING_SEARCH_V7_ENDPOINT

  • 类型: str
  • 描述: 设置 Bing Search API 的端点。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

BING_SEARCH_V7_SUBSCRIPTION_KEY

  • 类型: str
  • 默认值: https://api.bing.microsoft.com/v7.0/search
  • 描述: 设置 Bing Search API 的订阅密钥。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

BOCHA_SEARCH_API_KEY

  • 类型: str
  • 默认值: None
  • 描述: 设置 Bocha Search API 的 API 密钥。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

EXA_API_KEY

  • 类型: str
  • 默认值: None
  • 描述: 设置 Exa 搜索 API 的 API 密钥。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

SERPAPI_API_KEY

  • 类型: str
  • 默认值: None
  • 描述: 设置 SerpAPI 的 API 密钥。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

SERPAPI_ENGINE

  • 类型: str
  • 默认值: None
  • 描述: 指定 SerpAPI 使用的搜索引擎。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

SOUGOU_API_SID

  • 类型: str
  • 默认值: None
  • 描述: 设置搜狗 (Sogou) API 的 SID。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

SOUGOU_API_SK

  • 类型: str
  • 默认值: None
  • 描述: 设置搜狗 (Sogou) API 的 SK。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

TAVILY_EXTRACT_DEPTH

  • 类型: str
  • 默认值: basic
  • 描述: 指定 Tavily 搜索结果的提取深度。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

Web 加载器配置

WEB_LOADER_ENGINE

  • 类型: str
  • 默认值: safe_web
  • 描述: 指定用于检索和处理 Web 内容的加载器。
  • 选项
    • '' - 使用带有增强错误处理的 requests 模块。
    • playwright - 使用 Playwright 进行更高级的网页渲染和交互。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。
信息

使用 playwright 时,您有两个选项

  1. 如果未设置 PLAYWRIGHT_WS_URI,Open WebUI 容器启动时将自动安装带 Chromium 依赖项的 Playwright。
  2. 如果设置了 PLAYWRIGHT_WS_URI,Open WebUI 将连接到远程浏览器实例,而不是在本地安装依赖项。

PLAYWRIGHT_WS_URL

  • 类型: str
  • 默认值: None
  • 描述: 指定远程 Playwright 浏览器实例的 WebSocket URI。设置后,Open WebUI 将使用此远程浏览器,而不是在本地安装浏览器依赖项。这在容器化环境中特别有用,您希望保持 Open WebUI 容器轻量化并分离浏览器相关的部分。示例: ws://playwright:3000
  • 持久性: 此环境变量是一个 PersistentConfig 变量。
提示

通过 PLAYWRIGHT_WS_URL 使用远程 Playwright 浏览器有以下好处:

  • 减小 Open WebUI 容器的大小
  • 使用默认 Chromium 之外的不同浏览器
  • 连接到非无头 (GUI) 浏览器

FIRECRAWL_API_BASE_URL

  • 类型: str
  • 默认值: https://api.firecrawl.dev
  • 描述: 设置 Firecrawl API 的基本 URL。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

FIRECRAWL_API_KEY

  • 类型: str
  • 默认值: None
  • 描述: 设置 Firecrawl API 的 API 密钥。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

PERPLEXITY_API_KEY

  • 类型: str
  • 默认值: None
  • 描述: 设置 Perplexity API 的 API 密钥。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

PLAYWRIGHT_TIMEOUT

  • 类型: int
  • 默认值: 空字符串 (' '),因为默认为 None
  • 描述: 指定 Playwright 请求的超时时间。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

YouTube 加载器

YOUTUBE_LOADER_PROXY_URL

  • 类型: str
  • 描述: 设置 YouTube 加载器的代理 URL。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

YOUTUBE_LOADER_LANGUAGE

  • 类型: str
  • 默认值: en
  • 描述: 以逗号分隔的语言代码列表,按优先级顺序尝试获取 YouTube 视频转录文本。
  • 示例: 如果设置为 es,de,将首先尝试西班牙语转录文本,如果西班牙语不可用,则尝试德语,最后尝试英语。注意: 如果指定的语言均不可用且列表中不包含 en,系统将自动以英语作为最终备选。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

音频

Whisper 语音转文本(本地)

WHISPER_MODEL

  • 类型: str
  • 默认值: base
  • 描述: 设置用于语音转文本的 Whisper 模型。使用的后端是 faster_whisper,并量化到 int8
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

WHISPER_MODEL_DIR

  • 类型: str
  • 默认值: ${DATA_DIR}/cache/whisper/models
  • 描述: 指定存储 Whisper 模型文件的目录。

WHISPER_VAD_FILTER

  • 类型: bool
  • 默认值: False
  • 描述: 指定是否对 Whisper 语音转文本应用语音活动检测 (VAD) 过滤器。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

WHISPER_MODEL_AUTO_UPDATE

  • 类型: bool
  • 默认值: False
  • 描述: 切换 Whisper 模型的自动更新。

WHISPER_LANGUAGE

  • 类型: str
  • 默认值: None
  • 描述: 指定 Whisper 用于 STT 的 ISO 639-1 语言代码(夏威夷语和粤语使用 ISO 639-2)。Whisper 默认会预测语言。

语音转文本(OpenAI)

AUDIO_STT_ENGINE

  • 类型: str
  • 选项
    • 留空使用内置的本地 Whisper 引擎进行语音转文本。
    • openai - 使用 OpenAI 引擎进行语音转文本。
    • deepgram- 使用 Deepgram 引擎进行语音转文本。
    • azure 使用 Azure 引擎进行语音转文本。
  • 描述: 指定使用的语音转文本引擎。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

AUDIO_STT_MODEL

  • 类型: str
  • 默认值: whisper-1
  • 描述: 指定用于 OpenAI 兼容端点的语音转文本模型。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

AUDIO_STT_OPENAI_API_BASE_URL

  • 类型: str
  • 默认值: ${OPENAI_API_BASE_URL}
  • 描述: 设置用于语音转文本的 OpenAI 兼容基本 URL。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

AUDIO_STT_OPENAI_API_KEY

  • 类型: str
  • 默认值: ${OPENAI_API_KEY}
  • 描述: 设置用于语音转文本的 OpenAI API 密钥。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

语音转文本(Azure)

AUDIO_STT_AZURE_API_KEY

  • 类型: str
  • 默认值: None
  • 描述: 指定用于语音转文本的 Azure API 密钥。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

AUDIO_STT_AZURE_REGION

  • 类型: str
  • 默认值: None
  • 描述: 指定用于语音转文本的 Azure 区域。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

AUDIO_STT_AZURE_LOCALES

  • 类型: str
  • 默认值: None
  • 描述: 指定用于 Azure 语音转文本的区域设置。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

语音转文本(Deepgram)

DEEPGRAM_API_KEY

  • 类型: str
  • 默认值: None
  • 描述: 指定用于语音转文本的 Deepgram API 密钥。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

文本转语音

AUDIO_TTS_API_KEY

  • 类型: str
  • 描述: 设置文本转语音的 API 密钥。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

AUDIO_TTS_ENGINE

  • 类型: str
  • 选项
    • 留空使用内置的 WebAPI 引擎进行文本转语音。
    • azure - 使用 Azure 引擎进行文本转语音。
    • elevenlabs - 使用 ElevenLabs 引擎进行文本转语音。
    • openai - 使用 OpenAI 引擎进行文本转语音。
    • transformers - 使用 SentenceTransformers 进行文本转语音。
  • 描述: 指定使用的文本转语音引擎。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

AUDIO_TTS_MODEL

  • 类型: str
  • 默认值: tts-1
  • 描述: 指定使用的 OpenAI 文本转语音模型。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

AUDIO_TTS_VOICE

  • 类型: str
  • 默认值: alloy
  • 描述: 设置使用的 OpenAI 文本转语音语音。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

AUDIO_TTS_SPLIT_ON

  • 类型: str
  • 默认值: punctuation
  • 描述: 设置 OpenAI 文本转语音的分割方式。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

Azure 文本转语音

AUDIO_TTS_AZURE_SPEECH_REGION

  • 类型: str
  • 描述: 设置 Azure 文本转语音的区域。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

AUDIO_TTS_AZURE_SPEECH_OUTPUT_FORMAT

  • 类型: str
  • 描述: 设置 Azure 文本转语音的输出格式。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

OpenAI 文本转语音

AUDIO_TTS_OPENAI_API_BASE_URL

  • 类型: str
  • 默认值: ${OPENAI_API_BASE_URL}
  • 描述: 设置用于文本转语音的 OpenAI 兼容基本 URL。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

AUDIO_TTS_OPENAI_API_KEY

  • 类型: str
  • 默认值: ${OPENAI_API_KEY}
  • 描述: 设置用于文本转语音的 API 密钥。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

图像生成

IMAGE_GENERATION_ENGINE

  • 类型: str
  • 选项
    • openai - 使用 OpenAI DALL-E 进行图像生成。
    • comfyui - 使用 ComfyUI 引擎进行图像生成。
    • automatic1111 - 使用 AUTOMATIC1111 引擎进行图像生成。
    • gemini - 使用 Gemini 进行图像生成。
  • 默认值: openai
  • 描述: 指定用于图像生成的引擎。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

ENABLE_IMAGE_GENERATION

  • 类型: bool
  • 默认值: False
  • 描述: 启用或禁用图像生成功能。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

ENABLE_IMAGE_PROMPT_GENERATION

  • 类型: bool
  • 默认值: True
  • 描述: 启用或禁用图像提示生成。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

IMAGE_PROMPT_GENERATION_PROMPT_TEMPLATE

  • 类型: str
  • 默认值: None
  • 描述: 指定用于生成图像提示的模板。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

DEFAULT_IMAGE_PROMPT_GENERATION_PROMPT_TEMPLATE:

### Task:
Generate a detailed prompt for am image generation task based on the given language and context. Describe the image as if you were explaining it to someone who cannot see it. Include relevant details, colors, shapes, and any other important elements.

### Guidelines:
- Be descriptive and detailed, focusing on the most important aspects of the image.
- Avoid making assumptions or adding information not present in the image.
- Use the chat's primary language; default to English if multilingual.
- If the image is too complex, focus on the most prominent elements.

### Output:
Strictly return in JSON format:
{
"prompt": "Your detailed description here."
}

### Chat History:
<chat_history>
{{MESSAGES:END:6}}
</chat_history>

IMAGE_SIZE

  • 类型: str
  • 默认值: 512x512
  • 描述: 设置默认的图像生成尺寸。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

IMAGE_STEPS

  • 类型: int
  • 默认值: 50
  • 描述: 设置图像生成的默认迭代步数。用于 ComfyUI 和 AUTOMATIC1111。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

IMAGE_GENERATION_MODEL

  • 类型: str
  • 描述: 图像生成使用的默认模型。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

AUTOMATIC1111

AUTOMATIC1111_BASE_URL

  • 类型: str
  • 描述: 指定 AUTOMATIC1111 的 Stable Diffusion API 的 URL。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

AUTOMATIC1111_API_AUTH

  • 类型: str
  • 描述: 设置 AUTOMATIC1111 API 的身份验证信息。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

AUTOMATIC1111_CFG_SCALE

  • 类型: float
  • 描述: 设置 AUTOMATIC1111 推理的 CFG 比例。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

AUTOMATIC1111_SAMPLER

  • 类型: str
  • 描述: 设置 AUTOMATIC1111 推理的采样器。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

AUTOMATIC1111_SCHEDULER

  • 类型: str
  • 描述: 设置 AUTOMATIC1111 推理的调度器。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

ComfyUI

COMFYUI_BASE_URL

  • 类型: str
  • 描述: 指定 ComfyUI 图像生成 API 的 URL。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

COMFYUI_API_KEY

  • 类型: str
  • 描述: 设置 ComfyUI 的 API 密钥。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

COMFYUI_WORKFLOW

  • 类型: str
  • 默认值
{
"3": {
"inputs": {
"seed": 0,
"steps": 20,
"cfg": 8,
"sampler_name": "euler",
"scheduler": "normal",
"denoise": 1,
"model": [
"4",
0
],
"positive": [
"6",
0
],
"negative": [
"7",
0
],
"latent_image": [
"5",
0
]
},
"class_type": "KSampler",
"_meta": {
"title": "KSampler"
}
},
"4": {
"inputs": {
"ckpt_name": "model.safetensors"
},
"class_type": "CheckpointLoaderSimple",
"_meta": {
"title": "Load Checkpoint"
}
},
"5": {
"inputs": {
"width": 512,
"height": 512,
"batch_size": 1
},
"class_type": "EmptyLatentImage",
"_meta": {
"title": "Empty Latent Image"
}
},
"6": {
"inputs": {
"text": "Prompt",
"clip": [
"4",
1
]
},
"class_type": "CLIPTextEncode",
"_meta": {
"title": "CLIP Text Encode (Prompt)"
}
},
"7": {
"inputs": {
"text": "",
"clip": [
"4",
1
]
},
"class_type": "CLIPTextEncode",
"_meta": {
"title": "CLIP Text Encode (Prompt)"
}
},
"8": {
"inputs": {
"samples": [
"3",
0
],
"vae": [
"4",
2
]
},
"class_type": "VAEDecode",
"_meta": {
"title": "VAE Decode"
}
},
"9": {
"inputs": {
"filename_prefix": "ComfyUI",
"images": [
"8",
0
]
},
"class_type": "SaveImage",
"_meta": {
"title": "Save Image"
}
}
}
  • 描述: 设置 ComfyUI 工作流程。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

Gemini

GEMINI_API_BASE_URL

  • 类型: str
  • 默认值: None
  • 描述: 指定 Gemini API 的 URL。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

GEMINI_API_KEY

  • 类型: str
  • 默认值: None
  • 描述: 设置 Gemini API 密钥。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

IMAGES_GEMINI_API_BASE_URL

  • 类型: str
  • 默认值: None
  • 描述: 指定 Gemini 图像生成 API 的 URL。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

IMAGES_GEMINI_API_KEY

  • 类型: str
  • 默认值: None
  • 描述: 设置用于图像生成的 Gemini API 密钥。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

OpenAI DALL-E

IMAGES_OPENAI_API_BASE_URL

  • 类型: str
  • 默认值: ${OPENAI_API_BASE_URL}
  • 描述: 设置用于 DALL-E 图像生成的 OpenAI 兼容基本 URL。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

IMAGES_OPENAI_API_KEY

  • 类型: str
  • 默认值: ${OPENAI_API_KEY}
  • 描述: 设置用于 DALL-E 图像生成的 API 密钥。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

OAuth

ENABLE_OAUTH_SIGNUP

  • 类型: bool
  • 默认值: False
  • 描述: 启用通过 OAuth 注册时创建账户。与 ENABLE_SIGNUP 不同。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。
危险

ENABLE_OAUTH_SIGNUP 设置为 True 时,必须将 ENABLE_LOGIN_FORM 设置为 False。否则将无法登录。

OAUTH_MERGE_ACCOUNTS_BY_EMAIL

  • 类型: bool
  • 默认值: False
  • 描述: 如果启用,将 OAuth 账户与使用相同电子邮件地址的现有账户合并。这被认为是不安全的,因为并非所有 OAuth 提供商都会验证电子邮件地址,可能导致账户被盗。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

OAUTH_UPDATE_PICTURE_ON_LOGIN

  • 类型: bool
  • 默认值: False
  • 描述: 如果启用,登录时使用 OAuth 提供的图片更新本地用户资料图片。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

WEBUI_AUTH_TRUSTED_EMAIL_HEADER

WEBUI_AUTH_TRUSTED_NAME_HEADER

  • 类型: str
  • 描述: 定义用于使用 WEBUI_AUTH_TRUSTED_EMAIL_HEADER 头注册的任何用户的受信任请求头用户名。请参阅单点登录 (SSO) 文档

Google

请参阅 https://support.google.com/cloud/answer/6158849?hl=en

GOOGLE_CLIENT_ID

  • 类型: str
  • 描述: 设置 Google OAuth 的客户端 ID。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

GOOGLE_CLIENT_SECRET

  • 类型: str
  • 描述: 设置 Google OAuth 的客户端密钥。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

GOOGLE_OAUTH_SCOPE

  • 类型: str
  • 默认值: openid email profile
  • 描述: 设置 Google OAuth 身份验证的范围 (scope)。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

GOOGLE_REDIRECT_URI

  • 类型: str
  • 默认值: <backend>/oauth/google/callback
  • 描述: 设置 Google OAuth 的重定向 URI。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

Microsoft

请参阅 https://learn.microsoft.com/en-us/entra/identity-platform/quickstart-register-app

MICROSOFT_CLIENT_ID

  • 类型: str
  • 描述: 设置 Microsoft OAuth 的客户端 ID。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

MICROSOFT_CLIENT_SECRET

  • 类型: str
  • 描述: 设置 Microsoft OAuth 的客户端密钥。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

MICROSOFT_CLIENT_TENANT_ID

  • 类型: str
  • 描述: 设置 Microsoft OAuth 的租户 ID。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

MICROSOFT_OAUTH_SCOPE

  • 类型: str
  • 默认值: openid email profile
  • 描述: 设置 Microsoft OAuth 身份验证的范围 (scope)。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

MICROSOFT_REDIRECT_URI

  • 类型: str
  • 默认值: <backend>/oauth/microsoft/callback
  • 描述: 设置 Microsoft OAuth 的重定向 URI。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

GitHub

请参阅 https://githubdocs.cn/en/apps/oauth-apps/building-oauth-apps/authorizing-oauth-apps

GITHUB_CLIENT_ID

  • 类型: str
  • 描述: 设置 GitHub OAuth 的客户端 ID。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

GITHUB_CLIENT_SECRET

  • 类型: str
  • 描述: 设置 GitHub OAuth 的客户端密钥。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

GITHUB_CLIENT_SCOPE

  • 类型: str
  • 默认值: user:email
  • 描述: 指定 GitHub OAuth 身份验证的范围 (scope)。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

GITHUB_CLIENT_REDIRECT_URI

  • 类型: str
  • 默认值: <backend>/oauth/github/callback
  • 描述: 设置 GitHub OAuth 的重定向 URI。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

OpenID (OIDC)

OAUTH_CLIENT_ID

  • 类型: str
  • 描述: 设置 OIDC 的客户端 ID。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

OAUTH_CLIENT_SECRET

  • 类型: str
  • 描述: 设置 OIDC 的客户端密钥。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

OPENID_PROVIDER_URL

  • 类型: str
  • 描述: 指向 .well-known/openid-configuration 端点的路径。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

OPENID_REDIRECT_URI

  • 类型: str
  • 默认值: <backend>/oauth/oidc/callback
  • 描述: 设置 OIDC 的重定向 URI。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

OAUTH_SCOPES

  • 类型: str
  • 默认值: openid email profile
  • 描述: 设置 OIDC 身份验证的范围 (scope)。openidemail 是必需的。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

OAUTH_CODE_CHALLENGE_METHOD

  • 类型: str
  • 默认值: 空字符串 (' '),因为默认为 None
  • 描述: 指定 OAuth 身份验证的代码挑战方法。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

OAUTH_PROVIDER_NAME

  • 类型: str
  • 默认值: SSO
  • 描述: 设置 OIDC 提供商的名称。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

OAUTH_USERNAME_CLAIM

  • 类型: str
  • 默认值: name
  • 描述: 设置 OpenID 的用户名声明 (claim)。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

OAUTH_EMAIL_CLAIM

  • 类型: str
  • 默认值: email
  • 描述: 设置 OpenID 的电子邮件声明 (claim)。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

OAUTH_PICTURE_CLAIM

  • 类型: str
  • 默认值: picture
  • 描述: 设置 OpenID 的图片(头像)声明 (claim)。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

OAUTH_GROUP_CLAIM

  • 类型: str
  • 默认值: groups
  • 描述: 指定 OAuth 身份验证的组声明 (claim)。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

ENABLE_OAUTH_ROLE_MANAGEMENT

  • 类型: bool
  • 默认值: False
  • 描述: 启用 OAuth 委托的角色管理。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

ENABLE_OAUTH_GROUP_MANAGEMENT

  • 类型: bool
  • 默认值: False
  • 描述: 启用或禁用 OAuth 组管理。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

OAUTH_ROLES_CLAIM

  • 类型: str
  • 默认值: roles
  • 描述: 设置在 OIDC token 中查找的角色声明 (claim)。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

OAUTH_ALLOWED_ROLES

  • 类型: str
  • 默认值: user,admin
  • 描述: 设置允许访问平台的角色。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

OAUTH_ADMIN_ROLES

  • 类型: str
  • 默认值: admin
  • 描述: 设置被视为管理员的角色。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

OAUTH_ALLOWED_DOMAINS

  • 类型: str
  • 默认值: *
  • 描述: 指定允许进行 OAuth 身份验证的域(例如 "example1.com,example2.com")。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

LDAP

ENABLE_LDAP

  • 类型: bool
  • 默认值: False
  • 描述: 启用或禁用 LDAP 身份验证。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

LDAP_SERVER_LABEL

  • 类型: str
  • 描述: 设置 LDAP 服务器的标签。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

LDAP_SERVER_HOST

  • 类型: str
  • 默认值: localhost
  • 描述: 设置 LDAP 服务器的主机名。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

LDAP_SERVER_PORT

  • 类型: int
  • 默认值: 389
  • 描述: 设置 LDAP 服务器的端口号。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

LDAP_ATTRIBUTE_FOR_MAIL

  • 类型: str
  • 描述: 设置用于 LDAP 身份验证的邮件属性。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

LDAP_ATTRIBUTE_FOR_USERNAME

  • 类型: str
  • 描述: 设置用于 LDAP 身份验证的用户名属性。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

LDAP_APP_DN

  • 类型: str
  • 描述: 设置 LDAP 应用程序的区分名称 (distinguished name)。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

LDAP_APP_PASSWORD

  • 类型: str
  • 描述: 设置 LDAP 应用程序的密码。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

LDAP_SEARCH_BASE

  • 类型: str
  • 描述: 设置用于 LDAP 身份验证的搜索基础 DN (base DN)。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

LDAP_SEARCH_FILTER

  • 类型: str
  • 默认值: None
  • 描述: 设置用于 LDAP 搜索的单个过滤器。是 LDAP_SEARCH_FILTERS 的替代方案。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

LDAP_SEARCH_FILTERS

  • 类型: str
  • 描述: 设置用于 LDAP 搜索的过滤器。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

LDAP_USE_TLS

  • 类型: bool
  • 默认值: True
  • 描述: 启用或禁用 LDAP 连接的 TLS。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

LDAP_CA_CERT_FILE

  • 类型: str
  • 描述: 设置 LDAP CA 证书文件的路径。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

LDAP_VALIDATE_CERT

  • 类型: bool
  • 描述: 设置是否验证 LDAP CA 证书。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

LDAP_CIPHERS

  • 类型: str
  • 默认值: ALL
  • 描述: 设置用于 LDAP 连接的密码套件 (ciphers)。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

用户权限

聊天权限

USER_PERMISSIONS_CHAT_CONTROLS

  • 类型: str
  • 默认值: True
  • 描述: 启用或禁用用户访问聊天控件的权限。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

USER_PERMISSIONS_CHAT_FILE_UPLOAD

  • 类型: bool
  • 默认值: True
  • 描述: 启用或禁用用户上传文件到聊天的权限。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

USER_PERMISSIONS_CHAT_DELETE

  • 类型: bool
  • 默认值: True
  • 描述: 启用或禁用用户删除聊天的权限。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

USER_PERMISSIONS_CHAT_EDIT

  • 类型: bool
  • 默认值: True
  • 描述: 启用或禁用用户编辑聊天的权限。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

USER_PERMISSIONS_CHAT_STT

  • 类型: str
  • 默认值: True
  • 描述: 启用或禁用用户在聊天中使用语音转文本的权限。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

USER_PERMISSIONS_CHAT_TTS

  • 类型: str
  • 默认值: True
  • 描述: 启用或禁用用户在聊天中使用文本转语音的权限。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

USER_PERMISSIONS_CHAT_CALL

  • 类型: str
  • 默认值: True
  • 描述: 启用或禁用用户在聊天中进行语音通话的权限。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

USER_PERMISSIONS_CHAT_MULTIPLE_MODELS

  • 类型: str
  • 默认值: True
  • 描述: 启用或禁用用户在聊天中使用多个模型的权限。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

USER_PERMISSIONS_CHAT_TEMPORARY

  • 类型: bool
  • 默认值: True
  • 描述: 启用或禁用用户创建临时聊天的权限。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

USER_PERMISSIONS_CHAT_TEMPORARY_ENFORCED

  • 类型: str
  • 默认值: False
  • 描述: 启用或禁用对用户强制执行临时聊天。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

功能权限

USER_PERMISSIONS_FEATURES_DIRECT_TOOL_SERVERS

  • 类型: str
  • 默认值: False
  • 描述: 启用或禁用用户访问直接工具服务器的权限。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。
  • 类型: str
  • 默认值: True
  • 描述: 启用或禁用用户使用 Web 搜索功能的权限。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

USER_PERMISSIONS_FEATURES_IMAGE_GENERATION

  • 类型: str
  • 默认值: True
  • 描述: 启用或禁用用户使用图像生成功能的权限。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

USER_PERMISSIONS_FEATURES_CODE_INTERPRETER

  • 类型: str
  • 默认值: True
  • 描述: 启用或禁用用户使用代码解释器功能的权限。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

工作区权限

USER_PERMISSIONS_WORKSPACE_MODELS_ACCESS

  • 类型: bool
  • 默认值: False
  • 描述: 启用或禁用用户访问工作区模型的权限。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

USER_PERMISSIONS_WORKSPACE_KNOWLEDGE_ACCESS

  • 类型: bool
  • 默认值: False
  • 描述: 启用或禁用用户访问工作区知识库的权限。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

USER_PERMISSIONS_WORKSPACE_PROMPTS_ACCESS

  • 类型: bool
  • 默认值: False
  • 描述: 启用或禁用用户访问工作区提示的权限。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

USER_PERMISSIONS_WORKSPACE_TOOLS_ACCESS

  • 类型: bool
  • 默认值: False
  • 描述: 启用或禁用用户访问工作区工具的权限。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

USER_PERMISSIONS_WORKSPACE_MODELS_ALLOW_PUBLIC_SHARING

  • 类型: str
  • 默认值: False
  • 描述: 启用或禁用工作区模型的公开共享。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

USER_PERMISSIONS_WORKSPACE_KNOWLEDGE_ALLOW_PUBLIC_SHARING

  • 类型: str
  • 默认值: False
  • 描述: 启用或禁用工作区知识库的公开共享。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

USER_PERMISSIONS_WORKSPACE_PROMPTS_ALLOW_PUBLIC_SHARING

  • 类型: str
  • 默认值: False
  • 描述: 启用或禁用工作区提示的公开共享。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

USER_PERMISSIONS_WORKSPACE_TOOLS_ALLOW_PUBLIC_SHARING

  • 类型: str
  • 默认值: False
  • 描述: 启用或禁用工作区工具的公开共享。
  • 持久性: 此环境变量是一个 PersistentConfig 变量。

其他环境变量

这些变量并非 Open WebUI 特有,但在某些情况下仍然很有价值。

云存储

STORAGE_PROVIDER

  • 类型: str
  • 选项
  • 默认值: 空字符串 (' '),默认为 local
  • 描述: 设置存储提供商。

Amazon S3 存储

S3_ACCESS_KEY_ID

  • 类型: str
  • 描述: 设置 S3 存储的访问密钥 ID。

S3_ADDRESSING_STYLE

  • 类型: str
  • 默认值: None
  • 描述: 指定 S3 存储使用的寻址方式(例如 'path','virtual')。

S3_BUCKET_NAME

  • 类型: str
  • 描述: 设置 S3 存储的存储桶名称。

S3_ENDPOINT_URL

  • 类型: str
  • 描述: 设置 S3 存储的端点 URL。

S3_KEY_PREFIX

  • 类型: str
  • 描述: 设置 S3 对象的键前缀。

S3_REGION_NAME

  • 类型: str
  • 描述: 设置 S3 存储的区域名称。

S3_SECRET_ACCESS_KEY

  • 类型: str
  • 描述: 设置 S3 存储的秘密访问密钥。

S3_USE_ACCELERATE_ENDPOINT

  • 类型: str
  • 默认值: False
  • 描述: 指定是否使用加速端点进行 S3 存储。

S3_ENABLE_TAGGING

  • 类型: str
  • 默认值: False
  • 描述: 上传后启用 S3 对象标记,以便更好地组织、搜索和与文件管理策略集成。使用 Cloudflare R2 时,始终设置为 False,因为 R2 不支持对象标记。

Google Cloud Storage

GOOGLE_APPLICATION_CREDENTIALS_JSON

  • 类型: str
  • 描述: Google 应用程序凭据 JSON 文件的内容。
    • 可选 - 如果未提供,将从环境中获取凭据。本地运行时为用户凭据,在 Google Compute Engine 上运行时为 Google Metadata Server。
    • 可以按照此指南为服务账户生成文件。

GCS_BUCKET_NAME

  • 类型: str
  • 描述: 设置 Google Cloud Storage 的存储桶名称。存储桶必须已存在。

Microsoft Azure Storage

AZURE_STORAGE_ENDPOINT

  • 类型: str
  • 描述: 设置 Azure Storage 的端点 URL。

AZURE_STORAGE_CONTAINER_NAME

  • 类型: str
  • 描述: 设置 Azure Storage 的容器名称。

AZURE_STORAGE_KEY

  • 类型: str
  • 描述: 设置 Azure Storage 的访问密钥。
    • 可选 - 如果未提供,将从环境中获取凭据。本地运行时为用户凭据,在 Azure 服务中运行时为托管标识 (Managed Identity)。

数据库连接池

DATABASE_URL

  • 类型: str
  • 默认值: sqlite:///${DATA_DIR}/webui.db
  • 描述: 指定要连接的数据库 URL。
信息

支持 SQLite 和 Postgres。更改 URL 不会迁移数据库之间的数据。有关 URL 方案的文档可在此处找到。

DATABASE_SCHEMA

  • 类型: str
  • 默认值: None
  • 描述: 指定要连接的数据库 schema。

DATABASE_POOL_SIZE

  • 类型: int
  • 默认值: 0
  • 描述: 指定数据库连接池的大小。值为 0 表示禁用连接池。

DATABASE_POOL_MAX_OVERFLOW

  • 类型: int
  • 默认值: 0
  • 描述: 指定数据库连接池的最大溢出连接数。
信息

有关此设置的更多信息可在此处找到。

DATABASE_POOL_TIMEOUT

  • 类型: int
  • 默认值: 30
  • 描述: 指定获取连接的数据库连接池超时时间(秒)。
信息

有关此设置的更多信息可在此处找到。

DATABASE_POOL_RECYCLE

  • 类型: int
  • 默认值: 3600
  • 描述: 指定数据库连接池的回收时间(秒)。
信息

有关此设置的更多信息可在此处找到。

Redis

REDIS_URL

  • 类型: str
  • 示例: redis://localhost:6379/0
  • 描述: 指定用于应用状态 (app-state) 的 Redis 实例的 URL。
信息

在多节点/多工作进程集群中部署 Open-WebUI 时,必须确保设置 REDIS_URL 值。否则,工作进程将无法通信,导致应用状态出现会话、持久性和一致性问题。

REDIS_SENTINEL_HOSTS

  • 类型: str
  • 描述: 用于应用状态的 Redis Sentinel 列表,以逗号分隔。如果指定,REDIS_URL 中的“hostname”将被解释为 Sentinel 服务名称。

REDIS_SENTINEL_PORT

  • 类型: int
  • 默认值: 26379
  • 描述: 用于应用状态 Redis 的 Sentinel 端口。

ENABLE_WEBSOCKET_SUPPORT

  • 类型: bool
  • 默认值: True
  • 描述: 在 Open WebUI 中启用 Websocket 支持。
信息

在多节点/多工作进程集群中部署 Open-WebUI 时,必须确保设置 ENABLE_WEBSOCKET_SUPPORT 值。否则,将出现 Websocket 一致性和持久性问题。

WEBSOCKET_MANAGER

  • 类型: str
  • 默认值: redis
  • 描述: 指定使用的 Websocket 管理器(在此情况下为 Redis)。
信息

在多节点/多工作进程集群中部署 Open-WebUI 时,必须确保设置 WEBSOCKET_MANAGER 值并使用 Redis 等键值 NoSQL 数据库。否则,将出现 Websocket 一致性和持久性问题。

WEBSOCKET_REDIS_URL

  • 类型: str
  • 默认值: ${REDIS_URL}
  • 描述: 指定用于 Websocket 通信的 Redis 实例的 URL。它与 REDIS_URL 不同,实践中建议同时设置两者。
信息

在多节点/多工作进程集群中部署 Open-WebUI 时,必须确保设置 WEBSOCKET_REDIS_URL 值并使用 Redis 等键值 NoSQL 数据库。否则,将出现 Websocket 一致性和持久性问题。

WEBSOCKET_SENTINEL_HOSTS

  • 类型: str
  • 描述: 用于 Websocket 的 Redis Sentinel 列表,以逗号分隔。如果指定,WEBSOCKET_REDIS_URL 中的“hostname”将被解释为 Sentinel 服务名称。

WEBSOCKET_SENTINEL_PORT

  • 类型: int
  • 默认值: 26379
  • 描述: 用于 Websocket Redis 的 Sentinel 端口。

Uvicorn 设置

UVICORN_WORKERS

  • 类型: int
  • 默认值: 1
  • 描述: 控制 Uvicorn 派生以处理请求的工作进程数量。每个工作进程在单独的进程中运行应用程序的自身实例。
信息

在 Kubernetes 或使用 Helm Chart 等编排环境中部署时,建议将 UVICORN_WORKERS 设置为 1。容器编排平台已经通过 Pod 复制提供了自己的扩展机制,而在容器内部使用多个工作进程可能导致资源分配问题并使横向扩展策略复杂化。

如果您使用 UVICORN_WORKERS,还需要确保为可扩展多实例设置的相关环境变量已相应设置。

代理设置

Open WebUI 支持使用代理进行 HTTP 和 HTTPS 检索。要指定代理设置,Open WebUI 使用以下环境变量:

http_proxy

  • 类型: str
  • 描述: 设置 HTTP 代理的 URL。

https_proxy

  • 类型: str
  • 描述: 设置 HTTPS 代理的 URL。

no_proxy

  • 类型: str
  • 描述: 列出不应使用代理的域名后缀(或 IP 地址),以逗号分隔。例如,将 no_proxy 设置为 '.mit.edu' 可确保在访问 MIT 的文档时不经过代理。

安装所需的 Python 包

Open WebUI 提供了环境变量以自定义 pip 安装过程。以下是 Open WebUI 用于调整包安装行为的环境变量:

PIP_OPTIONS

  • 类型: str
  • 描述: 指定 pip 安装包时应使用的额外命令行选项。例如,您可以包含 --upgrade--user--no-cache-dir 等标志来控制安装过程。

PIP_PACKAGE_INDEX_OPTIONS

  • 类型: str
  • 描述: 定义 pip 的自定义包索引行为。这可以包括指定额外或备用索引 URL(例如 --extra-index-url)、身份验证凭据或其他参数来管理如何从不同位置检索包。