跳到主要内容

🌍 环境变量配置

概述

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

信息

本页内容已更新至 Open WebUI 版本 v0.6.9,但仍在进行中,未来将包含更准确的描述,列出环境变量可用的选项、默认值并改进描述。

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

注意

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

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

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

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

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

要禁用 PersistentConfig 并让 Open WebUI 平等地处理所有变量,您可以将 ENABLE_PERSISTENT_CONFIG 设置为 False

应用/后端

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

通用

WEBUI_URL

  • 类型: str
  • 默认值: https://:3000
  • 描述:指定您的 Open WebUI 安装可以访问的 URL。搜索引擎支持和 OAuth/SSO 需要此配置。
  • 持久化:此环境变量是 PersistentConfig 变量。
警告

在使用 OAuth/SSO 进行身份验证之前,必须设置此变量。由于这是一个持久化配置环境变量,您只能通过以下选项之一进行更改:

  • 使用 ENABLE_PERSISTENT_CONFIG 临时禁用持久化配置
  • 在管理员面板 > 设置中更改 WEBUI_URL 并更改“WebUI URL”。

如果在 OAuth/SSO 之前未能设置 WEBUI_URL,将导致无法登录。

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
  • 默认值:空字符串('')
  • 描述:设置在聊天中复制消息时包含的自定义文本。例如:"此文本由 AI 生成" -> 复制时会在每条消息后添加“此文本由 AI 生成”。
  • 持久化:此环境变量是 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.json 文件。

ENABLE_TITLE_GENERATION

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

LICENSE_KEY

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

SSL_ASSERT_FINGERPRINT

  • 类型: str
  • 默认值:空字符串(''),因为默认设置为 None
  • 描述:指定要使用的 SSL 证书指纹。
  • 持久化:此环境变量是 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
  • 默认值: https://:11434
  • Docker 默认值
    • 如果设置了 K8S_FLAGhttp://ollama-service.open-webui.svc.cluster.local:11434
    • 如果 USE_OLLAMA_DOCKER=Truehttps://: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 变量。

ENABLE_FOLLOW_UP_GENERATION

  • 类型: bool
  • 默认值: True
  • 描述:启用或禁用后续问题生成。
  • 持久化:此环境变量是 PersistentConfig 变量。

FOLLOW_UP_GENERATION_PROMPT_TEMPLATE

  • 类型: str
  • 描述:用于生成多个相关后续问题的提示。
  • 默认值: DEFAULT_FOLLOW_UP_GENERATION_PROMPT_TEMPLATE 环境变量的值。

DEFAULT_FOLLOW_UP_GENERATION_PROMPT_TEMPLATE:

### Task:
Suggest 3-5 relevant follow-up questions or prompts that the user might naturally ask next in this conversation as a **user**, based on the chat history, to help continue or deepen the discussion.
### Guidelines:
- Write all follow-up questions from the user’s point of view, directed to the assistant.
- Make questions concise, clear, and directly related to the discussed topic(s).
- Only suggest follow-ups that make sense given the chat content and do not repeat what was already covered.
- If the conversation is very short or not specific, suggest more general (but relevant) follow-ups the user might ask.
- Use the conversation's primary language; default to English if multilingual.
- Response must be a JSON array of strings, no extra text or formatting.
### Output:
JSON format: { "follow_ups": ["Question 1?", "Question 2?", "Question 3?"] }
### Chat History:
<chat_history>
{{MESSAGES:END:6}}
</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

  • 类型: str
  • 默认值: -1
  • 描述:设置 JWT 过期时间(秒)。有效时间单位:s(秒)、m(分钟)、h(小时)、d(天)、w(周)或 -1 表示无过期。
  • 持久化:此环境变量是 PersistentConfig 变量。
警告

JWT_EXPIRES_IN 设置为 -1 会禁用 JWT 过期,使生成的令牌永久有效。这在生产环境中极其危险,如果令牌泄露或被盗,将使您的系统面临严重的 >>=安全风险。=>

在生产环境中,请务必设置合理的过期时间(例如 3600s1h 等),以限制身份验证令牌的生命周期。在生产环境中切勿使用 -1

如果您已使用 JWT_EXPIRES_IN=-1 进行部署,您可以轮换或更改您的 WEBUI_SECRET_KEY 来立即使所有现有令牌失效。

安全变量

ENABLE_FORWARD_USER_INFO_HEADERS

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

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 提供程序的 callback,这有助于防止 CSRF 攻击。

