From 5f653c47e6b490ccaba3463be41c7095447386e0 Mon Sep 17 00:00:00 2001 From: DrMelone <27028174+Classic298@users.noreply.github.com> Date: Sat, 21 Feb 2026 23:20:11 +0100 Subject: [PATCH] 0.8.4 --- .../access-security/analytics/index.mdx | 6 +++ .../access-security/auth/sso/index.mdx | 1 + .../web-search/providers/youcom.md | 54 +++++++++++++++++++ .../quick-start/tab-docker/ManualDocker.md | 2 +- docs/intro.mdx | 6 +-- docs/reference/api-endpoints.md | 2 + docs/reference/env-configuration.mdx | 40 +++++++++++++- docs/troubleshooting/rag.mdx | 27 ++++++++++ docs/tutorials/tips/sqlite-database.md | 2 +- 9 files changed, 134 insertions(+), 6 deletions(-) create mode 100644 docs/features/chat-conversations/web-search/providers/youcom.md diff --git a/docs/features/access-security/analytics/index.mdx b/docs/features/access-security/analytics/index.mdx index fbf87815..c219faa3 100644 --- a/docs/features/access-security/analytics/index.mdx +++ b/docs/features/access-security/analytics/index.mdx @@ -11,6 +11,12 @@ The **Analytics** feature in Open WebUI provides administrators with comprehensi Analytics is only accessible to users with **admin** role. Access it via **Admin Panel > Analytics**. ::: +:::tip Disabling Analytics + +If you don't need the Analytics tab, you can hide it entirely by setting the [`ENABLE_ADMIN_ANALYTICS`](/reference/env-configuration#enable_admin_analytics) environment variable to `False`. This prevents the analytics API router from being mounted and removes the tab from the admin navigation. A restart is required for this change to take effect. + +::: + ## Overview The Analytics dashboard gives you a bird's-eye view of your Open WebUI instance's activity, including: diff --git a/docs/features/access-security/auth/sso/index.mdx b/docs/features/access-security/auth/sso/index.mdx index 6010572c..b067648d 100644 --- a/docs/features/access-security/auth/sso/index.mdx +++ b/docs/features/access-security/auth/sso/index.mdx @@ -204,6 +204,7 @@ You can configure the following environment variables: 1. `OAUTH_GROUP_CLAIM` - The claim in the ID/access token containing the user's group memberships. Defaults to `groups`. Can also be nested, for example `user.memberOf`. Required if `ENABLE_OAUTH_GROUP_MANAGEMENT` is true. 1. `ENABLE_OAUTH_GROUP_CREATION` - If `true` (and `ENABLE_OAUTH_GROUP_MANAGEMENT` is also `true`), Open WebUI will perform **Just-in-Time (JIT) group creation**. This means it will automatically create groups during OAuth login if they are present in the user's OAuth claims but do not yet exist in the system. Defaults to `false`. If `false`, only memberships in *existing* Open WebUI groups will be managed. +1. `OAUTH_GROUP_DEFAULT_SHARE` - Controls the default sharing permission for groups created via JIT group creation. Defaults to `true` (share with anyone). Set to `members` to restrict sharing to group members only, or `false` to disable sharing entirely. Only applies when `ENABLE_OAUTH_GROUP_CREATION` is enabled. :::warning diff --git a/docs/features/chat-conversations/web-search/providers/youcom.md b/docs/features/chat-conversations/web-search/providers/youcom.md new file mode 100644 index 00000000..a48766d7 --- /dev/null +++ b/docs/features/chat-conversations/web-search/providers/youcom.md @@ -0,0 +1,54 @@ +--- +sidebar_position: 22 +title: "You.com" +--- + +:::warning + +This tutorial is a community contribution and is not supported by the Open WebUI team. It serves only as a demonstration on how to customize Open WebUI for your specific use case. Want to contribute? Check out the [contributing tutorial](https://docs.openwebui.com/contributing). + +::: + +:::tip + +For a comprehensive list of all environment variables related to Web Search (including concurrency settings, result counts, and more), please refer to the [Environment Configuration documentation](/reference/env-configuration#web-search). + +::: + +:::tip Troubleshooting + +Having issues with web search? Check out the [Web Search Troubleshooting Guide](/troubleshooting/web-search) for solutions to common problems like proxy configuration, connection timeouts, and empty content. + +::: + +## You.com YDC Index API + +[You.com](https://you.com/) provides the YDC Index API, a web search API that returns structured search results including titles, URLs, descriptions, and snippets. + +### Prerequisites + +- A You.com API key from [You.com API](https://you.com/api) + +### Docker Compose Setup + +Add the following environment variables to your Open WebUI `docker-compose.yaml` file: + +```yaml +services: + open-webui: + environment: + ENABLE_RAG_WEB_SEARCH: True + RAG_WEB_SEARCH_ENGINE: "youcom" + YOUCOM_API_KEY: "YOUR_API_KEY" + RAG_WEB_SEARCH_RESULT_COUNT: 3 + RAG_WEB_SEARCH_CONCURRENT_REQUESTS: 10 +``` + +### Admin Panel Setup + +1. Log in to Open WebUI with an admin account. +2. Navigate to **Admin Panel** → **Settings** → **Web Search**. +3. Enable **Web Search** by toggling it **On**. +4. Select **youcom** from the **Web Search Engine** dropdown. +5. Paste your You.com API key into the **You.com API Key** field. +6. (Optional) Adjust the result count and concurrency settings as needed. diff --git a/docs/getting-started/quick-start/tab-docker/ManualDocker.md b/docs/getting-started/quick-start/tab-docker/ManualDocker.md index 8be21e58..f9654ade 100644 --- a/docs/getting-started/quick-start/tab-docker/ManualDocker.md +++ b/docs/getting-started/quick-start/tab-docker/ManualDocker.md @@ -23,7 +23,7 @@ docker pull ghcr.io/open-webui/open-webui:main-slim You can also pull a specific Open WebUI release version directly by using a versioned image tag. This is recommended for production environments to ensure stable and reproducible deployments. ```bash -docker pull ghcr.io/open-webui/open-webui:v0.8.2 +docker pull ghcr.io/open-webui/open-webui:v0.8.4 ``` ## Step 2: Run the Container diff --git a/docs/intro.mdx b/docs/intro.mdx index fe10d139..2c92bbbf 100644 --- a/docs/intro.mdx +++ b/docs/intro.mdx @@ -96,9 +96,9 @@ ghcr.io/open-webui/open-webui:- Examples (pinned versions for illustration purposes only): ``` -ghcr.io/open-webui/open-webui:v0.8.2 -ghcr.io/open-webui/open-webui:v0.8.2-ollama -ghcr.io/open-webui/open-webui:v0.8.2-cuda +ghcr.io/open-webui/open-webui:v0.8.4 +ghcr.io/open-webui/open-webui:v0.8.4-ollama +ghcr.io/open-webui/open-webui:v0.8.4-cuda ``` ### Using the Dev Branch 🌙 diff --git a/docs/reference/api-endpoints.md b/docs/reference/api-endpoints.md index b6f3ae2a..0b33fd61 100644 --- a/docs/reference/api-endpoints.md +++ b/docs/reference/api-endpoints.md @@ -149,6 +149,8 @@ Internally, the endpoint converts the Anthropic request format to OpenAI Chat Co :::info All models configured in Open WebUI are accessible through this endpoint — including Ollama models, OpenAI models, and any custom function models. The `model` field should use the model ID as it appears in Open WebUI. Filters (inlet/stream) apply to these requests just as they do for the OpenAI-compatible endpoint. + +**Tool Use:** The Anthropic Messages endpoint supports tool use (`tools` and `tool_choice` parameters). Tool calls from the upstream model are translated into Anthropic-format `tool_use` content blocks in both streaming and non-streaming responses. ::: ### 🔧 Filter and Function Behavior with API Requests diff --git a/docs/reference/env-configuration.mdx b/docs/reference/env-configuration.mdx index 37c2ebb5..08f9812d 100644 --- a/docs/reference/env-configuration.mdx +++ b/docs/reference/env-configuration.mdx @@ -12,7 +12,7 @@ As new variables are introduced, this page will be updated to reflect the growin :::info -This page is up-to-date with Open WebUI release version [v0.8.2](https://github.com/open-webui/open-webui/releases/tag/v0.8.2), but is still a work in progress to later include more accurate descriptions, listing out options available for environment variables, defaults, and improving descriptions. +This page is up-to-date with Open WebUI release version [v0.8.4](https://github.com/open-webui/open-webui/releases/tag/v0.8.4), but is still a work in progress to later include more accurate descriptions, listing out options available for environment variables, defaults, and improving descriptions. ::: @@ -270,6 +270,12 @@ is also being used and set to `True`. **Never disable this if OAUTH/SSO is not b - Default: `True` - Description: Enables admin users to directly access the chats of other users. When disabled, admins can no longer accesss user's chats in the admin panel. If you disable this, consider disabling `ENABLE_ADMIN_EXPORT` too, if you are using SQLite, as the exports also contain user chats. +#### `ENABLE_ADMIN_ANALYTICS` + +- Type: `bool` +- Default: `True` +- Description: Controls whether the **Analytics** tab is visible and accessible in the admin panel. When set to `False`, the analytics API router is not mounted and the tab is hidden from the admin navigation. Useful for deployments where analytics data collection or display is not desired. Requires a restart to take effect. + #### `BYPASS_ADMIN_ACCESS_CONTROL` - Type: `bool` @@ -2899,6 +2905,19 @@ If you are embedding externally via API, ensure your rate limits are high enough ::: +#### `RAG_EMBEDDING_CONCURRENT_REQUESTS` + +- Type: `int` +- Default: `0` +- Description: Limits the number of concurrent embedding API requests when async embedding is enabled. Uses an asyncio semaphore to throttle parallel requests. Set to `0` for unlimited concurrency (default behavior), or set to a positive integer to cap simultaneous requests. Useful for respecting rate limits on external embedding APIs or reducing load on local embedding servers. +- Persistence: This environment variable is a `PersistentConfig` variable. + +:::tip + +If you are hitting rate limits from your embedding provider (e.g., 429 errors), set this to a value that keeps you within your API tier's rate limit (e.g., `5` or `10`). This is especially helpful when uploading large documents that generate many embedding batches. + +::: + #### `RAG_EMBEDDING_TIMEOUT` - Type: `int` (seconds) @@ -3365,6 +3384,7 @@ Allow only specific domains: WEB_FETCH_FILTER_LIST="example.com,trusted-site.org - `azure_ai_search` - `yacy` - `yandex` - Uses the [Yandex Search API](https://yandex.cloud/en/docs/search-api/api-ref/WebSearch/search). + - `youcom` - Uses the [You.com](https://you.com/) YDC Index API for web search. - Persistence: This environment variable is a `PersistentConfig` variable. #### `DDGS_BACKEND` @@ -3693,6 +3713,13 @@ If you use `perplexity`, this variable is not relevant to you. ::: +#### `YOUCOM_API_KEY` + +- Type: `str` +- Default: Empty string (' ') +- Description: Sets the API key for [You.com](https://you.com/) YDC Index API web search. Required when `WEB_SEARCH_ENGINE` is set to `youcom`. Obtain an API key from [You.com API](https://you.com/api). +- Persistence: This environment variable is a `PersistentConfig` variable. + ### Web Loader Configuration #### `WEB_LOADER_ENGINE` @@ -4925,6 +4952,17 @@ If `OAUTH_PICTURE_CLAIM` is set to `''` (empty string), then the OAuth picture c - Description: When enabled, groups from OAuth claims that don't exist in Open WebUI will be automatically created. - Persistence: This environment variable is a `PersistentConfig` variable. +#### `OAUTH_GROUP_DEFAULT_SHARE` + +- Type: `str` +- Default: `true` +- Options: + - `true` — Groups created via OAuth will have sharing enabled for anyone. + - `members` — Groups created via OAuth will only allow sharing with group members. + - `false` — Groups created via OAuth will have sharing disabled (no one can share). +- Description: Controls the default sharing permission for groups that are automatically created via OAuth group management. Only applies when `ENABLE_OAUTH_GROUP_CREATION` is enabled. Existing groups are not affected by this setting. +- Persistence: This environment variable is a `PersistentConfig` variable. + #### `OAUTH_BLOCKED_GROUPS` - Type: `str` diff --git a/docs/troubleshooting/rag.mdx b/docs/troubleshooting/rag.mdx index 729ebaa0..61f0abfc 100644 --- a/docs/troubleshooting/rag.mdx +++ b/docs/troubleshooting/rag.mdx @@ -281,6 +281,33 @@ CUDA out of memory. Tried to allocate X MiB. GPU has a total capacity of Y GiB o --- +### 10b. 429 Rate Limit Errors During Embedding + +When using a **remote/external embedding provider** (OpenAI, Azure OpenAI, etc.) with [`ENABLE_ASYNC_EMBEDDING`](/reference/env-configuration#enable_async_embedding) enabled, you may see HTTP 429 "Too Many Requests" errors in the logs during bulk document ingestion: + +``` +Error generating embeddings: 429 Rate limit reached +``` + +**The Problem**: With async embedding enabled, Open WebUI sends embedding requests concurrently. If you're ingesting many documents or large documents at once, this can easily exceed your provider's API rate limits — especially on free-tier or lower-tier plans. + +✅ **Solutions:** + +1. **Limit Concurrent Embedding Requests**: + Set [`RAG_EMBEDDING_CONCURRENT_REQUESTS`](/reference/env-configuration#rag_embedding_concurrent_requests) to cap the number of simultaneous embedding API calls. For example, set it to `5` or `10` depending on your provider's rate limits: + ```yaml + # docker-compose.yaml + environment: + RAG_EMBEDDING_CONCURRENT_REQUESTS: 5 + ``` + Or configure it in the **Admin Panel > Settings > Documents > Concurrent Requests** field. The default of `0` means unlimited concurrency. + +2. **Reduce Batch Size**: + Lower [`RAG_EMBEDDING_BATCH_SIZE`](/reference/env-configuration#rag_embedding_batch_size) to send fewer texts per API call. + +3. **Disable Async Embedding**: + If rate limits remain an issue, set `ENABLE_ASYNC_EMBEDDING` to `False` to process embeddings sequentially (slower but avoids rate limit pressure). + ### 11. PDF OCR Not Extracting Text from Images If PDFs containing images with text are returning empty content: diff --git a/docs/tutorials/tips/sqlite-database.md b/docs/tutorials/tips/sqlite-database.md index 818bd174..2301df60 100644 --- a/docs/tutorials/tips/sqlite-database.md +++ b/docs/tutorials/tips/sqlite-database.md @@ -10,7 +10,7 @@ This tutorial is a community contribution and is not supported by the Open WebUI ::: > [!WARNING] -> This documentation was created/updated based on version 0.8.0 and updated for recent migrations. +> This documentation was created/updated based on version 0.8.4 and updated for recent migrations. ## Open-WebUI Internal SQLite Database