Merge pull request #1034 from Classic298/dev

This commit is contained in:
Classic298
2026-01-26 19:18:16 +01:00
committed by GitHub
3 changed files with 108 additions and 9 deletions

View File

@@ -0,0 +1,43 @@
---
sidebar_position: 14
title: "Yandex"
---
:::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](../../getting-started/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.
:::
## Yandex Search API
Support for Yandex Web Search is integrated via the [Yandex Cloud Search API](https://yandex.cloud/en/docs/search-api/api-ref/WebSearch/search).
### 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: "yandex"
YANDEX_WEB_SEARCH_API_KEY: "YOUR_YANDEX_CLOUD_API_KEY"
# Optional: Override default search URL
# YANDEX_WEB_SEARCH_URL: "https://searchapi.api.cloud.yandex.net/v2/web/search"
# Optional: Custom JSON configuration for Yandex Search API
# YANDEX_WEB_SEARCH_CONFIG: '{"query": {"searchType": "SEARCH_TYPE_RU"}}'
```
### Configuration Options
* **YANDEX_WEB_SEARCH_URL**: The endpoint for the Yandex Search API. Defaults to `https://searchapi.api.cloud.yandex.net/v2/web/search`.
* **YANDEX_WEB_SEARCH_API_KEY**: Your Yandex Cloud API Key.
* **YANDEX_WEB_SEARCH_CONFIG**: An optional JSON string to customize the search request (e.g., setting `searchType`, `region`, or other parameters supported by the Yandex Search API).

View File

@@ -9,19 +9,23 @@ The `Prompts` section of the `Workspace` within Open WebUI enables users to crea
The Prompts interface provides several key features for managing your custom prompts:
* **Create**: Design new prompts with customizable titles, access levels, and content.
* **Create**: Design new prompts with customizable names, tags, access levels, and content.
* **Share**: Share prompts with other users based on configured access permissions.
* **Access Control**: Set visibility and usage permissions for each prompt (refer to [Permissions](/features/rbac/permissions) for more details).
* **Slash Commands**: Quickly access prompts using custom slash commands during chat sessions.
* **Versioning & History**: Track every change with a full version history, allowing you to compare and revert to previous versions.
* **Tags & Filtering**: Organize your prompts using tags and easily filter through your collection in the workspace.
### Creating and Editing Prompts
When creating or editing a prompt, you can configure the following settings:
* **Title**: Give your prompt a descriptive name for easy identification.
* **Name**: Give your prompt a descriptive name for easy identification.
* **Tags**: Categorize your prompts with tags to make them easier to find and filter in your workspace.
* **Access**: Set the access level to control who can view and use the prompt.
* **Command**: Define a slash command that will trigger the prompt (e.g., `/summarize`).
* **Command**: Define a slash command that will trigger the prompt (e.g., `/summarize`). Commands are triggered in the chat by typing `/` followed by the command name.
* **Prompt Content**: Write the actual prompt text that will be sent to the model.
* **Commit Message**: When saving changes, you can provide an optional commit message to describe what was updated in this version.
### Prompt Variables
@@ -58,7 +62,19 @@ By leveraging custom input variables, you can move beyond static text and build
* The `{{USER_LOCATION}}` system variable requires:
* A secure HTTPS connection
* Enabling the feature in `Settings` > `Interface`
* The `{{CLIPBOARD}}` system variable requires clipboard access permission from your device
* The `{{CLIPBOARD}}` system variable requires clipboard access permission from your device.
---
#### Advanced Variable Modifiers
Certain system variables like `{{prompt}}` and `{{MESSAGES}}` support optional modifiers to control their length and which part of the content is included. This is particularly useful for managing context window limits.
* **Start Truncation**: `{{prompt:start:N}}` - Includes only the first **N** characters of the content.
* **End Truncation**: `{{prompt:end:N}}` - Includes only the last **N** characters of the content.
* **Middle Truncation**: `{{prompt:middletruncate:N}}` - Includes a total of **N** characters, taking half from the beginning and half from the end, with `...` in the middle.
These modifiers also work with the `{{MESSAGES}}` variable (e.g., `{{MESSAGES:START:5}}` to include only the first 5 messages).
---
@@ -239,6 +255,26 @@ A flexible template for reviewing various types of content.
Please provide detailed feedback and suggestions for improvement.
```
### Prompt Versioning and History
Open WebUI includes a robust versioning system for prompts, allowing you to track changes over time and revert to previous versions if needed.
#### Version Tracking
Every time you save changes to a prompt's content, name, command, or access control, a new version is automatically created. This ensures that your prompt's evolution is preserved.
#### History Sidebar
When editing an existing prompt, you will see a **History** sidebar (on desktop) that lists all previous versions in reverse chronological order. Each entry shows:
* **Commit Message**: A brief description of the changes (if provided).
* **Author**: The user who made the changes, including their profile picture.
* **Timestamp**: When the change was made.
* **Live Badge**: Indicates which version is currently active in the chat.
#### Managing Versions
* **Previewing**: Click on any version in the history sidebar to preview its content in the main editor.
* **Setting as Production**: To make a previous version the active "Live" version, select it and click **Set as Production**.
* **Deleting Versions**: You can delete individual history entries by clicking the menu icon next to the version. Note that you cannot delete the currently active production version.
* **Copying ID**: Click the prompt ID or a specific version's short ID to copy it to your clipboard for reference.
### Access Control and Permissions
Prompt management is controlled by the following permission settings:
@@ -261,8 +297,6 @@ Prompt management is controlled by the following permission settings:
### Migration Notes
If you have existing prompts created before this update, they will continue to work as before. However, note that:
* All existing variables are now treated as optional by default
* If you want to maintain required behavior for critical fields, edit your prompts to add the `:required` flag to those variables
* This change provides better user experience by allowing flexible usage of prompt templates
* **Prompt History Migration**: Existing prompts created before the versioning update have been automatically migrated to the new system. Their current content has been preserved as the initial "Live" version in their history.
* **ID-based URLs**: The URL structure for editing prompts has changed from using commands to using unique IDs. Existing bookmarks to prompt edit pages may need to be updated.
* **Variable Requirement**: As of the v0.5.0 update, all variables are now treated as optional by default. To maintain required behavior for critical fields, edit your prompts to add the `:required` flag to those variables.

View File

@@ -3285,6 +3285,7 @@ Allow only specific domains: WEB_FETCH_FILTER_LIST="example.com,trusted-site.org
- `ollama_cloud` - Uses the [Ollama Cloud](https://ollama.com/blog/web-search) search engine.
- `azure_ai_search`
- `yacy`
- `yandex` - Uses the [Yandex Search API](https://yandex.cloud/en/docs/search-api/api-ref/WebSearch/search).
- Persistence: This environment variable is a `PersistentConfig` variable.
#### `DDGS_BACKEND`
@@ -3549,6 +3550,27 @@ Brave's free tier enforces a rate limit of 1 request per second. Open WebUI auto
- Description: Sets the API key for authenticating with the external web loader service.
- Persistence: This environment variable is a `PersistentConfig` variable.
#### `YANDEX_WEB_SEARCH_URL`
- Type: `str`
- Default: `https://searchapi.api.cloud.yandex.net/v2/web/search`
- Description: Specifies the URL of the Yandex Web Search service API endpoint.
- Persistence: This environment variable is a `PersistentConfig` variable.
#### `YANDEX_WEB_SEARCH_API_KEY`
- Type: `str`
- Default: Empty string (' ')
- Description: Sets the API key for authenticating with the Yandex Web Search service.
- Persistence: This environment variable is a `PersistentConfig` variable.
#### `YANDEX_WEB_SEARCH_CONFIG`
- Type: `str`
- Default: Empty string (' ')
- Description: Optional JSON configuration string for Yandex Web Search. Can be used to set parameters like `searchType` or `region` as per the Yandex API documentation.
- Persistence: This environment variable is a `PersistentConfig` variable.
#### `PERPLEXITY_API_KEY`
- Type: `str`