但是,strict 会话 cookie 不会随 callback 请求一起发送,从而可能导致登录问题。如果遇到此问题,请改用默认值 lax

  • 类型: bool
  • 默认值: False
  • 描述:如果设置为 True,则为会话 cookie 设置 Secure 属性。
  • 类型: str
  • 选项
    • lax - 将 SameSite 属性设置为 lax,允许 auth cookie 随第三方网站发起的请求一起发送。
    • strict - 将 SameSite 属性设置为 strict,阻止 auth cookie 随第三方网站发起的请求一起发送。
    • none - 将 SameSite 属性设置为 none,允许 auth cookie 随第三方网站发起的请求一起发送,但仅限于 HTTPS。
  • 默认值: lax
  • 描述:设置 auth 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 值相同,以便在节点被回收或用户会话转移到另一个节点时,用户能够继续工作。否则,每次底层节点更改时,他们都需要重新登录。

ENABLE_VERSION_UPDATE_CHECK

  • 类型: bool
  • 默认值: True
  • 描述:启用后,应用程序会自动检查更新并通知您版本更新。
信息

如果启用了OFFLINE_MODE,则此ENABLE_VERSION_UPDATE_CHECK标志将始终自动设置为false

OFFLINE_MODE

  • 类型: bool
  • 默认值: False
  • 描述:禁用 Open WebUI 的网络连接,以用于更新检查和自动模型下载。
信息

