diff --git a/docs/features/audio/_category_.json b/docs/features/audio/_category_.json new file mode 100644 index 0000000..9d8d35a --- /dev/null +++ b/docs/features/audio/_category_.json @@ -0,0 +1,7 @@ +{ + "label": "Speech-to-Text & Text-to-Speech", + "position": 500, + "link": { + "type": "generated-index" + } +} diff --git a/docs/tutorials/speech-to-text/_category_.json b/docs/features/audio/speech-to-text/_category_.json similarity index 100% rename from docs/tutorials/speech-to-text/_category_.json rename to docs/features/audio/speech-to-text/_category_.json diff --git a/docs/tutorials/speech-to-text/env-variables.md b/docs/features/audio/speech-to-text/env-variables.md similarity index 100% rename from docs/tutorials/speech-to-text/env-variables.md rename to docs/features/audio/speech-to-text/env-variables.md diff --git a/docs/tutorials/speech-to-text/stt-config.md b/docs/features/audio/speech-to-text/stt-config.md similarity index 100% rename from docs/tutorials/speech-to-text/stt-config.md rename to docs/features/audio/speech-to-text/stt-config.md diff --git a/docs/tutorials/text-to-speech/Kokoro-FastAPI-integration.md b/docs/features/audio/text-to-speech/Kokoro-FastAPI-integration.md similarity index 100% rename from docs/tutorials/text-to-speech/Kokoro-FastAPI-integration.md rename to docs/features/audio/text-to-speech/Kokoro-FastAPI-integration.md diff --git a/docs/tutorials/text-to-speech/_category_.json b/docs/features/audio/text-to-speech/_category_.json similarity index 100% rename from docs/tutorials/text-to-speech/_category_.json rename to docs/features/audio/text-to-speech/_category_.json diff --git a/docs/tutorials/text-to-speech/chatterbox-tts-api-integration.md b/docs/features/audio/text-to-speech/chatterbox-tts-api-integration.md similarity index 100% rename from docs/tutorials/text-to-speech/chatterbox-tts-api-integration.md rename to docs/features/audio/text-to-speech/chatterbox-tts-api-integration.md diff --git a/docs/tutorials/text-to-speech/kokoro-web-integration.md b/docs/features/audio/text-to-speech/kokoro-web-integration.md similarity index 100% rename from docs/tutorials/text-to-speech/kokoro-web-integration.md rename to docs/features/audio/text-to-speech/kokoro-web-integration.md diff --git a/docs/tutorials/text-to-speech/openai-edge-tts-integration.md b/docs/features/audio/text-to-speech/openai-edge-tts-integration.md similarity index 100% rename from docs/tutorials/text-to-speech/openai-edge-tts-integration.md rename to docs/features/audio/text-to-speech/openai-edge-tts-integration.md diff --git a/docs/tutorials/text-to-speech/openedai-speech-integration.md b/docs/features/audio/text-to-speech/openedai-speech-integration.md similarity index 100% rename from docs/tutorials/text-to-speech/openedai-speech-integration.md rename to docs/features/audio/text-to-speech/openedai-speech-integration.md diff --git a/docs/features/channels/index.md b/docs/features/channels/index.md index 3e7878c..a7fb0f2 100644 --- a/docs/features/channels/index.md +++ b/docs/features/channels/index.md @@ -1,5 +1,5 @@ --- -sidebar_position: 7 +sidebar_position: 1000 title: "Channels" --- diff --git a/docs/features/chat-features/index.mdx b/docs/features/chat-features/index.mdx index b557e2b..9350112 100644 --- a/docs/features/chat-features/index.mdx +++ b/docs/features/chat-features/index.mdx @@ -1,5 +1,5 @@ --- -sidebar_position: 1 +sidebar_position: 800 title: "Chat Features" --- diff --git a/docs/features/evaluation/index.mdx b/docs/features/evaluation/index.mdx index 084a7bc..8f1a3e4 100644 --- a/docs/features/evaluation/index.mdx +++ b/docs/features/evaluation/index.mdx @@ -1,5 +1,5 @@ --- -sidebar_position: 6 +sidebar_position: 1100 title: "Evaluation" --- diff --git a/docs/features/image-generation-and-editing/_category_.json b/docs/features/image-generation-and-editing/_category_.json index d7948d4..306aa86 100644 --- a/docs/features/image-generation-and-editing/_category_.json +++ b/docs/features/image-generation-and-editing/_category_.json @@ -1,6 +1,6 @@ { - "label": "Image Generation and Editing", - "position": 5, + "label": "Create & Edit Images", + "position": 400, "link": { "type": "generated-index" } diff --git a/docs/features/interface/_category_.json b/docs/features/interface/_category_.json index de31bcc..5898d63 100644 --- a/docs/features/interface/_category_.json +++ b/docs/features/interface/_category_.json @@ -1,6 +1,6 @@ { "label": "Interface", - "position": 6, + "position": 900, "link": { "type": "generated-index" } diff --git a/docs/features/mcp.mdx b/docs/features/mcp.mdx index 03e6265..9c1ffad 100644 --- a/docs/features/mcp.mdx +++ b/docs/features/mcp.mdx @@ -1,5 +1,6 @@ --- title: Model Context Protocol (MCP) +sidebar_position: 1200 --- Open WebUI natively supports **MCP (Model Context Protocol)** starting in **v0.6.31**. This page shows how to enable it quickly, harden it for production, and troubleshoot common snags. diff --git a/docs/features/pipelines/_category_.json b/docs/features/pipelines/_category_.json index 18c38ce..f05e70e 100644 --- a/docs/features/pipelines/_category_.json +++ b/docs/features/pipelines/_category_.json @@ -1,4 +1,4 @@ { "label": "Pipelines", - "position": 9000 + "position": 999999 } diff --git a/docs/features/plugin/index.mdx b/docs/features/plugin/index.mdx index 1ea9bc6..f8e6dd4 100644 --- a/docs/features/plugin/index.mdx +++ b/docs/features/plugin/index.mdx @@ -1,5 +1,5 @@ --- -sidebar_position: 3 +sidebar_position: 300 title: "Tools & Functions (Plugins)" --- diff --git a/docs/tutorials/tips/special_arguments.mdx b/docs/features/plugin/reserved-args.mdx similarity index 100% rename from docs/tutorials/tips/special_arguments.mdx rename to docs/features/plugin/reserved-args.mdx diff --git a/docs/features/rag/index.md b/docs/features/rag/index.md index 8fb78be..9895c9d 100644 --- a/docs/features/rag/index.md +++ b/docs/features/rag/index.md @@ -1,5 +1,5 @@ --- -sidebar_position: 2 +sidebar_position: 200 title: "Retrieval Augmented Generation (RAG)" --- @@ -7,11 +7,6 @@ title: "Retrieval Augmented Generation (RAG)" If you're using **Ollama**, note that it **defaults to a 2048-token context length**. This severely limits **Retrieval-Augmented Generation (RAG) performance**, especially for web search, because retrieved data may **not be used at all** or only partially processed. -**Why This Is Critical for Web Search:** -Web pages typically contain 4,000-8,000+ tokens even after content extraction, including main content, navigation elements, headers, footers, and metadata. With only 2048 tokens available, you're getting less than half the page content, often missing the most relevant information. Even 4096 tokens is frequently insufficient for comprehensive web content analysis. - -**To Fix This:** Navigate to **Admin Panel > Models > Settings** (of your Ollama model) > **Advanced Parameters** and **increase the context length to 8192+ (or rather, more than 16000) tokens**. This setting specifically applies to Ollama models. For OpenAI and other integrated models, ensure you're using a model with sufficient built-in context length (e.g., GPT-4 Turbo with 128k tokens). - ::: Retrieval Augmented Generation (RAG) is a cutting-edge technology that enhances the conversational capabilities of chatbots by incorporating context from diverse sources. It works by retrieving relevant information from a wide range of sources such as local and remote documents, web content, and even multimedia sources like YouTube videos. The retrieved text is then combined with a predefined RAG template and prefixed to the user's prompt, providing a more informed and contextually relevant response. @@ -26,6 +21,12 @@ You can also load documents into the workspace area with their access by startin ## Web Search for RAG +:::warning +**Context Length Warning for Ollama Users:** Web pages typically contain 4,000-8,000+ tokens even after content extraction, including main content, navigation elements, headers, footers, and metadata. With only 2048 tokens available, you're getting less than half the page content, often missing the most relevant information. Even 4096 tokens is frequently insufficient for comprehensive web content analysis. + +**To Fix This:** Navigate to **Admin Panel > Models > Settings** (of your Ollama model) > **Advanced Parameters** and **increase the context length to 8192+ (or rather, more than 16000) tokens**. This setting specifically applies to Ollama models. For OpenAI and other integrated models, ensure you're using a model with sufficient built-in context length (e.g., GPT-4 Turbo with 128k tokens). +::: + For web content integration, start a query in a chat with `#`, followed by the target URL. Click on the formatted URL in the box that appears above the chat box. Once selected, a document icon appears above `Send a message`, indicating successful retrieval. Open WebUI fetches and parses information from the URL if it can. :::tip diff --git a/docs/features/rbac/index.mdx b/docs/features/rbac/index.mdx index 96cde1c..656d018 100644 --- a/docs/features/rbac/index.mdx +++ b/docs/features/rbac/index.mdx @@ -1,5 +1,5 @@ --- -sidebar_position: 1 +sidebar_position: 100 title: "Role-Based Access Control (RBAC)" --- diff --git a/docs/tutorials/web-search/_category_.json b/docs/features/web-search/_category_.json similarity index 79% rename from docs/tutorials/web-search/_category_.json rename to docs/features/web-search/_category_.json index f95cc6f..aea5c0d 100644 --- a/docs/tutorials/web-search/_category_.json +++ b/docs/features/web-search/_category_.json @@ -1,6 +1,6 @@ { "label": "Web Search", - "position": 6, + "position": 600, "link": { "type": "generated-index" } diff --git a/docs/tutorials/web-search/bing.md b/docs/features/web-search/bing.md similarity index 100% rename from docs/tutorials/web-search/bing.md rename to docs/features/web-search/bing.md diff --git a/docs/tutorials/web-search/brave.md b/docs/features/web-search/brave.md similarity index 100% rename from docs/tutorials/web-search/brave.md rename to docs/features/web-search/brave.md diff --git a/docs/tutorials/web-search/ddgs.mdx b/docs/features/web-search/ddgs.mdx similarity index 100% rename from docs/tutorials/web-search/ddgs.mdx rename to docs/features/web-search/ddgs.mdx diff --git a/docs/tutorials/web-search/exa.md b/docs/features/web-search/exa.md similarity index 100% rename from docs/tutorials/web-search/exa.md rename to docs/features/web-search/exa.md diff --git a/docs/tutorials/web-search/external.md b/docs/features/web-search/external.md similarity index 100% rename from docs/tutorials/web-search/external.md rename to docs/features/web-search/external.md diff --git a/docs/tutorials/web-search/google-pse.md b/docs/features/web-search/google-pse.md similarity index 100% rename from docs/tutorials/web-search/google-pse.md rename to docs/features/web-search/google-pse.md diff --git a/docs/tutorials/web-search/jina.md b/docs/features/web-search/jina.md similarity index 100% rename from docs/tutorials/web-search/jina.md rename to docs/features/web-search/jina.md diff --git a/docs/tutorials/web-search/kagi.md b/docs/features/web-search/kagi.md similarity index 100% rename from docs/tutorials/web-search/kagi.md rename to docs/features/web-search/kagi.md diff --git a/docs/tutorials/web-search/mojeek.md b/docs/features/web-search/mojeek.md similarity index 100% rename from docs/tutorials/web-search/mojeek.md rename to docs/features/web-search/mojeek.md diff --git a/docs/tutorials/web-search/ollama-cloud.mdx b/docs/features/web-search/ollama-cloud.mdx similarity index 100% rename from docs/tutorials/web-search/ollama-cloud.mdx rename to docs/features/web-search/ollama-cloud.mdx diff --git a/docs/tutorials/web-search/perplexity.mdx b/docs/features/web-search/perplexity.mdx similarity index 100% rename from docs/tutorials/web-search/perplexity.mdx rename to docs/features/web-search/perplexity.mdx diff --git a/docs/tutorials/web-search/perplexity_search.mdx b/docs/features/web-search/perplexity_search.mdx similarity index 100% rename from docs/tutorials/web-search/perplexity_search.mdx rename to docs/features/web-search/perplexity_search.mdx diff --git a/docs/tutorials/web-search/searchapi.md b/docs/features/web-search/searchapi.md similarity index 100% rename from docs/tutorials/web-search/searchapi.md rename to docs/features/web-search/searchapi.md diff --git a/docs/tutorials/web-search/searxng.md b/docs/features/web-search/searxng.md similarity index 100% rename from docs/tutorials/web-search/searxng.md rename to docs/features/web-search/searxng.md diff --git a/docs/tutorials/web-search/serpapi.md b/docs/features/web-search/serpapi.md similarity index 100% rename from docs/tutorials/web-search/serpapi.md rename to docs/features/web-search/serpapi.md diff --git a/docs/tutorials/web-search/serper.md b/docs/features/web-search/serper.md similarity index 100% rename from docs/tutorials/web-search/serper.md rename to docs/features/web-search/serper.md diff --git a/docs/tutorials/web-search/serply.md b/docs/features/web-search/serply.md similarity index 100% rename from docs/tutorials/web-search/serply.md rename to docs/features/web-search/serply.md diff --git a/docs/tutorials/web-search/serpstack.md b/docs/features/web-search/serpstack.md similarity index 100% rename from docs/tutorials/web-search/serpstack.md rename to docs/features/web-search/serpstack.md diff --git a/docs/tutorials/web-search/tavily.md b/docs/features/web-search/tavily.md similarity index 100% rename from docs/tutorials/web-search/tavily.md rename to docs/features/web-search/tavily.md diff --git a/docs/tutorials/web-search/yacy.md b/docs/features/web-search/yacy.md similarity index 100% rename from docs/tutorials/web-search/yacy.md rename to docs/features/web-search/yacy.md diff --git a/docs/features/workspace/index.mdx b/docs/features/workspace/index.mdx index f3e9f10..c6ded82 100644 --- a/docs/features/workspace/index.mdx +++ b/docs/features/workspace/index.mdx @@ -1,5 +1,5 @@ --- -sidebar_position: 0 +sidebar_position: 700 title: "Workspace" --- diff --git a/docs/getting-started/env-configuration.mdx b/docs/getting-started/env-configuration.mdx index c9e2e8c..5769164 100644 --- a/docs/getting-started/env-configuration.mdx +++ b/docs/getting-started/env-configuration.mdx @@ -1101,7 +1101,7 @@ If `OFFLINE_MODE` is enabled, this `ENABLE_VERSION_UPDATE_CHECK` flag is always - OAuth authentication providers - Web search and RAG with external APIs -Read more about `offline mode` in the [offline mode guide](/docs/tutorials/offline-mode.md). +Read more about `offline mode` in the [offline mode guide](/tutorials/offline-mode). ::: diff --git a/docs/getting-started/quick-start/tab-docker/DockerCompose.md b/docs/getting-started/quick-start/tab-docker/DockerCompose.md index 466461b..da1dbdc 100644 --- a/docs/getting-started/quick-start/tab-docker/DockerCompose.md +++ b/docs/getting-started/quick-start/tab-docker/DockerCompose.md @@ -2,8 +2,6 @@ Using Docker Compose simplifies the management of multi-container Docker applications. -If you don't have Docker installed, check out our [Docker installation tutorial](docs/tutorials/docker-install.md). - Docker Compose requires an additional package, `docker-compose-v2`. :::warning diff --git a/docs/tutorials/jupyter.md b/docs/tutorials/integrations/jupyter.md similarity index 100% rename from docs/tutorials/jupyter.md rename to docs/tutorials/integrations/jupyter.md diff --git a/docs/tutorials/database.mdx b/docs/tutorials/maintenance/database.mdx similarity index 92% rename from docs/tutorials/database.mdx rename to docs/tutorials/maintenance/database.mdx index c3b0223..68455ae 100644 --- a/docs/tutorials/database.mdx +++ b/docs/tutorials/maintenance/database.mdx @@ -3,6 +3,13 @@ sidebar_position: 310 title: "Exporting and Importing Database" --- +:::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. + +::: + + If you need to migrate your **Open WebUI** data (e.g., chat histories, configurations, etc.) from one server to another or back it up for later use, you can export and import the database. This guide assumes you're running Open WebUI using the internal SQLite database (not PostgreSQL). Follow the steps below to export and import the `webui.db` file, which contains your database. diff --git a/docs/tutorials/s3-storage.md b/docs/tutorials/maintenance/s3-storage.md similarity index 100% rename from docs/tutorials/s3-storage.md rename to docs/tutorials/maintenance/s3-storage.md diff --git a/docs/tutorials/offline-mode.md b/docs/tutorials/offline-mode.mdx similarity index 94% rename from docs/tutorials/offline-mode.md rename to docs/tutorials/offline-mode.mdx index b85e3ee..bf7cfc7 100644 --- a/docs/tutorials/offline-mode.md +++ b/docs/tutorials/offline-mode.mdx @@ -1,8 +1,12 @@ --- -sidebar_position: 24 +sidebar_position: 300 title: "Offline Mode" --- +import { TopBanners } from "@site/src/components/TopBanners"; + + + :::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](../contributing.mdx). @@ -49,7 +53,7 @@ Consider if you need to start the application offline from the beginning of your ### I: Speech-To-Text -The local `whisper` installation does not include the model by default. In this regard, you can follow the [guide](/docs/tutorials/speech-to-text/stt-config.md) only partially if you want to use an external model/provider. To use the local `whisper` application, you must first download the model of your choice (e.g. [Huggingface - Systran](https://huggingface.co/Systran)). +The local `whisper` installation does not include the model by default. In this regard, you can follow the [guide](/features/audio/speech-to-text/stt-config.md) only partially if you want to use an external model/provider. To use the local `whisper` application, you must first download the model of your choice (e.g. [Huggingface - Systran](https://huggingface.co/Systran)). ```python from faster_whisper import WhisperModel @@ -88,14 +92,6 @@ The contents of the download directory must be copied to `/app/backend/data/cach This is the easiest approach to achieving the offline setup with almost all features available in the online version. Apply only the features you want to use for your deployment. -### II: Speech-To-Text - -Follow the [guide](./speech-to-text/stt-config.md). - -### II: Text-To-Speech - -Follow one of the [guides](https://docs.openwebui.com/category/%EF%B8%8F-text-to-speech). - ### II: Embedding Model In your Open WebUI installation, navigate to `Admin Settings` > `Settings` > `Documents` and select the embedding model you would like to use (e.g. [sentence-transformer/all-MiniLM-L6-v2](https://huggingface.co/sentence-transformers/all-MiniLM-L6-v2)). After the selection, click the download button next to it. diff --git a/docs/tutorials/tips/_category_.json b/docs/tutorials/tips/_category_.json index d32870a..9189b71 100644 --- a/docs/tutorials/tips/_category_.json +++ b/docs/tutorials/tips/_category_.json @@ -1,6 +1,6 @@ { "label": "Tips & Tricks", - "position": 900, + "position": 0, "link": { "type": "generated-index" } diff --git a/docs/tutorials/tips/contributing-tutorial.md b/docs/tutorials/tips/contributing-tutorial.md index 537b1ee..2611325 100644 --- a/docs/tutorials/tips/contributing-tutorial.md +++ b/docs/tutorials/tips/contributing-tutorial.md @@ -15,7 +15,7 @@ We appreciate your interest in contributing tutorials to the Open WebUI document ## Contributing Steps -1. **Fork the `openwebui/docs` GitHub Repository** +1. **Fork the `open-webui/docs` GitHub Repository** - Navigate to the [Open WebUI Docs Repository](https://github.com/open-webui/docs) on GitHub. - Click the **Fork** button at the top-right corner to create a copy under your GitHub account. diff --git a/docs/tutorials/tips/improve-performance-local.md b/docs/tutorials/tips/improve-performance-local.md index 6607a5d..4bb8a75 100644 --- a/docs/tutorials/tips/improve-performance-local.md +++ b/docs/tutorials/tips/improve-performance-local.md @@ -11,21 +11,23 @@ This guide explains how to optimize your setup by configuring a dedicated, light --- -> [!TIP] -> ->## Why Does Open-WebUI Feel Slow? -> ->By default, Open-WebUI has several background tasks that can make it feel like magic but can also place a heavy load on local resources: -> ->- **Title Generation** ->- **Tag Generation** ->- **Autocomplete Generation** (this function triggers on every keystroke) ->- **Search Query Generation** -> ->Each of these features makes asynchronous requests to your model. For example, continuous calls from the autocomplete feature can significantly delay responses on devices with limited memory >or processing power, such as a Mac with 32GB of RAM running a 32B quantized model. -> ->Optimizing the task model can help isolate these background tasks from your main chat application, improving overall responsiveness. -> +:::tip + +## Why Does Open-WebUI Feel Slow? + +By default, Open-WebUI has several background tasks that can make it feel like magic but can also place a eavy load on local resources: + +- **Title Generation** +- **Tag Generation** +- **Autocomplete Generation** (this function triggers on every keystroke) +- **Search Query Generation** + +Each of these features makes asynchronous requests to your model. For example, continuous calls from the utocomplete feature can significantly delay responses on devices with limited memory >or processing power, uch as a Mac with 32GB of RAM running a 32B quantized model. + +Optimizing the task model can help isolate these background tasks from your main chat application, improving verall responsiveness. + +::: + --- ## ⚡ How to Optimize Task Model Performance