启用时禁用

  • 自动版本更新检查(请参阅标志 ENABLE_VERSION_UPDATE_CHECK
  • 从 Hugging Face Hub 下载嵌入模型
    • 如果在激活OFFLINE_MODE之前未下载嵌入模型,则任何 RAG、网络搜索和文档分析功能可能无法正常工作。
  • UI 中的更新通知(请参阅标志 ENABLE_VERSION_UPDATE_CHECK

仍然可用

  • 外部 LLM API 连接(OpenAI 等)
  • OAuth 身份验证提供商
  • 通过外部 API 进行网络搜索和 RAG

请参阅本指南,详细了解offline mode

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
  • 选项
  • chromaelasticsearchmilvusopensearchpgvectorqdrantpinecone
  • 默认值: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
  • 描述:逗号分隔的 HTTP 标头列表,将在每次 ChromaDB 请求中包含。
  • 示例: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://:9200
  • 描述:指定 Elasticsearch 实例的 URL。
  • 持久化:此环境变量是 PersistentConfig 变量。

ELASTICSEARCH_USERNAME

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

Milvus

MILVUS_URI

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

MILVUS_DB

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

MILVUS_TOKEN

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

MILVUS_INDEX_TYPE

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

MILVUS_METRIC_TYPE

  • 类型: str
  • 默认值:COSINE
  • 选项:COSINEIPL2
  • 描述:指定 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://: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
  • 描述:尽可能使用 gRPC 接口。

QDRANT_GRPC_PORT

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

ENABLE_QDRANT_MULTITENANCY_MODE

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

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

之前模式下创建的 Qdrant 集合仍将占用资源。

目前,UI 中没有仅重置向量数据库的按钮。如果您想迁移知识到得多租户模式,请

  • 使用原生 Qdrant 客户端移除所有带有open_webui-knowledge前缀(或open_webui前缀以移除所有与 Open WebUI 相关的集合)的集合。
  • 前往Admin Settings > Documents > Reindex Knowledge Base 以迁移现有的知识库。

Reindex Knowledge Base 将仅迁移知识库。

危险

如果您决定将得多租户模式作为默认模式,并且不需要迁移旧知识,请前往Admin Settings > Documents 来重置向量和知识,这将删除所有带有open_webui前缀的集合以及所有存储的知识。

QDRANT_COLLECTION_PREFIX

  • 类型: str
  • 默认值:open-webui
  • 描述:设置 Qdrant 集合名称的前缀。对于命名空间或隔离集合很有用,尤其是在得多租户模式下。更改此值将导致应用程序在 Qdrant 中使用不同的集合集。现有具有不同前缀的集合将不受影响。

Pinecone

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

PINECONE_API_KEY

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

PINECONE_ENVIRONMENT

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

PINECONE_INDEX_NAME

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

PINECONE_DIMENSION

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

PINECONE_METRIC

  • 类型: str
  • 默认值:cosine
  • 选项:cosinedotproducteuclidean
  • 描述:指定用于 Pinecone 索引内向量比较的相似性度量。

PINECONE_CLOUD

  • 类型: str
  • 默认值:aws
  • 选项:awsgcpazure
  • 描述:指定托管 Pinecone 索引的云提供商。

RAG 内容提取引擎

CONTENT_EXTRACTION_ENGINE

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

MISTRAL_OCR_API_KEY

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

EXTERNAL_DOCUMENT_LOADER_URL

  • 类型: str
  • 默认值: None
  • 描述:设置外部文档加载器服务的 URL。
  • 持久化:此环境变量是 PersistentConfig 变量。

EXTERNAL_DOCUMENT_LOADER_API_KEY

  • 类型: str
  • 默认值: None
  • 描述:设置用于向外部文档加载器服务进行身份验证的 API 密钥。
  • 持久化:此环境变量是 PersistentConfig 变量。

TIKA_SERVER_URL

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

DOCLING_SERVER_URL

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

DOCLING_OCR_ENGINE

  • 类型: str
  • 默认值:tesseract
  • 描述:指定 Docling 使用的 OCR 引擎。
    支持的值包括:tesseract(默认)、easyocrocrmacrapidocrtesserocr
  • 持久化:此环境变量是 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_HYBRID_BM25_WEIGHT

  • 类型:float
  • 默认值:0.5
  • 描述:设置混合搜索中关键字搜索 (BM25) 的权重。1 表示仅关键字搜索,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_ALLOWED_FILE_EXTENSIONS

  • 类型:list of str
  • 默认值:[](表示允许所有支持的文件类型)
  • 描述:指定允许上传的文件扩展名。
["pdf,docx,txt"]
  • 持久化:此环境变量是 PersistentConfig 变量。

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

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

RAG_EMBEDDING_PREFIX_FIELD_NAME

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

RAG_EMBEDDING_QUERY_PREFIX

  • 类型: str
  • 默认值: None
  • Description: 指定 RAG 嵌入查询的前缀。
  • 持久化:此环境变量是 PersistentConfig 变量。

RAG_FULL_CONTEXT

  • 类型: bool
  • 默认值: False
  • Description: 指定是否为 RAG 使用完整上下文。
  • 持久化:此环境变量是 PersistentConfig 变量。

Google Drive

ENABLE_GOOGLE_DRIVE_INTEGRATION

  • 类型: bool
  • 默认值: False
  • Description: 启用或禁用 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
  • Description: 设置 Google Drive 的客户端 ID(客户端必须配置 Drive API 和 Picker API)。
  • 持久化:此环境变量是 PersistentConfig 变量。

GOOGLE_DRIVE_API_KEY

  • 类型: str
  • Description: 设置 Google Drive 集成的 API 密钥。
  • 持久化:此环境变量是 PersistentConfig 变量。

OneDrive

ENABLE_ONEDRIVE_INTEGRATION

  • 类型: bool
  • 默认值: False
  • Description: 启用或禁用 OneDrive 集成。
  • 持久化:此环境变量是 PersistentConfig 变量。

ONEDRIVE_CLIENT_ID

  • 类型: str
  • 默认值: None
  • Description: 指定 OneDrive 集成的客户端 ID。
  • 持久化:此环境变量是 PersistentConfig 变量。

ONEDRIVE_SHAREPOINT_URL

  • 类型: str
  • 默认值: None
  • Description: 指定 OneDrive 集成的 SharePoint 站点 URL,例如 https://companyname.sharepoint.com
  • 持久化:此环境变量是 PersistentConfig 变量。

ONEDRIVE_SHAREPOINT_TENANT_ID

  • 类型: str
  • 默认值: None
  • Description: 指定 OneDrive 集成的 SharePoint 租户 ID。
  • 持久化:此环境变量是 PersistentConfig 变量。
  • 类型: bool
  • 默认值: False
  • Description: 启用网络搜索开关。
  • 持久化:此环境变量是 PersistentConfig 变量。

ENABLE_SEARCH_QUERY_GENERATION

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

WEB_SEARCH_TRUST_ENV

  • 类型: bool
  • 默认值: False
  • Description: 在获取网络搜索内容时启用由 http_proxyhttps_proxy 设置的代理。
  • 持久化:此环境变量是 PersistentConfig 变量。

WEB_SEARCH_RESULT_COUNT

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

WEB_SEARCH_CONCURRENT_REQUESTS

  • 类型: int
  • 默认值: 10
  • Description: 抓取搜索结果中返回的网页的并发请求数量。
  • 持久化:此环境变量是 PersistentConfig 变量。

WEB_SEARCH_ENGINE

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

BYPASS_WEB_SEARCH_EMBEDDING_AND_RETRIEVAL

  • 类型: bool
  • 默认值: False
  • Description: 绕过网络搜索嵌入和检索过程。
  • 持久化:此环境变量是 PersistentConfig 变量。

SEARXNG_QUERY_URL

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

GOOGLE_PSE_API_KEY

  • 类型: str
  • Description: 设置 Google 可编程搜索引擎 (PSE) 服务的 API 密钥。
  • 持久化:此环境变量是 PersistentConfig 变量。

GOOGLE_PSE_ENGINE_ID

  • 类型: str
  • Description: Google 可编程搜索引擎 (PSE) 服务的引擎 ID。
  • 持久化:此环境变量是 PersistentConfig 变量。

BRAVE_SEARCH_API_KEY

  • 类型: str
  • Description: 设置 Brave Search API 的 API 密钥。
  • 持久化:此环境变量是 PersistentConfig 变量。

KAGI_SEARCH_API_KEY

  • 类型: str
  • Description: 设置 Kagi Search API 的 API 密钥。
  • 持久化:此环境变量是 PersistentConfig 变量。

MOJEEK_SEARCH_API_KEY

  • 类型: str
  • Description: 设置 Mojeek Search API 的 API 密钥。
  • 持久化:此环境变量是 PersistentConfig 变量。

SERPSTACK_API_KEY

  • 类型: str
  • Description: 设置 Serpstack 搜索 API 的 API 密钥。
  • 持久化:此环境变量是 PersistentConfig 变量。

SERPSTACK_HTTPS

  • 类型: bool
  • 默认值: True
  • Description: 配置 Serpstack 请求使用 HTTPS。免费套餐的请求仅限于 HTTP。
  • 持久化:此环境变量是 PersistentConfig 变量。

SERPER_API_KEY

  • 类型: str
  • Description: 设置 Serper 搜索 API 的 API 密钥。
  • 持久化:此环境变量是 PersistentConfig 变量。

SERPLY_API_KEY

  • 类型: str
  • Description: 设置 Serply 搜索 API 的 API 密钥。
  • 持久化:此环境变量是 PersistentConfig 变量。

SEARCHAPI_API_KEY

  • 类型: str
  • Description: 设置 SearchAPI 的 API 密钥。
  • 持久化:此环境变量是 PersistentConfig 变量。

SEARCHAPI_ENGINE

  • 类型: str
  • Description: 设置 SearchAPI 的引擎。
  • 持久化:此环境变量是 PersistentConfig 变量。

TAVILY_API_KEY

  • 类型: str
  • Description: 设置 Tavily 搜索 API 的 API 密钥。
  • 持久化:此环境变量是 PersistentConfig 变量。

JINA_API_KEY

  • 类型: str
  • Description: 设置 Jina 的 API 密钥。
  • 持久化:此环境变量是 PersistentConfig 变量。

BING_SEARCH_V7_ENDPOINT

  • 类型: str
  • Description: 设置 Bing Search API 的终结点。
  • 持久化:此环境变量是 PersistentConfig 变量。

BING_SEARCH_V7_SUBSCRIPTION_KEY

  • 类型: str
  • Default: https://api.bing.microsoft.com/v7.0/search
  • Description: 设置 Bing Search API 的订阅密钥。
  • 持久化:此环境变量是 PersistentConfig 变量。

BOCHA_SEARCH_API_KEY

  • 类型: str
  • 默认值: None
  • Description: 设置 Bocha Search API 的 API 密钥。
  • 持久化:此环境变量是 PersistentConfig 变量。

EXA_API_KEY

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

SERPAPI_API_KEY

  • 类型: str
  • 默认值: None
  • Description: 设置 SerpAPI 的 API 密钥。
  • 持久化:此环境变量是 PersistentConfig 变量。

SERPAPI_ENGINE

  • 类型: str
  • 默认值: None
  • Description: 指定用于 SerpAPI 的搜索引擎。
  • 持久化:此环境变量是 PersistentConfig 变量。

SOUGOU_API_SID

  • 类型: str
  • 默认值: None
  • Description: 设置 Sogou API SID。
  • 持久化:此环境变量是 PersistentConfig 变量。

SOUGOU_API_SK

  • 类型: str
  • 默认值: None
  • Description: 设置 Sogou API SK。
  • 持久化:此环境变量是 PersistentConfig 变量。

TAVILY_EXTRACT_DEPTH

  • 类型: str
  • Default: basic
  • Description: 指定 Tavily 搜索结果的提取深度。
  • 持久化:此环境变量是 PersistentConfig 变量。

Web Loader Configuration

WEB_LOADER_ENGINE

  • 类型: str
  • Default: safe_web
  • Description: 指定用于检索和处理网络内容的加载器。
  • 选项
    • requests - 使用带有增强错误处理的 Requests 模块。
    • playwright - 使用 Playwright 进行更高级的网络页面渲染和交互。
  • 持久化:此环境变量是 PersistentConfig 变量。
信息

使用 playwright 时,您有两种选择

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

PLAYWRIGHT_WS_URL

  • 类型: str
  • 默认值: None
  • Description: 指定远程 Playwright 浏览器实例的 WebSocket URI。设置后,Open WebUI 将使用此远程浏览器,而不是在本地安装浏览器依赖项。这在容器化环境中特别有用,如果您想保持 Open WebUI 容器轻量级并分离浏览器关注点。示例:ws://playwright:3000
  • 持久化:此环境变量是 PersistentConfig 变量。
tip

使用 PLAYWRIGHT_WS_URL 通过远程 Playwright 浏览器可能有利于

  • 减小 Open WebUI 容器的大小
  • 使用除默认 Chromium 以外的其他浏览器
  • 连接到非无头(GUI)浏览器

FIRECRAWL_API_BASE_URL

  • 类型: str
  • Default: https://api.firecrawl.dev
  • Description: 设置 Firecrawl API 的基本 URL。
  • 持久化:此环境变量是 PersistentConfig 变量。

FIRECRAWL_API_KEY

  • 类型: str
  • 默认值: None
  • Description: 设置 Firecrawl API 的 API 密钥。
  • 持久化:此环境变量是 PersistentConfig 变量。

PERPLEXITY_API_KEY

  • 类型: str
  • 默认值: None
  • Description: 设置 Perplexity API 的 API 密钥。
  • 持久化:此环境变量是 PersistentConfig 变量。

PLAYWRIGHT_TIMEOUT

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

YouTube Loader

YOUTUBE_LOADER_PROXY_URL

  • 类型: str
  • Description: 设置 YouTube 加载器的代理 URL。
  • 持久化:此环境变量是 PersistentConfig 变量。

YOUTUBE_LOADER_LANGUAGE

  • 类型: str
  • 默认值: en
  • Description: 获取 YouTube 视频字幕时尝试的语言代码的逗号分隔列表,按优先级排序。
  • Example: 如果设置为 es,de,将首先尝试西班牙语字幕,然后尝试德语(如果西班牙语不可用),最后是英语。注意:如果指定的语言都不可用,并且 en 不在您的列表中,系统将自动尝试英语作为最终回退。
  • 持久化:此环境变量是 PersistentConfig 变量。

Audio

Whisper Speech-to-Text (Local)

WHISPER_MODEL

  • 类型: str
  • Default: base
  • Description: 设置用于语音转文本的 Whisper 模型。使用的后端是 faster_whisper,并进行了 int8 量化。
  • 持久化:此环境变量是 PersistentConfig 变量。

WHISPER_MODEL_DIR

  • 类型: str
  • Default: ${DATA_DIR}/cache/whisper/models
  • Description: 指定存储 Whisper 模型文件的目录。

WHISPER_VAD_FILTER

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

WHISPER_MODEL_AUTO_UPDATE

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

WHISPER_LANGUAGE

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

Speech-to-Text (OpenAI)

AUDIO_STT_ENGINE

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

AUDIO_STT_MODEL

  • 类型: str
  • Default: whisper-1
  • Description: 指定用于 OpenAI 兼容终结点的语音转文本模型。
  • 持久化:此环境变量是 PersistentConfig 变量。

AUDIO_STT_OPENAI_API_BASE_URL

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

AUDIO_STT_OPENAI_API_KEY

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

Speech-to-Text (Azure)

AUDIO_STT_AZURE_API_KEY

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

AUDIO_STT_AZURE_REGION

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

AUDIO_STT_AZURE_LOCALES

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

Speech-to-Text (Deepgram)

DEEPGRAM_API_KEY

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

Text-to-Speech

AUDIO_TTS_API_KEY

  • 类型: str
  • Description: 设置文本转语音的 API 密钥。
  • 持久化:此环境变量是 PersistentConfig 变量。

AUDIO_TTS_ENGINE

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

AUDIO_TTS_MODEL

  • 类型: str
  • Default: tts-1
  • Description: 指定要使用的 OpenAI 文本转语音模型。
  • 持久化:此环境变量是 PersistentConfig 变量。

AUDIO_TTS_VOICE

  • 类型: str
  • Default: alloy
  • Description: 设置要使用的 OpenAI 文本转语音的声音。
  • 持久化:此环境变量是 PersistentConfig 变量。

AUDIO_TTS_SPLIT_ON

  • 类型: str
  • Default: punctuation
  • Description: 设置要使用的 OpenAI 文本转语音的分割点。
  • 持久化:此环境变量是 PersistentConfig 变量。

Azure Text-to-Speech

AUDIO_TTS_AZURE_SPEECH_REGION

  • 类型: str
  • Description: 设置 Azure 文本转语音的区域。
  • 持久化:此环境变量是 PersistentConfig 变量。

AUDIO_TTS_AZURE_SPEECH_OUTPUT_FORMAT

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

OpenAI Text-to-Speech

AUDIO_TTS_OPENAI_API_BASE_URL

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

AUDIO_TTS_OPENAI_API_KEY

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

Image Generation

IMAGE_GENERATION_ENGINE

  • 类型: str
  • 选项
    • openai - 使用 OpenAI DALL-E 进行图像生成。
    • comfyui - 使用 ComfyUI 引擎进行图像生成。
    • automatic1111 - 使用 AUTOMATIC1111 引擎进行图像生成。
    • gemini - 使用 Gemini 进行图像生成。
  • Default: openai
  • Description: 指定用于图像生成的引擎。
  • 持久化:此环境变量是 PersistentConfig 变量。

ENABLE_IMAGE_GENERATION

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

ENABLE_IMAGE_PROMPT_GENERATION

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

IMAGE_PROMPT_GENERATION_PROMPT_TEMPLATE

  • 类型: str
  • 默认值: None
  • Description: 指定用于生成图像提示的模板。
  • 持久化:此环境变量是 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
  • Default: 512x512
  • Description: 设置要生成的默认图像大小。
  • 持久化:此环境变量是 PersistentConfig 变量。

IMAGE_STEPS

  • 类型: int
  • Default: 50
  • Description: 设置图像生成的默认迭代步数。用于 ComfyUI 和 AUTOMATIC1111。
  • 持久化:此环境变量是 PersistentConfig 变量。

IMAGE_GENERATION_MODEL

  • 类型: str
  • Description: 图像生成的默认模型
  • 持久化:此环境变量是 PersistentConfig 变量。

AUTOMATIC1111

AUTOMATIC1111_BASE_URL

  • 类型: str
  • Description: 指定 AUTOMATIC1111 的 Stable Diffusion API 的 URL。
  • 持久化:此环境变量是 PersistentConfig 变量。

AUTOMATIC1111_API_AUTH

  • 类型: str
  • Description: 设置 AUTOMATIC1111 API 的身份验证。
  • 持久化:此环境变量是 PersistentConfig 变量。

AUTOMATIC1111_CFG_SCALE

  • 类型:float
  • Description: 设置 AUTOMATIC1111 推理的缩放比例。
  • 持久化:此环境变量是 PersistentConfig 变量。

AUTOMATIC1111_SAMPLER

  • 类型: str
  • Description: 设置 AUTOMATIC1111 推理的采样器。
  • 持久化:此环境变量是 PersistentConfig 变量。

AUTOMATIC1111_SCHEDULER

  • 类型: str
  • Description: 设置 AUTOMATIC1111 推理的调度器。
  • 持久化:此环境变量是 PersistentConfig 变量。

ComfyUI

COMFYUI_BASE_URL

  • 类型: str
  • Description: 指定 ComfyUI 图像生成 API 的 URL。
  • 持久化:此环境变量是 PersistentConfig 变量。

COMFYUI_API_KEY

  • 类型: str
  • Description: 设置 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"
}
}
}
  • Description: 设置 ComfyUI 工作流。
  • 持久化:此环境变量是 PersistentConfig 变量。

Gemini

GEMINI_API_BASE_URL

  • 类型: str
  • 默认值: None
  • Description: 指定 Gemini API 的 URL。
  • 持久化:此环境变量是 PersistentConfig 变量。

GEMINI_API_KEY

  • 类型: str
  • 默认值: None
  • Description: 设置 Gemini API 密钥。
  • 持久化:此环境变量是 PersistentConfig 变量。

IMAGES_GEMINI_API_BASE_URL

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

IMAGES_GEMINI_API_KEY

  • 类型: str
  • 默认值: None
  • Description: 设置 Gemini 图像生成的 API 密钥。
  • 持久化:此环境变量是 PersistentConfig 变量。

OpenAI DALL-E

IMAGES_OPENAI_API_BASE_URL

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

IMAGES_OPENAI_API_KEY

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

OAuth

信息

您一次只能配置一个 OAUTH 提供商。您不能同时配置两个或更多 OAUTH 提供商。

ENABLE_OAUTH_SIGNUP

  • 类型: bool
  • 默认值: False
  • Description: 启用通过 OAuth 注册时的帐户创建。与 ENABLE_SIGNUP 不同。
  • 持久化:此环境变量是 PersistentConfig 变量。
危险

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

OAUTH_MERGE_ACCOUNTS_BY_EMAIL

  • 类型: bool
  • 默认值: False
  • Description: 如果启用,则根据相同的电子邮件地址合并 OAuth 帐户和现有帐户。这被认为不安全,因为并非所有 OAuth 提供商都会验证电子邮件地址,并可能导致潜在的帐户接管。
  • 持久化:此环境变量是 PersistentConfig 变量。

OAUTH_UPDATE_PICTURE_ON_LOGIN

  • 类型: bool
  • 默认值: False
  • Description: 如果启用,将在登录时使用 OAuth 提供的图片更新本地用户配置文件图片。
  • 持久化:此环境变量是 PersistentConfig 变量。
信息

如果通过将 OAUTH_PICTURE_CLAIM 设置为 ''(空字符串)来禁用 OAuth 图片声明,那么将此变量设置为 true 将不会更新用户配置文件图片。

WEBUI_AUTH_TRUSTED_EMAIL_HEADER

  • 类型: str
  • Description: 定义用于身份验证的受信任请求头。请参阅 SSO 文档

WEBUI_AUTH_TRUSTED_NAME_HEADER

  • 类型: str
  • Description: 定义用于在使用受信任的头进行身份验证时注册用户的用户名的受信任请求头。请参阅 SSO 文档

WEBUI_AUTH_TRUSTED_GROUPS_HEADER

  • 类型: str
  • Description: 定义在使用受信任的头进行身份验证时,包含用户所属组的逗号分隔列表的受信任请求头。请参阅 SSO 文档

Google

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

信息

您还必须设置 OPENID_PROVIDER_URL,否则登出可能无法正常工作。

GOOGLE_CLIENT_ID

  • 类型: str
  • Description: 设置 Google OAuth 的客户端 ID。
  • 持久化:此环境变量是 PersistentConfig 变量。

GOOGLE_CLIENT_SECRET

  • 类型: str
  • Description: 设置 Google OAuth 的客户端密钥。
  • 持久化:此环境变量是 PersistentConfig 变量。

GOOGLE_OAUTH_SCOPE

  • 类型: str
  • Default: openid email profile
  • Description: 设置 Google OAuth 身份验证的范围。
  • 持久化:此环境变量是 PersistentConfig 变量。

GOOGLE_REDIRECT_URI

  • 类型: str
  • Default: <backend>/oauth/google/callback
  • Description: 设置 Google OAuth 的重定向 URI。
  • 持久化:此环境变量是 PersistentConfig 变量。

Microsoft

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

信息

您还必须设置 OPENID_PROVIDER_URL,否则登出可能无法正常工作。

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
  • Default: openid email profile
  • 描述:设置 Microsoft OAuth 身份验证的范围。
  • 持久化:此环境变量是 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

信息

您还必须设置 OPENID_PROVIDER_URL,否则登出可能无法正常工作。

GITHUB_CLIENT_ID

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

GITHUB_CLIENT_SECRET

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

GITHUB_CLIENT_SCOPE

  • 类型: str
  • 默认值:user:email
  • 描述:指定 GitHub OAuth 身份验证的范围。
  • 持久化:此环境变量是 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_PROVIDER_URL,否则对于大多数提供商,注销功能将无法正常工作。即使使用 Microsoft、GitHub 或其他提供商,也必须设置 OPENID_PROVIDER_URL 环境变量。

OPENID_REDIRECT_URI

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

OAUTH_SCOPES

  • 类型: str
  • Default: openid email profile
  • 描述:设置 OIDC 身份验证的范围。openidemail 是必需的。
  • 持久化:此环境变量是 PersistentConfig 变量。

OAUTH_CODE_CHALLENGE_METHOD

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

OAUTH_PROVIDER_NAME

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

OAUTH_USERNAME_CLAIM

  • 类型: str
  • 默认值:name
  • 描述:为 OpenID 设置用户名声明。
  • 持久化:此环境变量是 PersistentConfig 变量。

OAUTH_EMAIL_CLAIM

  • 类型: str
  • 默认值:email
  • 描述:为 OpenID 设置电子邮件声明。
  • 持久化:此环境变量是 PersistentConfig 变量。

OAUTH_PICTURE_CLAIM

  • 类型: str
  • 默认值:picture
  • 描述:为 OpenID 设置图片(头像)声明。
  • 持久化:此环境变量是 PersistentConfig 变量。
信息

如果 OAUTH_PICTURE_CLAIM 设置为空字符串(''),则 OAuth 图片声明将被禁用,并且用户个人资料图片将不会被保存。

OAUTH_GROUP_CLAIM

  • 类型: str
  • 默认值:groups
  • 描述:指定用于 OAuth 身份验证的组声明。
  • 持久化:此环境变量是 PersistentConfig 变量。

ENABLE_OAUTH_ROLE_MANAGEMENT

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

ENABLE_OAUTH_GROUP_MANAGEMENT

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

OAUTH_ROLES_CLAIM

  • 类型: str
  • 默认值:roles
  • 描述:设置在 OIDC 令牌中查找的角色声明。
  • 持久化:此环境变量是 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 身份验证的搜索基项。
  • 持久化:此环境变量是 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 连接的密码套件。
  • 持久化:此环境变量是 PersistentConfig 变量。

ENABLE_LDAP_GROUP_MANAGEMENT

  • 类型: bool
  • 默认值: False
  • 描述:启用组管理功能。
  • 持久化:此环境变量是 PersistentConfig 变量。

ENABLE_LDAP_GROUP_CREATION

  • 类型: bool
  • 默认值: False
  • 描述:如果 LDAP 中的某个组在 Open WebUI 中不存在,它将被自动创建。
  • 持久化:此环境变量是 PersistentConfig 变量。

LDAP_ATTRIBUTE_FOR_GROUPS

  • 类型: str
  • 默认值:memberOf
  • 描述:指定包含用户组会员信息的 LDAP 属性。在 Active Directory 环境中,memberOf 是此目的的标准属性。
  • 持久化:此环境变量是 PersistentConfig 变量。

用户权限

聊天权限

USER_PERMISSIONS_CHAT_CONTROLS

  • 类型: bool
  • 默认值: 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

  • 类型: bool
  • 默认值: True
  • 描述:启用或禁用用户在聊天中使用语音转文本 (Speech-to-Text) 的权限。
  • 持久化:此环境变量是 PersistentConfig 变量。

USER_PERMISSIONS_CHAT_TTS

  • 类型: bool
  • 默认值: True
  • 描述:启用或禁用用户在聊天中使用文本转语音 (Text-to-Speech) 的权限。
  • 持久化:此环境变量是 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_CHAT_SYSTEM_PROMPT

  • 类型: str
  • 默认值: True
  • 描述:允许或禁止用户为其所有聊天设置自定义系统提示。
  • 持久化:此环境变量是 PersistentConfig 变量。

功能权限

USER_PERMISSIONS_FEATURES_DIRECT_TOOL_SERVERS

  • 类型: str
  • 默认值: False
  • 描述:启用或禁用用户访问直接工具服务器的权限。
  • 持久化:此环境变量是 PersistentConfig 变量。
  • 类型: str
  • 默认值: True
  • 描述:启用或禁用用户使用网页搜索功能的权限。
  • 持久化:此环境变量是 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 元数据服务器。
    • 可遵循此 指南 为服务帐号生成文件。

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 服务中运行时是托管标识。

数据库池

DATABASE_URL

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

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

如果您的数据库密码包含特殊字符,请确保它们已正确进行 URL 编码。例如,密码 p@ssword 应编码为 p%40ssword

DATABASE_SCHEMA

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

DATABASE_POOL_SIZE

  • 类型: int
  • 默认值: None
  • 描述:指定数据库池的池化策略和大小。默认情况下,SQLAlchemy 将自动选择适合所选数据库连接的池化策略。值为 0 会禁用池化。大于 0 的值会将池化策略设置为 QueuePool 并相应地设置池大小。

DATABASE_POOL_MAX_OVERFLOW

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

有关此设置的更多信息,请 在此处 查找。

DATABASE_POOL_TIMEOUT

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

有关此设置的更多信息,请 在此处 查找。

DATABASE_POOL_RECYCLE

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

有关此设置的更多信息,请 在此处 查找。

Redis

REDIS_URL

  • 类型: str
  • 示例:redis://:6379/0
  • 使用 TLS 的示例:rediss://:6379/0
  • 描述:指定用于应用程序状态的 Redis 实例的 URL。
信息

当部署 Open WebUI 到具有负载均衡器的多节点/工作节点集群时,必须确保设置了 REDIS_URL 值。否则,应用程序状态将出现会话、持久性和一致性问题,因为工作节点将无法通信。

REDIS_SENTINEL_HOSTS

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

REDIS_SENTINEL_PORT

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

REDIS_KEY_PREFIX

  • 类型: str
  • 默认值:open-webui
  • 描述:自定义用于存储配置值的 Redis 键前缀。这允许多个 Open WebUI 实例共享同一个 Redis 实例而不会发生键冲突。在 Redis 集群模式下运行时,前缀格式为 {prefix}:(例如:{open-webui}:config:*),以便在同一哈希槽内对配置键执行多键操作。

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 中的“主机名”将被解释为 Sentinel 服务名。

WEBSOCKET_SENTINEL_PORT

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

Uvicorn 设置

UVICORN_WORKERS

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

在 Kubernetes 或 Helm charts 等编排环境中部署时,建议将 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)、身份验证凭据或其他参数,以管理如何从不同位置检索包。