# embeddings_queue

created_at: 2024-12-28 04:06:21
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 954cca0b-a5b4-45f9-8c07-cec2ac2a0162
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "079c8e0b-ac11-4fea-9a51-c24e0b4b8915", "hash": "c790d68c79ccf875fbc5bfb2ce7506ff85315e8f508320d65cf16296f6565289", "name": "env-configuration.md", "source": "env-configuration.md", "start_index": 0, "chroma:document": "#### `CHROMA_TENANT`\n\n- Type: `str`\n- Default: `default_tenant`\n- Description: Sets the tenant for ChromaDB to use for RAG embeddings.\n\n#### `CHROMA_DATABASE`\n\n- Type: `str`\n- Default: `default_database`\n- Description: Sets the database in the ChromaDB tenant to use for RAG embeddings.\n\n#### `CHROMA_HTTP_HOST`\n\n- Type: `str`\n- Description: Specifies the hostname of a remote ChromaDB Server. Uses a local ChromaDB instance if not set.\n\n#### `CHROMA_HTTP_PORT`\n\n- Type: `int`\n- Default: `8000`\n- Description: Specifies the port of a remote ChromaDB Server.\n\n#### `CHROMA_HTTP_HEADERS`\n\n- Type: `str`\n- Description: Comma-separated list of HTTP headers to include with every ChromaDB request.\n- Example: `Authorization=Bearer heuhagfuahefj,User-Agent=OpenWebUI`.\n\n#### `CHROMA_HTTP_SSL`\n\n- Type: `bool`\n- Default: `False`\n- Description: Controls whether or not SSL is used for ChromaDB Server connections.\n\n#### `CHROMA_CLIENT_AUTH_PROVIDER`"}


created_at: 2024-12-28 04:06:21
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 86387dbd-c70e-406c-b85d-55f14b98092d
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "079c8e0b-ac11-4fea-9a51-c24e0b4b8915", "hash": "c790d68c79ccf875fbc5bfb2ce7506ff85315e8f508320d65cf16296f6565289", "name": "env-configuration.md", "source": "env-configuration.md", "start_index": 0, "chroma:document": "#### `CHROMA_CLIENT_AUTH_PROVIDER`\n\n- Type: `str`\n- Description: Specifies auth provider for remote ChromaDB Server.\n- Example: `chromadb.auth.basic_authn.BasicAuthClientProvider`\n\n#### `CHROMA_CLIENT_AUTH_CREDENTIALS`\n\n- Type: `str`\n- Description: Specifies auth credentials for remote ChromaDB Server.\n- Example: `username:password`\n\n#### `MILVUS_URI`\n\n- Type: `str`\n- Default: `${DATA_DIR}/vector_db/milvus.db`\n- Description: Specifies the URI for connecting to the Milvus vector database. This can point to a local or remote Milvus server based on the deployment configuration.\n\n#### `RAG_TOP_K`\n\n- Type: `int`\n- Default: `5`\n- Description: Sets the default number of results to consider when using RAG.\n\n#### `RAG_RELEVANCE_THRESHOLD`\n\n- Type: `float`\n- Default: `0.0`\n- Description: Sets the relevance threshold to consider for documents when used with reranking.\n\n#### `ENABLE_RAG_HYBRID_SEARCH`"}


created_at: 2024-12-28 04:06:21
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: d8530c1c-0023-43e3-b2d8-b9bd4e849c40
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "079c8e0b-ac11-4fea-9a51-c24e0b4b8915", "hash": "c790d68c79ccf875fbc5bfb2ce7506ff85315e8f508320d65cf16296f6565289", "name": "env-configuration.md", "source": "env-configuration.md", "start_index": 0, "chroma:document": "#### `ENABLE_RAG_HYBRID_SEARCH`\n\n- Type: `bool`\n- Default: `False`\n- Description: Enables the use of ensemble search with `BM25` + `ChromaDB`, with reranking using\n`sentence_transformers` models.\n\n#### `ENABLE_RAG_WEB_LOADER_SSL_VERIFICATION`\n\n- Type: `bool`\n- Default: `True`\n- Description: Enables TLS certification verification when browsing web pages for RAG.\n\n#### `RAG_EMBEDDING_ENGINE`\n\n- Type: `str` (enum: `ollama`, `openai`)\n- Options:\n  - Leave empty for `Default (SentenceTransformers)` - Uses SentenceTransformers for embeddings.\n  - `ollama` - Uses the Ollama API for embeddings.\n  - `openai` - Uses the OpenAI API for embeddings.\n- Description: Selects an embedding engine to use for RAG.\n\n#### `PDF_EXTRACT_IMAGES`\n\n- Type: `bool`\n- Default: `False`\n- Description: Extracts images from PDFs using OCR when loading documents.\n\n#### `RAG_EMBEDDING_MODEL`"}


created_at: 2024-12-28 04:06:21
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 7d43a4c1-6e2c-440c-bfc5-0c92f5e020a2
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "079c8e0b-ac11-4fea-9a51-c24e0b4b8915", "hash": "c790d68c79ccf875fbc5bfb2ce7506ff85315e8f508320d65cf16296f6565289", "name": "env-configuration.md", "source": "env-configuration.md", "start_index": 0, "chroma:document": "#### `RAG_EMBEDDING_MODEL`\n\n- Type: `str`\n- Default: `sentence-transformers/all-MiniLM-L6-v2`\n- Description: Sets a model for embeddings. Locally, a Sentence-Transformer model is used.\n\n#### `RAG_EMBEDDING_MODEL_AUTO_UPDATE`\n\n- Type: `bool`\n- Default: `False`\n- Description: Toggles automatic update of the Sentence-Transformer model.\n\n#### `RAG_EMBEDDING_MODEL_TRUST_REMOTE_CODE`\n\n- Type: `bool`\n- Default: `False`\n- Description: Determines whether or not to allow custom models defined on the Hub in their own modeling files.\n\n#### `RAG_TEMPLATE`\n\n- Type: `str`\n- Default:\n\n```\nYou are given a user query, some textual context and rules, all inside xml tags. You have to answer the query based on the context while respecting the rules.\n\n<context>\n[context]\n</context>"}


created_at: 2024-12-28 04:06:21
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 5992ea04-48f3-495c-a855-d5bcc5c2be85
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "079c8e0b-ac11-4fea-9a51-c24e0b4b8915", "hash": "c790d68c79ccf875fbc5bfb2ce7506ff85315e8f508320d65cf16296f6565289", "name": "env-configuration.md", "source": "env-configuration.md", "start_index": 0, "chroma:document": "<context>\n[context]\n</context>\n\n<rules>\n- If you don't know, just say so.\n- If you are not sure, ask for clarification.\n- Answer in the same language as the user query.\n- If the context appears unreadable or of poor quality, tell the user then answer as best as you can.\n- If the answer is not in the context but you think you know the answer, explain that to the user then answer with your own knowledge.\n- Answer directly and without using xml tags.\n</rules>\n\n<user_query>\n[query]\n</user_query>\n```\n\n- Description: Template to use when injecting RAG documents into chat completion\n\n#### `RAG_RERANKING_MODEL`\n\n- Type: `str`\n- Description: Sets a model for reranking results. Locally, a Sentence-Transformer model is used.\n\n#### `RAG_RERANKING_MODEL_AUTO_UPDATE`\n\n- Type: `bool`\n- Default: `False`\n- Description: Toggles automatic update of the reranking model.\n\n#### `RAG_RERANKING_MODEL_TRUST_REMOTE_CODE`"}


created_at: 2024-12-28 04:06:21
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 1b376e50-b75a-4f7d-a946-a19e92d72ee0
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "079c8e0b-ac11-4fea-9a51-c24e0b4b8915", "hash": "c790d68c79ccf875fbc5bfb2ce7506ff85315e8f508320d65cf16296f6565289", "name": "env-configuration.md", "source": "env-configuration.md", "start_index": 0, "chroma:document": "#### `RAG_RERANKING_MODEL_TRUST_REMOTE_CODE`\n\n- Type: `bool`\n- Default: `False`\n- Description: Determines whether or not to allow custom models defined on the Hub in their own\nmodeling files for reranking.\n\n#### `RAG_OPENAI_API_BASE_URL`\n\n- Type: `str`\n- Default: `${OPENAI_API_BASE_URL}`\n- Description: Sets the OpenAI base API URL to use for RAG embeddings.\n\n#### `RAG_OPENAI_API_KEY`\n\n- Type: `str`\n- Default: `${OPENAI_API_KEY}`\n- Description: Sets the OpenAI API key to use for RAG embeddings.\n\n#### `RAG_EMBEDDING_OPENAI_BATCH_SIZE`\n\n- Type: `int`\n- Default: `1`\n- Description: Sets the batch size for OpenAI embeddings.\n\n#### `ENABLE_RAG_LOCAL_WEB_FETCH`\n\n- Type: `bool`\n- Default: `False`\n- Description: Enables local web fetching for RAG. Enabling this allows Server Side Request\nForgery attacks against local network resources.\n\n#### `YOUTUBE_LOADER_LANGUAGE`\n\n- Type: `str`\n- Default: `en`\n- Description: Sets the language to use for YouTube video loading.\n\n#### `CHUNK_SIZE`"}


created_at: 2024-12-28 04:06:21
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 9f4bd85f-2b2f-463a-b266-70cc0e158164
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "079c8e0b-ac11-4fea-9a51-c24e0b4b8915", "hash": "c790d68c79ccf875fbc5bfb2ce7506ff85315e8f508320d65cf16296f6565289", "name": "env-configuration.md", "source": "env-configuration.md", "start_index": 0, "chroma:document": "#### `CHUNK_SIZE`\n\n- Type: `int`\n- Default: `1500`\n- Description: Sets the document chunk size for embeddings.\n\n#### `CHUNK_OVERLAP`\n\n- Type: `int`\n- Default: `100`\n- Description: Specifies how much overlap there should be between chunks.\n\n#### `CONTENT_EXTRACTION_ENGINE`\n\n- Type: `str` (`tika`)\n- Options:\n  - Leave empty to use default\n  - `tika` - Use a local Apache Tika server\n- Description: Sets the content extraction engine to use for document ingestion.\n\n#### `TIKA_SERVER_URL`\n\n- Type: `str`\n- Default: `http://localhost:9998`\n- Description: Sets the URL for the Apache Tika server.\n\n#### `RAG_FILE_MAX_COUNT`\n\n- Type: `int`\n- Default: `10`\n- Description: Sets the maximum number of files that can be uploaded at once for document ingestion.\n\n#### `RAG_FILE_MAX_SIZE`\n\n- Type: `int`\n- Default: `100` (100MB)\n- Description: Sets the maximum size of a file that can be uploaded for document ingestion.\n\n### Web Search\n\n#### `ENABLE_RAG_WEB_SEARCH`"}


created_at: 2024-12-28 04:06:21
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 08ea2234-2b19-4f8c-b622-a57f679ca67a
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "079c8e0b-ac11-4fea-9a51-c24e0b4b8915", "hash": "c790d68c79ccf875fbc5bfb2ce7506ff85315e8f508320d65cf16296f6565289", "name": "env-configuration.md", "source": "env-configuration.md", "start_index": 0, "chroma:document": "### Web Search\n\n#### `ENABLE_RAG_WEB_SEARCH`\n\n- Type: `bool`\n- Default: `False`\n- Description: Enable web search toggle\n\n#### `ENABLE_SEARCH_QUERY`\n\n- Type: `bool`\n- Default: `False`\n- Description: Enables the generation of search queries from prompts\n\n#### `RAG_WEB_SEARCH_ENGINE`"}


created_at: 2024-12-28 04:06:21
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 6ab762e5-5f79-4d14-890d-478727dd8d2a
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "079c8e0b-ac11-4fea-9a51-c24e0b4b8915", "hash": "c790d68c79ccf875fbc5bfb2ce7506ff85315e8f508320d65cf16296f6565289", "name": "env-configuration.md", "source": "env-configuration.md", "start_index": 0, "chroma:document": "- Type: `str` (enum: `searxng`, `google_pse`, `brave`, `serpstack`, `serper`, `serply`, `searchapi`, `duckduckgo`, `tavily`, `jina`)\n- Options:\n  - `searxng` - Uses the [SearXNG](https://github.com/searxng/searxng) search engine.\n  - `google_pse` - Uses the [Google Programmable Search Engine](https://programmablesearchengine.google.com/about/).\n  - `brave` - Uses the [Brave search engine](https://brave.com/search/api/).\n  - `serpstack` - Uses the [Serpstack search engine](https://serpstack.com/).\n  - `serper` - Uses the [Serper search engine](https://serper.dev/).\n  - `serply` - Uses the [Serply search engine](https://serply.io/).\n  - `searchapi` - Uses the [SearchAPI search engine](https://www.searchapi.io/).\n  - `duckduckgo` - Uses the [DuckDuckGo search engine](https://duckduckgo.com/).\n  - `tavily` - Uses the [Tavily search engine](https://tavily.com/).\n  - `jina` - Uses the [Jina search engine](https://jina.ai/).\n- Description: Select engine for performing searches"}


created_at: 2024-12-28 04:06:21
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: b9991b0b-ef38-4974-b21b-f08c3df452ce
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "079c8e0b-ac11-4fea-9a51-c24e0b4b8915", "hash": "c790d68c79ccf875fbc5bfb2ce7506ff85315e8f508320d65cf16296f6565289", "name": "env-configuration.md", "source": "env-configuration.md", "start_index": 0, "chroma:document": "#### `SEARXNG_QUERY_URL`\n\n- Type: `str`\n- Description: The [SearXNG search API](https://docs.searxng.org/dev/search_api.html) URL supporting JSON output. `<query>` is replaced with\nthe search query. Example: `http://searxng.local/search?q=<query>`\n\n#### `GOOGLE_PSE_API_KEY`\n\n- Type: `str`\n- Description: The API key for the Google Programmable Search Engine (PSE) service.\n\n#### `GOOGLE_PSE_ENGINE_ID`\n\n- Type: `str`\n- Description: The engine ID for the Google Programmable Search Engine (PSE) service.\n\n#### `BRAVE_SEARCH_API_KEY`\n\n- Type: `str`\n- Description: The API key for the Brave Search API.\n\n#### `SERPSTACK_API_KEY`\n\n- Type: `str`\n- Description: The API key for Serpstack search API.\n\n#### `SERPSTACK_HTTPS`\n\n- Type: `bool`\n- Default: `True`\n- Description: Configures the use of HTTPS for Serpstack requests. Free tier requests are restricted to HTTP only.\n\n#### `SERPER_API_KEY`\n\n- Type: `str`\n- Description: The API key for the Serper search API.\n\n#### `SERPLY_API_KEY`"}


created_at: 2024-12-28 04:06:21
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 7a209cbb-5d73-4c47-a30d-91ca35edd2cb
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "079c8e0b-ac11-4fea-9a51-c24e0b4b8915", "hash": "c790d68c79ccf875fbc5bfb2ce7506ff85315e8f508320d65cf16296f6565289", "name": "env-configuration.md", "source": "env-configuration.md", "start_index": 0, "chroma:document": "- Type: `str`\n- Description: The API key for the Serper search API.\n\n#### `SERPLY_API_KEY`\n\n- Type: `str`\n- Description: The API key for the Serply search API.\n\n#### `TAVILY_API_KEY`\n\n- Type: `str`\n- Description: The API key for the Tavily search API.\n\n#### `RAG_WEB_SEARCH_RESULT_COUNT`\n\n- Type: `int`\n- Default: `3`\n- Description: Maximum number of search results to crawl.\n\n#### `RAG_WEB_SEARCH_CONCURRENT_REQUESTS`\n\n- Type: `int`\n- Default: `10`\n- Description: Number of concurrent requests to crawl web pages returned from search results.\n\n#### `SEARCHAPI_API_KEY`\n\n- Type: `str`\n- Description: Sets the SearchAPI API key.\n\n#### `SEARCHAPI_ENGINE`\n\n- Type: `str`\n- Description: Sets the SearchAPI engine.\n\n### Speech to Text\n\n#### `AUDIO_STT_ENGINE`\n\n- Type: `str` (enum: `openai`)\n- Options:\n  - Leave empty to use local Whisper engine for Speech-to-Text.\n  - `openai` - Uses OpenAI engine for Speech-to-Text.\n- Description: Specifies the Speech-to-Text engine to use."}


created_at: 2024-12-28 04:06:21
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 143d6189-412e-426a-8ada-1b2dfc7cd1b0
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "079c8e0b-ac11-4fea-9a51-c24e0b4b8915", "hash": "c790d68c79ccf875fbc5bfb2ce7506ff85315e8f508320d65cf16296f6565289", "name": "env-configuration.md", "source": "env-configuration.md", "start_index": 0, "chroma:document": "#### `AUDIO_STT_OPENAI_API_BASE_URL`\n\n- Type: `str`\n- Default: `${OPENAI_API_BASE_URL}`\n- Description: Sets the OpenAI-compatible base URL to use for Speech-to-Text.\n\n#### `AUDIO_STT_OPENAI_API_KEY`\n\n- Type: `str`\n- Default: `${OPENAI_API_KEY}`\n- Description: Sets the OpenAI API key to use for Speech-to-Text.\n\n#### `AUDIO_STT_MODEL`\n\n- Type: `str`\n- Default: `whisper-1`\n- Description: Specifies the Speech-to-Text model to use for OpenAI-compatible endpoints.\n\n#### `WHISPER_MODEL`\n\n- Type: `str`\n- Default: `base`\n- Description: Sets the Whisper model to use for Speech-to-Text. The backend used is faster_whisper with quantization to `int8`.\n\n#### `WHISPER_MODEL_DIR`\n\n- Type: `str`\n- Default: `${DATA_DIR}/cache/whisper/models`\n- Description: Specifies the directory to store Whisper model files.\n\n#### `WHISPER_MODEL_AUTO_UPDATE`\n\n- Type: `bool`\n- Default: `False`\n- Description: Toggles automatic update of the Whisper model.\n\n### Text to Speech\n\n#### `AUDIO_TTS_ENGINE`"}


created_at: 2024-12-28 04:06:21
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 6e8f1e58-96b6-423c-a772-d7bb2f3464d0
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "079c8e0b-ac11-4fea-9a51-c24e0b4b8915", "hash": "c790d68c79ccf875fbc5bfb2ce7506ff85315e8f508320d65cf16296f6565289", "name": "env-configuration.md", "source": "env-configuration.md", "start_index": 0, "chroma:document": "### Text to Speech\n\n#### `AUDIO_TTS_ENGINE`\n\n- Type: `str` (enum: `elevenlabs`, `openai`)\n- Options:\n  - Leave empty to use built-in WebAPI engine for Text-to-Speech.\n  - `elevenlabs` - Uses ElevenLabs engine for Text-to-Speech\n  - `openai` - Uses OpenAI engine for Text-to-Speech.\n- Description: Specifies the Text-to-Speech engine to use.\n\n#### `AUDIO_TTS_API_KEY`\n\n- Type: `str`\n- Description: Sets the API key for Text-to-Speech.\n\n#### `AUDIO_TTS_OPENAI_API_BASE_URL`\n\n- Type: `str`\n- Default: `${OPENAI_API_BASE_URL}`\n- Description: Sets the OpenAI-compatible base URL to use for text-to-speech.\n\n#### `AUDIO_TTS_OPENAI_API_KEY`\n\n- Type: `str`\n- Default: `${OPENAI_API_KEY}`\n- Description: Sets the API key to use for text-to-speech.\n\n#### `AUDIO_TTS_MODEL`\n\n- Type: `str`\n- Default: `tts-1`\n- Description: Specifies the OpenAI text-to-speech model to use.\n\n#### `AUDIO_TTS_VOICE`\n\n- Type: `str`\n- Default: `alloy`\n- Description: Sets the OpenAI text-to-speech voice to use."}


created_at: 2024-12-28 04:06:21
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: a23ae101-629b-487a-b27e-55eed61350cb
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "079c8e0b-ac11-4fea-9a51-c24e0b4b8915", "hash": "c790d68c79ccf875fbc5bfb2ce7506ff85315e8f508320d65cf16296f6565289", "name": "env-configuration.md", "source": "env-configuration.md", "start_index": 0, "chroma:document": "- Type: `str`\n- Default: `alloy`\n- Description: Sets the OpenAI text-to-speech voice to use.\n\n#### `AUDIO_TTS_SPLIT_ON`\n\n- Type: `str`\n- Default: `punctuation`\n- Description: Sets the OpenAI text-to-speech split on to use.\n\n### Image Generation\n\n#### `ENABLE_IMAGE_GENERATION`\n\n- Type: `bool`\n- Default: `False`\n- Description: Enables or disables image generation features.\n\n#### `IMAGE_GENERATION_ENGINE`\n\n- Type: `str` (enum: `openai`, `comfyui`, `automatic1111`)\n- Options:\n  - `openai` - Uses OpenAI DALL-E for image generation.\n  - `comfyui` - Uses ComfyUI engine for image generation.\n  - `automatic1111` - Uses Automatic1111 engine for image generation (default).\n- Default: `automatic1111`\n- Description: Specifies the engine to use for image generation.\n\n#### `AUTOMATIC1111_BASE_URL`\n\n- Type: `str`\n- Description: Specifies the URL to Automatic1111's Stable Diffusion API.\n\n#### `AUTOMATIC1111_API_AUTH`\n\n- Type: `str`\n- Description: Sets the Automatic1111 API authentication."}


created_at: 2024-12-28 04:06:21
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: d0bbf4ac-2f7e-4a19-b887-b2654186c719
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "079c8e0b-ac11-4fea-9a51-c24e0b4b8915", "hash": "c790d68c79ccf875fbc5bfb2ce7506ff85315e8f508320d65cf16296f6565289", "name": "env-configuration.md", "source": "env-configuration.md", "start_index": 0, "chroma:document": "- Type: `str`\n- Description: Sets the Automatic1111 API authentication.\n\n#### `COMFYUI_BASE_URL`\n\n- Type: `str`\n- Description: Specifies the URL to the ComfyUI image generation API.\n\n#### `COMFYUI_WORKFLOW`\n\n- Type: `str`\n- Description: Sets the ComfyUI workflow.\n\n#### `IMAGES_OPENAI_API_BASE_URL`\n\n- Type: `str`\n- Default: `${OPENAI_API_BASE_URL}`\n- Description: Sets the OpenAI-compatible base URL to use for DALL-E image generation.\n\n#### `IMAGES_OPENAI_API_KEY`\n\n- Type: `str`\n- Default: `${OPENAI_API_KEY}`\n- Description: Sets the API key to use for DALL-E image generation.\n\n#### `IMAGE_GENERATION_MODEL`\n\n- Type: `str`\n- Description: Default model to use for image generation\n\n#### `IMAGE_SIZE`\n\n- Type: `str`\n- Default: `512x512`\n- Description: Sets the default image size to generate.\n\n#### `IMAGE_STEPS`\n\n- Type: `int`\n- Default: `50`\n- Description: Sets the default iteration steps for image generation. Used for ComfyUI and AUTOMATIC1111.\n\n### OAuth\n\n#### `ENABLE_OAUTH_SIGNUP`"}


created_at: 2024-12-28 04:06:21
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 0a6ef2bd-127d-497e-96a7-1a21cdfc7946
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "079c8e0b-ac11-4fea-9a51-c24e0b4b8915", "hash": "c790d68c79ccf875fbc5bfb2ce7506ff85315e8f508320d65cf16296f6565289", "name": "env-configuration.md", "source": "env-configuration.md", "start_index": 0, "chroma:document": "### OAuth\n\n#### `ENABLE_OAUTH_SIGNUP`\n\n- Type: `bool`\n- Default: `False`\n- Description: Enables user account creation via OAuth.\n\n#### `OAUTH_MERGE_ACCOUNTS_BY_EMAIL`\n\n- Type: `bool`\n- Default: `False`\n- Description: If enabled, merges OAuth accounts with existing accounts using the same email\naddress. This is considered unsafe as providers may not verify email addresses and can lead to\naccount takeovers.\n\n#### `OAUTH_USERNAME_CLAIM`\n\n- Type: `str`\n- Default: `name`\n- Description: Set username claim for OpenID.\n\n#### `OAUTH_EMAIL_CLAIM`\n\n- Type: `str`\n- Default: `email`\n- Description: Set email claim for OpenID.\n\n#### `OAUTH_PICTURE_CLAIM`\n\n- Type: `str`\n- Default: `picture`\n- Description: Set picture (avatar) claim for OpenID.\n\n#### `OAUTH_CLIENT_ID`\n\n- Type: `str`\n- Description: Sets the client ID for OIDC\n\n#### `OAUTH_CLIENT_SECRET`\n\n- Type: `str`\n- Description: Sets the client secret for OIDC\n\n#### `OAUTH_SCOPES`"}


created_at: 2024-12-28 04:06:21
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 1bd0033e-37b5-4d3b-98df-883e79ae4910
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "079c8e0b-ac11-4fea-9a51-c24e0b4b8915", "hash": "c790d68c79ccf875fbc5bfb2ce7506ff85315e8f508320d65cf16296f6565289", "name": "env-configuration.md", "source": "env-configuration.md", "start_index": 0, "chroma:document": "- Type: `str`\n- Description: Sets the client secret for OIDC\n\n#### `OAUTH_SCOPES`\n\n- Type: `str`\n- Default: `openid email profile`\n- Description: Sets the scope for OIDC authentication. `openid` and `email` are required.\n\n#### `OAUTH_PROVIDER_NAME`\n\n- Type: `str`\n- Default: `SSO`\n- Description: Sets the name for the OIDC provider.\n\n#### `ENABLE_OAUTH_ROLE_MANAGEMENT`\n\n- Type: `bool`\n- Default: `False`\n- Description: Enables role management to oauth delegation.\n\n#### `OAUTH_ROLES_CLAIM`\n\n- Type: `str`\n- Default: `roles`\n- Description: Sets the roles claim to look for in the OIDC token.\n\n#### `OAUTH_ALLOWED_ROLES`\n\n- Type: `str`\n- Default: `user,admin`\n- Description: Sets the roles that are allowed access to the platform.\n\n#### `OAUTH_ADMIN_ROLES`\n\n- Type: `str`\n- Default: `admin`\n- Description: Sets the roles that are considered administrators.\n\n#### `GOOGLE_CLIENT_ID`\n\n- Type: `str`\n- Description: Sets the client ID for Google OAuth\n\n#### `GOOGLE_CLIENT_SECRET`"}


created_at: 2024-12-28 04:06:21
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 3d726f4b-d055-486e-b3c5-eb6ae7f9ca99
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "079c8e0b-ac11-4fea-9a51-c24e0b4b8915", "hash": "c790d68c79ccf875fbc5bfb2ce7506ff85315e8f508320d65cf16296f6565289", "name": "env-configuration.md", "source": "env-configuration.md", "start_index": 0, "chroma:document": "- Type: `str`\n- Description: Sets the client ID for Google OAuth\n\n#### `GOOGLE_CLIENT_SECRET`\n\n- Type: `str`\n- Description: Sets the client secret for Google OAuth\n\n#### `GOOGLE_OAUTH_SCOPE`\n\n- Type: `str`\n- Default: `openid email profile`\n- Description: Sets the scope for Google OAuth authentication.\n\n#### `GOOGLE_REDIRECT_URI`\n\n- Type: `str`\n- Description: Sets the redirect URI for Google OAuth\n\n#### `MICROSOFT_CLIENT_ID`\n\n- Type: `str`\n- Description: Sets the client ID for Microsoft OAuth\n\n#### `MICROSOFT_CLIENT_SECRET`\n\n- Type: `str`\n- Description: Sets the client secret for Microsoft OAuth\n\n#### `MICROSOFT_CLIENT_TENANT_ID`\n\n- Type: `str`\n- Description: Sets the tenant ID for Microsoft OAuth\n\n#### `MICROSOFT_OAUTH_SCOPE`\n\n- Type: `str`\n- Default: `openid email profile`\n- Description: Sets the scope for Microsoft OAuth authentication.\n\n#### `MICROSOFT_REDIRECT_URI`\n\n- Type: `str`\n- Description: Sets the redirect URI for Microsoft OAuth\n\n#### `OPENID_PROVIDER_URL`"}


created_at: 2024-12-28 04:06:21
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 1be3d03e-621a-4c40-8d68-a49bef4d0b7d
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "079c8e0b-ac11-4fea-9a51-c24e0b4b8915", "hash": "c790d68c79ccf875fbc5bfb2ce7506ff85315e8f508320d65cf16296f6565289", "name": "env-configuration.md", "source": "env-configuration.md", "start_index": 0, "chroma:document": "- Type: `str`\n- Description: Sets the redirect URI for Microsoft OAuth\n\n#### `OPENID_PROVIDER_URL`\n\n- Type: `str`\n- Description: Path to the `.well-known/openid-configuration` endpoint\n\n#### `OPENID_REDIRECT_URI`\n\n- Type: `str`\n- Description: Sets the redirect URI for OIDC\n\n### Tools\n\n#### `TOOLS_DIR`\n\n- Type: `str`\n- Default: `${DATA_DIR}/tools`\n- Description: Specifies the directory for custom tools.\n\n### Redis\n\n#### `ENABLE_WEBSOCKET_SUPPORT`\n\n- Type: `bool`\n- Default: `False`\n- Description: Enables websocket support in Open WebUI (used with Redis).\n\n#### `WEBSOCKET_MANAGER`\n\n- Type: `str`\n- Default: `redis`\n- Description: Specifies the websocket manager to use (in this case, Redis).\n\n#### `WEBSOCKET_REDIS_URL`\n\n- Type: `str`\n- Default: `redis://localhost:6379/0`\n- Description: Specifies the URL of the Redis instance for websocket communication.\n\n## Misc Environment Variables\n\nThese variables are not specific to Open WebUI but can still be valuable in certain contexts."}


created_at: 2024-12-28 04:06:21
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: b1a3688d-edb3-44f9-88dd-f005c5e90063
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "079c8e0b-ac11-4fea-9a51-c24e0b4b8915", "hash": "c790d68c79ccf875fbc5bfb2ce7506ff85315e8f508320d65cf16296f6565289", "name": "env-configuration.md", "source": "env-configuration.md", "start_index": 0, "chroma:document": "These variables are not specific to Open WebUI but can still be valuable in certain contexts.\n\n### Proxy Settings\n\nOpen WebUI supports using proxies for HTTP and HTTPS retrievals. To specify proxy settings,\nOpen WebUI uses the following environment variables:\n\n#### `http_proxy`\n\n- Type: `str`\n- Description: Sets the URL for the HTTP proxy.\n\n#### `https_proxy`\n\n- Type: `str`\n- Description: Sets the URL for the HTTPS proxy.\n\n#### `no_proxy`\n\n- Type: `str`\n- Description: Lists domain extensions (or IP addresses) for which the proxy should not be used,\nseparated by commas. For example, setting no_proxy to '.mit.edu' ensures that the proxy is\nbypassed when accessing documents from MIT."}


created_at: 2024-12-28 04:06:21
topic: persistent://default/default/dc3745cb-56b0-4ad4-bfd8-1f24c5361011
id: 42ef71b3-2ca7-4074-94ce-120b1b778eca
encoding: FLOAT32
metadata:
{"source": "export.md", "name": "export.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "703e512b-7ed3-4ccc-b94e-d070b585c371", "start_index": 0, "hash": "7257a9dcff6cbec072243c707a649edab255aa81f215d6576895500fe08e0ba1", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "---\nsidebar_position: 5\ntitle: \"\ud83d\udce4 Downloading & Exporting Chats\"\n---\n\nCOMING SOON!"}


created_at: 2024-12-28 04:06:21
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 4c450916-d2fa-4f09-a437-c46825e2b8be
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "703e512b-7ed3-4ccc-b94e-d070b585c371", "hash": "7257a9dcff6cbec072243c707a649edab255aa81f215d6576895500fe08e0ba1", "name": "export.md", "source": "export.md", "start_index": 0, "chroma:document": "---\nsidebar_position: 5\ntitle: \"\ud83d\udce4 Downloading & Exporting Chats\"\n---\n\nCOMING SOON!"}


created_at: 2024-12-28 04:06:21
topic: persistent://default/default/8648b9e2-5dbb-4032-af16-54e7eda5aa88
id: cd1799f9-62a5-4954-98c0-b6de28196ec1
encoding: FLOAT32
metadata:
{"source": "faq.md", "name": "faq.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "d6735541-0b41-442f-9aed-dd75a000d604", "start_index": 0, "hash": "7b0e67cf52ebd10cb2188a0f96e7b2f64abf4ba98dd842f03dde1243feaaf761", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "---\nsidebar_position: 7\ntitle: \"\u2753 FAQ\"\n---\n\n# FAQ\n\n**What's the difference between Functions and Pipelines?**\n\nThe main difference between Functions and Pipelines are that Functions are executed directly on the Open WebUI server, while Pipelines are executed on a separate server. Functions are not capable of downloading new packages in Open WebUI, meaning that you are only able to import libraries into Functions that are packaged into Open WebUI. Pipelines, on the other hand, are more extensible, enabling you to install any Python dependencies your filter or pipe could need. Pipelines also execute on a separate server, potentially reducing the load on your Open WebUI instance."}


created_at: 2024-12-28 04:06:22
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 57907d95-906c-41ec-be65-af8f511da7ce
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "d6735541-0b41-442f-9aed-dd75a000d604", "hash": "7b0e67cf52ebd10cb2188a0f96e7b2f64abf4ba98dd842f03dde1243feaaf761", "name": "faq.md", "source": "faq.md", "start_index": 0, "chroma:document": "---\nsidebar_position: 7\ntitle: \"\u2753 FAQ\"\n---\n\n# FAQ\n\n**What's the difference between Functions and Pipelines?**\n\nThe main difference between Functions and Pipelines are that Functions are executed directly on the Open WebUI server, while Pipelines are executed on a separate server. Functions are not capable of downloading new packages in Open WebUI, meaning that you are only able to import libraries into Functions that are packaged into Open WebUI. Pipelines, on the other hand, are more extensible, enabling you to install any Python dependencies your filter or pipe could need. Pipelines also execute on a separate server, potentially reducing the load on your Open WebUI instance."}


created_at: 2024-12-28 04:06:22
topic: persistent://default/default/2770c282-5ba2-43ef-9256-bee40041edac
id: 91ec3e59-65d0-4a98-a28f-954a88eb8d8b
encoding: FLOAT32
metadata:
{"source": "faq.mdx", "name": "faq.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "3655501a-a569-405c-a1c9-15d2bede611f", "start_index": 0, "hash": "e97095a023b9115b5a6579dceb145af5fdd44350e31c4179eec9d3cb44cf61fa", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "---\nsidebar_position: 1200\ntitle: \"\ud83d\udccb FAQ\"\n---\n\nimport { TopBanners } from \"@site/src/components/TopBanners\";\n\n<TopBanners />\n\n### \ud83d\udca1 Why Docker?\nWe understand Docker might not be everyone's preference; however, this approach is central to our project's design and operational efficiency. We view the project's commitment to Docker as a fundamental aspect and encourage those looking for different deployment methods to explore community-driven alternatives.\n\n### \ud83d\udcdc Table of Contents"}


created_at: 2024-12-28 04:06:22
topic: persistent://default/default/2770c282-5ba2-43ef-9256-bee40041edac
id: 3bca2053-7e6a-4aa4-a7d3-017e651961cc
encoding: FLOAT32
metadata:
{"source": "faq.mdx", "name": "faq.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "3655501a-a569-405c-a1c9-15d2bede611f", "start_index": 483, "hash": "e97095a023b9115b5a6579dceb145af5fdd44350e31c4179eec9d3cb44cf61fa", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "- [Q: Why am I asked to sign up? Where are my data being sent to?](#q-why-am-i-asked-to-sign-up-where-are-my-data-being-sent-to)\n- [Q: Why can't my Docker container connect to services on the host using localhost?](#q-why-cant-my-docker-container-connect-to-services-on-the-host-using-localhost)\n- [Q: How do I make my host's services accessible to Docker containers?](#q-how-do-i-make-my-hosts-services-accessible-to-docker-containers)\n- [Q: Why isn't my Open WebUI updating? I've re-pulled/restarted the container, and nothing changed.](#q-why-isnt-my-open-webui-updating-ive-re-pulledrestarted-the-container-and-nothing-changed)\n- [Q: Wait, why would I delete my container? Won't I lose my data?](#q-wait-why-would-i-delete-my-container-wont-i-lose-my-data)\n- [Q: Should I use the distro-packaged Docker or the official Docker package?](#q-should-i-use-the-distro-packaged-docker-or-the-official-docker-package)\n- [Q: Is GPU support available in Docker?](#q-is-gpu-support-available-in-docker)"}


created_at: 2024-12-28 04:06:22
topic: persistent://default/default/2770c282-5ba2-43ef-9256-bee40041edac
id: 01c2b2e3-9dcf-4f7e-86bb-b352569fc0f7
encoding: FLOAT32
metadata:
{"source": "faq.mdx", "name": "faq.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "3655501a-a569-405c-a1c9-15d2bede611f", "start_index": 1398, "hash": "e97095a023b9115b5a6579dceb145af5fdd44350e31c4179eec9d3cb44cf61fa", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "- [Q: Is GPU support available in Docker?](#q-is-gpu-support-available-in-docker)\n- [Q: Why does Open WebUI emphasize the use of Docker?](#q-why-does-open-webui-emphasize-the-use-of-docker)\n- [Q: Why doesn't Speech-to-Text (STT) and Text-to-Speech (TTS) work in my deployment?](#q-why-doesnt-speech-to-text-stt-and-text-to-speech-tts-work-in-my-deployment)\n- [Q: Why doesn't Open WebUI include built-in HTTPS support?](#q-why-doesnt-open-webui-include-built-in-https-support)\n- [Q: I updated/restarted/installed some new software and now Open WebUI isn't working anymore!](#q-i-updatedrestartedinstalled-some-new-software-and-now-open-webui-isnt-working-anymore)\n- [Q: I updated/restarted and now my login isn't working anymore, I had to create a new account and all my chats are gone.](#q-i-updatedrestarted-and-now-my-login-isnt-working-anymore-i-had-to-create-a-new-account-and-all-my-chats-are-gone)"}


created_at: 2024-12-28 04:06:22
topic: persistent://default/default/2770c282-5ba2-43ef-9256-bee40041edac
id: c0d01e0f-059f-439f-983c-8fafab91e974
encoding: FLOAT32
metadata:
{"source": "faq.mdx", "name": "faq.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "3655501a-a569-405c-a1c9-15d2bede611f", "start_index": 2302, "hash": "e97095a023b9115b5a6579dceb145af5fdd44350e31c4179eec9d3cb44cf61fa", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "- [Q: I tried to login and couldn't, made a new account and now I'm being told my account needs to be activated by an admin.](#q-i-tried-to-login-and-couldnt-made-a-new-account-and-now-im-being-told-my-account-needs-to-be-activated-by-an-admin)\n- [Q: Why can't Open WebUI start with an SSL error?](#q-why-cant-open-webui-start-with-an-ssl-error)"}


created_at: 2024-12-28 04:06:22
topic: persistent://default/default/2770c282-5ba2-43ef-9256-bee40041edac
id: 36590754-081d-4f46-8fc2-898ebc73bb34
encoding: FLOAT32
metadata:
{"source": "faq.mdx", "name": "faq.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "3655501a-a569-405c-a1c9-15d2bede611f", "start_index": 2649, "hash": "e97095a023b9115b5a6579dceb145af5fdd44350e31c4179eec9d3cb44cf61fa", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "#### **Q: Why am I asked to sign up? Where are my data being sent to?**\n\n**A:** We require you to sign up to become the admin user for enhanced security. This ensures that if the Open WebUI is ever exposed to external access, your data remains secure. It's important to note that everything is kept local. We do not collect your data. When you sign up, all information stays within your server and never leaves your device. Your privacy and security are our top priorities, ensuring that your data remains under your control at all times.\n\n#### **Q: Why can't my Docker container connect to services on the host using `localhost`?**"}


created_at: 2024-12-28 04:06:22
topic: persistent://default/default/2770c282-5ba2-43ef-9256-bee40041edac
id: 5748230f-db17-4f4d-9b46-10cf602a188b
encoding: FLOAT32
metadata:
{"source": "faq.mdx", "name": "faq.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "3655501a-a569-405c-a1c9-15d2bede611f", "start_index": 3189, "hash": "e97095a023b9115b5a6579dceb145af5fdd44350e31c4179eec9d3cb44cf61fa", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "#### **Q: Why can't my Docker container connect to services on the host using `localhost`?**\n\n**A:** Inside a Docker container, `localhost` refers to the container itself, not the host machine. This distinction is crucial for networking. To establish a connection from your container to services running on the host, you should use the DNS name `host.docker.internal` instead of `localhost`. This DNS name is specially recognized by Docker to facilitate such connections, effectively treating the host as a reachable entity from within the container, thus bypassing the usual `localhost` scope limitation.\n\n#### **Q: How do I make my host's services accessible to Docker containers?**"}


created_at: 2024-12-28 04:06:22
topic: persistent://default/default/2770c282-5ba2-43ef-9256-bee40041edac
id: 77871331-3354-485b-b0e1-fd2ea599ed58
encoding: FLOAT32
metadata:
{"source": "faq.mdx", "name": "faq.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "3655501a-a569-405c-a1c9-15d2bede611f", "start_index": 3796, "hash": "e97095a023b9115b5a6579dceb145af5fdd44350e31c4179eec9d3cb44cf61fa", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "#### **Q: How do I make my host's services accessible to Docker containers?**\n\n**A:** To make services running on the host accessible to Docker containers, configure these services to listen on all network interfaces, using the IP address `0.0.0.0`, instead of `127.0.0.1` which is limited to `localhost` only. This configuration allows the services to accept connections from any IP address, including Docker containers. It's important to be aware of the security implications of this setup, especially when operating in environments with potential external access. Implementing appropriate security measures, such as firewalls and authentication, can help mitigate risks.\n\n#### **Q: Why isn't my Open WebUI updating? I've re-pulled/restarted the container, and nothing changed.**\n\n**A:** Updating Open WebUI requires more than just pulling the new Docker image. Here's why your updates might not be showing and how to ensure they do:"}


created_at: 2024-12-28 04:06:22
topic: persistent://default/default/2770c282-5ba2-43ef-9256-bee40041edac
id: 4e19ffd8-98f2-4faa-8584-e09379f54fc2
encoding: FLOAT32
metadata:
{"source": "faq.mdx", "name": "faq.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "3655501a-a569-405c-a1c9-15d2bede611f", "start_index": 4733, "hash": "e97095a023b9115b5a6579dceb145af5fdd44350e31c4179eec9d3cb44cf61fa", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "1. **Updating the Docker Image**: The command `docker pull ghcr.io/open-webui/open-webui:main` updates the Docker image but not the running container or its data.\n2. **Persistent Data in Docker Volumes**: Docker volumes store data independently of container lifecycles, preserving your data (like chat histories) through updates.\n3. **Applying the Update**: Ensure your update takes effect by removing the existing container (which doesn't delete the volume) and creating a new one with the updated image and existing volume attached.\n\nThis process updates the app while keeping your data safe.\n\n#### **Q: Wait, why would I delete my container? Won't I lose my data?**\n\n**A:** It's a common concern, but deleting a container doesn't mean you'll lose your data, provided you're using Docker volumes correctly. Here's why:"}


created_at: 2024-12-28 04:06:22
topic: persistent://default/default/2770c282-5ba2-43ef-9256-bee40041edac
id: 3a88fc08-3cf0-46fc-9415-a3f57cc3384e
encoding: FLOAT32
metadata:
{"source": "faq.mdx", "name": "faq.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "3655501a-a569-405c-a1c9-15d2bede611f", "start_index": 5555, "hash": "e97095a023b9115b5a6579dceb145af5fdd44350e31c4179eec9d3cb44cf61fa", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "- **Volumes Preserve Data**: Docker volumes are designed to persist data outside of container lifecycles. As long as your data is stored in a volume, it remains intact, regardless of what happens to the container.\n- **Safe Update Process**: When updating Open WebUI, removing the old container and creating a new one with the updated image does not affect the data stored in volumes. The key is not to explicitly delete the volume with commands like `docker volume rm`.\n\nBy following the correct update steps\u2014pulling the new image, removing the old container without deleting the volume, and creating a new container with the updated image and the existing volume\u2014your application code is updated while your data remains unchanged and safe.\n\n#### **Q: Should I use the distro-packaged Docker or the official Docker package?**"}


created_at: 2024-12-28 04:06:22
topic: persistent://default/default/2770c282-5ba2-43ef-9256-bee40041edac
id: f7e11cf8-4249-49e9-958f-cda0bda172aa
encoding: FLOAT32
metadata:
{"source": "faq.mdx", "name": "faq.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "3655501a-a569-405c-a1c9-15d2bede611f", "start_index": 6297, "hash": "e97095a023b9115b5a6579dceb145af5fdd44350e31c4179eec9d3cb44cf61fa", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "#### **Q: Should I use the distro-packaged Docker or the official Docker package?**\n\n**A:** We recommend using the official Docker package over distro-packaged versions for running Open WebUI. The official Docker package is frequently updated with the latest features, bug fixes, and security patches, ensuring optimal performance and security. Additionally, it supports important functionalities like `host.docker.internal`, which may not be available in distro-packaged versions. This feature is essential for proper network configurations and connectivity within Docker containers.\n\nBy choosing the official Docker package, you benefit from consistent behavior across different environments, more reliable troubleshooting support, and access to the latest Docker advancements. The broader Docker community and resources are also more aligned with the official package, providing you with a wealth of information and support for any issues you might encounter."}


created_at: 2024-12-28 04:06:22
topic: persistent://default/default/2770c282-5ba2-43ef-9256-bee40041edac
id: ebdc86d2-95a4-44de-80e1-19ce7e74ecc9
encoding: FLOAT32
metadata:
{"source": "faq.mdx", "name": "faq.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "3655501a-a569-405c-a1c9-15d2bede611f", "start_index": 7261, "hash": "e97095a023b9115b5a6579dceb145af5fdd44350e31c4179eec9d3cb44cf61fa", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "Everything you need to run Open WebUI, including your data, remains within your control and your server environment, emphasizing our commitment to your privacy and security. For instructions on installing the official Docker package, please refer to the [Install Docker Engine](https://docs.docker.com/engine/install/) guide on Docker's official documentation site.\n\n#### **Q: Is GPU support available in Docker?**\n\n**A:** GPU support in Docker is available but varies depending on the platform. Officially, GPU support is provided in Docker for Windows and Docker Engine on Linux. Other platforms, such as Docker Desktop for Linux and MacOS, do not currently offer GPU support. This limitation is important to consider for applications requiring GPU acceleration. For the best experience and to utilize GPU capabilities, we recommend using Docker on platforms that officially support GPU integration.\n\n#### **Q: Why does Open WebUI emphasize the use of Docker?**"}


created_at: 2024-12-28 04:06:22
topic: persistent://default/default/2770c282-5ba2-43ef-9256-bee40041edac
id: 8d0315f2-d73f-4235-9029-38e02d7a9b8c
encoding: FLOAT32
metadata:
{"source": "faq.mdx", "name": "faq.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "3655501a-a569-405c-a1c9-15d2bede611f", "start_index": 8164, "hash": "e97095a023b9115b5a6579dceb145af5fdd44350e31c4179eec9d3cb44cf61fa", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "#### **Q: Why does Open WebUI emphasize the use of Docker?**\n\n**A:** The decision to use Docker stems from its ability to ensure consistency, isolate dependencies, and simplify deployment across different environments. Docker minimizes compatibility issues and streamlines the process of getting the WebUI up and running, regardless of the underlying system. It's a strategic choice by the project maintainers to harness these benefits, acknowledging that while Docker has a learning curve, the advantages for deployment and maintenance are significant. We understand Docker might not be everyone's preference; however, this approach is central to our project's design and operational efficiency. We view the project's commitment to Docker as a fundamental aspect and encourage those looking for different deployment methods to explore community-driven alternatives.\n\n#### **Q: Why doesn't Speech-to-Text (STT) and Text-to-Speech (TTS) work in my deployment?**"}


created_at: 2024-12-28 04:06:22
topic: persistent://default/default/2770c282-5ba2-43ef-9256-bee40041edac
id: ae581df7-079d-4686-abc8-50f5c1ad2f85
encoding: FLOAT32
metadata:
{"source": "faq.mdx", "name": "faq.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "3655501a-a569-405c-a1c9-15d2bede611f", "start_index": 9032, "hash": "e97095a023b9115b5a6579dceb145af5fdd44350e31c4179eec9d3cb44cf61fa", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "#### **Q: Why doesn't Speech-to-Text (STT) and Text-to-Speech (TTS) work in my deployment?**\n\n**A:** The functionality of Speech-to-Text (STT) and Text-to-Speech (TTS) services in your deployment may require HTTPS to operate correctly. Modern browsers enforce security measures that restrict certain features, including STT and TTS, to only work under secure HTTPS connections. If your deployment is not configured to use HTTPS, these services might not function as expected. Ensuring your deployment is accessible over HTTPS can resolve these issues, enabling full functionality of STT/TTS features.\n\n#### **Q: Why doesn't Open WebUI include built-in HTTPS support?**"}


created_at: 2024-12-28 04:06:22
topic: persistent://default/default/2770c282-5ba2-43ef-9256-bee40041edac
id: da4389e8-1b9b-441c-bdef-f3c91a0cebbf
encoding: FLOAT32
metadata:
{"source": "faq.mdx", "name": "faq.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "3655501a-a569-405c-a1c9-15d2bede611f", "start_index": 9634, "hash": "e97095a023b9115b5a6579dceb145af5fdd44350e31c4179eec9d3cb44cf61fa", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "#### **Q: Why doesn't Open WebUI include built-in HTTPS support?**\n\n**A:** While we understand the desire for an all-in-one solution that includes HTTPS support, we believe such an approach wouldn't adequately serve the diverse needs of our user base. Implementing HTTPS directly within the project could limit flexibility and may not align with the specific requirements or preferences of all users. To ensure that everyone can tailor their setup to their unique environment, we leave the implementation of HTTPS termination to the users for their production deployments. This decision allows for greater adaptability and customization. Though we don't offer official documentation on setting up HTTPS, community members may provide guidance upon request, sharing insights and suggestions based on their experiences.\n\n#### **Q: I updated/restarted/installed some new software and now Open WebUI isn't working anymore!**"}


created_at: 2024-12-28 04:06:22
topic: persistent://default/default/2770c282-5ba2-43ef-9256-bee40041edac
id: feb145c6-6fb4-466a-ade8-44776bd15958
encoding: FLOAT32
metadata:
{"source": "faq.mdx", "name": "faq.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "3655501a-a569-405c-a1c9-15d2bede611f", "start_index": 10556, "hash": "e97095a023b9115b5a6579dceb145af5fdd44350e31c4179eec9d3cb44cf61fa", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "**A:** If your Open WebUI isn't launching post-update or installation of new software, it's likely related to a direct installation approach, especially if you didn't use a virtual environment for your backend dependencies. Direct installations can be sensitive to changes in the system's environment, such as updates or new installations that alter existing dependencies. To avoid conflicts and ensure stability, we recommend using a virtual environment for managing the `requirements.txt` dependencies of your backend. This isolates your Open WebUI dependencies from other system packages, minimizing the risk of such issues.\n\n#### **Q: I updated/restarted and now my login isn't working anymore, I had to create a new account and all my chats are gone.**"}


created_at: 2024-12-28 04:06:22
topic: persistent://default/default/2770c282-5ba2-43ef-9256-bee40041edac
id: c05afc23-f5d6-423f-9312-e42682f57d70
encoding: FLOAT32
metadata:
{"source": "faq.mdx", "name": "faq.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "3655501a-a569-405c-a1c9-15d2bede611f", "start_index": 11315, "hash": "e97095a023b9115b5a6579dceb145af5fdd44350e31c4179eec9d3cb44cf61fa", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "**A:** This issue typically arises when a Docker container is created without mounting a volume for `/app/backend/data` or if the designated Open WebUI volume (usually named `open-webui` in our examples) was unintentionally deleted. Docker volumes are crucial for persisting your data across container lifecycles. If you find yourself needing to create a new account after a restart, it's likely you've initiated a new container without attaching the existing volume where your data resides. Ensure that your Docker run command includes a volume mount pointing to the correct data location to prevent data loss.\n\n#### **Q: I tried to login and couldn't, made a new account and now I'm being told my account needs to be activated by an admin.**"}


created_at: 2024-12-28 04:06:22
topic: persistent://default/default/2770c282-5ba2-43ef-9256-bee40041edac
id: f3987009-80d8-43df-9fe4-10b781fb06ca
encoding: FLOAT32
metadata:
{"source": "faq.mdx", "name": "faq.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "3655501a-a569-405c-a1c9-15d2bede611f", "start_index": 12060, "hash": "e97095a023b9115b5a6579dceb145af5fdd44350e31c4179eec9d3cb44cf61fa", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "**A:** This situation occurs when you forget the password for the initial admin account created during the first setup. The first account is automatically designated as the admin account. Creating a new account without access to the admin account will result in the need for admin activation. Avoiding the loss of the initial admin account credentials is crucial for seamless access and management of Open WebUI. See the [Resetting the Admin Password](troubleshooting/password-reset) guide for instructions on recovering the admin account.\n\n#### **Q: Why can't Open WebUI start with an SSL error?**"}


created_at: 2024-12-28 04:06:22
topic: persistent://default/default/2770c282-5ba2-43ef-9256-bee40041edac
id: 96aa2dbd-d47d-4549-a19b-43bd05a44a6c
encoding: FLOAT32
metadata:
{"source": "faq.mdx", "name": "faq.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "3655501a-a569-405c-a1c9-15d2bede611f", "start_index": 12601, "hash": "e97095a023b9115b5a6579dceb145af5fdd44350e31c4179eec9d3cb44cf61fa", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "#### **Q: Why can't Open WebUI start with an SSL error?**\n\n**A:** The SSL error you're encountering when starting Open WebUI is likely due to the absence of SSL certificates or incorrect configuration of [huggingface.co](https://huggingface.co/). To resolve this issue, you could set up a mirror for HuggingFace, such as [hf-mirror.com](https://hf-mirror.com/), and specify it as the endpoint when starting the Docker container. Use the `-e HF_ENDPOINT=https://hf-mirror.com/` parameter to define the HuggingFace mirror address in the Docker run command. For example, you can modify the Docker run command as follows:\n\n```bash\ndocker run -d -p 3000:8080 -e HF_ENDPOINT=https://hf-mirror.com/ --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main\n```\n\n#### **Need Further Assistance?**"}


created_at: 2024-12-28 04:06:22
topic: persistent://default/default/2770c282-5ba2-43ef-9256-bee40041edac
id: c701d22f-112e-4965-a5d7-8c32a47be1e4
encoding: FLOAT32
metadata:
{"source": "faq.mdx", "name": "faq.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "3655501a-a569-405c-a1c9-15d2bede611f", "start_index": 13445, "hash": "e97095a023b9115b5a6579dceb145af5fdd44350e31c4179eec9d3cb44cf61fa", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "#### **Need Further Assistance?**\n\nIf you have any further questions or concerns, please reach out to our [GitHub Issues page](https://github.com/open-webui/open-webui/issues) or our [Discord channel](https://discord.gg/5rJgQTnV4s) for more help and information."}


created_at: 2024-12-28 04:06:23
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: de5ba67f-5c2d-42d2-8b90-f32ac73d003a
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "3655501a-a569-405c-a1c9-15d2bede611f", "hash": "e97095a023b9115b5a6579dceb145af5fdd44350e31c4179eec9d3cb44cf61fa", "name": "faq.mdx", "source": "faq.mdx", "start_index": 0, "chroma:document": "---\nsidebar_position: 1200\ntitle: \"\ud83d\udccb FAQ\"\n---\n\nimport { TopBanners } from \"@site/src/components/TopBanners\";\n\n<TopBanners />\n\n### \ud83d\udca1 Why Docker?\nWe understand Docker might not be everyone's preference; however, this approach is central to our project's design and operational efficiency. We view the project's commitment to Docker as a fundamental aspect and encourage those looking for different deployment methods to explore community-driven alternatives.\n\n### \ud83d\udcdc Table of Contents"}


created_at: 2024-12-28 04:06:23
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 661a6f1d-09a0-47ab-9dc2-e075b9e39ed1
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "3655501a-a569-405c-a1c9-15d2bede611f", "hash": "e97095a023b9115b5a6579dceb145af5fdd44350e31c4179eec9d3cb44cf61fa", "name": "faq.mdx", "source": "faq.mdx", "start_index": 0, "chroma:document": "- [Q: Why am I asked to sign up? Where are my data being sent to?](#q-why-am-i-asked-to-sign-up-where-are-my-data-being-sent-to)\n- [Q: Why can't my Docker container connect to services on the host using localhost?](#q-why-cant-my-docker-container-connect-to-services-on-the-host-using-localhost)\n- [Q: How do I make my host's services accessible to Docker containers?](#q-how-do-i-make-my-hosts-services-accessible-to-docker-containers)\n- [Q: Why isn't my Open WebUI updating? I've re-pulled/restarted the container, and nothing changed.](#q-why-isnt-my-open-webui-updating-ive-re-pulledrestarted-the-container-and-nothing-changed)\n- [Q: Wait, why would I delete my container? Won't I lose my data?](#q-wait-why-would-i-delete-my-container-wont-i-lose-my-data)\n- [Q: Should I use the distro-packaged Docker or the official Docker package?](#q-should-i-use-the-distro-packaged-docker-or-the-official-docker-package)\n- [Q: Is GPU support available in Docker?](#q-is-gpu-support-available-in-docker)"}


created_at: 2024-12-28 04:06:23
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 2e5e5c7b-a2b4-43e6-bb6a-98cbf9dfbea1
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "3655501a-a569-405c-a1c9-15d2bede611f", "hash": "e97095a023b9115b5a6579dceb145af5fdd44350e31c4179eec9d3cb44cf61fa", "name": "faq.mdx", "source": "faq.mdx", "start_index": 0, "chroma:document": "- [Q: Is GPU support available in Docker?](#q-is-gpu-support-available-in-docker)\n- [Q: Why does Open WebUI emphasize the use of Docker?](#q-why-does-open-webui-emphasize-the-use-of-docker)\n- [Q: Why doesn't Speech-to-Text (STT) and Text-to-Speech (TTS) work in my deployment?](#q-why-doesnt-speech-to-text-stt-and-text-to-speech-tts-work-in-my-deployment)\n- [Q: Why doesn't Open WebUI include built-in HTTPS support?](#q-why-doesnt-open-webui-include-built-in-https-support)\n- [Q: I updated/restarted/installed some new software and now Open WebUI isn't working anymore!](#q-i-updatedrestartedinstalled-some-new-software-and-now-open-webui-isnt-working-anymore)\n- [Q: I updated/restarted and now my login isn't working anymore, I had to create a new account and all my chats are gone.](#q-i-updatedrestarted-and-now-my-login-isnt-working-anymore-i-had-to-create-a-new-account-and-all-my-chats-are-gone)"}


created_at: 2024-12-28 04:06:23
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 59687706-3c04-4f39-a811-8ad080011523
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "3655501a-a569-405c-a1c9-15d2bede611f", "hash": "e97095a023b9115b5a6579dceb145af5fdd44350e31c4179eec9d3cb44cf61fa", "name": "faq.mdx", "source": "faq.mdx", "start_index": 0, "chroma:document": "- [Q: I tried to login and couldn't, made a new account and now I'm being told my account needs to be activated by an admin.](#q-i-tried-to-login-and-couldnt-made-a-new-account-and-now-im-being-told-my-account-needs-to-be-activated-by-an-admin)\n- [Q: Why can't Open WebUI start with an SSL error?](#q-why-cant-open-webui-start-with-an-ssl-error)"}


created_at: 2024-12-28 04:06:23
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 55f2682f-8fe4-435e-9b11-a35f46649de6
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "3655501a-a569-405c-a1c9-15d2bede611f", "hash": "e97095a023b9115b5a6579dceb145af5fdd44350e31c4179eec9d3cb44cf61fa", "name": "faq.mdx", "source": "faq.mdx", "start_index": 0, "chroma:document": "#### **Q: Why am I asked to sign up? Where are my data being sent to?**\n\n**A:** We require you to sign up to become the admin user for enhanced security. This ensures that if the Open WebUI is ever exposed to external access, your data remains secure. It's important to note that everything is kept local. We do not collect your data. When you sign up, all information stays within your server and never leaves your device. Your privacy and security are our top priorities, ensuring that your data remains under your control at all times.\n\n#### **Q: Why can't my Docker container connect to services on the host using `localhost`?**"}


created_at: 2024-12-28 04:06:23
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 20964075-0dbc-4396-b121-e8d6248c756a
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "3655501a-a569-405c-a1c9-15d2bede611f", "hash": "e97095a023b9115b5a6579dceb145af5fdd44350e31c4179eec9d3cb44cf61fa", "name": "faq.mdx", "source": "faq.mdx", "start_index": 0, "chroma:document": "#### **Q: Why can't my Docker container connect to services on the host using `localhost`?**\n\n**A:** Inside a Docker container, `localhost` refers to the container itself, not the host machine. This distinction is crucial for networking. To establish a connection from your container to services running on the host, you should use the DNS name `host.docker.internal` instead of `localhost`. This DNS name is specially recognized by Docker to facilitate such connections, effectively treating the host as a reachable entity from within the container, thus bypassing the usual `localhost` scope limitation.\n\n#### **Q: How do I make my host's services accessible to Docker containers?**"}


created_at: 2024-12-28 04:06:23
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: a2163de6-030f-4517-a6ba-0abd7d8b38c1
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "3655501a-a569-405c-a1c9-15d2bede611f", "hash": "e97095a023b9115b5a6579dceb145af5fdd44350e31c4179eec9d3cb44cf61fa", "name": "faq.mdx", "source": "faq.mdx", "start_index": 0, "chroma:document": "#### **Q: How do I make my host's services accessible to Docker containers?**\n\n**A:** To make services running on the host accessible to Docker containers, configure these services to listen on all network interfaces, using the IP address `0.0.0.0`, instead of `127.0.0.1` which is limited to `localhost` only. This configuration allows the services to accept connections from any IP address, including Docker containers. It's important to be aware of the security implications of this setup, especially when operating in environments with potential external access. Implementing appropriate security measures, such as firewalls and authentication, can help mitigate risks.\n\n#### **Q: Why isn't my Open WebUI updating? I've re-pulled/restarted the container, and nothing changed.**\n\n**A:** Updating Open WebUI requires more than just pulling the new Docker image. Here's why your updates might not be showing and how to ensure they do:"}


created_at: 2024-12-28 04:06:23
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 5ab8f219-b4f1-4715-ac07-5aab23b12b5f
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "3655501a-a569-405c-a1c9-15d2bede611f", "hash": "e97095a023b9115b5a6579dceb145af5fdd44350e31c4179eec9d3cb44cf61fa", "name": "faq.mdx", "source": "faq.mdx", "start_index": 0, "chroma:document": "1. **Updating the Docker Image**: The command `docker pull ghcr.io/open-webui/open-webui:main` updates the Docker image but not the running container or its data.\n2. **Persistent Data in Docker Volumes**: Docker volumes store data independently of container lifecycles, preserving your data (like chat histories) through updates.\n3. **Applying the Update**: Ensure your update takes effect by removing the existing container (which doesn't delete the volume) and creating a new one with the updated image and existing volume attached.\n\nThis process updates the app while keeping your data safe.\n\n#### **Q: Wait, why would I delete my container? Won't I lose my data?**\n\n**A:** It's a common concern, but deleting a container doesn't mean you'll lose your data, provided you're using Docker volumes correctly. Here's why:"}


created_at: 2024-12-28 04:06:23
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 5932ac1c-600f-4f2b-825f-f035b1fdd6ef
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "3655501a-a569-405c-a1c9-15d2bede611f", "hash": "e97095a023b9115b5a6579dceb145af5fdd44350e31c4179eec9d3cb44cf61fa", "name": "faq.mdx", "source": "faq.mdx", "start_index": 0, "chroma:document": "- **Volumes Preserve Data**: Docker volumes are designed to persist data outside of container lifecycles. As long as your data is stored in a volume, it remains intact, regardless of what happens to the container.\n- **Safe Update Process**: When updating Open WebUI, removing the old container and creating a new one with the updated image does not affect the data stored in volumes. The key is not to explicitly delete the volume with commands like `docker volume rm`.\n\nBy following the correct update steps\u2014pulling the new image, removing the old container without deleting the volume, and creating a new container with the updated image and the existing volume\u2014your application code is updated while your data remains unchanged and safe.\n\n#### **Q: Should I use the distro-packaged Docker or the official Docker package?**"}


created_at: 2024-12-28 04:06:23
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: ff44867e-0e8d-4bf2-afdc-29b94b2b679a
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "3655501a-a569-405c-a1c9-15d2bede611f", "hash": "e97095a023b9115b5a6579dceb145af5fdd44350e31c4179eec9d3cb44cf61fa", "name": "faq.mdx", "source": "faq.mdx", "start_index": 0, "chroma:document": "#### **Q: Should I use the distro-packaged Docker or the official Docker package?**\n\n**A:** We recommend using the official Docker package over distro-packaged versions for running Open WebUI. The official Docker package is frequently updated with the latest features, bug fixes, and security patches, ensuring optimal performance and security. Additionally, it supports important functionalities like `host.docker.internal`, which may not be available in distro-packaged versions. This feature is essential for proper network configurations and connectivity within Docker containers.\n\nBy choosing the official Docker package, you benefit from consistent behavior across different environments, more reliable troubleshooting support, and access to the latest Docker advancements. The broader Docker community and resources are also more aligned with the official package, providing you with a wealth of information and support for any issues you might encounter."}


created_at: 2024-12-28 04:06:23
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 7c6629d9-7a16-4930-acfd-df6acfe88302
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "3655501a-a569-405c-a1c9-15d2bede611f", "hash": "e97095a023b9115b5a6579dceb145af5fdd44350e31c4179eec9d3cb44cf61fa", "name": "faq.mdx", "source": "faq.mdx", "start_index": 0, "chroma:document": "Everything you need to run Open WebUI, including your data, remains within your control and your server environment, emphasizing our commitment to your privacy and security. For instructions on installing the official Docker package, please refer to the [Install Docker Engine](https://docs.docker.com/engine/install/) guide on Docker's official documentation site.\n\n#### **Q: Is GPU support available in Docker?**\n\n**A:** GPU support in Docker is available but varies depending on the platform. Officially, GPU support is provided in Docker for Windows and Docker Engine on Linux. Other platforms, such as Docker Desktop for Linux and MacOS, do not currently offer GPU support. This limitation is important to consider for applications requiring GPU acceleration. For the best experience and to utilize GPU capabilities, we recommend using Docker on platforms that officially support GPU integration.\n\n#### **Q: Why does Open WebUI emphasize the use of Docker?**"}


created_at: 2024-12-28 04:06:23
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: c144995b-5fdd-47f0-9054-a470f82a9f9e
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "3655501a-a569-405c-a1c9-15d2bede611f", "hash": "e97095a023b9115b5a6579dceb145af5fdd44350e31c4179eec9d3cb44cf61fa", "name": "faq.mdx", "source": "faq.mdx", "start_index": 0, "chroma:document": "#### **Q: Why does Open WebUI emphasize the use of Docker?**\n\n**A:** The decision to use Docker stems from its ability to ensure consistency, isolate dependencies, and simplify deployment across different environments. Docker minimizes compatibility issues and streamlines the process of getting the WebUI up and running, regardless of the underlying system. It's a strategic choice by the project maintainers to harness these benefits, acknowledging that while Docker has a learning curve, the advantages for deployment and maintenance are significant. We understand Docker might not be everyone's preference; however, this approach is central to our project's design and operational efficiency. We view the project's commitment to Docker as a fundamental aspect and encourage those looking for different deployment methods to explore community-driven alternatives.\n\n#### **Q: Why doesn't Speech-to-Text (STT) and Text-to-Speech (TTS) work in my deployment?**"}


created_at: 2024-12-28 04:06:23
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 970d75f7-b76f-4f92-b2c4-6005947a4c03
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "3655501a-a569-405c-a1c9-15d2bede611f", "hash": "e97095a023b9115b5a6579dceb145af5fdd44350e31c4179eec9d3cb44cf61fa", "name": "faq.mdx", "source": "faq.mdx", "start_index": 0, "chroma:document": "#### **Q: Why doesn't Speech-to-Text (STT) and Text-to-Speech (TTS) work in my deployment?**\n\n**A:** The functionality of Speech-to-Text (STT) and Text-to-Speech (TTS) services in your deployment may require HTTPS to operate correctly. Modern browsers enforce security measures that restrict certain features, including STT and TTS, to only work under secure HTTPS connections. If your deployment is not configured to use HTTPS, these services might not function as expected. Ensuring your deployment is accessible over HTTPS can resolve these issues, enabling full functionality of STT/TTS features.\n\n#### **Q: Why doesn't Open WebUI include built-in HTTPS support?**"}


created_at: 2024-12-28 04:06:23
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: d695f95b-5803-42fb-97ab-8215920d63fc
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "3655501a-a569-405c-a1c9-15d2bede611f", "hash": "e97095a023b9115b5a6579dceb145af5fdd44350e31c4179eec9d3cb44cf61fa", "name": "faq.mdx", "source": "faq.mdx", "start_index": 0, "chroma:document": "#### **Q: Why doesn't Open WebUI include built-in HTTPS support?**\n\n**A:** While we understand the desire for an all-in-one solution that includes HTTPS support, we believe such an approach wouldn't adequately serve the diverse needs of our user base. Implementing HTTPS directly within the project could limit flexibility and may not align with the specific requirements or preferences of all users. To ensure that everyone can tailor their setup to their unique environment, we leave the implementation of HTTPS termination to the users for their production deployments. This decision allows for greater adaptability and customization. Though we don't offer official documentation on setting up HTTPS, community members may provide guidance upon request, sharing insights and suggestions based on their experiences.\n\n#### **Q: I updated/restarted/installed some new software and now Open WebUI isn't working anymore!**"}


created_at: 2024-12-28 04:06:23
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: e69f4d9e-c4a6-43bd-9c1e-25702c4bbc48
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "3655501a-a569-405c-a1c9-15d2bede611f", "hash": "e97095a023b9115b5a6579dceb145af5fdd44350e31c4179eec9d3cb44cf61fa", "name": "faq.mdx", "source": "faq.mdx", "start_index": 0, "chroma:document": "**A:** If your Open WebUI isn't launching post-update or installation of new software, it's likely related to a direct installation approach, especially if you didn't use a virtual environment for your backend dependencies. Direct installations can be sensitive to changes in the system's environment, such as updates or new installations that alter existing dependencies. To avoid conflicts and ensure stability, we recommend using a virtual environment for managing the `requirements.txt` dependencies of your backend. This isolates your Open WebUI dependencies from other system packages, minimizing the risk of such issues.\n\n#### **Q: I updated/restarted and now my login isn't working anymore, I had to create a new account and all my chats are gone.**"}


created_at: 2024-12-28 04:06:23
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: ab28bf6b-e9e1-4bbe-896c-1ede2faf066f
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "3655501a-a569-405c-a1c9-15d2bede611f", "hash": "e97095a023b9115b5a6579dceb145af5fdd44350e31c4179eec9d3cb44cf61fa", "name": "faq.mdx", "source": "faq.mdx", "start_index": 0, "chroma:document": "**A:** This issue typically arises when a Docker container is created without mounting a volume for `/app/backend/data` or if the designated Open WebUI volume (usually named `open-webui` in our examples) was unintentionally deleted. Docker volumes are crucial for persisting your data across container lifecycles. If you find yourself needing to create a new account after a restart, it's likely you've initiated a new container without attaching the existing volume where your data resides. Ensure that your Docker run command includes a volume mount pointing to the correct data location to prevent data loss.\n\n#### **Q: I tried to login and couldn't, made a new account and now I'm being told my account needs to be activated by an admin.**"}


created_at: 2024-12-28 04:06:23
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 4d2eaba0-760a-46b7-9641-00134655c452
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "3655501a-a569-405c-a1c9-15d2bede611f", "hash": "e97095a023b9115b5a6579dceb145af5fdd44350e31c4179eec9d3cb44cf61fa", "name": "faq.mdx", "source": "faq.mdx", "start_index": 0, "chroma:document": "**A:** This situation occurs when you forget the password for the initial admin account created during the first setup. The first account is automatically designated as the admin account. Creating a new account without access to the admin account will result in the need for admin activation. Avoiding the loss of the initial admin account credentials is crucial for seamless access and management of Open WebUI. See the [Resetting the Admin Password](troubleshooting/password-reset) guide for instructions on recovering the admin account.\n\n#### **Q: Why can't Open WebUI start with an SSL error?**"}


created_at: 2024-12-28 04:06:23
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: a84520a0-743b-44f5-8310-5ba2f3ba2130
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "3655501a-a569-405c-a1c9-15d2bede611f", "hash": "e97095a023b9115b5a6579dceb145af5fdd44350e31c4179eec9d3cb44cf61fa", "name": "faq.mdx", "source": "faq.mdx", "start_index": 0, "chroma:document": "#### **Q: Why can't Open WebUI start with an SSL error?**\n\n**A:** The SSL error you're encountering when starting Open WebUI is likely due to the absence of SSL certificates or incorrect configuration of [huggingface.co](https://huggingface.co/). To resolve this issue, you could set up a mirror for HuggingFace, such as [hf-mirror.com](https://hf-mirror.com/), and specify it as the endpoint when starting the Docker container. Use the `-e HF_ENDPOINT=https://hf-mirror.com/` parameter to define the HuggingFace mirror address in the Docker run command. For example, you can modify the Docker run command as follows:\n\n```bash\ndocker run -d -p 3000:8080 -e HF_ENDPOINT=https://hf-mirror.com/ --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main\n```\n\n#### **Need Further Assistance?**"}


created_at: 2024-12-28 04:06:23
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 74ab1546-c0aa-4743-8cd1-9fd9e2568d5a
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "3655501a-a569-405c-a1c9-15d2bede611f", "hash": "e97095a023b9115b5a6579dceb145af5fdd44350e31c4179eec9d3cb44cf61fa", "name": "faq.mdx", "source": "faq.mdx", "start_index": 0, "chroma:document": "#### **Need Further Assistance?**\n\nIf you have any further questions or concerns, please reach out to our [GitHub Issues page](https://github.com/open-webui/open-webui/issues) or our [Discord channel](https://discord.gg/5rJgQTnV4s) for more help and information."}


created_at: 2024-12-28 04:06:23
topic: persistent://default/default/e064f35a-4b31-4803-9bfe-fb9a24c5f6f5
id: cc9a59fa-ffe5-480f-bc63-4867148aad5e
encoding: FLOAT32
metadata:
{"source": "favorite.md", "name": "favorite.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "30c87405-e448-4d7e-bc99-d2e1525544b8", "start_index": 0, "hash": "65bd38a88588ae4356aa2a69e932d0be8ccf209f34bd8349f9f9752b38a04b35", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "---\nsidebar_position: 1\ntitle: \"\u2b50 Favorite Response\"\n---\n\nCOMING SOON!"}


created_at: 2024-12-28 04:06:23
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: d226f893-4fe5-4634-a4c1-f44a3fc216bd
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "30c87405-e448-4d7e-bc99-d2e1525544b8", "hash": "65bd38a88588ae4356aa2a69e932d0be8ccf209f34bd8349f9f9752b38a04b35", "name": "favorite.md", "source": "favorite.md", "start_index": 0, "chroma:document": "---\nsidebar_position: 1\ntitle: \"\u2b50 Favorite Response\"\n---\n\nCOMING SOON!"}


created_at: 2024-12-28 04:06:23
topic: persistent://default/default/62e9c6d8-cf40-4440-9826-2fa40dc0dca9
id: 9cdd3905-d001-4c1d-b410-59761d6adbe8
encoding: FLOAT32
metadata:
{"source": "filters.md", "name": "filters.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "c119ce38-cb47-44ca-b1a0-b09b5221a603", "start_index": 0, "hash": "875fa2ef277331d5cef09463afbb4d44ed9c3805378383429923408428649871", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "---\nsidebar_position: 1\ntitle: \"\ud83d\udeb0 Filters\"\n---\n\n# Filters\n\nFilters are used to perform actions against incoming user messages and outgoing assistant (LLM) messages. Potential actions that can be taken in a filter include sending messages to monitoring platforms (such as Langfuse or DataDog), modifying message contents, blocking toxic messages, translating messages to another language, or rate limiting messages from certain users. A list of examples is maintained in the [Pipelines repo](https://github.com/open-webui/pipelines/tree/main/examples/filters). Filters can be executed as a Function or on a Pipelines server. The general workflow can be seen in the image below.\n\n<p align=\"center\">\n  <a href=\"#\">\n    <img src=\"/img/pipelines/filters.png\" alt=\"Filter Workflow\" />\n  </a>\n</p>"}


created_at: 2024-12-28 04:06:23
topic: persistent://default/default/62e9c6d8-cf40-4440-9826-2fa40dc0dca9
id: 32c5a256-89cf-4a17-b7dc-87681ea85b32
encoding: FLOAT32
metadata:
{"source": "filters.md", "name": "filters.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "c119ce38-cb47-44ca-b1a0-b09b5221a603", "start_index": 792, "hash": "875fa2ef277331d5cef09463afbb4d44ed9c3805378383429923408428649871", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "When a filter pipeline is enabled on a model or pipe, the incoming message from the user (or \"inlet\") is passed to the filter for processing. The filter performs the desired action against the message before requesting the chat completion from the LLM model. Finally, the filter performs post-processing on the outgoing LLM message (or \"outlet\") before it is sent to the user."}


created_at: 2024-12-28 04:06:23
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: c24b1615-7bb2-4275-bb22-f82985641cc9
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "c119ce38-cb47-44ca-b1a0-b09b5221a603", "hash": "875fa2ef277331d5cef09463afbb4d44ed9c3805378383429923408428649871", "name": "filters.md", "source": "filters.md", "start_index": 0, "chroma:document": "---\nsidebar_position: 1\ntitle: \"\ud83d\udeb0 Filters\"\n---\n\n# Filters\n\nFilters are used to perform actions against incoming user messages and outgoing assistant (LLM) messages. Potential actions that can be taken in a filter include sending messages to monitoring platforms (such as Langfuse or DataDog), modifying message contents, blocking toxic messages, translating messages to another language, or rate limiting messages from certain users. A list of examples is maintained in the [Pipelines repo](https://github.com/open-webui/pipelines/tree/main/examples/filters). Filters can be executed as a Function or on a Pipelines server. The general workflow can be seen in the image below.\n\n<p align=\"center\">\n  <a href=\"#\">\n    <img src=\"/img/pipelines/filters.png\" alt=\"Filter Workflow\" />\n  </a>\n</p>"}


created_at: 2024-12-28 04:06:23
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 7a3a1c93-bd8e-42af-b461-6d51581b9f25
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "c119ce38-cb47-44ca-b1a0-b09b5221a603", "hash": "875fa2ef277331d5cef09463afbb4d44ed9c3805378383429923408428649871", "name": "filters.md", "source": "filters.md", "start_index": 0, "chroma:document": "When a filter pipeline is enabled on a model or pipe, the incoming message from the user (or \"inlet\") is passed to the filter for processing. The filter performs the desired action against the message before requesting the chat completion from the LLM model. Finally, the filter performs post-processing on the outgoing LLM message (or \"outlet\") before it is sent to the user."}


created_at: 2024-12-28 04:06:23
topic: persistent://default/default/3c7f448b-72f2-45b1-8258-ff05045bdfd5
id: 6e633c37-2c9e-4f0a-9761-4ec06ad09b3a
encoding: FLOAT32
metadata:
{"source": "Helm.md", "name": "Helm.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "e886eeaa-a011-4aa0-b36a-b7c054461b59", "start_index": 1, "hash": "a670e23a475659c2f90e15ed143ae2ea353923f139c280b959c2f22b6c53520a", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "# Helm Setup for Kubernetes\n\nHelm helps you manage Kubernetes applications.\n\n## Prerequisites\n\n- Kubernetes cluster is set up.\n- Helm is installed.\n\n## Steps\n\n1. **Add Open WebUI Helm Repository:**\n\n   ```bash\n   helm repo add open-webui https://open-webui.github.io/helm-charts\n   helm repo update\n   ```\n\n2. **Install Open WebUI Chart:**\n\n   ```bash\n   helm install openwebui open-webui/open-webui\n   ```\n\n3. **Verify Installation:**\n\n   ```bash\n   kubectl get pods\n   ```\n\n## Access the WebUI\n\nSet up port forwarding or load balancing to access Open WebUI from outside the cluster."}


created_at: 2024-12-28 04:06:23
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: ca51865f-1c98-4da9-922e-15704671d52d
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "e886eeaa-a011-4aa0-b36a-b7c054461b59", "hash": "a670e23a475659c2f90e15ed143ae2ea353923f139c280b959c2f22b6c53520a", "name": "Helm.md", "source": "Helm.md", "start_index": 0, "chroma:document": "# Helm Setup for Kubernetes\n\nHelm helps you manage Kubernetes applications.\n\n## Prerequisites\n\n- Kubernetes cluster is set up.\n- Helm is installed.\n\n## Steps\n\n1. **Add Open WebUI Helm Repository:**\n\n   ```bash\n   helm repo add open-webui https://open-webui.github.io/helm-charts\n   helm repo update\n   ```\n\n2. **Install Open WebUI Chart:**\n\n   ```bash\n   helm install openwebui open-webui/open-webui\n   ```\n\n3. **Verify Installation:**\n\n   ```bash\n   kubectl get pods\n   ```\n\n## Access the WebUI\n\nSet up port forwarding or load balancing to access Open WebUI from outside the cluster."}


created_at: 2024-12-28 04:06:23
topic: persistent://default/default/40065cb2-7697-42a3-97bd-b8bb26513ea8
id: 44b05132-3117-45f4-b9bd-f48253e85f7f
encoding: FLOAT32
metadata:
{"source": "https-encryption.md", "name": "https-encryption.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "b364187e-decd-4eaa-93d1-9f12cf48792a", "start_index": 0, "hash": "a90b3a17aaac013d499b8ceea33d7afd70325b99a359224eb18fdcc57e71f3fc", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "---\nsidebar_position: 6\ntitle: \"\ud83d\udd12HTTPS Encryption\"\n---\n\n## Overview\n\nWhile HTTPS encryption is **not required** to operate Open WebUI in most cases, certain features\u2014such as **Voice Calls**\u2014will be blocked by modern web browsers unless HTTPS is enabled. If you do not plan to use these features, you can skip this section.\n\n## Importance of HTTPS\n\nFor deployments at high risk of traffic interception, such as those hosted on the internet, it is recommended to implement HTTPS encryption. This ensures that the username/password signup and authentication process remains secure, protecting sensitive user data from potential threats.\n\n## Choosing Your HTTPS Solution\n\nThe choice of HTTPS encryption solution is up to the user and should align with the existing infrastructure. Here are some common scenarios:"}


created_at: 2024-12-28 04:06:23
topic: persistent://default/default/40065cb2-7697-42a3-97bd-b8bb26513ea8
id: 1e1a0477-7481-4fb8-9ff2-0e66b4d7bedf
encoding: FLOAT32
metadata:
{"source": "https-encryption.md", "name": "https-encryption.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "b364187e-decd-4eaa-93d1-9f12cf48792a", "start_index": 810, "hash": "a90b3a17aaac013d499b8ceea33d7afd70325b99a359224eb18fdcc57e71f3fc", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "- **AWS Environments**: Utilizing an AWS Elastic Load Balancer is often a practical choice for managing HTTPS.\n- **Docker Container Environments**: Popular solutions include Nginx, Traefik, and Caddy.\n- **Cloudflare**: Offers easy HTTPS setup with minimal server-side configuration, suitable for a wide range of applications.\n- **Ngrok**: Provides a quick way to set up HTTPS for local development environments, particularly useful for testing and demos.\n\n## Further Guidance\n\nFor detailed instructions and community-submitted tutorials on actual HTTPS encryption deployments, please refer to the [Deployment Tutorials](../../tutorials/deployment/).\n\nThis documentation provides a starting point for understanding the options available for enabling HTTPS encryption in your environment."}


created_at: 2024-12-28 04:06:24
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: e5a5eeba-f912-40cf-9811-8bf24954b4e0
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "b364187e-decd-4eaa-93d1-9f12cf48792a", "hash": "a90b3a17aaac013d499b8ceea33d7afd70325b99a359224eb18fdcc57e71f3fc", "name": "https-encryption.md", "source": "https-encryption.md", "start_index": 0, "chroma:document": "---\nsidebar_position: 6\ntitle: \"\ud83d\udd12HTTPS Encryption\"\n---\n\n## Overview\n\nWhile HTTPS encryption is **not required** to operate Open WebUI in most cases, certain features\u2014such as **Voice Calls**\u2014will be blocked by modern web browsers unless HTTPS is enabled. If you do not plan to use these features, you can skip this section.\n\n## Importance of HTTPS\n\nFor deployments at high risk of traffic interception, such as those hosted on the internet, it is recommended to implement HTTPS encryption. This ensures that the username/password signup and authentication process remains secure, protecting sensitive user data from potential threats.\n\n## Choosing Your HTTPS Solution\n\nThe choice of HTTPS encryption solution is up to the user and should align with the existing infrastructure. Here are some common scenarios:"}


created_at: 2024-12-28 04:06:24
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 7ab18b36-c102-426a-a51d-856838849a27
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "b364187e-decd-4eaa-93d1-9f12cf48792a", "hash": "a90b3a17aaac013d499b8ceea33d7afd70325b99a359224eb18fdcc57e71f3fc", "name": "https-encryption.md", "source": "https-encryption.md", "start_index": 0, "chroma:document": "- **AWS Environments**: Utilizing an AWS Elastic Load Balancer is often a practical choice for managing HTTPS.\n- **Docker Container Environments**: Popular solutions include Nginx, Traefik, and Caddy.\n- **Cloudflare**: Offers easy HTTPS setup with minimal server-side configuration, suitable for a wide range of applications.\n- **Ngrok**: Provides a quick way to set up HTTPS for local development environments, particularly useful for testing and demos.\n\n## Further Guidance\n\nFor detailed instructions and community-submitted tutorials on actual HTTPS encryption deployments, please refer to the [Deployment Tutorials](../../tutorials/deployment/).\n\nThis documentation provides a starting point for understanding the options available for enabling HTTPS encryption in your environment."}


created_at: 2024-12-28 04:06:24
topic: persistent://default/default/26565ad8-6563-416f-864e-f8afdb1eb7f5
id: 844cd293-c3b9-4746-a627-32d675d1d4cc
encoding: FLOAT32
metadata:
{"source": "https-nginx.md", "name": "https-nginx.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "ca5586cf-841d-4574-bccc-f94a35ebafc8", "start_index": 0, "hash": "f85324c4b4aeb2f05f918ca9bb9d4cb4cdba20d7fdd1c4f10a56eeb15b3a3d0a", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "---\ntitle: \"\ud83d\udd12 HTTPS using Nginx\"\n---\n\n:::warning\nThis tutorial is a community contribution and is not supported by the OpenWebUI team. It serves only as a demonstration on how to customize OpenWebUI for your specific use case. Want to contribute? Check out the contributing tutorial.\n:::\n\n# HTTPS using Nginx\n\nEnsuring secure communication between your users and the Open WebUI is paramount. HTTPS (HyperText Transfer Protocol Secure) encrypts the data transmitted, protecting it from eavesdroppers and tampering. By configuring Nginx as a reverse proxy, you can seamlessly add HTTPS to your Open WebUI deployment, enhancing both security and trustworthiness.\n\nThis guide provides two methods to set up HTTPS:\n\n- **Self-Signed Certificates**: Ideal for development and internal use.\n- **Let's Encrypt**: Perfect for production environments requiring trusted SSL certificates.\n\nChoose the method that best fits your deployment needs."}


created_at: 2024-12-28 04:06:24
topic: persistent://default/default/26565ad8-6563-416f-864e-f8afdb1eb7f5
id: 5df04a87-c8e2-4f27-83c4-858d7a372c3a
encoding: FLOAT32
metadata:
{"source": "https-nginx.md", "name": "https-nginx.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "ca5586cf-841d-4574-bccc-f94a35ebafc8", "start_index": 877, "hash": "f85324c4b4aeb2f05f918ca9bb9d4cb4cdba20d7fdd1c4f10a56eeb15b3a3d0a", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "Choose the method that best fits your deployment needs.\n\nimport Tabs from '@theme/Tabs';\nimport TabItem from '@theme/TabItem';\n\nimport SelfSigned from './tab-nginx/SelfSigned.md';\nimport LetsEncrypt from './tab-nginx/LetsEncrypt.md';\n\n<Tabs>\n  <TabItem value=\"self-signed\" label=\"Self-Signed Certificate\">\n    <SelfSigned />\n  </TabItem>\n\n  <TabItem value=\"letsencrypt\" label=\"Let's Encrypt\">\n    <LetsEncrypt />\n  </TabItem>\n</Tabs>\n\n## Next Steps\n\nAfter setting up HTTPS, access Open WebUI securely at:\n\n- [https://localhost](https://localhost)\n\nEnsure that your DNS records are correctly configured if you're using a domain name. For production environments, it's recommended to use Let's Encrypt for trusted SSL certificates.\n\n---"}


created_at: 2024-12-28 04:06:24
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 667ae641-da93-4fb8-b33b-9c551e61795e
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "ca5586cf-841d-4574-bccc-f94a35ebafc8", "hash": "f85324c4b4aeb2f05f918ca9bb9d4cb4cdba20d7fdd1c4f10a56eeb15b3a3d0a", "name": "https-nginx.md", "source": "https-nginx.md", "start_index": 0, "chroma:document": "---\ntitle: \"\ud83d\udd12 HTTPS using Nginx\"\n---\n\n:::warning\nThis tutorial is a community contribution and is not supported by the OpenWebUI team. It serves only as a demonstration on how to customize OpenWebUI for your specific use case. Want to contribute? Check out the contributing tutorial.\n:::\n\n# HTTPS using Nginx\n\nEnsuring secure communication between your users and the Open WebUI is paramount. HTTPS (HyperText Transfer Protocol Secure) encrypts the data transmitted, protecting it from eavesdroppers and tampering. By configuring Nginx as a reverse proxy, you can seamlessly add HTTPS to your Open WebUI deployment, enhancing both security and trustworthiness.\n\nThis guide provides two methods to set up HTTPS:\n\n- **Self-Signed Certificates**: Ideal for development and internal use.\n- **Let's Encrypt**: Perfect for production environments requiring trusted SSL certificates.\n\nChoose the method that best fits your deployment needs."}


created_at: 2024-12-28 04:06:24
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 4d55ae98-ff0b-4315-baf4-30c60ca21ce1
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "ca5586cf-841d-4574-bccc-f94a35ebafc8", "hash": "f85324c4b4aeb2f05f918ca9bb9d4cb4cdba20d7fdd1c4f10a56eeb15b3a3d0a", "name": "https-nginx.md", "source": "https-nginx.md", "start_index": 0, "chroma:document": "Choose the method that best fits your deployment needs.\n\nimport Tabs from '@theme/Tabs';\nimport TabItem from '@theme/TabItem';\n\nimport SelfSigned from './tab-nginx/SelfSigned.md';\nimport LetsEncrypt from './tab-nginx/LetsEncrypt.md';\n\n<Tabs>\n  <TabItem value=\"self-signed\" label=\"Self-Signed Certificate\">\n    <SelfSigned />\n  </TabItem>\n\n  <TabItem value=\"letsencrypt\" label=\"Let's Encrypt\">\n    <LetsEncrypt />\n  </TabItem>\n</Tabs>\n\n## Next Steps\n\nAfter setting up HTTPS, access Open WebUI securely at:\n\n- [https://localhost](https://localhost)\n\nEnsure that your DNS records are correctly configured if you're using a domain name. For production environments, it's recommended to use Let's Encrypt for trusted SSL certificates.\n\n---"}


created_at: 2024-12-28 04:06:24
topic: persistent://default/default/9df611d4-5fef-40c1-a9db-767322ce6fe5
id: 09e0e642-7daa-4b53-898a-378c2375d659
encoding: FLOAT32
metadata:
{"source": "images.md", "name": "images.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "bef4e7d2-8104-4fae-a465-68d97df2d27a", "start_index": 0, "hash": "45c9e60940e13729073da43b1c8310d4c72dd19898c8ff5c0b1077902edf88c9", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "---\nsidebar_position: 6\ntitle: \"\ud83c\udfa8 Image Generation\"\n---\n\n:::warning\nThis tutorial is a community contribution and is not supported by the OpenWebUI team. It serves only as a demonstration on how to customize OpenWebUI for your specific use case. Want to contribute? Check out the contributing tutorial.\n:::\n\n# \ud83c\udfa8 Image Generation\n\nOpen WebUI supports image generation through three backends: **AUTOMATIC1111**, **ComfyUI**, and **OpenAI DALL\u00b7E**. This guide will help you set up and use either of these options.\n\n## AUTOMATIC1111\n\nOpen WebUI supports image generation through the **AUTOMATIC1111** [API](https://github.com/AUTOMATIC1111/stable-diffusion-webui/wiki/API). Here are the steps to get started:\n\n### Initial Setup\n\n1. Ensure that you have [AUTOMATIC1111](https://github.com/AUTOMATIC1111/stable-diffusion-webui) installed.\n2. Launch AUTOMATIC1111 with additional flags to enable API access:\n\n   ```\n   ./webui.sh --api --listen\n   ```"}


created_at: 2024-12-28 04:06:24
topic: persistent://default/default/9df611d4-5fef-40c1-a9db-767322ce6fe5
id: 1523e6b3-888d-4c95-bdb2-24a7165938f7
encoding: FLOAT32
metadata:
{"source": "images.md", "name": "images.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "bef4e7d2-8104-4fae-a465-68d97df2d27a", "start_index": 905, "hash": "45c9e60940e13729073da43b1c8310d4c72dd19898c8ff5c0b1077902edf88c9", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "```\n   ./webui.sh --api --listen\n   ```\n\n3. For Docker installation of WebUI with the environment variables preset, use the following command:\n\n   ```\n   docker run -d -p 3000:8080 --add-host=host.docker.internal:host-gateway -e AUTOMATIC1111_BASE_URL=http://host.docker.internal:7860/ -e ENABLE_IMAGE_GENERATION=True -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main\n   ```\n\n### Setting Up Open WebUI with AUTOMATIC1111\n\n1. In Open WebUI, navigate to the **Admin Panel** > **Settings** > **Images** menu.\n2. Set the `Image Generation Engine` field to `Default (Automatic1111)`.\n3. In the API URL field, enter the address where AUTOMATIC1111's API is accessible:\n\n   ```\n   http://<your_automatic1111_address>:7860/\n   ```\n\n   If you're running a Docker installation of Open WebUI and AUTOMATIC1111 on the same host, use `http://host.docker.internal:7860/` as your address.\n\n## ComfyUI"}


created_at: 2024-12-28 04:06:24
topic: persistent://default/default/9df611d4-5fef-40c1-a9db-767322ce6fe5
id: 3b29e66f-5e9b-49e4-8281-3f8bf64c77b6
encoding: FLOAT32
metadata:
{"source": "images.md", "name": "images.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "bef4e7d2-8104-4fae-a465-68d97df2d27a", "start_index": 1832, "hash": "45c9e60940e13729073da43b1c8310d4c72dd19898c8ff5c0b1077902edf88c9", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "## ComfyUI\n\nComfyUI provides an alternative interface for managing and interacting with image generation models. Learn more or download it from its [GitHub page](https://github.com/comfyanonymous/ComfyUI). Below are the setup instructions to get ComfyUI running alongside your other tools.\n\n### Initial Setup\n\n1. Download and extract the ComfyUI software package from [GitHub](https://github.com/comfyanonymous/ComfyUI) to your desired directory.\n2. To start ComfyUI, run the following command:\n\n   ```\n   python main.py\n   ```\n\n   For systems with low VRAM, launch ComfyUI with additional flags to reduce memory usage:\n\n   ```\n   python main.py --lowvram\n   ```\n\n3. For Docker installation of WebUI with the environment variables preset, use the following command:"}


created_at: 2024-12-28 04:06:24
topic: persistent://default/default/9df611d4-5fef-40c1-a9db-767322ce6fe5
id: d04b51e9-5a43-4d7b-9e95-cc29ef49ec5a
encoding: FLOAT32
metadata:
{"source": "images.md", "name": "images.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "bef4e7d2-8104-4fae-a465-68d97df2d27a", "start_index": 2602, "hash": "45c9e60940e13729073da43b1c8310d4c72dd19898c8ff5c0b1077902edf88c9", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "```\n   docker run -d -p 3000:8080 --add-host=host.docker.internal:host-gateway -e COMFYUI_BASE_URL=http://host.docker.internal:7860/ -e ENABLE_IMAGE_GENERATION=True -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main\n   ```\n\n### Setting Up Open WebUI with ComfyUI\n\n#### Setting Up FLUX.1 Models\n\n1. **Model Checkpoints**:\n\n* Download either the `FLUX.1-schnell` or `FLUX.1-dev` model from the [black-forest-labs HuggingFace page](https://huggingface.co/black-forest-labs).\n* Place the model checkpoint(s) in both the `models/checkpoints` and `models/unet` directories of ComfyUI. Alternatively, you can create a symbolic link between `models/checkpoints` and `models/unet` to ensure both directories contain the same model checkpoints.\n\n2. **VAE Model**:\n\n* Download `ae.safetensors` VAE from [here](https://huggingface.co/black-forest-labs/FLUX.1-schnell/blob/main/ae.safetensors).\n* Place it in the `models/vae` ComfyUI directory."}


created_at: 2024-12-28 04:06:24
topic: persistent://default/default/9df611d4-5fef-40c1-a9db-767322ce6fe5
id: 5e9bafbc-14c4-46ef-8bad-fb5ede6a1582
encoding: FLOAT32
metadata:
{"source": "images.md", "name": "images.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "bef4e7d2-8104-4fae-a465-68d97df2d27a", "start_index": 3586, "hash": "45c9e60940e13729073da43b1c8310d4c72dd19898c8ff5c0b1077902edf88c9", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "3. **CLIP Model**:\n\n* Download `clip_l.safetensors` from [here](https://huggingface.co/comfyanonymous/flux_text_encoders/tree/main).\n* Place it in the `models/clip` ComfyUI directory.\n\n4. **T5XXL Model**:\n\n* Download either the `t5xxl_fp16.safetensors` or `t5xxl_fp8_e4m3fn.safetensors` model from [here](https://huggingface.co/comfyanonymous/flux_text_encoders/tree/main).\n* Place it in the `models/clip` ComfyUI directory.\n\nTo integrate ComfyUI into Open WebUI, follow these steps:\n\n#### Step 1: Configure Open WebUI Settings\n\n1. Navigate to the **Admin Panel** in Open WebUI.\n2. Click on **Settings** and then select the **Images** tab.\n3. In the `Image Generation Engine` field, choose `ComfyUI`.\n4. In the **API URL** field, enter the address where ComfyUI's API is accessible, following this format: `http://<your_comfyui_address>:8188/`.\n   * Set the environment variable `COMFYUI_BASE_URL` to this address to ensure it persists within the WebUI."}


created_at: 2024-12-28 04:06:24
topic: persistent://default/default/9df611d4-5fef-40c1-a9db-767322ce6fe5
id: 463116b4-4b5f-4599-b6a3-0c3e64bb8725
encoding: FLOAT32
metadata:
{"source": "images.md", "name": "images.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "bef4e7d2-8104-4fae-a465-68d97df2d27a", "start_index": 4541, "hash": "45c9e60940e13729073da43b1c8310d4c72dd19898c8ff5c0b1077902edf88c9", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "#### Step 2: Verify the Connection and Enable Image Generation\n\n1. Ensure ComfyUI is running and that you've successfully verified the connection to Open WebUI. You won't be able to proceed without a successful connection.\n2. Once the connection is verified, toggle on **Image Generation (Experimental)**. More options will be presented to you.\n3. Continue to step 3 for the final configuration steps.\n\n#### Step 3: Configure ComfyUI Settings and Import Workflow"}


created_at: 2024-12-28 04:06:24
topic: persistent://default/default/9df611d4-5fef-40c1-a9db-767322ce6fe5
id: d5dc10ee-ce0b-4049-9f61-99e1506d067d
encoding: FLOAT32
metadata:
{"source": "images.md", "name": "images.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "bef4e7d2-8104-4fae-a465-68d97df2d27a", "start_index": 4944, "hash": "45c9e60940e13729073da43b1c8310d4c72dd19898c8ff5c0b1077902edf88c9", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "#### Step 3: Configure ComfyUI Settings and Import Workflow\n\n1. Enable developer mode within ComfyUI. To do this, look for the gear icon above the **Queue Prompt** button within ComfyUI and enable the `Dev Mode` toggle.\n2. Export the desired workflow from ComfyUI in `API format` using the `Save (API Format)` button. The file will be downloaded as `workflow_api.json` if done correctly.\n3. Return to Open WebUI and click the **Click here to upload a workflow.json file** button.\n4. Select the `workflow_api.json` file to import the exported workflow from ComfyUI into Open WebUI.\n5. After importing the workflow, you must map the `ComfyUI Workflow Nodes` according to the imported workflow node IDs.\n6. Set `Set Default Model` to the name of the model file being used, such as `flux1-dev.safetensors`"}


created_at: 2024-12-28 04:06:24
topic: persistent://default/default/9df611d4-5fef-40c1-a9db-767322ce6fe5
id: 73606e07-731d-468d-9f65-817fac8ace90
encoding: FLOAT32
metadata:
{"source": "images.md", "name": "images.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "bef4e7d2-8104-4fae-a465-68d97df2d27a", "start_index": 5747, "hash": "45c9e60940e13729073da43b1c8310d4c72dd19898c8ff5c0b1077902edf88c9", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": ":::info\nYou may need to adjust an `Input Key` or two within Open WebUI's `ComfyUI Workflow Nodes` section to match a node within your workflow.\nFor example, `seed` may need to be renamed to `noise_seed` to match a node ID within your imported workflow.\n:::\n:::tip\nSome workflows, such as ones that use any of the Flux models, may utilize multiple nodes IDs that is necessary to fill in for their node entry fields within Open WebUI. If a node entry field requires multiple IDs, the node IDs should be comma separated (e.g. `1` or `1, 2`).\n:::\n\n6. Click `Save` to apply the settings and enjoy image generation with ComfyUI integrated into Open WebUI!\n\nAfter completing these steps, your ComfyUI setup should be integrated with Open WebUI, and you can use the Flux.1 models for image generation.\n\n### Configuring with SwarmUI"}


created_at: 2024-12-28 04:06:24
topic: persistent://default/default/9df611d4-5fef-40c1-a9db-767322ce6fe5
id: 6545fe9c-1fa1-48ab-bf76-6328490a064f
encoding: FLOAT32
metadata:
{"source": "images.md", "name": "images.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "bef4e7d2-8104-4fae-a465-68d97df2d27a", "start_index": 6542, "hash": "45c9e60940e13729073da43b1c8310d4c72dd19898c8ff5c0b1077902edf88c9", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "### Configuring with SwarmUI\n\nSwarmUI utilizes ComfyUI as its backend. In order to get Open WebUI to work with SwarmUI you will have to append `ComfyBackendDirect` to the `ComfyUI Base URL`. Additionally, you will want to setup SwarmUI with LAN access. After aforementioned adjustments, setting up SwarmUI to work with Open WebUI will be the same as [Step one: Configure Open WebUI Settings](https://github.com/open-webui/docs/edit/main/docs/features/images.md#step-1-configure-open-webui-settings) as outlined above.\n![Install SwarmUI with LAN Access](https://github.com/user-attachments/assets/a6567e13-1ced-4743-8d8e-be526207f9f6)\n\n#### SwarmUI API URL\n\nThe address you will input as the ComfyUI Base URL will look like: `http://<your_swarmui_address>:7801/ComfyBackendDirect`\n\n## OpenAI DALL\u00b7E\n\nOpen WebUI also supports image generation through the **OpenAI DALL\u00b7E APIs**. This option includes a selector for choosing between DALL\u00b7E 2 and DALL\u00b7E 3, each supporting different image sizes."}


created_at: 2024-12-28 04:06:24
topic: persistent://default/default/9df611d4-5fef-40c1-a9db-767322ce6fe5
id: 690fa482-f483-4b8f-b6c3-10942f7a6403
encoding: FLOAT32
metadata:
{"source": "images.md", "name": "images.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "bef4e7d2-8104-4fae-a465-68d97df2d27a", "start_index": 7535, "hash": "45c9e60940e13729073da43b1c8310d4c72dd19898c8ff5c0b1077902edf88c9", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "### Initial Setup\n\n1. Obtain an [API key](https://platform.openai.com/api-keys) from OpenAI.\n\n### Configuring Open WebUI\n\n1. In Open WebUI, navigate to the **Admin Panel** > **Settings** > **Images** menu.\n2. Set the `Image Generation Engine` field to `Open AI (Dall-E)`.\n3. Enter your OpenAI API key.\n4. Choose the DALL\u00b7E model you wish to use. Note that image size options will depend on the selected model:\n   * **DALL\u00b7E 2**: Supports `256x256`, `512x512`, or `1024x1024` images.\n   * **DALL\u00b7E 3**: Supports `1024x1024`, `1792x1024`, or `1024x1792` images.\n\n### Azure OpenAI\n\nUsing Azure OpenAI Dall-E directly is unsupported, but you can [set up a LiteLLM proxy](https://litellm.vercel.app/docs/image_generation) which is compatible with the `Open AI (Dall-E)` Image Generation Engine.\n\n## Using Image Generation\n\n![Image Generation Tutorial](/img/tutorial_image_generation.png)"}


created_at: 2024-12-28 04:06:24
topic: persistent://default/default/9df611d4-5fef-40c1-a9db-767322ce6fe5
id: bc5deae8-e10d-4f99-9a9c-cd2231dd3e2a
encoding: FLOAT32
metadata:
{"source": "images.md", "name": "images.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "bef4e7d2-8104-4fae-a465-68d97df2d27a", "start_index": 8326, "hash": "45c9e60940e13729073da43b1c8310d4c72dd19898c8ff5c0b1077902edf88c9", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "## Using Image Generation\n\n![Image Generation Tutorial](/img/tutorial_image_generation.png)\n\n1. First, use a text generation model to write a prompt for image generation.\n2. After the response has finished, you can click the Picture icon to generate an image.\n3. After the image has finished generating, it will be returned automatically in chat.\n\n:::tip\n    You can also edit the LLM's response and enter your image generation prompt as the message\n    to send off for image generation instead of using the actual response provided by the\n    LLM.\n:::"}


created_at: 2024-12-28 04:06:24
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: d34d9db2-a691-4271-b79e-bebd3c7a5a13
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "bef4e7d2-8104-4fae-a465-68d97df2d27a", "hash": "45c9e60940e13729073da43b1c8310d4c72dd19898c8ff5c0b1077902edf88c9", "name": "images.md", "source": "images.md", "start_index": 0, "chroma:document": "---\nsidebar_position: 6\ntitle: \"\ud83c\udfa8 Image Generation\"\n---\n\n:::warning\nThis tutorial is a community contribution and is not supported by the OpenWebUI team. It serves only as a demonstration on how to customize OpenWebUI for your specific use case. Want to contribute? Check out the contributing tutorial.\n:::\n\n# \ud83c\udfa8 Image Generation\n\nOpen WebUI supports image generation through three backends: **AUTOMATIC1111**, **ComfyUI**, and **OpenAI DALL\u00b7E**. This guide will help you set up and use either of these options.\n\n## AUTOMATIC1111\n\nOpen WebUI supports image generation through the **AUTOMATIC1111** [API](https://github.com/AUTOMATIC1111/stable-diffusion-webui/wiki/API). Here are the steps to get started:\n\n### Initial Setup\n\n1. Ensure that you have [AUTOMATIC1111](https://github.com/AUTOMATIC1111/stable-diffusion-webui) installed.\n2. Launch AUTOMATIC1111 with additional flags to enable API access:\n\n   ```\n   ./webui.sh --api --listen\n   ```"}


created_at: 2024-12-28 04:06:24
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 36a66c19-30ac-4908-9b8f-ec5760bbdba3
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "bef4e7d2-8104-4fae-a465-68d97df2d27a", "hash": "45c9e60940e13729073da43b1c8310d4c72dd19898c8ff5c0b1077902edf88c9", "name": "images.md", "source": "images.md", "start_index": 0, "chroma:document": "```\n   ./webui.sh --api --listen\n   ```\n\n3. For Docker installation of WebUI with the environment variables preset, use the following command:\n\n   ```\n   docker run -d -p 3000:8080 --add-host=host.docker.internal:host-gateway -e AUTOMATIC1111_BASE_URL=http://host.docker.internal:7860/ -e ENABLE_IMAGE_GENERATION=True -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main\n   ```\n\n### Setting Up Open WebUI with AUTOMATIC1111\n\n1. In Open WebUI, navigate to the **Admin Panel** > **Settings** > **Images** menu.\n2. Set the `Image Generation Engine` field to `Default (Automatic1111)`.\n3. In the API URL field, enter the address where AUTOMATIC1111's API is accessible:\n\n   ```\n   http://<your_automatic1111_address>:7860/\n   ```\n\n   If you're running a Docker installation of Open WebUI and AUTOMATIC1111 on the same host, use `http://host.docker.internal:7860/` as your address.\n\n## ComfyUI"}


created_at: 2024-12-28 04:06:24
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: f8264d55-6d19-4a35-9d90-6aa52e031913
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "bef4e7d2-8104-4fae-a465-68d97df2d27a", "hash": "45c9e60940e13729073da43b1c8310d4c72dd19898c8ff5c0b1077902edf88c9", "name": "images.md", "source": "images.md", "start_index": 0, "chroma:document": "## ComfyUI\n\nComfyUI provides an alternative interface for managing and interacting with image generation models. Learn more or download it from its [GitHub page](https://github.com/comfyanonymous/ComfyUI). Below are the setup instructions to get ComfyUI running alongside your other tools.\n\n### Initial Setup\n\n1. Download and extract the ComfyUI software package from [GitHub](https://github.com/comfyanonymous/ComfyUI) to your desired directory.\n2. To start ComfyUI, run the following command:\n\n   ```\n   python main.py\n   ```\n\n   For systems with low VRAM, launch ComfyUI with additional flags to reduce memory usage:\n\n   ```\n   python main.py --lowvram\n   ```\n\n3. For Docker installation of WebUI with the environment variables preset, use the following command:"}


created_at: 2024-12-28 04:06:24
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 79e02c1f-798c-4e36-bf08-29715d8d4821
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "bef4e7d2-8104-4fae-a465-68d97df2d27a", "hash": "45c9e60940e13729073da43b1c8310d4c72dd19898c8ff5c0b1077902edf88c9", "name": "images.md", "source": "images.md", "start_index": 0, "chroma:document": "```\n   docker run -d -p 3000:8080 --add-host=host.docker.internal:host-gateway -e COMFYUI_BASE_URL=http://host.docker.internal:7860/ -e ENABLE_IMAGE_GENERATION=True -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main\n   ```\n\n### Setting Up Open WebUI with ComfyUI\n\n#### Setting Up FLUX.1 Models\n\n1. **Model Checkpoints**:\n\n* Download either the `FLUX.1-schnell` or `FLUX.1-dev` model from the [black-forest-labs HuggingFace page](https://huggingface.co/black-forest-labs).\n* Place the model checkpoint(s) in both the `models/checkpoints` and `models/unet` directories of ComfyUI. Alternatively, you can create a symbolic link between `models/checkpoints` and `models/unet` to ensure both directories contain the same model checkpoints.\n\n2. **VAE Model**:\n\n* Download `ae.safetensors` VAE from [here](https://huggingface.co/black-forest-labs/FLUX.1-schnell/blob/main/ae.safetensors).\n* Place it in the `models/vae` ComfyUI directory."}


created_at: 2024-12-28 04:06:24
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 7c1415e8-aa06-4dad-b194-2b218e3b52c1
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "bef4e7d2-8104-4fae-a465-68d97df2d27a", "hash": "45c9e60940e13729073da43b1c8310d4c72dd19898c8ff5c0b1077902edf88c9", "name": "images.md", "source": "images.md", "start_index": 0, "chroma:document": "3. **CLIP Model**:\n\n* Download `clip_l.safetensors` from [here](https://huggingface.co/comfyanonymous/flux_text_encoders/tree/main).\n* Place it in the `models/clip` ComfyUI directory.\n\n4. **T5XXL Model**:\n\n* Download either the `t5xxl_fp16.safetensors` or `t5xxl_fp8_e4m3fn.safetensors` model from [here](https://huggingface.co/comfyanonymous/flux_text_encoders/tree/main).\n* Place it in the `models/clip` ComfyUI directory.\n\nTo integrate ComfyUI into Open WebUI, follow these steps:\n\n#### Step 1: Configure Open WebUI Settings\n\n1. Navigate to the **Admin Panel** in Open WebUI.\n2. Click on **Settings** and then select the **Images** tab.\n3. In the `Image Generation Engine` field, choose `ComfyUI`.\n4. In the **API URL** field, enter the address where ComfyUI's API is accessible, following this format: `http://<your_comfyui_address>:8188/`.\n   * Set the environment variable `COMFYUI_BASE_URL` to this address to ensure it persists within the WebUI."}


created_at: 2024-12-28 04:06:24
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 1bc640ce-61bf-4ec5-aaa1-896269987d86
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "bef4e7d2-8104-4fae-a465-68d97df2d27a", "hash": "45c9e60940e13729073da43b1c8310d4c72dd19898c8ff5c0b1077902edf88c9", "name": "images.md", "source": "images.md", "start_index": 0, "chroma:document": "#### Step 2: Verify the Connection and Enable Image Generation\n\n1. Ensure ComfyUI is running and that you've successfully verified the connection to Open WebUI. You won't be able to proceed without a successful connection.\n2. Once the connection is verified, toggle on **Image Generation (Experimental)**. More options will be presented to you.\n3. Continue to step 3 for the final configuration steps.\n\n#### Step 3: Configure ComfyUI Settings and Import Workflow"}


created_at: 2024-12-28 04:06:24
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 98c25d40-54e5-42de-911c-b3ab05d7ae74
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "bef4e7d2-8104-4fae-a465-68d97df2d27a", "hash": "45c9e60940e13729073da43b1c8310d4c72dd19898c8ff5c0b1077902edf88c9", "name": "images.md", "source": "images.md", "start_index": 0, "chroma:document": "#### Step 3: Configure ComfyUI Settings and Import Workflow\n\n1. Enable developer mode within ComfyUI. To do this, look for the gear icon above the **Queue Prompt** button within ComfyUI and enable the `Dev Mode` toggle.\n2. Export the desired workflow from ComfyUI in `API format` using the `Save (API Format)` button. The file will be downloaded as `workflow_api.json` if done correctly.\n3. Return to Open WebUI and click the **Click here to upload a workflow.json file** button.\n4. Select the `workflow_api.json` file to import the exported workflow from ComfyUI into Open WebUI.\n5. After importing the workflow, you must map the `ComfyUI Workflow Nodes` according to the imported workflow node IDs.\n6. Set `Set Default Model` to the name of the model file being used, such as `flux1-dev.safetensors`"}


created_at: 2024-12-28 04:06:24
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 8911350c-980d-422a-bdc4-96b9bcdd7607
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "bef4e7d2-8104-4fae-a465-68d97df2d27a", "hash": "45c9e60940e13729073da43b1c8310d4c72dd19898c8ff5c0b1077902edf88c9", "name": "images.md", "source": "images.md", "start_index": 0, "chroma:document": ":::info\nYou may need to adjust an `Input Key` or two within Open WebUI's `ComfyUI Workflow Nodes` section to match a node within your workflow.\nFor example, `seed` may need to be renamed to `noise_seed` to match a node ID within your imported workflow.\n:::\n:::tip\nSome workflows, such as ones that use any of the Flux models, may utilize multiple nodes IDs that is necessary to fill in for their node entry fields within Open WebUI. If a node entry field requires multiple IDs, the node IDs should be comma separated (e.g. `1` or `1, 2`).\n:::\n\n6. Click `Save` to apply the settings and enjoy image generation with ComfyUI integrated into Open WebUI!\n\nAfter completing these steps, your ComfyUI setup should be integrated with Open WebUI, and you can use the Flux.1 models for image generation.\n\n### Configuring with SwarmUI"}


created_at: 2024-12-28 04:06:24
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 2405f6e1-488c-48d3-a4d9-915df5c70218
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "bef4e7d2-8104-4fae-a465-68d97df2d27a", "hash": "45c9e60940e13729073da43b1c8310d4c72dd19898c8ff5c0b1077902edf88c9", "name": "images.md", "source": "images.md", "start_index": 0, "chroma:document": "### Configuring with SwarmUI\n\nSwarmUI utilizes ComfyUI as its backend. In order to get Open WebUI to work with SwarmUI you will have to append `ComfyBackendDirect` to the `ComfyUI Base URL`. Additionally, you will want to setup SwarmUI with LAN access. After aforementioned adjustments, setting up SwarmUI to work with Open WebUI will be the same as [Step one: Configure Open WebUI Settings](https://github.com/open-webui/docs/edit/main/docs/features/images.md#step-1-configure-open-webui-settings) as outlined above.\n![Install SwarmUI with LAN Access](https://github.com/user-attachments/assets/a6567e13-1ced-4743-8d8e-be526207f9f6)\n\n#### SwarmUI API URL\n\nThe address you will input as the ComfyUI Base URL will look like: `http://<your_swarmui_address>:7801/ComfyBackendDirect`\n\n## OpenAI DALL\u00b7E\n\nOpen WebUI also supports image generation through the **OpenAI DALL\u00b7E APIs**. This option includes a selector for choosing between DALL\u00b7E 2 and DALL\u00b7E 3, each supporting different image sizes."}


created_at: 2024-12-28 04:06:24
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 709c1868-13be-4aa7-ab02-21bdde6b11b6
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "bef4e7d2-8104-4fae-a465-68d97df2d27a", "hash": "45c9e60940e13729073da43b1c8310d4c72dd19898c8ff5c0b1077902edf88c9", "name": "images.md", "source": "images.md", "start_index": 0, "chroma:document": "### Initial Setup\n\n1. Obtain an [API key](https://platform.openai.com/api-keys) from OpenAI.\n\n### Configuring Open WebUI\n\n1. In Open WebUI, navigate to the **Admin Panel** > **Settings** > **Images** menu.\n2. Set the `Image Generation Engine` field to `Open AI (Dall-E)`.\n3. Enter your OpenAI API key.\n4. Choose the DALL\u00b7E model you wish to use. Note that image size options will depend on the selected model:\n   * **DALL\u00b7E 2**: Supports `256x256`, `512x512`, or `1024x1024` images.\n   * **DALL\u00b7E 3**: Supports `1024x1024`, `1792x1024`, or `1024x1792` images.\n\n### Azure OpenAI\n\nUsing Azure OpenAI Dall-E directly is unsupported, but you can [set up a LiteLLM proxy](https://litellm.vercel.app/docs/image_generation) which is compatible with the `Open AI (Dall-E)` Image Generation Engine.\n\n## Using Image Generation\n\n![Image Generation Tutorial](/img/tutorial_image_generation.png)"}


created_at: 2024-12-28 04:06:24
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: afa78e88-1ed5-4aaf-ae2f-d3a2b1171ee4
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "bef4e7d2-8104-4fae-a465-68d97df2d27a", "hash": "45c9e60940e13729073da43b1c8310d4c72dd19898c8ff5c0b1077902edf88c9", "name": "images.md", "source": "images.md", "start_index": 0, "chroma:document": "## Using Image Generation\n\n![Image Generation Tutorial](/img/tutorial_image_generation.png)\n\n1. First, use a text generation model to write a prompt for image generation.\n2. After the response has finished, you can click the Picture icon to generate an image.\n3. After the image has finished generating, it will be returned automatically in chat.\n\n:::tip\n    You can also edit the LLM's response and enter your image generation prompt as the message\n    to send off for image generation instead of using the actual response provided by the\n    LLM.\n:::"}


created_at: 2024-12-28 04:06:25
topic: persistent://default/default/120cd541-2023-45d1-b1c1-01f8e5e3e03e
id: 74e5253f-6933-44df-b743-61221777574a
encoding: FLOAT32
metadata:
{"source": "import.md", "name": "import.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "fa75209f-33c7-4391-8fca-ab700846c60a", "start_index": 0, "hash": "1bc5132af8a43770e326ddb57beda3dddf67bc74c3a591ac9b7967b2d106bc46", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "---\nsidebar_position: 5\ntitle: \"\ud83d\udce5 Importing Chats\"\n---\n\nCOMING SOON!"}


created_at: 2024-12-28 04:06:25
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 96d12d70-6f5b-448d-8aee-f6c519659228
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "fa75209f-33c7-4391-8fca-ab700846c60a", "hash": "1bc5132af8a43770e326ddb57beda3dddf67bc74c3a591ac9b7967b2d106bc46", "name": "import.md", "source": "import.md", "start_index": 0, "chroma:document": "---\nsidebar_position: 5\ntitle: \"\ud83d\udce5 Importing Chats\"\n---\n\nCOMING SOON!"}


created_at: 2024-12-28 04:06:25
topic: persistent://default/default/11d7502f-f96c-4038-b4b9-ce4bb1e854b1
id: cd5ad34b-f135-49d6-a134-90c586ba2383
encoding: FLOAT32
metadata:
{"source": "index.md", "name": "index.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "d25d73c7-e738-4df5-bb79-ebf19bd458a9", "start_index": 0, "hash": "04c1b2704d0686bc87f4cf23db5f5db7b4f7748cfb40621a54928a931b81a4a1", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "---\nsidebar_position: 5\ntitle: \"\ud83d\udc0d Code Execution\"\n---\n\nCOMING SOON!"}


created_at: 2024-12-28 04:06:25
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 99472cd0-8044-4575-90df-c157759ee465
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "d25d73c7-e738-4df5-bb79-ebf19bd458a9", "hash": "04c1b2704d0686bc87f4cf23db5f5db7b4f7748cfb40621a54928a931b81a4a1", "name": "index.md", "source": "index.md", "start_index": 0, "chroma:document": "---\nsidebar_position: 5\ntitle: \"\ud83d\udc0d Code Execution\"\n---\n\nCOMING SOON!"}


created_at: 2024-12-28 04:06:25
topic: persistent://default/default/afc631d0-aa1a-45a9-b3bf-8237b33bb5c2
id: afa58c09-2027-4e18-bf17-a376fc9db60e
encoding: FLOAT32
metadata:
{"source": "index.mdx", "name": "index.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "4ed38f24-ca97-4c30-aec9-0f3889673fc2", "start_index": 0, "hash": "b416dd9be3a9d0f40457698689ff9ded8ad02dd6b7938b4dcd5023f35e901cd0", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "---\nsidebar_position: 6\ntitle: \"\u2696\ufe0f Stateless Load Balancing\"\n---"}


created_at: 2024-12-28 04:06:25
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: f56071de-0ed2-46d8-b42c-0e93aaa6f21c
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "4ed38f24-ca97-4c30-aec9-0f3889673fc2", "hash": "b416dd9be3a9d0f40457698689ff9ded8ad02dd6b7938b4dcd5023f35e901cd0", "name": "index.mdx", "source": "index.mdx", "start_index": 0, "chroma:document": "---\nsidebar_position: 6\ntitle: \"\u2696\ufe0f Stateless Load Balancing\"\n---"}


created_at: 2024-12-28 04:06:25
topic: persistent://default/default/a0491f27-6399-4554-9b64-67b19950318a
id: 348eb108-5dfa-45bc-a858-923b0e9e31f8
encoding: FLOAT32
metadata:
{"source": "intro.mdx", "name": "intro.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "7a93163f-85d5-4189-8ba3-6e1b1cb194e2", "start_index": 0, "hash": "00ebd034ea7892531fbc2f52830a4c12f2bb62065107c7b9082550289e66dea7", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "---\nsidebar_position: 0\nslug: /\ntitle: \ud83c\udfe1 Home\nhide_title: true\n---\n\nimport { TopBanners } from \"@site/src/components/TopBanners\";\nimport { SponsorList } from \"@site/src/components/SponsorList\";\n\n# Open WebUI\n\n<TopBanners />\n\n**Open WebUI is an [extensible](https://docs.openwebui.com/features/plugin/), feature-rich, and user-friendly self-hosted AI interface designed to operate entirely offline.** It supports various LLM runners, including Ollama and OpenAI-compatible APIs."}


created_at: 2024-12-28 04:06:25
topic: persistent://default/default/a0491f27-6399-4554-9b64-67b19950318a
id: 6b87a511-d57a-443c-b83b-8d497132127a
encoding: FLOAT32
metadata:
{"source": "intro.mdx", "name": "intro.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "7a93163f-85d5-4189-8ba3-6e1b1cb194e2", "start_index": 479, "hash": "00ebd034ea7892531fbc2f52830a4c12f2bb62065107c7b9082550289e66dea7", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "![GitHub stars](https://img.shields.io/github/stars/open-webui/open-webui?style=social)\n![GitHub forks](https://img.shields.io/github/forks/open-webui/open-webui?style=social)\n![GitHub watchers](https://img.shields.io/github/watchers/open-webui/open-webui?style=social)\n![GitHub repo size](https://img.shields.io/github/repo-size/open-webui/open-webui)\n![GitHub language count](https://img.shields.io/github/languages/count/open-webui/open-webui)\n![GitHub top language](https://img.shields.io/github/languages/top/open-webui/open-webui)\n![GitHub last commit](https://img.shields.io/github/last-commit/open-webui/open-webui?color=red)\n![Hits](https://hits.seeyoufarm.com/api/count/incr/badge.svg?url=https%3A%2F%2Fgithub.com%2Follama-webui%2Follama-wbui&count_bg=%2379C83D&title_bg=%23555555&icon=&icon_color=%23E7E7E7&title=hits&edge_flat=false)\n[![Discord](https://img.shields.io/badge/Discord-Open_WebUI-blue?logo=discord&logoColor=white)](https://discord.gg/5rJgQTnV4s)"}


created_at: 2024-12-28 04:06:25
topic: persistent://default/default/a0491f27-6399-4554-9b64-67b19950318a
id: b3345207-67de-47a3-bddb-4e074b0cf9c3
encoding: FLOAT32
metadata:
{"source": "intro.mdx", "name": "intro.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "7a93163f-85d5-4189-8ba3-6e1b1cb194e2", "start_index": 1452, "hash": "00ebd034ea7892531fbc2f52830a4c12f2bb62065107c7b9082550289e66dea7", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "[![](https://img.shields.io/static/v1?label=Sponsor&message=%E2%9D%A4&logo=GitHub&color=%23fe8e86)](https://github.com/sponsors/tjbck)"}


created_at: 2024-12-28 04:06:25
topic: persistent://default/default/a0491f27-6399-4554-9b64-67b19950318a
id: 5e32f400-0ce8-4962-bb11-aa88b68db55b
encoding: FLOAT32
metadata:
{"source": "intro.mdx", "name": "intro.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "7a93163f-85d5-4189-8ba3-6e1b1cb194e2", "start_index": 1588, "hash": "00ebd034ea7892531fbc2f52830a4c12f2bb62065107c7b9082550289e66dea7", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "![Open WebUI Demo](/img/demo.gif)\n\n:::info **Important Note on User Roles and Privacy:**\n\n- **Admin Creation:** The first account created on Open WebUI gains **Administrator privileges**, controlling user management and system settings.\n\n- **User Registrations:** Subsequent sign-ups start with **Pending** status, requiring Administrator approval for access.\n\n- **Privacy and Data Security:** **All your data**, including login details, is **locally stored** on your device. Open WebUI ensures **strict confidentiality** and **no external requests** for enhanced privacy and security.\n\n:::\n\n## Quick Start with Docker \ud83d\udc33 (Recommended)\n\n:::tip\n\n#### Disabling Login for Single User\n\nIf you want to disable login for a single-user setup, set [`WEBUI_AUTH`](./getting-started/advanced-topics/env-configuration) to `False`. This will bypass the login page.\n\n:::warning\nYou cannot switch between single-user mode and multi-account mode after this change.\n:::"}


created_at: 2024-12-28 04:06:25
topic: persistent://default/default/a0491f27-6399-4554-9b64-67b19950318a
id: 360ddbc7-d262-474d-94d9-79b4d108d68b
encoding: FLOAT32
metadata:
{"source": "intro.mdx", "name": "intro.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "7a93163f-85d5-4189-8ba3-6e1b1cb194e2", "start_index": 2543, "hash": "00ebd034ea7892531fbc2f52830a4c12f2bb62065107c7b9082550289e66dea7", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": ":::danger\nWhen using Docker to install Open WebUI, make sure to include the `-v open-webui:/app/backend/data` in your Docker command. This step is crucial as it ensures your database is properly mounted and prevents any loss of data.\n:::\n\n<details> \n<summary>Data Storage in Docker</summary>\n\nThis tutorial uses [Docker named volumes](https://docs.docker.com/storage/volumes/) to guarantee the **persistance of your data**. This might make it difficult to know exactly where your data is stored in your machine if this is your first time using Docker. Alternatively, you can replace the volume name with a absolute path on your host machine to link your container data to a folder in your computer using a [bind mount](https://docs.docker.com/storage/bind-mounts/).\n\n**Example**: change `-v open-webui:/app/backend/data` to `-v /path/to/folder:/app/backend/data`\n\nEnsure you have the proper access rights to the folder on your host machine."}


created_at: 2024-12-28 04:06:25
topic: persistent://default/default/a0491f27-6399-4554-9b64-67b19950318a
id: a3f12ae5-e1dd-4831-be80-bbccb5310d88
encoding: FLOAT32
metadata:
{"source": "intro.mdx", "name": "intro.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "7a93163f-85d5-4189-8ba3-6e1b1cb194e2", "start_index": 3407, "hash": "00ebd034ea7892531fbc2f52830a4c12f2bb62065107c7b9082550289e66dea7", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "Ensure you have the proper access rights to the folder on your host machine.\n\nVisit the [Docker documentation](https://docs.docker.com/storage/) to understand more about volumes and bind mounts.\n</details>\n\n### Installation with Default Configuration\n\n- **If Ollama is on your computer**, use this command:\n\n  ```bash\n  docker run -d -p 3000:8080 --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main\n  ```\n\n- **If Ollama is on a Different Server**, use this command:\n\n  To connect to Ollama on another server, change the `OLLAMA_BASE_URL` to the server's URL:\n\n  ```bash\n  docker run -d -p 3000:8080 -e OLLAMA_BASE_URL=https://example.com -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main\n  ```\n\n  - **To run Open WebUI with Nvidia GPU support**, use this command:"}


created_at: 2024-12-28 04:06:25
topic: persistent://default/default/a0491f27-6399-4554-9b64-67b19950318a
id: eab3cbfb-d68c-488e-ae37-87e0dd2ef2cc
encoding: FLOAT32
metadata:
{"source": "intro.mdx", "name": "intro.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "7a93163f-85d5-4189-8ba3-6e1b1cb194e2", "start_index": 4251, "hash": "00ebd034ea7892531fbc2f52830a4c12f2bb62065107c7b9082550289e66dea7", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "- **To run Open WebUI with Nvidia GPU support**, use this command:\n\n  ```bash\n  docker run -d -p 3000:8080 --gpus all --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:cuda\n  ```\n\n### Installation for OpenAI API Usage Only\n\n- **If you're only using OpenAI API**, use this command:\n\n  ```bash\n  docker run -d -p 3000:8080 -e OPENAI_API_KEY=your_secret_key -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main\n  ```\n\n### Installing Open WebUI with Bundled Ollama Support\n\nThis installation method uses a single container image that bundles Open WebUI with Ollama, allowing for a streamlined setup via a single command. Choose the appropriate command based on your hardware setup:\n\n- **With GPU Support**:\n  Utilize GPU resources by running the following command:"}


created_at: 2024-12-28 04:06:25
topic: persistent://default/default/a0491f27-6399-4554-9b64-67b19950318a
id: 921c9b83-89ac-4e5d-8c51-18744f4bb272
encoding: FLOAT32
metadata:
{"source": "intro.mdx", "name": "intro.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "7a93163f-85d5-4189-8ba3-6e1b1cb194e2", "start_index": 5071, "hash": "00ebd034ea7892531fbc2f52830a4c12f2bb62065107c7b9082550289e66dea7", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "- **With GPU Support**:\n  Utilize GPU resources by running the following command:\n\n  ```bash\n  docker run -d -p 3000:8080 --gpus=all -v ollama:/root/.ollama -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:ollama\n  ```\n\n- **For CPU Only**:\n  If you're not using a GPU, use this command instead:\n\n  ```bash\n  docker run -d -p 3000:8080 -v ollama:/root/.ollama -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:ollama\n  ```\n\nBoth commands facilitate a built-in, hassle-free installation of both Open WebUI and Ollama, ensuring that you can get everything up and running swiftly.\n\nAfter installation, you can access Open WebUI at [http://localhost:3000](http://localhost:3000). Enjoy! \ud83d\ude04\n\n### Using the Dev Branch \ud83c\udf19\n\n:::warning\nThe `:dev` branch contains the latest unstable features and changes. Use it at your own risk as it may have bugs or incomplete features.\n:::"}


created_at: 2024-12-28 04:06:25
topic: persistent://default/default/a0491f27-6399-4554-9b64-67b19950318a
id: ebcfd89b-9a6e-4b64-944a-2485d9d41e72
encoding: FLOAT32
metadata:
{"source": "intro.mdx", "name": "intro.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "7a93163f-85d5-4189-8ba3-6e1b1cb194e2", "start_index": 6032, "hash": "00ebd034ea7892531fbc2f52830a4c12f2bb62065107c7b9082550289e66dea7", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "If you want to try out the latest bleeding-edge features and are okay with occasional instability, you can use the `:dev` tag like this:\n\n```bash\ndocker run -d -p 3000:8080 -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:dev\n```\n\n## Manual Installation\n\n### Installation with `pip` (Beta)\n\nFor users who prefer to use Python's package manager `pip`, Open WebUI offers a installation method. Python 3.11 is required for this method.\n\n1. **Install Open WebUI**:\n   Open your terminal and run the following command:\n\n   ```bash\n   pip install open-webui\n   ```\n\n2. **Start Open WebUI**:\n   Once installed, start the server using:\n\n   ```bash\n   open-webui serve\n   ```\n\nThis method installs all necessary dependencies and starts Open WebUI, allowing for a simple and efficient setup. After installation, you can access Open WebUI at [http://localhost:8080](http://localhost:8080). Enjoy! \ud83d\ude04\n\n## Other Installation Methods"}


created_at: 2024-12-28 04:06:25
topic: persistent://default/default/a0491f27-6399-4554-9b64-67b19950318a
id: bb4efaa9-b3fd-4030-9815-f9c66f6a228d
encoding: FLOAT32
metadata:
{"source": "intro.mdx", "name": "intro.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "7a93163f-85d5-4189-8ba3-6e1b1cb194e2", "start_index": 6969, "hash": "00ebd034ea7892531fbc2f52830a4c12f2bb62065107c7b9082550289e66dea7", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "## Other Installation Methods\n\nWe offer various installation alternatives, including non-Docker native installation methods, Docker Compose, Kustomize, and Helm. Visit our [Open WebUI Documentation](https://docs.openwebui.com/getting-started/) or join our [Discord community](https://discord.gg/5rJgQTnV4s) for comprehensive guidance.\n\n## Troubleshooting\n\nIf you're facing various issues like \"Open WebUI: Server Connection Error\", see [TROUBLESHOOTING](troubleshooting) for information on how to troubleshoot and/or join our [Open WebUI Discord community](https://discord.gg/5rJgQTnV4s).\n\n## Updating\n\nCheck out how to update Docker in the [Quick Start guide](./getting-started/quick-start).\n\nIn case you want to update your local Docker installation to the latest version, you can do it with [Watchtower](https://containrrr.dev/watchtower/):\n\n```bash\ndocker run --rm --volume /var/run/docker.sock:/var/run/docker.sock containrrr/watchtower --run-once open-webui\n```"}


created_at: 2024-12-28 04:06:25
topic: persistent://default/default/a0491f27-6399-4554-9b64-67b19950318a
id: 737dfa66-debb-47ac-8c58-653b659ca538
encoding: FLOAT32
metadata:
{"source": "intro.mdx", "name": "intro.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "7a93163f-85d5-4189-8ba3-6e1b1cb194e2", "start_index": 7938, "hash": "00ebd034ea7892531fbc2f52830a4c12f2bb62065107c7b9082550289e66dea7", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "In the last part of the command, replace `open-webui` with your container name if it is different.\n\nContinue with the full [getting started guide](/getting-started).\n\n## Sponsors \ud83d\ude4c\n\nWe are incredibly grateful for the generous support of our sponsors. Their contributions help us to maintain and improve our project, ensuring we can continue to deliver quality work to our community. Thank you!\n\n<SponsorList />"}


created_at: 2024-12-28 04:06:26
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 0002a12d-ff3d-4329-b93a-72c9a28a56f5
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "7a93163f-85d5-4189-8ba3-6e1b1cb194e2", "hash": "00ebd034ea7892531fbc2f52830a4c12f2bb62065107c7b9082550289e66dea7", "name": "intro.mdx", "source": "intro.mdx", "start_index": 0, "chroma:document": "---\nsidebar_position: 0\nslug: /\ntitle: \ud83c\udfe1 Home\nhide_title: true\n---\n\nimport { TopBanners } from \"@site/src/components/TopBanners\";\nimport { SponsorList } from \"@site/src/components/SponsorList\";\n\n# Open WebUI\n\n<TopBanners />\n\n**Open WebUI is an [extensible](https://docs.openwebui.com/features/plugin/), feature-rich, and user-friendly self-hosted AI interface designed to operate entirely offline.** It supports various LLM runners, including Ollama and OpenAI-compatible APIs."}


created_at: 2024-12-28 04:06:26
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: d0a46e06-94c0-4fa8-9782-a9c0fc34fec1
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "7a93163f-85d5-4189-8ba3-6e1b1cb194e2", "hash": "00ebd034ea7892531fbc2f52830a4c12f2bb62065107c7b9082550289e66dea7", "name": "intro.mdx", "source": "intro.mdx", "start_index": 0, "chroma:document": "![GitHub stars](https://img.shields.io/github/stars/open-webui/open-webui?style=social)\n![GitHub forks](https://img.shields.io/github/forks/open-webui/open-webui?style=social)\n![GitHub watchers](https://img.shields.io/github/watchers/open-webui/open-webui?style=social)\n![GitHub repo size](https://img.shields.io/github/repo-size/open-webui/open-webui)\n![GitHub language count](https://img.shields.io/github/languages/count/open-webui/open-webui)\n![GitHub top language](https://img.shields.io/github/languages/top/open-webui/open-webui)\n![GitHub last commit](https://img.shields.io/github/last-commit/open-webui/open-webui?color=red)\n![Hits](https://hits.seeyoufarm.com/api/count/incr/badge.svg?url=https%3A%2F%2Fgithub.com%2Follama-webui%2Follama-wbui&count_bg=%2379C83D&title_bg=%23555555&icon=&icon_color=%23E7E7E7&title=hits&edge_flat=false)\n[![Discord](https://img.shields.io/badge/Discord-Open_WebUI-blue?logo=discord&logoColor=white)](https://discord.gg/5rJgQTnV4s)"}


created_at: 2024-12-28 04:06:26
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: db4b82cc-79f1-467d-99f3-ba93b0c59955
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "7a93163f-85d5-4189-8ba3-6e1b1cb194e2", "hash": "00ebd034ea7892531fbc2f52830a4c12f2bb62065107c7b9082550289e66dea7", "name": "intro.mdx", "source": "intro.mdx", "start_index": 0, "chroma:document": "[![](https://img.shields.io/static/v1?label=Sponsor&message=%E2%9D%A4&logo=GitHub&color=%23fe8e86)](https://github.com/sponsors/tjbck)"}


created_at: 2024-12-28 04:06:26
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 44cdf3cd-80e1-436b-9fc5-77adfd61e546
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "7a93163f-85d5-4189-8ba3-6e1b1cb194e2", "hash": "00ebd034ea7892531fbc2f52830a4c12f2bb62065107c7b9082550289e66dea7", "name": "intro.mdx", "source": "intro.mdx", "start_index": 0, "chroma:document": "![Open WebUI Demo](/img/demo.gif)\n\n:::info **Important Note on User Roles and Privacy:**\n\n- **Admin Creation:** The first account created on Open WebUI gains **Administrator privileges**, controlling user management and system settings.\n\n- **User Registrations:** Subsequent sign-ups start with **Pending** status, requiring Administrator approval for access.\n\n- **Privacy and Data Security:** **All your data**, including login details, is **locally stored** on your device. Open WebUI ensures **strict confidentiality** and **no external requests** for enhanced privacy and security.\n\n:::\n\n## Quick Start with Docker \ud83d\udc33 (Recommended)\n\n:::tip\n\n#### Disabling Login for Single User\n\nIf you want to disable login for a single-user setup, set [`WEBUI_AUTH`](./getting-started/advanced-topics/env-configuration) to `False`. This will bypass the login page.\n\n:::warning\nYou cannot switch between single-user mode and multi-account mode after this change.\n:::"}


created_at: 2024-12-28 04:06:26
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 55725585-824f-40d4-b882-251d21f2bf52
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "7a93163f-85d5-4189-8ba3-6e1b1cb194e2", "hash": "00ebd034ea7892531fbc2f52830a4c12f2bb62065107c7b9082550289e66dea7", "name": "intro.mdx", "source": "intro.mdx", "start_index": 0, "chroma:document": ":::danger\nWhen using Docker to install Open WebUI, make sure to include the `-v open-webui:/app/backend/data` in your Docker command. This step is crucial as it ensures your database is properly mounted and prevents any loss of data.\n:::\n\n<details> \n<summary>Data Storage in Docker</summary>\n\nThis tutorial uses [Docker named volumes](https://docs.docker.com/storage/volumes/) to guarantee the **persistance of your data**. This might make it difficult to know exactly where your data is stored in your machine if this is your first time using Docker. Alternatively, you can replace the volume name with a absolute path on your host machine to link your container data to a folder in your computer using a [bind mount](https://docs.docker.com/storage/bind-mounts/).\n\n**Example**: change `-v open-webui:/app/backend/data` to `-v /path/to/folder:/app/backend/data`\n\nEnsure you have the proper access rights to the folder on your host machine."}


created_at: 2024-12-28 04:06:26
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 9d137735-d6c4-4dce-8ae9-fd0ef4d11775
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "7a93163f-85d5-4189-8ba3-6e1b1cb194e2", "hash": "00ebd034ea7892531fbc2f52830a4c12f2bb62065107c7b9082550289e66dea7", "name": "intro.mdx", "source": "intro.mdx", "start_index": 0, "chroma:document": "Ensure you have the proper access rights to the folder on your host machine.\n\nVisit the [Docker documentation](https://docs.docker.com/storage/) to understand more about volumes and bind mounts.\n</details>\n\n### Installation with Default Configuration\n\n- **If Ollama is on your computer**, use this command:\n\n  ```bash\n  docker run -d -p 3000:8080 --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main\n  ```\n\n- **If Ollama is on a Different Server**, use this command:\n\n  To connect to Ollama on another server, change the `OLLAMA_BASE_URL` to the server's URL:\n\n  ```bash\n  docker run -d -p 3000:8080 -e OLLAMA_BASE_URL=https://example.com -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main\n  ```\n\n  - **To run Open WebUI with Nvidia GPU support**, use this command:"}


created_at: 2024-12-28 04:06:26
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 0029a175-1a97-4062-91cc-447b21c41aa7
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "7a93163f-85d5-4189-8ba3-6e1b1cb194e2", "hash": "00ebd034ea7892531fbc2f52830a4c12f2bb62065107c7b9082550289e66dea7", "name": "intro.mdx", "source": "intro.mdx", "start_index": 0, "chroma:document": "- **To run Open WebUI with Nvidia GPU support**, use this command:\n\n  ```bash\n  docker run -d -p 3000:8080 --gpus all --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:cuda\n  ```\n\n### Installation for OpenAI API Usage Only\n\n- **If you're only using OpenAI API**, use this command:\n\n  ```bash\n  docker run -d -p 3000:8080 -e OPENAI_API_KEY=your_secret_key -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main\n  ```\n\n### Installing Open WebUI with Bundled Ollama Support\n\nThis installation method uses a single container image that bundles Open WebUI with Ollama, allowing for a streamlined setup via a single command. Choose the appropriate command based on your hardware setup:\n\n- **With GPU Support**:\n  Utilize GPU resources by running the following command:"}


created_at: 2024-12-28 04:06:26
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: f6cd7902-0b9a-4340-ae9e-48751c4bc70b
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "7a93163f-85d5-4189-8ba3-6e1b1cb194e2", "hash": "00ebd034ea7892531fbc2f52830a4c12f2bb62065107c7b9082550289e66dea7", "name": "intro.mdx", "source": "intro.mdx", "start_index": 0, "chroma:document": "- **With GPU Support**:\n  Utilize GPU resources by running the following command:\n\n  ```bash\n  docker run -d -p 3000:8080 --gpus=all -v ollama:/root/.ollama -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:ollama\n  ```\n\n- **For CPU Only**:\n  If you're not using a GPU, use this command instead:\n\n  ```bash\n  docker run -d -p 3000:8080 -v ollama:/root/.ollama -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:ollama\n  ```\n\nBoth commands facilitate a built-in, hassle-free installation of both Open WebUI and Ollama, ensuring that you can get everything up and running swiftly.\n\nAfter installation, you can access Open WebUI at [http://localhost:3000](http://localhost:3000). Enjoy! \ud83d\ude04\n\n### Using the Dev Branch \ud83c\udf19\n\n:::warning\nThe `:dev` branch contains the latest unstable features and changes. Use it at your own risk as it may have bugs or incomplete features.\n:::"}


created_at: 2024-12-28 04:06:26
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 071b716b-6d9d-46d9-85c9-334be38e6561
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "7a93163f-85d5-4189-8ba3-6e1b1cb194e2", "hash": "00ebd034ea7892531fbc2f52830a4c12f2bb62065107c7b9082550289e66dea7", "name": "intro.mdx", "source": "intro.mdx", "start_index": 0, "chroma:document": "If you want to try out the latest bleeding-edge features and are okay with occasional instability, you can use the `:dev` tag like this:\n\n```bash\ndocker run -d -p 3000:8080 -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:dev\n```\n\n## Manual Installation\n\n### Installation with `pip` (Beta)\n\nFor users who prefer to use Python's package manager `pip`, Open WebUI offers a installation method. Python 3.11 is required for this method.\n\n1. **Install Open WebUI**:\n   Open your terminal and run the following command:\n\n   ```bash\n   pip install open-webui\n   ```\n\n2. **Start Open WebUI**:\n   Once installed, start the server using:\n\n   ```bash\n   open-webui serve\n   ```\n\nThis method installs all necessary dependencies and starts Open WebUI, allowing for a simple and efficient setup. After installation, you can access Open WebUI at [http://localhost:8080](http://localhost:8080). Enjoy! \ud83d\ude04\n\n## Other Installation Methods"}


created_at: 2024-12-28 04:06:26
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 80726fca-5b8d-4c44-8b3c-44a5d5007fb6
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "7a93163f-85d5-4189-8ba3-6e1b1cb194e2", "hash": "00ebd034ea7892531fbc2f52830a4c12f2bb62065107c7b9082550289e66dea7", "name": "intro.mdx", "source": "intro.mdx", "start_index": 0, "chroma:document": "## Other Installation Methods\n\nWe offer various installation alternatives, including non-Docker native installation methods, Docker Compose, Kustomize, and Helm. Visit our [Open WebUI Documentation](https://docs.openwebui.com/getting-started/) or join our [Discord community](https://discord.gg/5rJgQTnV4s) for comprehensive guidance.\n\n## Troubleshooting\n\nIf you're facing various issues like \"Open WebUI: Server Connection Error\", see [TROUBLESHOOTING](troubleshooting) for information on how to troubleshoot and/or join our [Open WebUI Discord community](https://discord.gg/5rJgQTnV4s).\n\n## Updating\n\nCheck out how to update Docker in the [Quick Start guide](./getting-started/quick-start).\n\nIn case you want to update your local Docker installation to the latest version, you can do it with [Watchtower](https://containrrr.dev/watchtower/):\n\n```bash\ndocker run --rm --volume /var/run/docker.sock:/var/run/docker.sock containrrr/watchtower --run-once open-webui\n```"}


created_at: 2024-12-28 04:06:26
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 5a9b3d79-cb8b-4eb7-a41f-998b216e46c9
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "7a93163f-85d5-4189-8ba3-6e1b1cb194e2", "hash": "00ebd034ea7892531fbc2f52830a4c12f2bb62065107c7b9082550289e66dea7", "name": "intro.mdx", "source": "intro.mdx", "start_index": 0, "chroma:document": "In the last part of the command, replace `open-webui` with your container name if it is different.\n\nContinue with the full [getting started guide](/getting-started).\n\n## Sponsors \ud83d\ude4c\n\nWe are incredibly grateful for the generous support of our sponsors. Their contributions help us to maintain and improve our project, ensuring we can continue to deliver quality work to our community. Thank you!\n\n<SponsorList />"}


created_at: 2024-12-28 04:06:26
topic: persistent://default/default/e512c41f-f72f-4ad9-a67d-5a7cfe04b66f
id: 445c2263-3930-4197-9404-3942ba758105
encoding: FLOAT32
metadata:
{"source": "ipex_llm.md", "name": "ipex_llm.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "b4e66cfd-8cd8-4c49-9975-41e433b77691", "start_index": 0, "hash": "72181f631dc3f95b0133978f792c57ba3c82111a62c34e2ae4c250fcc4f9f37d", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "---\nsidebar_position: 11\ntitle: \"\ud83d\udda5\ufe0f Local LLM Setup with IPEX-LLM on Intel GPU\"\n---\n\n:::warning\nThis tutorial is a community contribution and is not supported by the OpenWebUI team. It serves only as a demonstration on how to customize OpenWebUI for your specific use case. Want to contribute? Check out the contributing tutorial.\n:::\n\n:::note\nThis guide is verified with Open WebUI setup through [Manual Installation](/getting-started/index.md).\n:::\n\n# Local LLM Setup with IPEX-LLM on Intel GPU\n\n:::info\n[**IPEX-LLM**](https://github.com/intel-analytics/ipex-llm) is a PyTorch library for running LLM on Intel CPU and GPU (e.g., local PC with iGPU, discrete GPU such as Arc A-Series, Flex and Max) with very low latency.\n:::\n\nThis tutorial demonstrates how to setup Open WebUI with **IPEX-LLM accelerated Ollama backend hosted on Intel GPU**. By following this guide, you will be able to setup Open WebUI even on a low-cost PC (i.e. only with integrated GPU) with a smooth experience."}


created_at: 2024-12-28 04:06:26
topic: persistent://default/default/e512c41f-f72f-4ad9-a67d-5a7cfe04b66f
id: fc009378-bbc9-4db1-a416-75ab32911a7b
encoding: FLOAT32
metadata:
{"source": "ipex_llm.md", "name": "ipex_llm.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "b4e66cfd-8cd8-4c49-9975-41e433b77691", "start_index": 988, "hash": "72181f631dc3f95b0133978f792c57ba3c82111a62c34e2ae4c250fcc4f9f37d", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "## Start Ollama Serve on Intel GPU\n\nRefer to [this guide](https://ipex-llm.readthedocs.io/en/latest/doc/LLM/Quickstart/ollama_quickstart.html) from IPEX-LLM official documentation about how to install and run Ollama serve accelerated by IPEX-LLM on Intel GPU.\n\n:::tip\nIf you would like to reach the Ollama service from another machine, make sure you set or export the environment variable `OLLAMA_HOST=0.0.0.0` before executing the command `ollama serve`.\n:::\n\n## Configure Open WebUI\n\nAccess the Ollama settings through **Settings -> Connections** in the menu. By default, the **Ollama Base URL** is preset to https://localhost:11434, as illustrated in the snapshot below. To verify the status of the Ollama service connection, click the **Refresh button** located next to the textbox. If the WebUI is unable to establish a connection with the Ollama server, you will see an error message stating, `WebUI could not connect to Ollama`."}


created_at: 2024-12-28 04:06:26
topic: persistent://default/default/e512c41f-f72f-4ad9-a67d-5a7cfe04b66f
id: 9c77e4c8-2f1d-477e-b0df-1a164d900ad6
encoding: FLOAT32
metadata:
{"source": "ipex_llm.md", "name": "ipex_llm.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "b4e66cfd-8cd8-4c49-9975-41e433b77691", "start_index": 1925, "hash": "72181f631dc3f95b0133978f792c57ba3c82111a62c34e2ae4c250fcc4f9f37d", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "![Open WebUI Ollama Setting Failure](https://llm-assets.readthedocs.io/en/latest/_images/open_webui_settings_0.png)\n\nIf the connection is successful, you will see a message stating `Service Connection Verified`, as illustrated below.\n\n![Open WebUI Ollama Setting Success](https://llm-assets.readthedocs.io/en/latest/_images/open_webui_settings.png)\n\n:::tip\nIf you want to use an Ollama server hosted at a different URL, simply update the **Ollama Base URL** to the new URL and press the **Refresh** button to re-confirm the connection to Ollama.\n:::"}


created_at: 2024-12-28 04:06:26
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: c71b80a7-f3cc-45e7-b1f5-ddcb5cdda62b
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "b4e66cfd-8cd8-4c49-9975-41e433b77691", "hash": "72181f631dc3f95b0133978f792c57ba3c82111a62c34e2ae4c250fcc4f9f37d", "name": "ipex_llm.md", "source": "ipex_llm.md", "start_index": 0, "chroma:document": "---\nsidebar_position: 11\ntitle: \"\ud83d\udda5\ufe0f Local LLM Setup with IPEX-LLM on Intel GPU\"\n---\n\n:::warning\nThis tutorial is a community contribution and is not supported by the OpenWebUI team. It serves only as a demonstration on how to customize OpenWebUI for your specific use case. Want to contribute? Check out the contributing tutorial.\n:::\n\n:::note\nThis guide is verified with Open WebUI setup through [Manual Installation](/getting-started/index.md).\n:::\n\n# Local LLM Setup with IPEX-LLM on Intel GPU\n\n:::info\n[**IPEX-LLM**](https://github.com/intel-analytics/ipex-llm) is a PyTorch library for running LLM on Intel CPU and GPU (e.g., local PC with iGPU, discrete GPU such as Arc A-Series, Flex and Max) with very low latency.\n:::\n\nThis tutorial demonstrates how to setup Open WebUI with **IPEX-LLM accelerated Ollama backend hosted on Intel GPU**. By following this guide, you will be able to setup Open WebUI even on a low-cost PC (i.e. only with integrated GPU) with a smooth experience."}


created_at: 2024-12-28 04:06:26
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 0d017d63-fff4-4438-abf7-354ac520526e
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "b4e66cfd-8cd8-4c49-9975-41e433b77691", "hash": "72181f631dc3f95b0133978f792c57ba3c82111a62c34e2ae4c250fcc4f9f37d", "name": "ipex_llm.md", "source": "ipex_llm.md", "start_index": 0, "chroma:document": "## Start Ollama Serve on Intel GPU\n\nRefer to [this guide](https://ipex-llm.readthedocs.io/en/latest/doc/LLM/Quickstart/ollama_quickstart.html) from IPEX-LLM official documentation about how to install and run Ollama serve accelerated by IPEX-LLM on Intel GPU.\n\n:::tip\nIf you would like to reach the Ollama service from another machine, make sure you set or export the environment variable `OLLAMA_HOST=0.0.0.0` before executing the command `ollama serve`.\n:::\n\n## Configure Open WebUI\n\nAccess the Ollama settings through **Settings -> Connections** in the menu. By default, the **Ollama Base URL** is preset to https://localhost:11434, as illustrated in the snapshot below. To verify the status of the Ollama service connection, click the **Refresh button** located next to the textbox. If the WebUI is unable to establish a connection with the Ollama server, you will see an error message stating, `WebUI could not connect to Ollama`."}


created_at: 2024-12-28 04:06:26
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 4debc577-0944-4587-9335-b4a907edbaff
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "b4e66cfd-8cd8-4c49-9975-41e433b77691", "hash": "72181f631dc3f95b0133978f792c57ba3c82111a62c34e2ae4c250fcc4f9f37d", "name": "ipex_llm.md", "source": "ipex_llm.md", "start_index": 0, "chroma:document": "![Open WebUI Ollama Setting Failure](https://llm-assets.readthedocs.io/en/latest/_images/open_webui_settings_0.png)\n\nIf the connection is successful, you will see a message stating `Service Connection Verified`, as illustrated below.\n\n![Open WebUI Ollama Setting Success](https://llm-assets.readthedocs.io/en/latest/_images/open_webui_settings.png)\n\n:::tip\nIf you want to use an Ollama server hosted at a different URL, simply update the **Ollama Base URL** to the new URL and press the **Refresh** button to re-confirm the connection to Ollama.\n:::"}


created_at: 2024-12-28 04:06:26
topic: persistent://default/default/20a81e1e-9da0-45c2-a18f-714c3b13b9e3
id: 4a8fa8c8-3735-4e2b-9ed2-a793604076e4
encoding: FLOAT32
metadata:
{"source": "jwttoken.md", "name": "jwttoken.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "960c73ff-4e09-42cc-bfe7-af8840d3ecaf", "start_index": 0, "hash": "e2def3233ed29d77372ce5164330109016de77bf0b22e67696d746ce2e672c57", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "---\nsidebar_position: 16\ntitle: \"\ud83d\udcce JWT Expiration\"\n---\n\nOverview\n--------\n\nOpen WebUI provides a feature that allows administrators to configure the expiration time of their JWT (JSON Web Token) token. This setting is crucial for ensuring secure access to the API, as it determines how long a JWT token remains valid for.\n\nConfiguring JWT Expiration\n---------------------------\n\nTo configure the JWT expiration time, follow these steps:\n\n### Option 1: Configure through the Admin Panel\n\n1. Log in to your Open WebUI instance as an administrator.\n2. Navigate to the `Admin Panel` -> `Settings` -> `General`.\n3. Locate the `JWT Expiration` option.\n4. Enter the desired expiration time value.\n5. Save the changes.\n\n### Option 2: Configure through Environment Variables\n\nAlternatively, you can configure the JWT expiration time by setting the `JWT_EXPIRES_IN` environment variable."}


created_at: 2024-12-28 04:06:26
topic: persistent://default/default/20a81e1e-9da0-45c2-a18f-714c3b13b9e3
id: 62f35f66-7807-406f-9aad-f5b704037659
encoding: FLOAT32
metadata:
{"source": "jwttoken.md", "name": "jwttoken.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "960c73ff-4e09-42cc-bfe7-af8840d3ecaf", "start_index": 879, "hash": "e2def3233ed29d77372ce5164330109016de77bf0b22e67696d746ce2e672c57", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "For more information on configuring environment variables in Open WebUI, see [Environment Variable Configuration](https://docs.openwebui.com/getting-started/advanced-topics/env-configuration#jwt_expires_in).\n\nGenerating a Secret Key for JWT Tokens\n--------------------------------------\n\nOpen WebUI uses a secret key to generate JWT tokens. By default, this secret key is randomly generated on the first start of the container. However, you can override this secret key by setting the `WEBUI_SECRET_KEY` environment variable.\n\nEnvironment Variable Descriptions\n---------------------------------\n\n* `JWT_EXPIRES_IN`:\n  * Type: int\n  * Default: -1\n  * Description: Sets the JWT expiration time in seconds. A value of -1 disables expiration.\n* `WEBUI_SECRET_KEY`:\n  * Type: str\n  * Default: t0p-s3cr3t\n  * Docker Default: Randomly generated on first start\n  * Description: Overrides the randomly generated string used for JSON Web Token.\n\nValid Time Units\n-----------------"}


created_at: 2024-12-28 04:06:26
topic: persistent://default/default/20a81e1e-9da0-45c2-a18f-714c3b13b9e3
id: 0617fed6-f39b-4f13-89f4-07a0075ad7f7
encoding: FLOAT32
metadata:
{"source": "jwttoken.md", "name": "jwttoken.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "960c73ff-4e09-42cc-bfe7-af8840d3ecaf", "start_index": 1815, "hash": "e2def3233ed29d77372ce5164330109016de77bf0b22e67696d746ce2e672c57", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "Valid Time Units\n-----------------\n\n* `s`: seconds\n* `m`: minutes\n* `h`: hours\n* `d`: days\n* `w`: weeks\n* `-1`: no expiration\n\nAuthentication with JWT Tokens\n---------------------------------\n\nTo authenticate your API requests using your JWT token, obtain your API key from `Settings > Account > API Keys > API Key` in Open WebUI. Alternatively, you can obtain a `JWT token` from the same location.\n\nNote: The JWT token is used for authentication purposes only and should be kept secure to prevent unauthorized access to the API.\n\nFAQ\n----"}


created_at: 2024-12-28 04:06:26
topic: persistent://default/default/20a81e1e-9da0-45c2-a18f-714c3b13b9e3
id: bf53d408-b710-48ab-9c28-a5ec07251fc2
encoding: FLOAT32
metadata:
{"source": "jwttoken.md", "name": "jwttoken.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "960c73ff-4e09-42cc-bfe7-af8840d3ecaf", "start_index": 2346, "hash": "e2def3233ed29d77372ce5164330109016de77bf0b22e67696d746ce2e672c57", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "FAQ\n----\n\n* Q: What is the default expiration time for JWT tokens in Open WebUI?\nA: The default expiration time for JWT tokens in Open WebUI is -1, which disables expiration.\n* Q: Can I configure the JWT expiration time using environment variables?\nA: Yes, you can configure the JWT expiration time by setting the `JWT_EXPIRES_IN` environment variable.\n* Q: What are the valid time units for configuring JWT expiration in Open WebUI?\nA: The valid time units are `s`, `m`, `h`, `d`, `w`, or `-1` for no expiration.\n* Q: How do I obtain a JWT token for authentication purposes?\nA: You can obtain a JWT token from the Open WebUI API or by navigating to `Settings > Account` in the Open WebUI admin panel.\n* Q: Can I override the default secret key used for JWT tokens?\nA: Yes, you can override the default secret key by setting the `WEBUI_SECRET_KEY` environment variable."}


created_at: 2024-12-28 04:06:26
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: dec2ed6d-4729-4d55-be15-319ddeea6342
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "960c73ff-4e09-42cc-bfe7-af8840d3ecaf", "hash": "e2def3233ed29d77372ce5164330109016de77bf0b22e67696d746ce2e672c57", "name": "jwttoken.md", "source": "jwttoken.md", "start_index": 0, "chroma:document": "---\nsidebar_position: 16\ntitle: \"\ud83d\udcce JWT Expiration\"\n---\n\nOverview\n--------\n\nOpen WebUI provides a feature that allows administrators to configure the expiration time of their JWT (JSON Web Token) token. This setting is crucial for ensuring secure access to the API, as it determines how long a JWT token remains valid for.\n\nConfiguring JWT Expiration\n---------------------------\n\nTo configure the JWT expiration time, follow these steps:\n\n### Option 1: Configure through the Admin Panel\n\n1. Log in to your Open WebUI instance as an administrator.\n2. Navigate to the `Admin Panel` -> `Settings` -> `General`.\n3. Locate the `JWT Expiration` option.\n4. Enter the desired expiration time value.\n5. Save the changes.\n\n### Option 2: Configure through Environment Variables\n\nAlternatively, you can configure the JWT expiration time by setting the `JWT_EXPIRES_IN` environment variable."}


created_at: 2024-12-28 04:06:26
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 9ac18ed2-3386-4f9f-ac5b-0e8d4e860980
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "960c73ff-4e09-42cc-bfe7-af8840d3ecaf", "hash": "e2def3233ed29d77372ce5164330109016de77bf0b22e67696d746ce2e672c57", "name": "jwttoken.md", "source": "jwttoken.md", "start_index": 0, "chroma:document": "For more information on configuring environment variables in Open WebUI, see [Environment Variable Configuration](https://docs.openwebui.com/getting-started/advanced-topics/env-configuration#jwt_expires_in).\n\nGenerating a Secret Key for JWT Tokens\n--------------------------------------\n\nOpen WebUI uses a secret key to generate JWT tokens. By default, this secret key is randomly generated on the first start of the container. However, you can override this secret key by setting the `WEBUI_SECRET_KEY` environment variable.\n\nEnvironment Variable Descriptions\n---------------------------------\n\n* `JWT_EXPIRES_IN`:\n  * Type: int\n  * Default: -1\n  * Description: Sets the JWT expiration time in seconds. A value of -1 disables expiration.\n* `WEBUI_SECRET_KEY`:\n  * Type: str\n  * Default: t0p-s3cr3t\n  * Docker Default: Randomly generated on first start\n  * Description: Overrides the randomly generated string used for JSON Web Token.\n\nValid Time Units\n-----------------"}


created_at: 2024-12-28 04:06:26
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 112b26be-d2a5-4ceb-9c64-4f28345a431e
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "960c73ff-4e09-42cc-bfe7-af8840d3ecaf", "hash": "e2def3233ed29d77372ce5164330109016de77bf0b22e67696d746ce2e672c57", "name": "jwttoken.md", "source": "jwttoken.md", "start_index": 0, "chroma:document": "Valid Time Units\n-----------------\n\n* `s`: seconds\n* `m`: minutes\n* `h`: hours\n* `d`: days\n* `w`: weeks\n* `-1`: no expiration\n\nAuthentication with JWT Tokens\n---------------------------------\n\nTo authenticate your API requests using your JWT token, obtain your API key from `Settings > Account > API Keys > API Key` in Open WebUI. Alternatively, you can obtain a `JWT token` from the same location.\n\nNote: The JWT token is used for authentication purposes only and should be kept secure to prevent unauthorized access to the API.\n\nFAQ\n----"}


created_at: 2024-12-28 04:06:26
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: f87986c0-1d0f-4437-aa98-d2f252e84458
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "960c73ff-4e09-42cc-bfe7-af8840d3ecaf", "hash": "e2def3233ed29d77372ce5164330109016de77bf0b22e67696d746ce2e672c57", "name": "jwttoken.md", "source": "jwttoken.md", "start_index": 0, "chroma:document": "FAQ\n----\n\n* Q: What is the default expiration time for JWT tokens in Open WebUI?\nA: The default expiration time for JWT tokens in Open WebUI is -1, which disables expiration.\n* Q: Can I configure the JWT expiration time using environment variables?\nA: Yes, you can configure the JWT expiration time by setting the `JWT_EXPIRES_IN` environment variable.\n* Q: What are the valid time units for configuring JWT expiration in Open WebUI?\nA: The valid time units are `s`, `m`, `h`, `d`, `w`, or `-1` for no expiration.\n* Q: How do I obtain a JWT token for authentication purposes?\nA: You can obtain a JWT token from the Open WebUI API or by navigating to `Settings > Account` in the Open WebUI admin panel.\n* Q: Can I override the default secret key used for JWT tokens?\nA: Yes, you can override the default secret key by setting the `WEBUI_SECRET_KEY` environment variable."}


created_at: 2024-12-28 04:06:26
topic: persistent://default/default/f2cc1409-3ae9-40e4-bf6d-06409bbabbd1
id: 28a1ad82-9798-4c37-869a-126d2af58215
encoding: FLOAT32
metadata:
{"source": "knowledge.md", "name": "knowledge.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "ce5994cb-da7f-447e-ae5c-6b07073010b2", "start_index": 0, "hash": "abe6f295bb781d08de590fbbd27f70876517c66e0a9dd4fe2f6be067d769e49c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "---\nsidebar_position: 1\ntitle: \"\ud83e\udde0 Knowledge\"\n---\n\n Knowledge part of Open WebUI is like a memory bank that makes your interactions even more powerful and context-aware. Let's break down what \"Knowledge\" really means in Open WebUI, how it works, and why it's incredibly helpful for enhancing your experience.\n\n## TL;DR\n\n- **Knowledge** is a section in Open WebUI where you can store structured information that the system can refer to during your interactions.\n- It's like a memory system for Open WebUI that allows it to pull from saved data, making responses more personalized and contextually aware.\n- You can use Knowledge directly in your chats with Open WebUI to access the stored data whenever you need it.\n\nSetting up Knowledge is straightforward! Simply head to the Knowledge section inside work space and start adding details or data. You don't need coding expertise or technical setup; it's built into the core system!\n\n## What is the \"Knowledge\" Section?"}


created_at: 2024-12-28 04:06:26
topic: persistent://default/default/f2cc1409-3ae9-40e4-bf6d-06409bbabbd1
id: cf905f13-f93c-438e-81f4-18128f086c76
encoding: FLOAT32
metadata:
{"source": "knowledge.md", "name": "knowledge.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "ce5994cb-da7f-447e-ae5c-6b07073010b2", "start_index": 930, "hash": "abe6f295bb781d08de590fbbd27f70876517c66e0a9dd4fe2f6be067d769e49c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "## What is the \"Knowledge\" Section?\n\nThe **Knowledge section** is a storage area within Open WebUI where you can save specific pieces of information or data points. Think of it as a **reference library** that Open WebUI can use to make its responses more accurate and relevant to your needs.\n\n### Why is Knowledge Useful?\n\nImagine you're working on a long-term project and want the system to remember certain parameters, settings, or even key notes about the project without having to remind it every time. Or perhaps, you want it to remember specific personal preferences for chats and responses. The Knowledge section is where you can store this kind of **persistent information** so that Open WebUI can reference it in future conversations, creating a more **coherent, personalized experience**.\n\nSome examples of what you might store in Knowledge:"}


created_at: 2024-12-28 04:06:26
topic: persistent://default/default/f2cc1409-3ae9-40e4-bf6d-06409bbabbd1
id: 53000b02-813c-4fd4-b46e-a68aadd66cb6
encoding: FLOAT32
metadata:
{"source": "knowledge.md", "name": "knowledge.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "ce5994cb-da7f-447e-ae5c-6b07073010b2", "start_index": 1730, "hash": "abe6f295bb781d08de590fbbd27f70876517c66e0a9dd4fe2f6be067d769e49c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "Some examples of what you might store in Knowledge:\n\n- Important project parameters or specific data points you'll frequently reference.\n- Custom commands, workflows, or settings you want to apply.\n- Personal preferences, guidelines, or rules that Open WebUI can follow in every chat.\n\n### How to Use Knowledge in Chats\n\nAccessing stored Knowledge in your chats is easy! By simply referencing what's saved(using '#' before the name), Open WebUI can pull in data or follow specific guidelines that you've set up in the Knowledge section.\n\nFor example:\n\n- When discussing a project, Open WebUI can automatically recall your specified project details.\n- It can apply custom preferences to responses, like formality levels or preferred phrasing.\n\nTo reference Knowledge in your chats, just ensure it's saved in the Knowledge section, and Open WebUI will know when and where to bring in the relevant information!"}


created_at: 2024-12-28 04:06:26
topic: persistent://default/default/f2cc1409-3ae9-40e4-bf6d-06409bbabbd1
id: ed9a4fd1-8103-440b-a18a-cab9c7005c75
encoding: FLOAT32
metadata:
{"source": "knowledge.md", "name": "knowledge.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "ce5994cb-da7f-447e-ae5c-6b07073010b2", "start_index": 2639, "hash": "abe6f295bb781d08de590fbbd27f70876517c66e0a9dd4fe2f6be067d769e49c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "Admins can add knowledge to the workspace, which users can access and use; however, users do not have direct access to the workspace itself.\n\n### Setting Up Your Knowledge Base\n\n1. **Navigate to the Knowledge Section**: This area is designed to be user-friendly and intuitive.\n2. **Add Entries**: Input information you want Open WebUI to remember. It can be as specific or broad as you like.\n3. **Save and Apply**: Once saved, the Knowledge is accessible and ready to enhance your chat interactions.\n\n## Summary\n\n- The Knowledge section is like Open WebUI's \"memory bank,\" where you can store data that you want it to remember and use.\n- **Use Knowledge to keep the system aware** of important details, ensuring a personalized chat experience.\n- You can **directly reference Knowledge in chats** to bring in stored data whenever you need it using '#' + name of the knowlege.\n\n\ud83c\udf1f Remember, there's always more to discover, so dive in and make Open WebUI truly your own!"}


created_at: 2024-12-28 04:06:27
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 1893f76b-a72f-49b8-9459-3d160a3e27bc
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "ce5994cb-da7f-447e-ae5c-6b07073010b2", "hash": "abe6f295bb781d08de590fbbd27f70876517c66e0a9dd4fe2f6be067d769e49c", "name": "knowledge.md", "source": "knowledge.md", "start_index": 0, "chroma:document": "---\nsidebar_position: 1\ntitle: \"\ud83e\udde0 Knowledge\"\n---\n\n Knowledge part of Open WebUI is like a memory bank that makes your interactions even more powerful and context-aware. Let's break down what \"Knowledge\" really means in Open WebUI, how it works, and why it's incredibly helpful for enhancing your experience.\n\n## TL;DR\n\n- **Knowledge** is a section in Open WebUI where you can store structured information that the system can refer to during your interactions.\n- It's like a memory system for Open WebUI that allows it to pull from saved data, making responses more personalized and contextually aware.\n- You can use Knowledge directly in your chats with Open WebUI to access the stored data whenever you need it.\n\nSetting up Knowledge is straightforward! Simply head to the Knowledge section inside work space and start adding details or data. You don't need coding expertise or technical setup; it's built into the core system!\n\n## What is the \"Knowledge\" Section?"}


created_at: 2024-12-28 04:06:27
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 2dfd1d88-a427-4448-8612-7ace9c911d73
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "ce5994cb-da7f-447e-ae5c-6b07073010b2", "hash": "abe6f295bb781d08de590fbbd27f70876517c66e0a9dd4fe2f6be067d769e49c", "name": "knowledge.md", "source": "knowledge.md", "start_index": 0, "chroma:document": "## What is the \"Knowledge\" Section?\n\nThe **Knowledge section** is a storage area within Open WebUI where you can save specific pieces of information or data points. Think of it as a **reference library** that Open WebUI can use to make its responses more accurate and relevant to your needs.\n\n### Why is Knowledge Useful?\n\nImagine you're working on a long-term project and want the system to remember certain parameters, settings, or even key notes about the project without having to remind it every time. Or perhaps, you want it to remember specific personal preferences for chats and responses. The Knowledge section is where you can store this kind of **persistent information** so that Open WebUI can reference it in future conversations, creating a more **coherent, personalized experience**.\n\nSome examples of what you might store in Knowledge:"}


created_at: 2024-12-28 04:06:27
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 2c100d11-ee19-4ce5-b666-7af2057aa4c1
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "ce5994cb-da7f-447e-ae5c-6b07073010b2", "hash": "abe6f295bb781d08de590fbbd27f70876517c66e0a9dd4fe2f6be067d769e49c", "name": "knowledge.md", "source": "knowledge.md", "start_index": 0, "chroma:document": "Some examples of what you might store in Knowledge:\n\n- Important project parameters or specific data points you'll frequently reference.\n- Custom commands, workflows, or settings you want to apply.\n- Personal preferences, guidelines, or rules that Open WebUI can follow in every chat.\n\n### How to Use Knowledge in Chats\n\nAccessing stored Knowledge in your chats is easy! By simply referencing what's saved(using '#' before the name), Open WebUI can pull in data or follow specific guidelines that you've set up in the Knowledge section.\n\nFor example:\n\n- When discussing a project, Open WebUI can automatically recall your specified project details.\n- It can apply custom preferences to responses, like formality levels or preferred phrasing.\n\nTo reference Knowledge in your chats, just ensure it's saved in the Knowledge section, and Open WebUI will know when and where to bring in the relevant information!"}


created_at: 2024-12-28 04:06:27
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 97d0f3bd-b17f-4661-9ae3-b066ff5482f6
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "ce5994cb-da7f-447e-ae5c-6b07073010b2", "hash": "abe6f295bb781d08de590fbbd27f70876517c66e0a9dd4fe2f6be067d769e49c", "name": "knowledge.md", "source": "knowledge.md", "start_index": 0, "chroma:document": "Admins can add knowledge to the workspace, which users can access and use; however, users do not have direct access to the workspace itself.\n\n### Setting Up Your Knowledge Base\n\n1. **Navigate to the Knowledge Section**: This area is designed to be user-friendly and intuitive.\n2. **Add Entries**: Input information you want Open WebUI to remember. It can be as specific or broad as you like.\n3. **Save and Apply**: Once saved, the Knowledge is accessible and ready to enhance your chat interactions.\n\n## Summary\n\n- The Knowledge section is like Open WebUI's \"memory bank,\" where you can store data that you want it to remember and use.\n- **Use Knowledge to keep the system aware** of important details, ensuring a personalized chat experience.\n- You can **directly reference Knowledge in chats** to bring in stored data whenever you need it using '#' + name of the knowlege.\n\n\ud83c\udf1f Remember, there's always more to discover, so dive in and make Open WebUI truly your own!"}


created_at: 2024-12-28 04:06:27
topic: persistent://default/default/1a3c4c99-fb46-4452-a3a8-aba0cc9f513e
id: a043a4d4-9f04-40d6-8835-8e2fdf1e71cc
encoding: FLOAT32
metadata:
{"source": "Kustomize.md", "name": "Kustomize.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "99413abd-c6cf-4a48-b409-f7cd8233e905", "start_index": 1, "hash": "bf8dd8d67c5ed79ab9432e5010eaeeff915383ff950b750fdc045e524756047c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "# Kustomize Setup for Kubernetes\n\nKustomize allows you to customize Kubernetes YAML configurations.\n\n## Prerequisites\n\n- Kubernetes cluster is set up.\n- Kustomize is installed.\n\n## Steps\n\n1. **Clone the Open WebUI Manifests:**\n\n   ```bash\n   git clone https://github.com/open-webui/k8s-manifests.git\n   cd k8s-manifests\n   ```\n\n2. **Apply the Manifests:**\n\n   ```bash\n   kubectl apply -k .\n   ```\n\n3. **Verify Installation:**\n\n   ```bash\n   kubectl get pods\n   ```\n\n## Access the WebUI\n\nSet up port forwarding or load balancing to access Open WebUI from outside the cluster."}


created_at: 2024-12-28 04:06:27
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: c315660b-6689-4838-be0e-1c61df7dba34
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "99413abd-c6cf-4a48-b409-f7cd8233e905", "hash": "bf8dd8d67c5ed79ab9432e5010eaeeff915383ff950b750fdc045e524756047c", "name": "Kustomize.md", "source": "Kustomize.md", "start_index": 0, "chroma:document": "# Kustomize Setup for Kubernetes\n\nKustomize allows you to customize Kubernetes YAML configurations.\n\n## Prerequisites\n\n- Kubernetes cluster is set up.\n- Kustomize is installed.\n\n## Steps\n\n1. **Clone the Open WebUI Manifests:**\n\n   ```bash\n   git clone https://github.com/open-webui/k8s-manifests.git\n   cd k8s-manifests\n   ```\n\n2. **Apply the Manifests:**\n\n   ```bash\n   kubectl apply -k .\n   ```\n\n3. **Verify Installation:**\n\n   ```bash\n   kubectl get pods\n   ```\n\n## Access the WebUI\n\nSet up port forwarding or load balancing to access Open WebUI from outside the cluster."}


created_at: 2024-12-28 04:06:27
topic: persistent://default/default/afa1748b-9c3b-4b86-9578-4a62c82bebf9
id: 3e8ac5eb-5d32-43da-8eb9-9badb8b0a2bb
encoding: FLOAT32
metadata:
{"source": "langfuse.md", "name": "langfuse.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "2ae64564-8122-4b85-960b-5d73ffc3d304", "start_index": 0, "hash": "26c922bcc0461c7739ac1e89c38fbc3a7f020bce9d8329dce34e1970d5d7cdc5", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "---\nsidebar_position: 20\ntitle: \"\ud83d\udca5 Monitoring and Debugging with Langfuse\"\n---\n\n# Langfuse Integration with OpenWebUI\n\n[Langfuse](https://langfuse.com/) ([GitHub](https://github.com/langfuse/langfuse)) offers open source observability and evaluations for OpenWebUI. By enabling the Langfuse integration, you can trace your application data with Langfuse to develop, monitor, and improve the use of OpenWebUI, including:\n\n- Application [traces](https://langfuse.com/docs/tracing)\n- Usage patterns\n- Cost data by user and model\n- Replay sessions to debug issues\n- [Evaluations](https://langfuse.com/docs/scores/overview)\n\n## How to integrate Langfuse with OpenWebUI\n\n![Langfuse Integration](https://langfuse.com/images/docs/openwebui-integration.gif)\n_Langfuse integration steps_"}


created_at: 2024-12-28 04:06:27
topic: persistent://default/default/afa1748b-9c3b-4b86-9578-4a62c82bebf9
id: 8f83cf70-049b-45a3-a8d4-80a08ec092d3
encoding: FLOAT32
metadata:
{"source": "langfuse.md", "name": "langfuse.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "2ae64564-8122-4b85-960b-5d73ffc3d304", "start_index": 779, "hash": "26c922bcc0461c7739ac1e89c38fbc3a7f020bce9d8329dce34e1970d5d7cdc5", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "[Pipelines](https://github.com/open-webui/pipelines/) in OpenWebUi is an UI-agnostic framework for OpenAI API plugins. It enables the injection of plugins that intercept, process, and forward user prompts to the final LLM, allowing for enhanced control and customization of prompt handling.\n\nTo trace your application data with Langfuse, you can use the [Langfuse pipeline](https://github.com/open-webui/pipelines/blob/d4fca4c37c4b8603be7797245e749e9086f35130/examples/filters/langfuse_filter_pipeline.py), which enables real-time monitoring and analysis of message interactions.\n\n## Quick Start Guide\n\n### Step 1: Setup OpenWebUI\n\nMake sure to have OpenWebUI running. To do so, have a look at the [OpenWebUI documentation](https://docs.openwebui.com/).\n\n### Step 2: Set Up Pipelines\n\nLaunch [Pipelines](https://github.com/open-webui/pipelines/) by using Docker. Use the following command to start Pipelines:"}


created_at: 2024-12-28 04:06:27
topic: persistent://default/default/afa1748b-9c3b-4b86-9578-4a62c82bebf9
id: 95d86729-0075-4995-a2cd-a5633ef7c195
encoding: FLOAT32
metadata:
{"source": "langfuse.md", "name": "langfuse.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "2ae64564-8122-4b85-960b-5d73ffc3d304", "start_index": 1689, "hash": "26c922bcc0461c7739ac1e89c38fbc3a7f020bce9d8329dce34e1970d5d7cdc5", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "```bash\ndocker run -p 9099:9099 --add-host=host.docker.internal:host-gateway -v pipelines:/app/pipelines --name pipelines --restart always ghcr.io/open-webui/pipelines:main\n```\n\n### Step 3: Connecting OpenWebUI with Pipelines\n\nIn the _Admin Settings_, create and save a new connection of type OpenAI API with the following details:\n\n- **URL:** http://host.docker.internal:9099 (this is where the previously launched Docker container is running).\n- **Password:** 0p3n-w3bu! (standard password)\n\n![OpenWebUI Settings](https://langfuse.com/images/docs/openwebui-setup-settings.png)\n\n### Step 4: Adding the Langfuse Filter Pipeline"}


created_at: 2024-12-28 04:06:27
topic: persistent://default/default/afa1748b-9c3b-4b86-9578-4a62c82bebf9
id: 356b4022-f16d-4255-8e94-ef2fc278a20b
encoding: FLOAT32
metadata:
{"source": "langfuse.md", "name": "langfuse.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "2ae64564-8122-4b85-960b-5d73ffc3d304", "start_index": 2269, "hash": "26c922bcc0461c7739ac1e89c38fbc3a7f020bce9d8329dce34e1970d5d7cdc5", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "### Step 4: Adding the Langfuse Filter Pipeline\n\nNext, navigate to _Admin Settings_ -> _Pipelines_ and add the Langfuse Filter Pipeline. Specify that Pipelines is listening on http://host.docker.internal:9099 (as configured earlier) and install the [Langfuse Filter Pipeline](https://github.com/open-webui/pipelines/blob/main/examples/filters/langfuse_filter_pipeline.py) by using the _Install from Github URL_ option with the following URL:\n\n```\nhttps://github.com/open-webui/pipelines/blob/main/examples/filters/langfuse_filter_pipeline.py\n```\n\nNow, add your Langfuse API keys below. If you haven't signed up to Langfuse yet, you can get your API keys by creating an account [here](https://cloud.langfuse.com).\n\n![OpenWebUI add Langfuse Pipeline](https://langfuse.com//images/docs/openwebui-add-pipeline.png)"}


created_at: 2024-12-28 04:06:27
topic: persistent://default/default/afa1748b-9c3b-4b86-9578-4a62c82bebf9
id: bfc6b694-b8a5-45bd-a79a-a58eb1767ca4
encoding: FLOAT32
metadata:
{"source": "langfuse.md", "name": "langfuse.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "2ae64564-8122-4b85-960b-5d73ffc3d304", "start_index": 2983, "hash": "26c922bcc0461c7739ac1e89c38fbc3a7f020bce9d8329dce34e1970d5d7cdc5", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "![OpenWebUI add Langfuse Pipeline](https://langfuse.com//images/docs/openwebui-add-pipeline.png)\n\n_**Note:** Capture usage (token counts) for OpenAi models while streaming is enabled, you have to navigate to the model settings in OpenWebUI and check the \"Usage\" [box](https://github.com/open-webui/open-webui/discussions/5770#discussioncomment-10778586) below _Capabilities_._\n\n### Step 5: See your traces in Langfuse\n\nYou can now interact with your OpenWebUI application and see the traces in Langfuse.\n\n[Example trace](https://cloud.langfuse.com/project/cloramnkj0002jz088vzn1ja4/traces/904a8c1f-4974-4f8f-8a2f-129ae78d99c5?observation=fe5b127b-e71c-45ab-8ee5-439d4c0edc28) in the Langfuse UI:\n\n![OpenWebUI Example Trace in Langfuse](https://langfuse.com/images/docs/openwebui-example-trace.png)\n\n## Learn more\n\nFor a comprehensive guide on OpenWebUI Pipelines, visit [this post](https://ikasten.io/2024/06/03/getting-started-with-openwebui-pipelines/)."}


created_at: 2024-12-28 04:06:27
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: bd03ffe9-f675-4d13-a67a-4f9c0e525f07
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "2ae64564-8122-4b85-960b-5d73ffc3d304", "hash": "26c922bcc0461c7739ac1e89c38fbc3a7f020bce9d8329dce34e1970d5d7cdc5", "name": "langfuse.md", "source": "langfuse.md", "start_index": 0, "chroma:document": "---\nsidebar_position: 20\ntitle: \"\ud83d\udca5 Monitoring and Debugging with Langfuse\"\n---\n\n# Langfuse Integration with OpenWebUI\n\n[Langfuse](https://langfuse.com/) ([GitHub](https://github.com/langfuse/langfuse)) offers open source observability and evaluations for OpenWebUI. By enabling the Langfuse integration, you can trace your application data with Langfuse to develop, monitor, and improve the use of OpenWebUI, including:\n\n- Application [traces](https://langfuse.com/docs/tracing)\n- Usage patterns\n- Cost data by user and model\n- Replay sessions to debug issues\n- [Evaluations](https://langfuse.com/docs/scores/overview)\n\n## How to integrate Langfuse with OpenWebUI\n\n![Langfuse Integration](https://langfuse.com/images/docs/openwebui-integration.gif)\n_Langfuse integration steps_"}


created_at: 2024-12-28 04:06:27
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 1ed7a864-f64c-4bbe-8b23-235514bf2016
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "2ae64564-8122-4b85-960b-5d73ffc3d304", "hash": "26c922bcc0461c7739ac1e89c38fbc3a7f020bce9d8329dce34e1970d5d7cdc5", "name": "langfuse.md", "source": "langfuse.md", "start_index": 0, "chroma:document": "[Pipelines](https://github.com/open-webui/pipelines/) in OpenWebUi is an UI-agnostic framework for OpenAI API plugins. It enables the injection of plugins that intercept, process, and forward user prompts to the final LLM, allowing for enhanced control and customization of prompt handling.\n\nTo trace your application data with Langfuse, you can use the [Langfuse pipeline](https://github.com/open-webui/pipelines/blob/d4fca4c37c4b8603be7797245e749e9086f35130/examples/filters/langfuse_filter_pipeline.py), which enables real-time monitoring and analysis of message interactions.\n\n## Quick Start Guide\n\n### Step 1: Setup OpenWebUI\n\nMake sure to have OpenWebUI running. To do so, have a look at the [OpenWebUI documentation](https://docs.openwebui.com/).\n\n### Step 2: Set Up Pipelines\n\nLaunch [Pipelines](https://github.com/open-webui/pipelines/) by using Docker. Use the following command to start Pipelines:"}


created_at: 2024-12-28 04:06:27
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 209ac41a-4df3-4e78-b470-fa0f53dd1074
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "2ae64564-8122-4b85-960b-5d73ffc3d304", "hash": "26c922bcc0461c7739ac1e89c38fbc3a7f020bce9d8329dce34e1970d5d7cdc5", "name": "langfuse.md", "source": "langfuse.md", "start_index": 0, "chroma:document": "```bash\ndocker run -p 9099:9099 --add-host=host.docker.internal:host-gateway -v pipelines:/app/pipelines --name pipelines --restart always ghcr.io/open-webui/pipelines:main\n```\n\n### Step 3: Connecting OpenWebUI with Pipelines\n\nIn the _Admin Settings_, create and save a new connection of type OpenAI API with the following details:\n\n- **URL:** http://host.docker.internal:9099 (this is where the previously launched Docker container is running).\n- **Password:** 0p3n-w3bu! (standard password)\n\n![OpenWebUI Settings](https://langfuse.com/images/docs/openwebui-setup-settings.png)\n\n### Step 4: Adding the Langfuse Filter Pipeline"}


created_at: 2024-12-28 04:06:27
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 969fb295-505f-434e-8546-512f0a0881e1
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "2ae64564-8122-4b85-960b-5d73ffc3d304", "hash": "26c922bcc0461c7739ac1e89c38fbc3a7f020bce9d8329dce34e1970d5d7cdc5", "name": "langfuse.md", "source": "langfuse.md", "start_index": 0, "chroma:document": "### Step 4: Adding the Langfuse Filter Pipeline\n\nNext, navigate to _Admin Settings_ -> _Pipelines_ and add the Langfuse Filter Pipeline. Specify that Pipelines is listening on http://host.docker.internal:9099 (as configured earlier) and install the [Langfuse Filter Pipeline](https://github.com/open-webui/pipelines/blob/main/examples/filters/langfuse_filter_pipeline.py) by using the _Install from Github URL_ option with the following URL:\n\n```\nhttps://github.com/open-webui/pipelines/blob/main/examples/filters/langfuse_filter_pipeline.py\n```\n\nNow, add your Langfuse API keys below. If you haven't signed up to Langfuse yet, you can get your API keys by creating an account [here](https://cloud.langfuse.com).\n\n![OpenWebUI add Langfuse Pipeline](https://langfuse.com//images/docs/openwebui-add-pipeline.png)"}


created_at: 2024-12-28 04:06:27
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: fc35eaba-3de7-40ae-b100-f9e350766e50
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "2ae64564-8122-4b85-960b-5d73ffc3d304", "hash": "26c922bcc0461c7739ac1e89c38fbc3a7f020bce9d8329dce34e1970d5d7cdc5", "name": "langfuse.md", "source": "langfuse.md", "start_index": 0, "chroma:document": "![OpenWebUI add Langfuse Pipeline](https://langfuse.com//images/docs/openwebui-add-pipeline.png)\n\n_**Note:** Capture usage (token counts) for OpenAi models while streaming is enabled, you have to navigate to the model settings in OpenWebUI and check the \"Usage\" [box](https://github.com/open-webui/open-webui/discussions/5770#discussioncomment-10778586) below _Capabilities_._\n\n### Step 5: See your traces in Langfuse\n\nYou can now interact with your OpenWebUI application and see the traces in Langfuse.\n\n[Example trace](https://cloud.langfuse.com/project/cloramnkj0002jz088vzn1ja4/traces/904a8c1f-4974-4f8f-8a2f-129ae78d99c5?observation=fe5b127b-e71c-45ab-8ee5-439d4c0edc28) in the Langfuse UI:\n\n![OpenWebUI Example Trace in Langfuse](https://langfuse.com/images/docs/openwebui-example-trace.png)\n\n## Learn more\n\nFor a comprehensive guide on OpenWebUI Pipelines, visit [this post](https://ikasten.io/2024/06/03/getting-started-with-openwebui-pipelines/)."}


created_at: 2024-12-28 04:06:27
topic: persistent://default/default/71856bc7-be1f-4b50-8449-705851f428b3
id: 84180fd0-ad5c-4ad9-862f-9569c174a5d2
encoding: FLOAT32
metadata:
{"source": "LetsEncrypt.md", "name": "LetsEncrypt.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "8d689d1d-6be3-40a1-b0d2-81f0ce690805", "start_index": 0, "hash": "6dd34da2a8bcde2b81ee3a05d81834c7999a2cb7b9f5e920520f256d7db548b5", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "### Let's Encrypt\n\nLet's Encrypt provides free SSL certificates trusted by most browsers, ideal for production environments.\n\n#### Prerequisites\n\n- **Certbot** installed on your system.\n- DNS records properly configured to point to your server.\n\n#### Steps\n\n1. **Create Directories for Nginx Files:**\n\n    ```bash\n    mkdir -p conf.d ssl\n    ```\n\n2. **Create Nginx Configuration File:**\n\n    **`conf.d/open-webui.conf`:**\n\n    ```nginx\n    server {\n        listen 80;\n        server_name your_domain_or_IP;\n\n        location / {\n            proxy_pass http://host.docker.internal:3000;\n            proxy_set_header Host $host;\n            proxy_set_header X-Real-IP $remote_addr;\n            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;\n            proxy_set_header X-Forwarded-Proto $scheme;\n\n            # (Optional) Disable proxy buffering for better streaming response from models\n            proxy_buffering off;\n        }\n    }\n    ```\n\n3. **Simplified Let's Encrypt Script:**"}


created_at: 2024-12-28 04:06:27
topic: persistent://default/default/71856bc7-be1f-4b50-8449-705851f428b3
id: 67a382de-559b-446e-91a3-6c4872a5b0e8
encoding: FLOAT32
metadata:
{"source": "LetsEncrypt.md", "name": "LetsEncrypt.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "8d689d1d-6be3-40a1-b0d2-81f0ce690805", "start_index": 959, "hash": "6dd34da2a8bcde2b81ee3a05d81834c7999a2cb7b9f5e920520f256d7db548b5", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "3. **Simplified Let's Encrypt Script:**\n\n    **`enable_letsencrypt.sh`:**\n\n    ```bash\n    #!/bin/bash\n\n    # Description: Simplified script to obtain and install Let's Encrypt SSL certificates using Certbot.\n\n    DOMAIN=\"your_domain_or_IP\"\n    EMAIL=\"your_email@example.com\"\n\n    # Install Certbot if not installed\n    if ! command -v certbot &> /dev/null; then\n        echo \"Certbot not found. Installing...\"\n        sudo apt-get update\n        sudo apt-get install -y certbot python3-certbot-nginx\n    fi\n\n    # Obtain SSL certificate\n    sudo certbot --nginx -d \"$DOMAIN\" --non-interactive --agree-tos -m \"$EMAIL\"\n\n    # Reload Nginx to apply changes\n    sudo systemctl reload nginx\n\n    echo \"Let's Encrypt SSL certificate has been installed and Nginx reloaded.\"\n    ```\n\n    **Make the script executable:**\n\n    ```bash\n    chmod +x enable_letsencrypt.sh\n    ```\n\n4. **Update Docker Compose Configuration:**\n\n    Add the Nginx service to your `docker-compose.yml`:"}


created_at: 2024-12-28 04:06:27
topic: persistent://default/default/71856bc7-be1f-4b50-8449-705851f428b3
id: f3bb767f-9ecd-450e-9e33-bc63bb7c6a11
encoding: FLOAT32
metadata:
{"source": "LetsEncrypt.md", "name": "LetsEncrypt.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "8d689d1d-6be3-40a1-b0d2-81f0ce690805", "start_index": 1878, "hash": "6dd34da2a8bcde2b81ee3a05d81834c7999a2cb7b9f5e920520f256d7db548b5", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "Add the Nginx service to your `docker-compose.yml`:\n\n    ```yaml\n    services:\n      nginx:\n        image: nginx:alpine\n        ports:\n          - \"80:80\"\n          - \"443:443\"\n        volumes:\n          - ./conf.d:/etc/nginx/conf.d\n          - ./ssl:/etc/nginx/ssl\n        depends_on:\n          - open-webui\n    ```\n\n5. **Start Nginx Service:**\n\n    ```bash\n    docker compose up -d nginx\n    ```\n\n6. **Run the Let's Encrypt Script:**\n\n    Execute the script to obtain and install the SSL certificate:\n\n    ```bash\n    ./enable_letsencrypt.sh\n    ```\n\n#### Access the WebUI\n\nAccess Open WebUI via HTTPS at:\n\n[https://your_domain_or_IP](https://your_domain_or_IP)"}


created_at: 2024-12-28 04:06:27
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 3c1c62d7-66c5-4aab-98db-9335f6046713
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "8d689d1d-6be3-40a1-b0d2-81f0ce690805", "hash": "6dd34da2a8bcde2b81ee3a05d81834c7999a2cb7b9f5e920520f256d7db548b5", "name": "LetsEncrypt.md", "source": "LetsEncrypt.md", "start_index": 0, "chroma:document": "### Let's Encrypt\n\nLet's Encrypt provides free SSL certificates trusted by most browsers, ideal for production environments.\n\n#### Prerequisites\n\n- **Certbot** installed on your system.\n- DNS records properly configured to point to your server.\n\n#### Steps\n\n1. **Create Directories for Nginx Files:**\n\n    ```bash\n    mkdir -p conf.d ssl\n    ```\n\n2. **Create Nginx Configuration File:**\n\n    **`conf.d/open-webui.conf`:**\n\n    ```nginx\n    server {\n        listen 80;\n        server_name your_domain_or_IP;\n\n        location / {\n            proxy_pass http://host.docker.internal:3000;\n            proxy_set_header Host $host;\n            proxy_set_header X-Real-IP $remote_addr;\n            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;\n            proxy_set_header X-Forwarded-Proto $scheme;\n\n            # (Optional) Disable proxy buffering for better streaming response from models\n            proxy_buffering off;\n        }\n    }\n    ```\n\n3. **Simplified Let's Encrypt Script:**"}


created_at: 2024-12-28 04:06:27
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: d4544274-7e6b-4b80-8052-b54475b4484a
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "8d689d1d-6be3-40a1-b0d2-81f0ce690805", "hash": "6dd34da2a8bcde2b81ee3a05d81834c7999a2cb7b9f5e920520f256d7db548b5", "name": "LetsEncrypt.md", "source": "LetsEncrypt.md", "start_index": 0, "chroma:document": "3. **Simplified Let's Encrypt Script:**\n\n    **`enable_letsencrypt.sh`:**\n\n    ```bash\n    #!/bin/bash\n\n    # Description: Simplified script to obtain and install Let's Encrypt SSL certificates using Certbot.\n\n    DOMAIN=\"your_domain_or_IP\"\n    EMAIL=\"your_email@example.com\"\n\n    # Install Certbot if not installed\n    if ! command -v certbot &> /dev/null; then\n        echo \"Certbot not found. Installing...\"\n        sudo apt-get update\n        sudo apt-get install -y certbot python3-certbot-nginx\n    fi\n\n    # Obtain SSL certificate\n    sudo certbot --nginx -d \"$DOMAIN\" --non-interactive --agree-tos -m \"$EMAIL\"\n\n    # Reload Nginx to apply changes\n    sudo systemctl reload nginx\n\n    echo \"Let's Encrypt SSL certificate has been installed and Nginx reloaded.\"\n    ```\n\n    **Make the script executable:**\n\n    ```bash\n    chmod +x enable_letsencrypt.sh\n    ```\n\n4. **Update Docker Compose Configuration:**\n\n    Add the Nginx service to your `docker-compose.yml`:"}


created_at: 2024-12-28 04:06:27
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: faf11359-389a-4305-aa9c-d0b9541c1378
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "8d689d1d-6be3-40a1-b0d2-81f0ce690805", "hash": "6dd34da2a8bcde2b81ee3a05d81834c7999a2cb7b9f5e920520f256d7db548b5", "name": "LetsEncrypt.md", "source": "LetsEncrypt.md", "start_index": 0, "chroma:document": "Add the Nginx service to your `docker-compose.yml`:\n\n    ```yaml\n    services:\n      nginx:\n        image: nginx:alpine\n        ports:\n          - \"80:80\"\n          - \"443:443\"\n        volumes:\n          - ./conf.d:/etc/nginx/conf.d\n          - ./ssl:/etc/nginx/ssl\n        depends_on:\n          - open-webui\n    ```\n\n5. **Start Nginx Service:**\n\n    ```bash\n    docker compose up -d nginx\n    ```\n\n6. **Run the Let's Encrypt Script:**\n\n    Execute the script to obtain and install the SSL certificate:\n\n    ```bash\n    ./enable_letsencrypt.sh\n    ```\n\n#### Access the WebUI\n\nAccess Open WebUI via HTTPS at:\n\n[https://your_domain_or_IP](https://your_domain_or_IP)"}


created_at: 2024-12-28 04:06:28
topic: persistent://default/default/74ba4caa-45ae-433f-9cde-09f263ee9e4a
id: a863dccf-5fb0-47a3-8e7c-fe077a5d4bab
encoding: FLOAT32
metadata:
{"source": "logging.md", "name": "logging.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "ccb0a932-af42-4eec-a1bb-9a0dea6586b3", "start_index": 0, "hash": "b74d3f5628d126c8f740b6769eda1ec6b76f416d8888d2a9f0e6f24fe01f4c80", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "---\nsidebar_position: 5\ntitle: \"\ud83d\udcdc Open WebUI Logging\"\n---\n\n## Browser Client Logging ##\n\nClient logging generally occurs via [JavaScript](https://developer.mozilla.org/en-US/docs/Web/API/console/log_static) `console.log()` and can be accessed using the built-in browser-specific developer tools:\n\n* Blink\n  * [Chrome/Chromium](https://developer.chrome.com/docs/devtools/)\n  * [Edge](https://learn.microsoft.com/en-us/microsoft-edge/devtools-guide-chromium/overview)\n* Gecko\n  * [Firefox](https://firefox-source-docs.mozilla.org/devtools-user/)\n* WebKit\n  * [Safari](https://developer.apple.com/safari/tools/)\n\n## Application Server/Backend Logging ##\n\nLogging is an ongoing work-in-progress but some level of control is available using environment variables. [Python Logging](https://docs.python.org/3/howto/logging.html) `log()` and `print()` statements send information to the console. The default level is `INFO`. Ideally, sensitive data will only be exposed with `DEBUG` level."}


created_at: 2024-12-28 04:06:28
topic: persistent://default/default/74ba4caa-45ae-433f-9cde-09f263ee9e4a
id: 4d436f7a-7499-4f24-aa61-7bb9746f8755
encoding: FLOAT32
metadata:
{"source": "logging.md", "name": "logging.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "ccb0a932-af42-4eec-a1bb-9a0dea6586b3", "start_index": 983, "hash": "b74d3f5628d126c8f740b6769eda1ec6b76f416d8888d2a9f0e6f24fe01f4c80", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "### Logging Levels ###\n\nThe following [logging levels](https://docs.python.org/3/howto/logging.html#logging-levels) values are supported:\n\n| Level      | Numeric value |\n| ---------- | ------------- |\n| `CRITICAL` | 50            |\n| `ERROR`    | 40            |\n| `WARNING`  | 30            |\n| `INFO`     | 20            |\n| `DEBUG`    | 10            |\n| `NOTSET`   | 0             |\n\n### Global ###\n\nThe default global log level of `INFO` can be overridden with the `GLOBAL_LOG_LEVEL` environment variable. When set, this executes a [basicConfig](https://docs.python.org/3/library/logging.html#logging.basicConfig) statement with the `force` argument set to *True* within `config.py`. This results in reconfiguration of all attached loggers:\n> *If this keyword argument is specified as true, any existing handlers attached to the root logger are removed and closed, before carrying out the configuration as specified by the other arguments.*"}


created_at: 2024-12-28 04:06:28
topic: persistent://default/default/74ba4caa-45ae-433f-9cde-09f263ee9e4a
id: 7bc1add7-9389-44c7-8437-c170d6520d2f
encoding: FLOAT32
metadata:
{"source": "logging.md", "name": "logging.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "ccb0a932-af42-4eec-a1bb-9a0dea6586b3", "start_index": 1930, "hash": "b74d3f5628d126c8f740b6769eda1ec6b76f416d8888d2a9f0e6f24fe01f4c80", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "The stream uses standard output (`sys.stdout`). In addition to all Open-WebUI `log()` statements, this also affects any imported Python modules that use the Python Logging module `basicConfig` mechanism including [urllib](https://docs.python.org/3/library/urllib.html).\n\nFor example, to set `DEBUG` logging level as a Docker parameter use:\n\n```\n--env GLOBAL_LOG_LEVEL=\"DEBUG\"\n```\n\n### App/Backend ###\n\nSome level of granularity is possible using any of the following combination of variables. Note that `basicConfig` `force` isn't presently used so these statements may only affect Open-WebUI logging and not 3rd party modules."}


created_at: 2024-12-28 04:06:28
topic: persistent://default/default/74ba4caa-45ae-433f-9cde-09f263ee9e4a
id: 0922b2cd-64ea-41e7-9c81-4c3ca61aa466
encoding: FLOAT32
metadata:
{"source": "logging.md", "name": "logging.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "ccb0a932-af42-4eec-a1bb-9a0dea6586b3", "start_index": 2559, "hash": "b74d3f5628d126c8f740b6769eda1ec6b76f416d8888d2a9f0e6f24fe01f4c80", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "| Environment Variable | App/Backend                                                       |\n| -------------------- | ----------------------------------------------------------------- |\n| `AUDIO_LOG_LEVEL`    | Audio transcription using faster-whisper, TTS etc.                |\n| `COMFYUI_LOG_LEVEL`  | ComfyUI integration handling                                      |\n| `CONFIG_LOG_LEVEL`   | Configuration handling                                            |\n| `DB_LOG_LEVEL`       | Internal Peewee Database                                          |\n| `IMAGES_LOG_LEVEL`   | AUTOMATIC1111 stable diffusion image generation                   |\n| `LITELLM_LOG_LEVEL`  | LiteLLM proxy                                                     |\n| `MAIN_LOG_LEVEL`     | Main (root) execution                                             |\n| `MODELS_LOG_LEVEL`   | LLM model interaction, authentication, etc.                       |"}


created_at: 2024-12-28 04:06:28
topic: persistent://default/default/74ba4caa-45ae-433f-9cde-09f263ee9e4a
id: bfc31022-d182-426f-9bc9-6b091278e161
encoding: FLOAT32
metadata:
{"source": "logging.md", "name": "logging.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "ccb0a932-af42-4eec-a1bb-9a0dea6586b3", "start_index": 3396, "hash": "b74d3f5628d126c8f740b6769eda1ec6b76f416d8888d2a9f0e6f24fe01f4c80", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "| `MODELS_LOG_LEVEL`   | LLM model interaction, authentication, etc.                       |\n| `OLLAMA_LOG_LEVEL`   | Ollama backend interaction                                        |\n| `OPENAI_LOG_LEVEL`   | OpenAI interaction                                                |\n| `RAG_LOG_LEVEL`      | Retrieval-Augmented Generation using Chroma/Sentence-Transformers |\n| `WEBHOOK_LOG_LEVEL`  | Authentication webhook extended logging                           |"}


created_at: 2024-12-28 04:06:28
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 8070cec6-8dd0-4f63-84eb-c470109d54ab
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "ccb0a932-af42-4eec-a1bb-9a0dea6586b3", "hash": "b74d3f5628d126c8f740b6769eda1ec6b76f416d8888d2a9f0e6f24fe01f4c80", "name": "logging.md", "source": "logging.md", "start_index": 0, "chroma:document": "---\nsidebar_position: 5\ntitle: \"\ud83d\udcdc Open WebUI Logging\"\n---\n\n## Browser Client Logging ##\n\nClient logging generally occurs via [JavaScript](https://developer.mozilla.org/en-US/docs/Web/API/console/log_static) `console.log()` and can be accessed using the built-in browser-specific developer tools:\n\n* Blink\n  * [Chrome/Chromium](https://developer.chrome.com/docs/devtools/)\n  * [Edge](https://learn.microsoft.com/en-us/microsoft-edge/devtools-guide-chromium/overview)\n* Gecko\n  * [Firefox](https://firefox-source-docs.mozilla.org/devtools-user/)\n* WebKit\n  * [Safari](https://developer.apple.com/safari/tools/)\n\n## Application Server/Backend Logging ##\n\nLogging is an ongoing work-in-progress but some level of control is available using environment variables. [Python Logging](https://docs.python.org/3/howto/logging.html) `log()` and `print()` statements send information to the console. The default level is `INFO`. Ideally, sensitive data will only be exposed with `DEBUG` level."}


created_at: 2024-12-28 04:06:28
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 1470220b-6bcf-4089-a733-84bbb67d5a9f
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "ccb0a932-af42-4eec-a1bb-9a0dea6586b3", "hash": "b74d3f5628d126c8f740b6769eda1ec6b76f416d8888d2a9f0e6f24fe01f4c80", "name": "logging.md", "source": "logging.md", "start_index": 0, "chroma:document": "### Logging Levels ###\n\nThe following [logging levels](https://docs.python.org/3/howto/logging.html#logging-levels) values are supported:\n\n| Level      | Numeric value |\n| ---------- | ------------- |\n| `CRITICAL` | 50            |\n| `ERROR`    | 40            |\n| `WARNING`  | 30            |\n| `INFO`     | 20            |\n| `DEBUG`    | 10            |\n| `NOTSET`   | 0             |\n\n### Global ###\n\nThe default global log level of `INFO` can be overridden with the `GLOBAL_LOG_LEVEL` environment variable. When set, this executes a [basicConfig](https://docs.python.org/3/library/logging.html#logging.basicConfig) statement with the `force` argument set to *True* within `config.py`. This results in reconfiguration of all attached loggers:\n> *If this keyword argument is specified as true, any existing handlers attached to the root logger are removed and closed, before carrying out the configuration as specified by the other arguments.*"}


created_at: 2024-12-28 04:06:28
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: c86a3d94-5363-451b-a22b-cefc41b899a0
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "ccb0a932-af42-4eec-a1bb-9a0dea6586b3", "hash": "b74d3f5628d126c8f740b6769eda1ec6b76f416d8888d2a9f0e6f24fe01f4c80", "name": "logging.md", "source": "logging.md", "start_index": 0, "chroma:document": "The stream uses standard output (`sys.stdout`). In addition to all Open-WebUI `log()` statements, this also affects any imported Python modules that use the Python Logging module `basicConfig` mechanism including [urllib](https://docs.python.org/3/library/urllib.html).\n\nFor example, to set `DEBUG` logging level as a Docker parameter use:\n\n```\n--env GLOBAL_LOG_LEVEL=\"DEBUG\"\n```\n\n### App/Backend ###\n\nSome level of granularity is possible using any of the following combination of variables. Note that `basicConfig` `force` isn't presently used so these statements may only affect Open-WebUI logging and not 3rd party modules."}


created_at: 2024-12-28 04:06:28
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: c4a806a4-1200-4c7c-ad4a-ec74cde57987
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "ccb0a932-af42-4eec-a1bb-9a0dea6586b3", "hash": "b74d3f5628d126c8f740b6769eda1ec6b76f416d8888d2a9f0e6f24fe01f4c80", "name": "logging.md", "source": "logging.md", "start_index": 0, "chroma:document": "| Environment Variable | App/Backend                                                       |\n| -------------------- | ----------------------------------------------------------------- |\n| `AUDIO_LOG_LEVEL`    | Audio transcription using faster-whisper, TTS etc.                |\n| `COMFYUI_LOG_LEVEL`  | ComfyUI integration handling                                      |\n| `CONFIG_LOG_LEVEL`   | Configuration handling                                            |\n| `DB_LOG_LEVEL`       | Internal Peewee Database                                          |\n| `IMAGES_LOG_LEVEL`   | AUTOMATIC1111 stable diffusion image generation                   |\n| `LITELLM_LOG_LEVEL`  | LiteLLM proxy                                                     |\n| `MAIN_LOG_LEVEL`     | Main (root) execution                                             |\n| `MODELS_LOG_LEVEL`   | LLM model interaction, authentication, etc.                       |"}


created_at: 2024-12-28 04:06:28
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 386c7567-1dd1-45d4-821e-dc7200c43956
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "ccb0a932-af42-4eec-a1bb-9a0dea6586b3", "hash": "b74d3f5628d126c8f740b6769eda1ec6b76f416d8888d2a9f0e6f24fe01f4c80", "name": "logging.md", "source": "logging.md", "start_index": 0, "chroma:document": "| `MODELS_LOG_LEVEL`   | LLM model interaction, authentication, etc.                       |\n| `OLLAMA_LOG_LEVEL`   | Ollama backend interaction                                        |\n| `OPENAI_LOG_LEVEL`   | OpenAI interaction                                                |\n| `RAG_LOG_LEVEL`      | Retrieval-Augmented Generation using Chroma/Sentence-Transformers |\n| `WEBHOOK_LOG_LEVEL`  | Authentication webhook extended logging                           |"}


created_at: 2024-12-28 04:06:28
topic: persistent://default/default/a02319dc-7b45-44fb-95ac-a95ea605a064
id: cbe64a67-00ec-4e67-a833-c54d9fc8fd01
encoding: FLOAT32
metadata:
{"source": "ManualDocker.md", "name": "ManualDocker.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "fe949d47-848f-40dc-95e7-650676139231", "start_index": 0, "hash": "74923839d0477f723a5ffd9e97cda0f032b4706f423d4cfa55d14f3797d58a46", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "# Manual Docker Setup\n\nIf you prefer to set up Docker manually, follow these steps for Open WebUI.\n\n## Step 1: Pull the Open WebUI Image\n\nStart by pulling the latest Open WebUI Docker image from the GitHub Container Registry.\n\n```bash\ndocker pull ghcr.io/open-webui/open-webui:main\n```\n\n## Step 2: Run the Container\n\nRun the container with default settings. This command includes a volume mapping to ensure persistent data storage.\n\n```bash\ndocker run -d -p 3000:8080 -v open-webui:/app/backend/data --name open-webui ghcr.io/open-webui/open-webui:main\n```\n\n### Important Flags\n\n- **Volume Mapping (`-v open-webui:/app/backend/data`)**: Ensures persistent storage of your data. This prevents data loss between container restarts.\n- **Port Mapping (`-p 3000:8080`)**: Exposes the WebUI on port 3000 of your local machine.\n\n### Using GPU Support\n\nFor Nvidia GPU support, add `--gpus all` to the `docker run` command:"}


created_at: 2024-12-28 04:06:28
topic: persistent://default/default/a02319dc-7b45-44fb-95ac-a95ea605a064
id: 3a047794-b3b9-42ba-aa8d-cef45311dc27
encoding: FLOAT32
metadata:
{"source": "ManualDocker.md", "name": "ManualDocker.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "fe949d47-848f-40dc-95e7-650676139231", "start_index": 822, "hash": "74923839d0477f723a5ffd9e97cda0f032b4706f423d4cfa55d14f3797d58a46", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "### Using GPU Support\n\nFor Nvidia GPU support, add `--gpus all` to the `docker run` command:\n\n```bash\ndocker run -d -p 3000:8080 --gpus all -v open-webui:/app/backend/data --name open-webui ghcr.io/open-webui/open-webui:cuda\n```\n\n## User Roles and Privacy\n\n:::info **Important Note on User Roles and Privacy:**\n\n- **Admin Creation**: The first account created on Open WebUI will have **Administrator privileges**, managing user access and system settings.\n- **User Registrations**: Additional accounts start with a **Pending** status, requiring Administrator approval for access.\n- **Data Security**: **All your data** is stored locally on your device, ensuring **privacy** and **no external requests**. Open WebUI does not transmit data externally by default.\n\n:::\n\n## Single-User Mode (Disabling Login)\n\nTo bypass the login page for a single-user setup, set the `WEBUI_AUTH` environment variable to `False`:"}


created_at: 2024-12-28 04:06:28
topic: persistent://default/default/a02319dc-7b45-44fb-95ac-a95ea605a064
id: 5723ce67-2c9d-4803-beba-6de460cffaaf
encoding: FLOAT32
metadata:
{"source": "ManualDocker.md", "name": "ManualDocker.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "fe949d47-848f-40dc-95e7-650676139231", "start_index": 1733, "hash": "74923839d0477f723a5ffd9e97cda0f032b4706f423d4cfa55d14f3797d58a46", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "```bash\ndocker run -d -p 3000:8080 -e WEBUI_AUTH=False -v open-webui:/app/backend/data --name open-webui ghcr.io/open-webui/open-webui:main\n```\n\n:::warning\nYou cannot switch between single-user mode and multi-account mode after this change.\n:::\n\n## Quick Start with Docker \ud83d\udc33\n\n### Essential Docker Command Options\n\nFor Docker installation, consider the following options:\n\n- **Persistent Storage**: Use the `-v open-webui:/app/backend/data` option to ensure all application data remains available across sessions.\n- **Exposing Ports**: Use the `-p` flag to map internal container ports to your system.\n\nFor example, if you're installing Open WebUI with data persistence and local-only port exposure, the command would be:\n\n```bash\ndocker run -d -p 127.0.0.1:3000:8080 -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main\n```\n\n### Advanced Configuration: Connecting to Ollama on a Different Server"}


created_at: 2024-12-28 04:06:28
topic: persistent://default/default/a02319dc-7b45-44fb-95ac-a95ea605a064
id: 180be857-0cca-4ba2-bd77-03545847d97a
encoding: FLOAT32
metadata:
{"source": "ManualDocker.md", "name": "ManualDocker.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "fe949d47-848f-40dc-95e7-650676139231", "start_index": 2607, "hash": "74923839d0477f723a5ffd9e97cda0f032b4706f423d4cfa55d14f3797d58a46", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "### Advanced Configuration: Connecting to Ollama on a Different Server\n\nTo connect Open WebUI to an Ollama server located on another host, add the `OLLAMA_BASE_URL` environment variable:\n\n```bash\ndocker run -d -p 3000:8080 -e OLLAMA_BASE_URL=https://example.com -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main\n```\n\n### GPU Support with Nvidia\n\nFor running Open WebUI with Nvidia GPU support, use:\n\n```bash\ndocker run -d -p 3000:8080 --gpus all -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:cuda\n```\n\n## Access the WebUI\n\nAfter the container is running, access Open WebUI at:\n\n[http://localhost:3000](http://localhost:3000)\n\nFor detailed help on each Docker flag, see [Docker's documentation](https://docs.docker.com/engine/reference/commandline/run/)."}


created_at: 2024-12-28 04:06:28
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 214efdb3-f3b9-41b1-bc09-0508350103f4
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "fe949d47-848f-40dc-95e7-650676139231", "hash": "74923839d0477f723a5ffd9e97cda0f032b4706f423d4cfa55d14f3797d58a46", "name": "ManualDocker.md", "source": "ManualDocker.md", "start_index": 0, "chroma:document": "# Manual Docker Setup\n\nIf you prefer to set up Docker manually, follow these steps for Open WebUI.\n\n## Step 1: Pull the Open WebUI Image\n\nStart by pulling the latest Open WebUI Docker image from the GitHub Container Registry.\n\n```bash\ndocker pull ghcr.io/open-webui/open-webui:main\n```\n\n## Step 2: Run the Container\n\nRun the container with default settings. This command includes a volume mapping to ensure persistent data storage.\n\n```bash\ndocker run -d -p 3000:8080 -v open-webui:/app/backend/data --name open-webui ghcr.io/open-webui/open-webui:main\n```\n\n### Important Flags\n\n- **Volume Mapping (`-v open-webui:/app/backend/data`)**: Ensures persistent storage of your data. This prevents data loss between container restarts.\n- **Port Mapping (`-p 3000:8080`)**: Exposes the WebUI on port 3000 of your local machine.\n\n### Using GPU Support\n\nFor Nvidia GPU support, add `--gpus all` to the `docker run` command:"}


created_at: 2024-12-28 04:06:28
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 404b89c5-0984-4ada-ad42-892be8a2f592
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "fe949d47-848f-40dc-95e7-650676139231", "hash": "74923839d0477f723a5ffd9e97cda0f032b4706f423d4cfa55d14f3797d58a46", "name": "ManualDocker.md", "source": "ManualDocker.md", "start_index": 0, "chroma:document": "### Using GPU Support\n\nFor Nvidia GPU support, add `--gpus all` to the `docker run` command:\n\n```bash\ndocker run -d -p 3000:8080 --gpus all -v open-webui:/app/backend/data --name open-webui ghcr.io/open-webui/open-webui:cuda\n```\n\n## User Roles and Privacy\n\n:::info **Important Note on User Roles and Privacy:**\n\n- **Admin Creation**: The first account created on Open WebUI will have **Administrator privileges**, managing user access and system settings.\n- **User Registrations**: Additional accounts start with a **Pending** status, requiring Administrator approval for access.\n- **Data Security**: **All your data** is stored locally on your device, ensuring **privacy** and **no external requests**. Open WebUI does not transmit data externally by default.\n\n:::\n\n## Single-User Mode (Disabling Login)\n\nTo bypass the login page for a single-user setup, set the `WEBUI_AUTH` environment variable to `False`:"}


created_at: 2024-12-28 04:06:28
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 6abe817f-7f7c-46c0-ba99-e80f7f1e6216
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "fe949d47-848f-40dc-95e7-650676139231", "hash": "74923839d0477f723a5ffd9e97cda0f032b4706f423d4cfa55d14f3797d58a46", "name": "ManualDocker.md", "source": "ManualDocker.md", "start_index": 0, "chroma:document": "```bash\ndocker run -d -p 3000:8080 -e WEBUI_AUTH=False -v open-webui:/app/backend/data --name open-webui ghcr.io/open-webui/open-webui:main\n```\n\n:::warning\nYou cannot switch between single-user mode and multi-account mode after this change.\n:::\n\n## Quick Start with Docker \ud83d\udc33\n\n### Essential Docker Command Options\n\nFor Docker installation, consider the following options:\n\n- **Persistent Storage**: Use the `-v open-webui:/app/backend/data` option to ensure all application data remains available across sessions.\n- **Exposing Ports**: Use the `-p` flag to map internal container ports to your system.\n\nFor example, if you're installing Open WebUI with data persistence and local-only port exposure, the command would be:\n\n```bash\ndocker run -d -p 127.0.0.1:3000:8080 -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main\n```\n\n### Advanced Configuration: Connecting to Ollama on a Different Server"}


created_at: 2024-12-28 04:06:28
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 7ffd40d7-2a85-4462-8734-af218341aed7
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "fe949d47-848f-40dc-95e7-650676139231", "hash": "74923839d0477f723a5ffd9e97cda0f032b4706f423d4cfa55d14f3797d58a46", "name": "ManualDocker.md", "source": "ManualDocker.md", "start_index": 0, "chroma:document": "### Advanced Configuration: Connecting to Ollama on a Different Server\n\nTo connect Open WebUI to an Ollama server located on another host, add the `OLLAMA_BASE_URL` environment variable:\n\n```bash\ndocker run -d -p 3000:8080 -e OLLAMA_BASE_URL=https://example.com -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main\n```\n\n### GPU Support with Nvidia\n\nFor running Open WebUI with Nvidia GPU support, use:\n\n```bash\ndocker run -d -p 3000:8080 --gpus all -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:cuda\n```\n\n## Access the WebUI\n\nAfter the container is running, access Open WebUI at:\n\n[http://localhost:3000](http://localhost:3000)\n\nFor detailed help on each Docker flag, see [Docker's documentation](https://docs.docker.com/engine/reference/commandline/run/)."}


created_at: 2024-12-28 04:06:28
topic: persistent://default/default/c908b8da-6f75-46de-957f-8f24549eed5e
id: b9b3f3a6-8a33-43fc-a058-77e45ccc7f57
encoding: FLOAT32
metadata:
{"source": "memory.md", "name": "memory.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "2a3003f2-c3f3-4c66-bfc3-4145996e05d2", "start_index": 0, "hash": "33072238ecea545596db1ee1b63fe96ae036c6332dba17bdef69ef6f1d529728", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "---\nsidebar_position: 8\ntitle: \"\ud83e\udde0 Memory (Experimental)\"\n---\n\nCOMING SOON!\n\n\ud83e\udde0 Memory Feature: Manually add information you want your LLMs to remember via the Settings > Personalization > Memory menu. Memories can be added, edited, and deleted."}


created_at: 2024-12-28 04:06:28
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: d999382c-27d8-45fb-a324-182e5c5f7a90
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "2a3003f2-c3f3-4c66-bfc3-4145996e05d2", "hash": "33072238ecea545596db1ee1b63fe96ae036c6332dba17bdef69ef6f1d529728", "name": "memory.md", "source": "memory.md", "start_index": 0, "chroma:document": "---\nsidebar_position: 8\ntitle: \"\ud83e\udde0 Memory (Experimental)\"\n---\n\nCOMING SOON!\n\n\ud83e\udde0 Memory Feature: Manually add information you want your LLMs to remember via the Settings > Personalization > Memory menu. Memories can be added, edited, and deleted."}


created_at: 2024-12-28 04:06:28
topic: persistent://default/default/11d8735f-6486-4ba5-9060-323fc53d05ff
id: db044671-0f6a-4fbd-961d-780f8fc1b551
encoding: FLOAT32
metadata:
{"source": "mermaid.md", "name": "mermaid.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "d6e9616c-11df-4a25-ad44-0f4f21764f8f", "start_index": 0, "hash": "7e1ae10837f38523bff934a6bb41a6fa677a447318dd70df9b0d152ec6f74851", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "---\nsidebar_position: 3\ntitle: \"\ud83c\udf0a MermaidJS Rendering\"\n---\n\n# \ud83c\udf0a MermaidJS Rendering Support in Open WebUI\n\n## Overview\n\nOpen WebUI supports rendering of visually appealing MermaidJS diagrams, flowcharts, pie charts and more, directly within the chat interface. MermaidJS is a powerful tool for visualizing complex information and ideas, and when paired with the capabilities of a large language model (LLM), it can be a powerful tool for generating and exploring new ideas.\n\n## Using MermaidJS in Open WebUI\n\nTo generate a MermaidJS diagram, simply ask an LLM within any chat to create a diagram or chart using MermaidJS. For example, you can ask the LLM to:\n\n* \"Create a flowchart for a simple decision-making process for me using Mermaid. Explain how the flowchart works.\"\n* \"Use Mermaid to visualize a decision tree to determine whether it's suitable to go for a walk outside.\""}


created_at: 2024-12-28 04:06:28
topic: persistent://default/default/11d8735f-6486-4ba5-9060-323fc53d05ff
id: 3e247971-6264-4d35-a0ea-bb13102236e3
encoding: FLOAT32
metadata:
{"source": "mermaid.md", "name": "mermaid.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "d6e9616c-11df-4a25-ad44-0f4f21764f8f", "start_index": 882, "hash": "7e1ae10837f38523bff934a6bb41a6fa677a447318dd70df9b0d152ec6f74851", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "Note that for the LLM's response to be rendered correctly, it must begin with the word `mermaid` followed by the MermaidJS code. You can reference the [MermaidJS documentation](https://mermaid.js.org/intro/) to ensure the syntax is correct and provide structured prompts to the LLM to guide it towards generating better MermaidJS syntax.\n\n## Visualizing MermaidJS Code Directly in the Chat\n\nWhen you request a MermaidJS visualization, the Large Language Model (LLM) will generate the necessary code. Open WebUI will automatically render the visualization directly within the chat interface, as long as the code uses valid MermaidJS syntax."}


created_at: 2024-12-28 04:06:28
topic: persistent://default/default/11d8735f-6486-4ba5-9060-323fc53d05ff
id: 66d3f520-f2c1-4666-a06f-ffcce3786c2c
encoding: FLOAT32
metadata:
{"source": "mermaid.md", "name": "mermaid.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "d6e9616c-11df-4a25-ad44-0f4f21764f8f", "start_index": 1523, "hash": "7e1ae10837f38523bff934a6bb41a6fa677a447318dd70df9b0d152ec6f74851", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "If the model generates MermaidJS syntax, but the visualization does not render, it usually indicates a syntax error in the code. Don't worry \u2013 you'll be notified of any errors once the response has been fully generated. If this happens, try referencing the [MermaidJS documentation](https://mermaid.js.org/intro/) to identify the issue and revise the prompt accordingly.\n\n## Interacting with Your Visualization\n\nOnce your visualization is displayed, you can:\n\n* Zoom in and out to examine it more closely.\n* Copy the original MermaidJS code used to generate the visualization by clicking the copy button at the top-right corner of the display area.\n\n### Example\n\n```mermaid\ngraph TD;\n  A-->B;\n  B-->C{Decision};\n  C--Yes-->D;\n  C--No-->E;\n  D-->F;\n  E-->F;\n```\n\nThis will generate a flowchart like the following:\n\n```markdown\n startAncestor [ start ]\nA[A] --> B[B]\nB --> C[Decision]\nC -->| Yes | D[D]\nC -->| No  | E[E]\nD --> F[F]\nE --> F[F]\n```"}


created_at: 2024-12-28 04:06:28
topic: persistent://default/default/11d8735f-6486-4ba5-9060-323fc53d05ff
id: e23f38c7-b357-4e48-81e7-3a3114329bae
encoding: FLOAT32
metadata:
{"source": "mermaid.md", "name": "mermaid.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "d6e9616c-11df-4a25-ad44-0f4f21764f8f", "start_index": 2469, "hash": "7e1ae10837f38523bff934a6bb41a6fa677a447318dd70df9b0d152ec6f74851", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "Experimenting with different types of diagrams and charts can help you develop a more nuanced understanding of how to effectively leverage MermaidJS within Open WebUI. For smaller models, consider referencing the [MermaidJS documentation](https://mermaid.js.org/intro/) to provide guidance for the LLM, or have it summarize the documentation into comprehensive notes or a system prompt. By following these guidelines and exploring the capabilities of MermaidJS, you can unlock the full potential of this powerful tool in Open WebUI."}


created_at: 2024-12-28 04:06:29
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 756ea205-ee14-4e81-9657-591b30d58470
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "d6e9616c-11df-4a25-ad44-0f4f21764f8f", "hash": "7e1ae10837f38523bff934a6bb41a6fa677a447318dd70df9b0d152ec6f74851", "name": "mermaid.md", "source": "mermaid.md", "start_index": 0, "chroma:document": "---\nsidebar_position: 3\ntitle: \"\ud83c\udf0a MermaidJS Rendering\"\n---\n\n# \ud83c\udf0a MermaidJS Rendering Support in Open WebUI\n\n## Overview\n\nOpen WebUI supports rendering of visually appealing MermaidJS diagrams, flowcharts, pie charts and more, directly within the chat interface. MermaidJS is a powerful tool for visualizing complex information and ideas, and when paired with the capabilities of a large language model (LLM), it can be a powerful tool for generating and exploring new ideas.\n\n## Using MermaidJS in Open WebUI\n\nTo generate a MermaidJS diagram, simply ask an LLM within any chat to create a diagram or chart using MermaidJS. For example, you can ask the LLM to:\n\n* \"Create a flowchart for a simple decision-making process for me using Mermaid. Explain how the flowchart works.\"\n* \"Use Mermaid to visualize a decision tree to determine whether it's suitable to go for a walk outside.\""}


created_at: 2024-12-28 04:06:29
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 8f90e071-8593-4c82-86e5-693a9744c05d
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "d6e9616c-11df-4a25-ad44-0f4f21764f8f", "hash": "7e1ae10837f38523bff934a6bb41a6fa677a447318dd70df9b0d152ec6f74851", "name": "mermaid.md", "source": "mermaid.md", "start_index": 0, "chroma:document": "Note that for the LLM's response to be rendered correctly, it must begin with the word `mermaid` followed by the MermaidJS code. You can reference the [MermaidJS documentation](https://mermaid.js.org/intro/) to ensure the syntax is correct and provide structured prompts to the LLM to guide it towards generating better MermaidJS syntax.\n\n## Visualizing MermaidJS Code Directly in the Chat\n\nWhen you request a MermaidJS visualization, the Large Language Model (LLM) will generate the necessary code. Open WebUI will automatically render the visualization directly within the chat interface, as long as the code uses valid MermaidJS syntax."}


created_at: 2024-12-28 04:06:29
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: dc9e3f05-a26d-4e07-a35c-c5a7bd110536
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "d6e9616c-11df-4a25-ad44-0f4f21764f8f", "hash": "7e1ae10837f38523bff934a6bb41a6fa677a447318dd70df9b0d152ec6f74851", "name": "mermaid.md", "source": "mermaid.md", "start_index": 0, "chroma:document": "If the model generates MermaidJS syntax, but the visualization does not render, it usually indicates a syntax error in the code. Don't worry \u2013 you'll be notified of any errors once the response has been fully generated. If this happens, try referencing the [MermaidJS documentation](https://mermaid.js.org/intro/) to identify the issue and revise the prompt accordingly.\n\n## Interacting with Your Visualization\n\nOnce your visualization is displayed, you can:\n\n* Zoom in and out to examine it more closely.\n* Copy the original MermaidJS code used to generate the visualization by clicking the copy button at the top-right corner of the display area.\n\n### Example\n\n```mermaid\ngraph TD;\n  A-->B;\n  B-->C{Decision};\n  C--Yes-->D;\n  C--No-->E;\n  D-->F;\n  E-->F;\n```\n\nThis will generate a flowchart like the following:\n\n```markdown\n startAncestor [ start ]\nA[A] --> B[B]\nB --> C[Decision]\nC -->| Yes | D[D]\nC -->| No  | E[E]\nD --> F[F]\nE --> F[F]\n```"}


created_at: 2024-12-28 04:06:29
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 0194bc97-06d7-4f63-a692-96ad6394fa56
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "d6e9616c-11df-4a25-ad44-0f4f21764f8f", "hash": "7e1ae10837f38523bff934a6bb41a6fa677a447318dd70df9b0d152ec6f74851", "name": "mermaid.md", "source": "mermaid.md", "start_index": 0, "chroma:document": "Experimenting with different types of diagrams and charts can help you develop a more nuanced understanding of how to effectively leverage MermaidJS within Open WebUI. For smaller models, consider referencing the [MermaidJS documentation](https://mermaid.js.org/intro/) to provide guidance for the LLM, or have it summarize the documentation into comprehensive notes or a system prompt. By following these guidelines and exploring the capabilities of MermaidJS, you can unlock the full potential of this powerful tool in Open WebUI."}


created_at: 2024-12-28 04:06:29
topic: persistent://default/default/b2143ba8-e4c6-457e-bc96-a3f78a877dd4
id: cec06101-af70-4b11-a939-c4b8876225d8
encoding: FLOAT32
metadata:
{"source": "microphone-error.mdx", "name": "microphone-error.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "01678258-f29a-4669-a954-b29fbf2c5631", "start_index": 0, "hash": "f402dd99ec3f5a726092396cfb9041b75b62b59f2cadb9612cefef8464cbcfc4", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "---\nsidebar_position: 2\ntitle: \"\ud83c\udf99\ufe0f Troubleshooting Microphone Access\"\n---\n\nEnsuring your application has the proper microphone access is crucial for functionality that depends on audio input. This guide covers how to manage and troubleshoot microphone permissions, particularly under secure contexts.\n\n## Understanding Secure Contexts \ud83d\udd12\n\nFor security reasons, accessing the microphone is restricted to pages served over HTTPS or locally from `localhost`. This requirement is meant to safeguard your data by ensuring it is transmitted over secure channels.\n\n## Common Permission Issues \ud83d\udeab\n\nBrowsers like Chrome, Brave, Microsoft Edge, Opera, and Vivaldi, as well as Firefox, restrict microphone access on non-HTTPS URLs. This typically becomes an issue when accessing a site from another device within the same network (e.g., using a mobile phone to access a desktop server). Here's how you can manage these issues:\n\n### Solutions for Non-HTTPS Connections"}


created_at: 2024-12-28 04:06:29
topic: persistent://default/default/b2143ba8-e4c6-457e-bc96-a3f78a877dd4
id: d406b9aa-1f8a-4ed3-84f6-6d9b108fe015
encoding: FLOAT32
metadata:
{"source": "microphone-error.mdx", "name": "microphone-error.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "01678258-f29a-4669-a954-b29fbf2c5631", "start_index": 915, "hash": "f402dd99ec3f5a726092396cfb9041b75b62b59f2cadb9612cefef8464cbcfc4", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "### Solutions for Non-HTTPS Connections\n\n1. **Set Up HTTPS:**\n   - It is highly recommended to configure your server to support HTTPS. This not only resolves permission issues but also enhances the security of your data transmissions.\n\n2. **Temporary Browser Flags (Use with caution):**\n   - These settings force your browser to treat certain insecure URLs as secure. This is useful for development purposes but poses significant security risks. Here's how to adjust these settings for major browsers:\n\n   #### Chromium-based Browsers (e.g., Chrome, Brave)\n   - Open `chrome://flags/#unsafely-treat-insecure-origin-as-secure`.\n   - Enter your non-HTTPS address (e.g., `http://192.168.1.35:3000`).\n   - Restart the browser to apply the changes.\n\n   #### Firefox-based Browsers\n   - Open `about:config`.\n   - Search and modify (or create) the string value `dom.securecontext.allowlist`.\n   - Add your IP addresses separated by commas (e.g., `http://127.0.0.1:8080`).\n\n### Considerations and Risks \ud83d\udea8"}


created_at: 2024-12-28 04:06:29
topic: persistent://default/default/b2143ba8-e4c6-457e-bc96-a3f78a877dd4
id: 5e1ab381-49d9-46ac-8885-d51243371ddb
encoding: FLOAT32
metadata:
{"source": "microphone-error.mdx", "name": "microphone-error.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "01678258-f29a-4669-a954-b29fbf2c5631", "start_index": 1881, "hash": "f402dd99ec3f5a726092396cfb9041b75b62b59f2cadb9612cefef8464cbcfc4", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "### Considerations and Risks \ud83d\udea8\n\nWhile browser flags offer a quick fix, they bypass important security checks which can expose your device and data to vulnerabilities. Always prioritize proper security measures, especially when planning for a production environment.\n\nBy following these best practices, you can ensure that your application properly accesses the microphone while maintaining the security and integrity of your data."}


created_at: 2024-12-28 04:06:29
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 54535ab0-5ac4-48dc-838e-b82ec30b6c68
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "01678258-f29a-4669-a954-b29fbf2c5631", "hash": "f402dd99ec3f5a726092396cfb9041b75b62b59f2cadb9612cefef8464cbcfc4", "name": "microphone-error.mdx", "source": "microphone-error.mdx", "start_index": 0, "chroma:document": "---\nsidebar_position: 2\ntitle: \"\ud83c\udf99\ufe0f Troubleshooting Microphone Access\"\n---\n\nEnsuring your application has the proper microphone access is crucial for functionality that depends on audio input. This guide covers how to manage and troubleshoot microphone permissions, particularly under secure contexts.\n\n## Understanding Secure Contexts \ud83d\udd12\n\nFor security reasons, accessing the microphone is restricted to pages served over HTTPS or locally from `localhost`. This requirement is meant to safeguard your data by ensuring it is transmitted over secure channels.\n\n## Common Permission Issues \ud83d\udeab\n\nBrowsers like Chrome, Brave, Microsoft Edge, Opera, and Vivaldi, as well as Firefox, restrict microphone access on non-HTTPS URLs. This typically becomes an issue when accessing a site from another device within the same network (e.g., using a mobile phone to access a desktop server). Here's how you can manage these issues:\n\n### Solutions for Non-HTTPS Connections"}


created_at: 2024-12-28 04:06:29
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: cb6924d8-8fda-4f24-a3cc-5d9f32a99b5b
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "01678258-f29a-4669-a954-b29fbf2c5631", "hash": "f402dd99ec3f5a726092396cfb9041b75b62b59f2cadb9612cefef8464cbcfc4", "name": "microphone-error.mdx", "source": "microphone-error.mdx", "start_index": 0, "chroma:document": "### Solutions for Non-HTTPS Connections\n\n1. **Set Up HTTPS:**\n   - It is highly recommended to configure your server to support HTTPS. This not only resolves permission issues but also enhances the security of your data transmissions.\n\n2. **Temporary Browser Flags (Use with caution):**\n   - These settings force your browser to treat certain insecure URLs as secure. This is useful for development purposes but poses significant security risks. Here's how to adjust these settings for major browsers:\n\n   #### Chromium-based Browsers (e.g., Chrome, Brave)\n   - Open `chrome://flags/#unsafely-treat-insecure-origin-as-secure`.\n   - Enter your non-HTTPS address (e.g., `http://192.168.1.35:3000`).\n   - Restart the browser to apply the changes.\n\n   #### Firefox-based Browsers\n   - Open `about:config`.\n   - Search and modify (or create) the string value `dom.securecontext.allowlist`.\n   - Add your IP addresses separated by commas (e.g., `http://127.0.0.1:8080`).\n\n### Considerations and Risks \ud83d\udea8"}


created_at: 2024-12-28 04:06:29
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: b019bf3e-017c-4e03-8857-e31a861c019e
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "01678258-f29a-4669-a954-b29fbf2c5631", "hash": "f402dd99ec3f5a726092396cfb9041b75b62b59f2cadb9612cefef8464cbcfc4", "name": "microphone-error.mdx", "source": "microphone-error.mdx", "start_index": 0, "chroma:document": "### Considerations and Risks \ud83d\udea8\n\nWhile browser flags offer a quick fix, they bypass important security checks which can expose your device and data to vulnerabilities. Always prioritize proper security measures, especially when planning for a production environment.\n\nBy following these best practices, you can ensure that your application properly accesses the microphone while maintaining the security and integrity of your data."}


created_at: 2024-12-28 04:06:29
topic: persistent://default/default/55fa6e33-82a8-48d9-a895-f4598514fe53
id: 27ceb49d-9867-4bc1-963c-6bd050d3a670
encoding: FLOAT32
metadata:
{"source": "mission.mdx", "name": "mission.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "6d4b8264-9ff2-46b8-9143-954d4cc09884", "start_index": 0, "hash": "c2ba87e518e20eb6cb321582e8e71ebdeae18c9828c6a569e73a16bc761d2998", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "---\nsidebar_position: 2000\ntitle: \"\ud83c\udfaf Our Mission\"\n---\n\nimport { TopBanners } from \"@site/src/components/TopBanners\";\n\n<TopBanners />\n\nHello there! \ud83d\udc4b\n\nImagine a world where local, open models that can run on any machine, united as one, outperform proprietary giants like GPT-4. Even better, imagine us all having the capability to train and reproduce state-of-the-art models like GPT-4 or GPT-5 from scratch, using high-quality, curated data.\n\nHere's the thing, though: one of the biggest challenges in creating these foundation and fine-tune models is the substantial need for **[high-quality data](https://arxiv.org/abs/2305.11206)**, which is both costly and time-consuming to gather and curate. This is where Open WebUI's mission comes into play. Our mission is to contribute to this vision by building the best AI interface and crowdsourcing curated datasets from our community of users.\n\n\u2014 [Tim](https://github.com/tjbck)\n\n---"}


created_at: 2024-12-28 04:06:29
topic: persistent://default/default/55fa6e33-82a8-48d9-a895-f4598514fe53
id: 1814787e-d8eb-40eb-b8b3-8519a3a684fd
encoding: FLOAT32
metadata:
{"source": "mission.mdx", "name": "mission.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "6d4b8264-9ff2-46b8-9143-954d4cc09884", "start_index": 893, "hash": "c2ba87e518e20eb6cb321582e8e71ebdeae18c9828c6a569e73a16bc761d2998", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "\u2014 [Tim](https://github.com/tjbck)\n\n---\n\nOur mission is founded on the belief that AI technologies hold transformative potential for society, yet their benefits have been narrowly confined due to complex setup requirements. Recognizing this, we are dedicated to democratizing AI by developing an easy-to-install, feature-rich local WebUI that is designed to operate locally without internet access. Enabling anyone with basic technical skills to tap into the power of AI, effectively bringing its capabilities to communities far and wide.\n\nAt the heart of our efforts is the creation of an open-sourced ecosystem of AI tools. Our commitment lies in making AI not only accessible but also beneficial for everyone. We envision a future where AI acts as a lever for societal advancement, driving progress, and technological breakthroughs across all communities."}


created_at: 2024-12-28 04:06:29
topic: persistent://default/default/55fa6e33-82a8-48d9-a895-f4598514fe53
id: 2f343ceb-51e1-4c26-98a4-300951190a36
encoding: FLOAT32
metadata:
{"source": "mission.mdx", "name": "mission.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "6d4b8264-9ff2-46b8-9143-954d4cc09884", "start_index": 1752, "hash": "c2ba87e518e20eb6cb321582e8e71ebdeae18c9828c6a569e73a16bc761d2998", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "By eliminating technological barriers and making AI's advantages universally accessible, we aim to foster a positive impact worldwide. Our ultimate goal is to ensure that AI serves as a catalyst for positive change, helping to bridge gaps and create a more equitable society where everyone can benefit from the advancements in technology.\n\n### Our Vision: Shaping the Future Together"}


created_at: 2024-12-28 04:06:29
topic: persistent://default/default/55fa6e33-82a8-48d9-a895-f4598514fe53
id: eea33a27-1a21-41c1-95c8-863b0f171fa1
encoding: FLOAT32
metadata:
{"source": "mission.mdx", "name": "mission.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "6d4b8264-9ff2-46b8-9143-954d4cc09884", "start_index": 2092, "hash": "c2ba87e518e20eb6cb321582e8e71ebdeae18c9828c6a569e73a16bc761d2998", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "### Our Vision: Shaping the Future Together\n\nAt the heart of our mission lies a profound commitment not just to envision a future where advanced AI technology is universally accessible, but to actively build towards it. Our efforts extend beyond the development of our WebUI; We are at the forefront of creating an ecosystem that embodies the democratization of AI technology. This ecosystem, envisioned as a vibrant, community-driven platform, will be a repository of shared knowledge\u2014ranging from model presets and custom prompts to valuable chat logs. A space where the collective intelligence of our community acts as the driving force for the continuous evolution and refinement of AIs, ensuring these advancements serve us, the actual users of these technologies."}


created_at: 2024-12-28 04:06:29
topic: persistent://default/default/55fa6e33-82a8-48d9-a895-f4598514fe53
id: eadff0ea-a5d2-47a4-bf7b-b3fe2116f481
encoding: FLOAT32
metadata:
{"source": "mission.mdx", "name": "mission.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "6d4b8264-9ff2-46b8-9143-954d4cc09884", "start_index": 2863, "hash": "c2ba87e518e20eb6cb321582e8e71ebdeae18c9828c6a569e73a16bc761d2998", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "Our strategy aims to tackle the complex challenges of AI, such as model fine-tuning and dataset curation, head-on. Leveraging the collective skills and insights of our community, we'll forge innovative pathways that not only enhance the precision and relevance of AI models but also guarantee these improvements are shared openly. Our objective is unequivocal: to democratize access to refined, user-curated datasets, thereby eliminating barriers to advancing AI for all.\n\nAs we navigate this journey, our vision serves as our north star, guiding our efforts to turn bold ambitions into reality. We extend an invitation for you to join us in this endeavor, as we work diligently to ensure AI technology becomes an empowering resource for individuals and communities across the globe."}


created_at: 2024-12-28 04:06:29
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 390e0621-7150-4406-bdfd-3c273c8d9ee0
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "6d4b8264-9ff2-46b8-9143-954d4cc09884", "hash": "c2ba87e518e20eb6cb321582e8e71ebdeae18c9828c6a569e73a16bc761d2998", "name": "mission.mdx", "source": "mission.mdx", "start_index": 0, "chroma:document": "---\nsidebar_position: 2000\ntitle: \"\ud83c\udfaf Our Mission\"\n---\n\nimport { TopBanners } from \"@site/src/components/TopBanners\";\n\n<TopBanners />\n\nHello there! \ud83d\udc4b\n\nImagine a world where local, open models that can run on any machine, united as one, outperform proprietary giants like GPT-4. Even better, imagine us all having the capability to train and reproduce state-of-the-art models like GPT-4 or GPT-5 from scratch, using high-quality, curated data.\n\nHere's the thing, though: one of the biggest challenges in creating these foundation and fine-tune models is the substantial need for **[high-quality data](https://arxiv.org/abs/2305.11206)**, which is both costly and time-consuming to gather and curate. This is where Open WebUI's mission comes into play. Our mission is to contribute to this vision by building the best AI interface and crowdsourcing curated datasets from our community of users.\n\n\u2014 [Tim](https://github.com/tjbck)\n\n---"}


created_at: 2024-12-28 04:06:29
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 0855c976-9f6c-49b7-acfd-7e1faa9e2ba8
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "6d4b8264-9ff2-46b8-9143-954d4cc09884", "hash": "c2ba87e518e20eb6cb321582e8e71ebdeae18c9828c6a569e73a16bc761d2998", "name": "mission.mdx", "source": "mission.mdx", "start_index": 0, "chroma:document": "\u2014 [Tim](https://github.com/tjbck)\n\n---\n\nOur mission is founded on the belief that AI technologies hold transformative potential for society, yet their benefits have been narrowly confined due to complex setup requirements. Recognizing this, we are dedicated to democratizing AI by developing an easy-to-install, feature-rich local WebUI that is designed to operate locally without internet access. Enabling anyone with basic technical skills to tap into the power of AI, effectively bringing its capabilities to communities far and wide.\n\nAt the heart of our efforts is the creation of an open-sourced ecosystem of AI tools. Our commitment lies in making AI not only accessible but also beneficial for everyone. We envision a future where AI acts as a lever for societal advancement, driving progress, and technological breakthroughs across all communities."}


created_at: 2024-12-28 04:06:29
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 1b685fdc-b8a6-40a2-9ce6-33e2f22f8b58
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "6d4b8264-9ff2-46b8-9143-954d4cc09884", "hash": "c2ba87e518e20eb6cb321582e8e71ebdeae18c9828c6a569e73a16bc761d2998", "name": "mission.mdx", "source": "mission.mdx", "start_index": 0, "chroma:document": "By eliminating technological barriers and making AI's advantages universally accessible, we aim to foster a positive impact worldwide. Our ultimate goal is to ensure that AI serves as a catalyst for positive change, helping to bridge gaps and create a more equitable society where everyone can benefit from the advancements in technology.\n\n### Our Vision: Shaping the Future Together"}


created_at: 2024-12-28 04:06:29
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: d53d98fd-c42c-40f1-9af1-85fcf9c2f1ac
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "6d4b8264-9ff2-46b8-9143-954d4cc09884", "hash": "c2ba87e518e20eb6cb321582e8e71ebdeae18c9828c6a569e73a16bc761d2998", "name": "mission.mdx", "source": "mission.mdx", "start_index": 0, "chroma:document": "### Our Vision: Shaping the Future Together\n\nAt the heart of our mission lies a profound commitment not just to envision a future where advanced AI technology is universally accessible, but to actively build towards it. Our efforts extend beyond the development of our WebUI; We are at the forefront of creating an ecosystem that embodies the democratization of AI technology. This ecosystem, envisioned as a vibrant, community-driven platform, will be a repository of shared knowledge\u2014ranging from model presets and custom prompts to valuable chat logs. A space where the collective intelligence of our community acts as the driving force for the continuous evolution and refinement of AIs, ensuring these advancements serve us, the actual users of these technologies."}


created_at: 2024-12-28 04:06:29
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 6977c487-a010-4724-a41d-443364e99f8f
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "6d4b8264-9ff2-46b8-9143-954d4cc09884", "hash": "c2ba87e518e20eb6cb321582e8e71ebdeae18c9828c6a569e73a16bc761d2998", "name": "mission.mdx", "source": "mission.mdx", "start_index": 0, "chroma:document": "Our strategy aims to tackle the complex challenges of AI, such as model fine-tuning and dataset curation, head-on. Leveraging the collective skills and insights of our community, we'll forge innovative pathways that not only enhance the precision and relevance of AI models but also guarantee these improvements are shared openly. Our objective is unequivocal: to democratize access to refined, user-curated datasets, thereby eliminating barriers to advancing AI for all.\n\nAs we navigate this journey, our vision serves as our north star, guiding our efforts to turn bold ambitions into reality. We extend an invitation for you to join us in this endeavor, as we work diligently to ensure AI technology becomes an empowering resource for individuals and communities across the globe."}


created_at: 2024-12-28 04:06:29
topic: persistent://default/default/4b3626a6-a669-42aa-9b78-1c766ddd7613
id: 82413ba1-ad19-49c3-b647-835f0f725774
encoding: FLOAT32
metadata:
{"source": "models.md", "name": "models.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "3d169abf-e5ce-4999-b4d2-a8e35fb9e7e7", "start_index": 0, "hash": "55bd06d29b76ca75afb6fd072a7a2e5ac97d1d1e66c3d26d5699bf7db02c90a4", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "---\nsidebar_position: 0\ntitle: \"\ud83e\udd16 Models\"\n---\n\nThe `Models` section of the `Workspace` within Open WebUI is a powerful tool that allows you to create and manage custom models tailored to specific purposes. This section serves as a central hub for all your modelfiles, providing a range of features to edit, clone, share, export, and hide your models.\n\n### Modelfile Management\n\nFrom the `Models` section, you can perform the following actions on your modelfiles:"}


created_at: 2024-12-28 04:06:29
topic: persistent://default/default/4b3626a6-a669-42aa-9b78-1c766ddd7613
id: 75f5326d-207e-49a4-ba07-2759b09dd15c
encoding: FLOAT32
metadata:
{"source": "models.md", "name": "models.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "3d169abf-e5ce-4999-b4d2-a8e35fb9e7e7", "start_index": 378, "hash": "55bd06d29b76ca75afb6fd072a7a2e5ac97d1d1e66c3d26d5699bf7db02c90a4", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "From the `Models` section, you can perform the following actions on your modelfiles:\n\n* **Edit**: Dive into the details of your modelfile and make changes to its character and more.\n* **Clone**: Create a copy of a modelfile, which will be appended with `-clone` to the cloned `Model ID`. Note that you cannot clone a base model; you must create a model first before cloning it.\n* **Share**: Share your modelfile with the Open WebUI community by clicking the `Share` button, which will redirect you to [https://openwebui.com/models/create](https://openwebui.com/models/create).\n* **Export**: Download the modelfile's `.json` export to your PC.\n* **Hide**: Hide the modelfile from the model selector dropdown within chats.\n\n### Modelfile Editing\n\nWhen editing a modelfile, you can customize the following settings:"}


created_at: 2024-12-28 04:06:29
topic: persistent://default/default/4b3626a6-a669-42aa-9b78-1c766ddd7613
id: 08850a29-bd07-4984-b5fb-87188f6bd432
encoding: FLOAT32
metadata:
{"source": "models.md", "name": "models.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "3d169abf-e5ce-4999-b4d2-a8e35fb9e7e7", "start_index": 1100, "hash": "55bd06d29b76ca75afb6fd072a7a2e5ac97d1d1e66c3d26d5699bf7db02c90a4", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "### Modelfile Editing\n\nWhen editing a modelfile, you can customize the following settings:\n\n* **Avatar Photo**: Upload an avatar photo to represent your modelfile.\n* **Model Name**: Change the name of your modelfile.\n* **System Prompt**: Provide an optional system prompt for your modelfile.\n* **Model Parameters**: Adjust the parameters of your modelfile.\n* **Prompt Suggestions**: Add prompts that will be displayed on a fresh new chat page.\n* **Documents**: Add documents to the modelfile (always RAG [Retrieval Augmented Generation]).\n* **Tools, Filters, and Actions**: Select the tools, filters, and actions that will be available to the modelfile.\n* **Vision**: Toggle to enable `Vision` for multi-modals.\n* **Tags**: Add tags to the modelfile that will be displayed beside the model name in the model selector dropdown.\n\n### Model Discovery and Import/Export\n\nThe `Models` section also includes features for importing and exporting models:"}


created_at: 2024-12-28 04:06:29
topic: persistent://default/default/4b3626a6-a669-42aa-9b78-1c766ddd7613
id: 83a5d97d-a49f-47fa-b7b6-277985b7abad
encoding: FLOAT32
metadata:
{"source": "models.md", "name": "models.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "3d169abf-e5ce-4999-b4d2-a8e35fb9e7e7", "start_index": 1967, "hash": "55bd06d29b76ca75afb6fd072a7a2e5ac97d1d1e66c3d26d5699bf7db02c90a4", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "The `Models` section also includes features for importing and exporting models:\n\n* **Import Models**: Use this button to import models from a .json file or other sources.\n* **Export Models**: Use this button to export all your modelfiles in a single .json file.\n\nTo download models, navigate to the **Ollama Settings** in the Connections tab.\nAlternatively, you can also download models directly by typing a command like `ollama run hf.co/[model creator]/[model name]` in the model selection dropdown.\nThis action will create a button labeled \"Pull [Model Name]\" for downloading.\n\n### Model Switching\n\n   **Example**: Switching between **Mistral**, **LLaVA**, and **GPT-3.5** in a Multi-Stage Task"}


created_at: 2024-12-28 04:06:29
topic: persistent://default/default/4b3626a6-a669-42aa-9b78-1c766ddd7613
id: d00a0c09-49cd-4c06-87a1-5009f6c22acb
encoding: FLOAT32
metadata:
{"source": "models.md", "name": "models.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "3d169abf-e5ce-4999-b4d2-a8e35fb9e7e7", "start_index": 2572, "hash": "55bd06d29b76ca75afb6fd072a7a2e5ac97d1d1e66c3d26d5699bf7db02c90a4", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "**Example**: Switching between **Mistral**, **LLaVA**, and **GPT-3.5** in a Multi-Stage Task\n\n* **Scenario**: A multi-stage conversation involves different task types, such as starting with a simple FAQ, interpreting an image, and then generating a creative response.\n* **Reason for Switching**: The user can leverage each model's specific strengths for each stage:\n  * **Mistral** for general questions to reduce computation time and costs.\n  * **LLaVA** for visual tasks to gain insights from image-based data.\n  * **GPT-3.5** for generating more sophisticated and nuanced language output.\n* **Process**: The user switches between models, depending on the task type, to maximize efficiency and response quality."}


created_at: 2024-12-28 04:06:29
topic: persistent://default/default/4b3626a6-a669-42aa-9b78-1c766ddd7613
id: 81136abb-022c-4598-9c00-3d524ff1d761
encoding: FLOAT32
metadata:
{"source": "models.md", "name": "models.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "3d169abf-e5ce-4999-b4d2-a8e35fb9e7e7", "start_index": 3291, "hash": "55bd06d29b76ca75afb6fd072a7a2e5ac97d1d1e66c3d26d5699bf7db02c90a4", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "**How To**:\n    1. **Select the Model**: Within the chat interface, select the desired models from the model switcher dropdown. You can select up to two models simultaneously, and both responses will be generated. You can then navigate between them by using the back and forth arrows.\n    2. **Context Preservation**: Open WebUI retains the conversation context across model switches, allowing smooth transitions."}


created_at: 2024-12-28 04:06:30
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: b0f9dd43-2194-4339-8b28-283d38c136dd
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "3d169abf-e5ce-4999-b4d2-a8e35fb9e7e7", "hash": "55bd06d29b76ca75afb6fd072a7a2e5ac97d1d1e66c3d26d5699bf7db02c90a4", "name": "models.md", "source": "models.md", "start_index": 0, "chroma:document": "---\nsidebar_position: 0\ntitle: \"\ud83e\udd16 Models\"\n---\n\nThe `Models` section of the `Workspace` within Open WebUI is a powerful tool that allows you to create and manage custom models tailored to specific purposes. This section serves as a central hub for all your modelfiles, providing a range of features to edit, clone, share, export, and hide your models.\n\n### Modelfile Management\n\nFrom the `Models` section, you can perform the following actions on your modelfiles:"}


created_at: 2024-12-28 04:06:30
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 846f33b9-95c3-4b7b-92b2-9541fda40b83
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "3d169abf-e5ce-4999-b4d2-a8e35fb9e7e7", "hash": "55bd06d29b76ca75afb6fd072a7a2e5ac97d1d1e66c3d26d5699bf7db02c90a4", "name": "models.md", "source": "models.md", "start_index": 0, "chroma:document": "From the `Models` section, you can perform the following actions on your modelfiles:\n\n* **Edit**: Dive into the details of your modelfile and make changes to its character and more.\n* **Clone**: Create a copy of a modelfile, which will be appended with `-clone` to the cloned `Model ID`. Note that you cannot clone a base model; you must create a model first before cloning it.\n* **Share**: Share your modelfile with the Open WebUI community by clicking the `Share` button, which will redirect you to [https://openwebui.com/models/create](https://openwebui.com/models/create).\n* **Export**: Download the modelfile's `.json` export to your PC.\n* **Hide**: Hide the modelfile from the model selector dropdown within chats.\n\n### Modelfile Editing\n\nWhen editing a modelfile, you can customize the following settings:"}


created_at: 2024-12-28 04:06:30
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: a2dc3eb0-2a85-4a00-a323-fa5374ed9170
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "3d169abf-e5ce-4999-b4d2-a8e35fb9e7e7", "hash": "55bd06d29b76ca75afb6fd072a7a2e5ac97d1d1e66c3d26d5699bf7db02c90a4", "name": "models.md", "source": "models.md", "start_index": 0, "chroma:document": "### Modelfile Editing\n\nWhen editing a modelfile, you can customize the following settings:\n\n* **Avatar Photo**: Upload an avatar photo to represent your modelfile.\n* **Model Name**: Change the name of your modelfile.\n* **System Prompt**: Provide an optional system prompt for your modelfile.\n* **Model Parameters**: Adjust the parameters of your modelfile.\n* **Prompt Suggestions**: Add prompts that will be displayed on a fresh new chat page.\n* **Documents**: Add documents to the modelfile (always RAG [Retrieval Augmented Generation]).\n* **Tools, Filters, and Actions**: Select the tools, filters, and actions that will be available to the modelfile.\n* **Vision**: Toggle to enable `Vision` for multi-modals.\n* **Tags**: Add tags to the modelfile that will be displayed beside the model name in the model selector dropdown.\n\n### Model Discovery and Import/Export\n\nThe `Models` section also includes features for importing and exporting models:"}


created_at: 2024-12-28 04:06:30
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 3860fe5f-9a20-4470-984a-c1e70f3b7c37
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "3d169abf-e5ce-4999-b4d2-a8e35fb9e7e7", "hash": "55bd06d29b76ca75afb6fd072a7a2e5ac97d1d1e66c3d26d5699bf7db02c90a4", "name": "models.md", "source": "models.md", "start_index": 0, "chroma:document": "The `Models` section also includes features for importing and exporting models:\n\n* **Import Models**: Use this button to import models from a .json file or other sources.\n* **Export Models**: Use this button to export all your modelfiles in a single .json file.\n\nTo download models, navigate to the **Ollama Settings** in the Connections tab.\nAlternatively, you can also download models directly by typing a command like `ollama run hf.co/[model creator]/[model name]` in the model selection dropdown.\nThis action will create a button labeled \"Pull [Model Name]\" for downloading.\n\n### Model Switching\n\n   **Example**: Switching between **Mistral**, **LLaVA**, and **GPT-3.5** in a Multi-Stage Task"}


created_at: 2024-12-28 04:06:30
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 8466d8eb-5f6f-43d4-ba0e-136bc1bc0b54
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "3d169abf-e5ce-4999-b4d2-a8e35fb9e7e7", "hash": "55bd06d29b76ca75afb6fd072a7a2e5ac97d1d1e66c3d26d5699bf7db02c90a4", "name": "models.md", "source": "models.md", "start_index": 0, "chroma:document": "**Example**: Switching between **Mistral**, **LLaVA**, and **GPT-3.5** in a Multi-Stage Task\n\n* **Scenario**: A multi-stage conversation involves different task types, such as starting with a simple FAQ, interpreting an image, and then generating a creative response.\n* **Reason for Switching**: The user can leverage each model's specific strengths for each stage:\n  * **Mistral** for general questions to reduce computation time and costs.\n  * **LLaVA** for visual tasks to gain insights from image-based data.\n  * **GPT-3.5** for generating more sophisticated and nuanced language output.\n* **Process**: The user switches between models, depending on the task type, to maximize efficiency and response quality."}


created_at: 2024-12-28 04:06:30
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 15f62ead-77e7-4386-b563-295f04e63585
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "3d169abf-e5ce-4999-b4d2-a8e35fb9e7e7", "hash": "55bd06d29b76ca75afb6fd072a7a2e5ac97d1d1e66c3d26d5699bf7db02c90a4", "name": "models.md", "source": "models.md", "start_index": 0, "chroma:document": "**How To**:\n    1. **Select the Model**: Within the chat interface, select the desired models from the model switcher dropdown. You can select up to two models simultaneously, and both responses will be generated. You can then navigate between them by using the back and forth arrows.\n    2. **Context Preservation**: Open WebUI retains the conversation context across model switches, allowing smooth transitions."}


created_at: 2024-12-28 04:06:30
topic: persistent://default/default/0346c733-c625-4037-8016-1ea0f022ad4e
id: 68ab3cc6-0c32-4b27-b535-bbb5acf33c1b
encoding: FLOAT32
metadata:
{"source": "network-diagrams.mdx", "name": "network-diagrams.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "2502c775-cd3f-4186-a4ab-50511225edd9", "start_index": 0, "hash": "7e36f35a89576afbcbfc506e72e61ff18a0454aa687e5d25bb42ae64ac13bb46", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "---\nsidebar_position: 3\ntitle: \"\ud83d\udd78\ufe0f Network Diagrams\"\n---\n\nHere, we provide clear and structured diagrams to help you understand how various components of the network interact within different setups. This documentation is designed to assist both macOS/Windows and Linux users. Each scenario is illustrated using Mermaid diagrams to show how the interactions are set up depending on the different system configurations and deployment strategies.\n\n## Mac OS/Windows Setup Options \ud83d\udda5\ufe0f\n\n### Ollama on Host, Open WebUI in Container\n\nIn this scenario, `Ollama` runs directly on the host machine while `Open WebUI` operates within a Docker container."}


created_at: 2024-12-28 04:06:30
topic: persistent://default/default/0346c733-c625-4037-8016-1ea0f022ad4e
id: e18c4c67-e423-40df-9a7a-b58e1449d8f5
encoding: FLOAT32
metadata:
{"source": "network-diagrams.mdx", "name": "network-diagrams.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "2502c775-cd3f-4186-a4ab-50511225edd9", "start_index": 644, "hash": "7e36f35a89576afbcbfc506e72e61ff18a0454aa687e5d25bb42ae64ac13bb46", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "```mermaid\nC4Context\nBoundary(b0, \"Hosting Machine - Mac OS/Windows\") {\n   Person(user, \"User\")\n   Boundary(b1, \"Docker Desktop's Linux VM\") {\n      Component(openwebui, \"Open WebUI\", \"Listening on port 8080\")\n   }\n   Component(ollama, \"Ollama\", \"Listening on port 11434\")\n}\nRel(openwebui, ollama, \"Makes API calls via Docker proxy\", \"http://host.docker.internal:11434\")\nRel(user, openwebui, \"Makes requests via exposed port -p 3000:8080\", \"http://localhost:3000\")\nUpdateRelStyle(user, openwebui, $offsetX=\"-100\", $offsetY=\"-50\")\n```\n\n### Ollama and Open WebUI in Compose Stack\n\nBoth `Ollama` and `Open WebUI` are configured within the same Docker Compose stack, simplifying network communications."}


created_at: 2024-12-28 04:06:30
topic: persistent://default/default/0346c733-c625-4037-8016-1ea0f022ad4e
id: 453e43ca-0458-45b5-8555-36bb2be75679
encoding: FLOAT32
metadata:
{"source": "network-diagrams.mdx", "name": "network-diagrams.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "2502c775-cd3f-4186-a4ab-50511225edd9", "start_index": 1344, "hash": "7e36f35a89576afbcbfc506e72e61ff18a0454aa687e5d25bb42ae64ac13bb46", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "```mermaid\nC4Context\nBoundary(b0, \"Hosting Machine - Mac OS/Windows\") {\n   Person(user, \"User\")\n   Boundary(b1, \"Docker Desktop's Linux VM\") {\n      Boundary(b2, \"Compose Stack\") {\n         Component(openwebui, \"Open WebUI\", \"Listening on port 8080\")\n         Component(ollama, \"Ollama\", \"Listening on port 11434\")\n      }\n   }\n}\nRel(openwebui, ollama, \"Makes API calls via inter-container networking\", \"http://ollama:11434\")\nRel(user, openwebui, \"Makes requests via exposed port -p 3000:8080\", \"http://localhost:3000\")\nUpdateRelStyle(user, openwebui, $offsetX=\"-100\", $offsetY=\"-50\")\n```\n\n### Ollama and Open WebUI, Separate Networks\n\nHere, `Ollama` and `Open WebUI` are deployed in separate Docker networks, potentially leading to connectivity issues."}


created_at: 2024-12-28 04:06:30
topic: persistent://default/default/0346c733-c625-4037-8016-1ea0f022ad4e
id: b50ed3a6-ef8b-40b7-8c22-b7ce29a30481
encoding: FLOAT32
metadata:
{"source": "network-diagrams.mdx", "name": "network-diagrams.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "2502c775-cd3f-4186-a4ab-50511225edd9", "start_index": 2099, "hash": "7e36f35a89576afbcbfc506e72e61ff18a0454aa687e5d25bb42ae64ac13bb46", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "```mermaid\nC4Context\nBoundary(b0, \"Hosting Machine - Mac OS/Windows\") {\n   Person(user, \"User\")\n   Boundary(b1, \"Docker Desktop's Linux VM\") {\n      Boundary(b2, \"Network A\") {\n         Component(openwebui, \"Open WebUI\", \"Listening on port 8080\")\n      }\n      Boundary(b3, \"Network B\") {\n         Component(ollama, \"Ollama\", \"Listening on port 11434\")\n      }\n   }\n}\nRel(openwebui, ollama, \"Unable to connect\")\nRel(user, openwebui, \"Makes requests via exposed port -p 3000:8080\", \"http://localhost:3000\")\nUpdateRelStyle(user, openwebui, $offsetX=\"-100\", $offsetY=\"-50\")\n```\n\n### Open WebUI in Host Network\n\nIn this configuration, `Open WebUI` utilizes the host network, which impacts its ability to connect in certain environments."}


created_at: 2024-12-28 04:06:30
topic: persistent://default/default/0346c733-c625-4037-8016-1ea0f022ad4e
id: 369af48e-d759-47bf-81e1-da6b5e86edec
encoding: FLOAT32
metadata:
{"source": "network-diagrams.mdx", "name": "network-diagrams.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "2502c775-cd3f-4186-a4ab-50511225edd9", "start_index": 2833, "hash": "7e36f35a89576afbcbfc506e72e61ff18a0454aa687e5d25bb42ae64ac13bb46", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "```mermaid\nC4Context\nBoundary(b0, \"Hosting Machine - Mac OS/Windows\") {\n   Person(user, \"User\")\n   Boundary(b1, \"Docker Desktop's Linux VM\") {\n      Component(openwebui, \"Open WebUI\", \"Listening on port 8080\")\n   }\n}\nRel(user, openwebui, \"Unable to connect, host network is the VM's network\")\nUpdateRelStyle(user, openwebui, $offsetX=\"-100\", $offsetY=\"-50\")\n```\n\n\n## Linux Setup Options \ud83d\udc27\n\n### Ollama on Host, Open WebUI in Container (Linux)\n\nThis diagram is specific to the Linux platform, with `Ollama` running on the host and `Open WebUI` deployed inside a Docker container."}


created_at: 2024-12-28 04:06:30
topic: persistent://default/default/0346c733-c625-4037-8016-1ea0f022ad4e
id: c2e77024-9cd6-4f06-85a4-e1031b7781cf
encoding: FLOAT32
metadata:
{"source": "network-diagrams.mdx", "name": "network-diagrams.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "2502c775-cd3f-4186-a4ab-50511225edd9", "start_index": 3412, "hash": "7e36f35a89576afbcbfc506e72e61ff18a0454aa687e5d25bb42ae64ac13bb46", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "```mermaid\nC4Context\nBoundary(b0, \"Hosting Machine - Linux\") {\n   Person(user, \"User\")\n   Boundary(b1, \"Container Network\") {\n      Component(openwebui, \"Open WebUI\", \"Listening on port 8080\")\n   }\n   Component(ollama, \"Ollama\", \"Listening on port 11434\")\n}\nRel(openwebui, ollama, \"Makes API calls via Docker proxy\", \"http://host.docker.internal:11434\")\nRel(user, openwebui, \"Makes requests via exposed port -p 3000:8080\", \"http://localhost:3000\")\nUpdateRelStyle(user, openwebui, $offsetX=\"-100\", $offsetY=\"-50\")\n```\n\n### Ollama and Open WebUI in Compose Stack (Linux)\n\nA set-up where both `Ollama` and `Open WebUI` reside within the same Docker Compose stack, allowing for straightforward networking on Linux."}


created_at: 2024-12-28 04:06:30
topic: persistent://default/default/0346c733-c625-4037-8016-1ea0f022ad4e
id: 94bd347d-7247-4447-8fe2-faf13621a34d
encoding: FLOAT32
metadata:
{"source": "network-diagrams.mdx", "name": "network-diagrams.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "2502c775-cd3f-4186-a4ab-50511225edd9", "start_index": 4124, "hash": "7e36f35a89576afbcbfc506e72e61ff18a0454aa687e5d25bb42ae64ac13bb46", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "```mermaid\nC4Context\nBoundary(b0, \"Hosting Machine - Linux\") {\n   Person(user, \"User\")\n   Boundary(b1, \"Container Network\") {\n      Boundary(b2, \"Compose Stack\") {\n         Component(openwebui, \"Open WebUI\", \"Listening on port 8080\")\n         Component(ollama, \"Ollama\", \"Listening on port 11434\")\n      }\n   }\n}\nRel(openwebui, ollama, \"Makes API calls via inter-container networking\", \"http://ollama:11434\")\nRel(user, openwebui, \"Makes requests via exposed port -p 3000:8080\", \"http://localhost:3000\")\nUpdateRelStyle(user, openwebui, $offsetX=\"-100\", $offsetY=\"-50\")\n```\n\n### Ollama and Open WebUI, Separate Networks (Linux)\n\nA scenario in which `Ollama` and `Open WebUI` are in different Docker networks under a Linux environment, which could hinder connectivity."}


created_at: 2024-12-28 04:06:30
topic: persistent://default/default/0346c733-c625-4037-8016-1ea0f022ad4e
id: b08bf10c-d2d0-44de-b5e7-2744e221b41a
encoding: FLOAT32
metadata:
{"source": "network-diagrams.mdx", "name": "network-diagrams.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "2502c775-cd3f-4186-a4ab-50511225edd9", "start_index": 4891, "hash": "7e36f35a89576afbcbfc506e72e61ff18a0454aa687e5d25bb42ae64ac13bb46", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "```mermaid\nC4Context\nBoundary(b0, \"Hosting Machine - Linux\") {\n   Person(user, \"User\")\n   Boundary(b2, \"Container Network A\") {\n      Component(openwebui, \"Open WebUI\", \"Listening on port 8080\")\n   }\n   Boundary(b3, \"Container Network B\") {\n      Component(ollama, \"Ollama\", \"Listening on port 11434\")\n   }\n}\nRel(openwebui, ollama, \"Unable to connect\")\nRel(user, openwebui, \"Makes requests via exposed port -p 3000:8080\", \"http://localhost:3000\")\nUpdateRelStyle(user, openwebui, $offsetX=\"-100\", $offsetY=\"-50\")\n```\n\n### Open WebUI in Host Network, Ollama on Host (Linux)\n\nAn optimal layout where both `Open WebUI` and `Ollama` use the host's network, facilitating seamless interaction on Linux systems."}


created_at: 2024-12-28 04:06:30
topic: persistent://default/default/0346c733-c625-4037-8016-1ea0f022ad4e
id: 96dd6abc-3ccf-4f39-9edf-521485f8e9cf
encoding: FLOAT32
metadata:
{"source": "network-diagrams.mdx", "name": "network-diagrams.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "2502c775-cd3f-4186-a4ab-50511225edd9", "start_index": 5596, "hash": "7e36f35a89576afbcbfc506e72e61ff18a0454aa687e5d25bb42ae64ac13bb46", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "```mermaid\nC4Context\nBoundary(b0, \"Hosting Machine - Linux\") {\n   Person(user, \"User\")\n   Component(openwebui, \"Open WebUI\", \"Listening on port 8080\")\n   Component(ollama, \"Ollama\", \"Listening on port 11434\")\n}\nRel(openwebui, ollama, \"Makes API calls via localhost\", \"http://localhost:11434\")\nRel(user, openwebui, \"Makes requests via listening port\", \"http://localhost:8080\")\nUpdateRelStyle(user, openwebui, $offsetX=\"-100\", $offsetY=\"-50\")\n```\n\nEach setup addresses different deployment strategies and networking configurations to help you choose the best layout for your requirements."}


created_at: 2024-12-28 04:06:30
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: fb728be9-f9e6-4218-afd0-4c20db597dce
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "2502c775-cd3f-4186-a4ab-50511225edd9", "hash": "7e36f35a89576afbcbfc506e72e61ff18a0454aa687e5d25bb42ae64ac13bb46", "name": "network-diagrams.mdx", "source": "network-diagrams.mdx", "start_index": 0, "chroma:document": "---\nsidebar_position: 3\ntitle: \"\ud83d\udd78\ufe0f Network Diagrams\"\n---\n\nHere, we provide clear and structured diagrams to help you understand how various components of the network interact within different setups. This documentation is designed to assist both macOS/Windows and Linux users. Each scenario is illustrated using Mermaid diagrams to show how the interactions are set up depending on the different system configurations and deployment strategies.\n\n## Mac OS/Windows Setup Options \ud83d\udda5\ufe0f\n\n### Ollama on Host, Open WebUI in Container\n\nIn this scenario, `Ollama` runs directly on the host machine while `Open WebUI` operates within a Docker container."}


created_at: 2024-12-28 04:06:30
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 4bb3b248-8fed-4e17-9b9e-52745b3b2f2d
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "2502c775-cd3f-4186-a4ab-50511225edd9", "hash": "7e36f35a89576afbcbfc506e72e61ff18a0454aa687e5d25bb42ae64ac13bb46", "name": "network-diagrams.mdx", "source": "network-diagrams.mdx", "start_index": 0, "chroma:document": "```mermaid\nC4Context\nBoundary(b0, \"Hosting Machine - Mac OS/Windows\") {\n   Person(user, \"User\")\n   Boundary(b1, \"Docker Desktop's Linux VM\") {\n      Component(openwebui, \"Open WebUI\", \"Listening on port 8080\")\n   }\n   Component(ollama, \"Ollama\", \"Listening on port 11434\")\n}\nRel(openwebui, ollama, \"Makes API calls via Docker proxy\", \"http://host.docker.internal:11434\")\nRel(user, openwebui, \"Makes requests via exposed port -p 3000:8080\", \"http://localhost:3000\")\nUpdateRelStyle(user, openwebui, $offsetX=\"-100\", $offsetY=\"-50\")\n```\n\n### Ollama and Open WebUI in Compose Stack\n\nBoth `Ollama` and `Open WebUI` are configured within the same Docker Compose stack, simplifying network communications."}


created_at: 2024-12-28 04:06:30
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: cddfbbfc-3d0e-471f-a78a-6cdfab0be738
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "2502c775-cd3f-4186-a4ab-50511225edd9", "hash": "7e36f35a89576afbcbfc506e72e61ff18a0454aa687e5d25bb42ae64ac13bb46", "name": "network-diagrams.mdx", "source": "network-diagrams.mdx", "start_index": 0, "chroma:document": "```mermaid\nC4Context\nBoundary(b0, \"Hosting Machine - Mac OS/Windows\") {\n   Person(user, \"User\")\n   Boundary(b1, \"Docker Desktop's Linux VM\") {\n      Boundary(b2, \"Compose Stack\") {\n         Component(openwebui, \"Open WebUI\", \"Listening on port 8080\")\n         Component(ollama, \"Ollama\", \"Listening on port 11434\")\n      }\n   }\n}\nRel(openwebui, ollama, \"Makes API calls via inter-container networking\", \"http://ollama:11434\")\nRel(user, openwebui, \"Makes requests via exposed port -p 3000:8080\", \"http://localhost:3000\")\nUpdateRelStyle(user, openwebui, $offsetX=\"-100\", $offsetY=\"-50\")\n```\n\n### Ollama and Open WebUI, Separate Networks\n\nHere, `Ollama` and `Open WebUI` are deployed in separate Docker networks, potentially leading to connectivity issues."}


created_at: 2024-12-28 04:06:30
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: a8fafa5b-ea5b-4d1f-89db-bca60ff6983d
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "2502c775-cd3f-4186-a4ab-50511225edd9", "hash": "7e36f35a89576afbcbfc506e72e61ff18a0454aa687e5d25bb42ae64ac13bb46", "name": "network-diagrams.mdx", "source": "network-diagrams.mdx", "start_index": 0, "chroma:document": "```mermaid\nC4Context\nBoundary(b0, \"Hosting Machine - Mac OS/Windows\") {\n   Person(user, \"User\")\n   Boundary(b1, \"Docker Desktop's Linux VM\") {\n      Boundary(b2, \"Network A\") {\n         Component(openwebui, \"Open WebUI\", \"Listening on port 8080\")\n      }\n      Boundary(b3, \"Network B\") {\n         Component(ollama, \"Ollama\", \"Listening on port 11434\")\n      }\n   }\n}\nRel(openwebui, ollama, \"Unable to connect\")\nRel(user, openwebui, \"Makes requests via exposed port -p 3000:8080\", \"http://localhost:3000\")\nUpdateRelStyle(user, openwebui, $offsetX=\"-100\", $offsetY=\"-50\")\n```\n\n### Open WebUI in Host Network\n\nIn this configuration, `Open WebUI` utilizes the host network, which impacts its ability to connect in certain environments."}


created_at: 2024-12-28 04:06:30
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 68589e91-2b65-40f0-8d8f-e05dded191f3
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "2502c775-cd3f-4186-a4ab-50511225edd9", "hash": "7e36f35a89576afbcbfc506e72e61ff18a0454aa687e5d25bb42ae64ac13bb46", "name": "network-diagrams.mdx", "source": "network-diagrams.mdx", "start_index": 0, "chroma:document": "```mermaid\nC4Context\nBoundary(b0, \"Hosting Machine - Mac OS/Windows\") {\n   Person(user, \"User\")\n   Boundary(b1, \"Docker Desktop's Linux VM\") {\n      Component(openwebui, \"Open WebUI\", \"Listening on port 8080\")\n   }\n}\nRel(user, openwebui, \"Unable to connect, host network is the VM's network\")\nUpdateRelStyle(user, openwebui, $offsetX=\"-100\", $offsetY=\"-50\")\n```\n\n\n## Linux Setup Options \ud83d\udc27\n\n### Ollama on Host, Open WebUI in Container (Linux)\n\nThis diagram is specific to the Linux platform, with `Ollama` running on the host and `Open WebUI` deployed inside a Docker container."}


created_at: 2024-12-28 04:06:30
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: d3450855-4865-4a03-9405-eddc9f140ff7
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "2502c775-cd3f-4186-a4ab-50511225edd9", "hash": "7e36f35a89576afbcbfc506e72e61ff18a0454aa687e5d25bb42ae64ac13bb46", "name": "network-diagrams.mdx", "source": "network-diagrams.mdx", "start_index": 0, "chroma:document": "```mermaid\nC4Context\nBoundary(b0, \"Hosting Machine - Linux\") {\n   Person(user, \"User\")\n   Boundary(b1, \"Container Network\") {\n      Component(openwebui, \"Open WebUI\", \"Listening on port 8080\")\n   }\n   Component(ollama, \"Ollama\", \"Listening on port 11434\")\n}\nRel(openwebui, ollama, \"Makes API calls via Docker proxy\", \"http://host.docker.internal:11434\")\nRel(user, openwebui, \"Makes requests via exposed port -p 3000:8080\", \"http://localhost:3000\")\nUpdateRelStyle(user, openwebui, $offsetX=\"-100\", $offsetY=\"-50\")\n```\n\n### Ollama and Open WebUI in Compose Stack (Linux)\n\nA set-up where both `Ollama` and `Open WebUI` reside within the same Docker Compose stack, allowing for straightforward networking on Linux."}


created_at: 2024-12-28 04:06:30
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: fc3d07f8-9ff3-4b90-9ee0-dbb4ffb9d8a4
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "2502c775-cd3f-4186-a4ab-50511225edd9", "hash": "7e36f35a89576afbcbfc506e72e61ff18a0454aa687e5d25bb42ae64ac13bb46", "name": "network-diagrams.mdx", "source": "network-diagrams.mdx", "start_index": 0, "chroma:document": "```mermaid\nC4Context\nBoundary(b0, \"Hosting Machine - Linux\") {\n   Person(user, \"User\")\n   Boundary(b1, \"Container Network\") {\n      Boundary(b2, \"Compose Stack\") {\n         Component(openwebui, \"Open WebUI\", \"Listening on port 8080\")\n         Component(ollama, \"Ollama\", \"Listening on port 11434\")\n      }\n   }\n}\nRel(openwebui, ollama, \"Makes API calls via inter-container networking\", \"http://ollama:11434\")\nRel(user, openwebui, \"Makes requests via exposed port -p 3000:8080\", \"http://localhost:3000\")\nUpdateRelStyle(user, openwebui, $offsetX=\"-100\", $offsetY=\"-50\")\n```\n\n### Ollama and Open WebUI, Separate Networks (Linux)\n\nA scenario in which `Ollama` and `Open WebUI` are in different Docker networks under a Linux environment, which could hinder connectivity."}


created_at: 2024-12-28 04:06:30
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 8befcc16-2f4b-4a00-8dbc-1d6f04b8b1e8
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "2502c775-cd3f-4186-a4ab-50511225edd9", "hash": "7e36f35a89576afbcbfc506e72e61ff18a0454aa687e5d25bb42ae64ac13bb46", "name": "network-diagrams.mdx", "source": "network-diagrams.mdx", "start_index": 0, "chroma:document": "```mermaid\nC4Context\nBoundary(b0, \"Hosting Machine - Linux\") {\n   Person(user, \"User\")\n   Boundary(b2, \"Container Network A\") {\n      Component(openwebui, \"Open WebUI\", \"Listening on port 8080\")\n   }\n   Boundary(b3, \"Container Network B\") {\n      Component(ollama, \"Ollama\", \"Listening on port 11434\")\n   }\n}\nRel(openwebui, ollama, \"Unable to connect\")\nRel(user, openwebui, \"Makes requests via exposed port -p 3000:8080\", \"http://localhost:3000\")\nUpdateRelStyle(user, openwebui, $offsetX=\"-100\", $offsetY=\"-50\")\n```\n\n### Open WebUI in Host Network, Ollama on Host (Linux)\n\nAn optimal layout where both `Open WebUI` and `Ollama` use the host's network, facilitating seamless interaction on Linux systems."}


created_at: 2024-12-28 04:06:30
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: edb1f8a7-3254-4735-b19a-5bcc9c38cef6
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "2502c775-cd3f-4186-a4ab-50511225edd9", "hash": "7e36f35a89576afbcbfc506e72e61ff18a0454aa687e5d25bb42ae64ac13bb46", "name": "network-diagrams.mdx", "source": "network-diagrams.mdx", "start_index": 0, "chroma:document": "```mermaid\nC4Context\nBoundary(b0, \"Hosting Machine - Linux\") {\n   Person(user, \"User\")\n   Component(openwebui, \"Open WebUI\", \"Listening on port 8080\")\n   Component(ollama, \"Ollama\", \"Listening on port 11434\")\n}\nRel(openwebui, ollama, \"Makes API calls via localhost\", \"http://localhost:11434\")\nRel(user, openwebui, \"Makes requests via listening port\", \"http://localhost:8080\")\nUpdateRelStyle(user, openwebui, $offsetX=\"-100\", $offsetY=\"-50\")\n```\n\nEach setup addresses different deployment strategies and networking configurations to help you choose the best layout for your requirements."}


created_at: 2024-12-28 04:06:30
topic: persistent://default/default/e964eadb-f31f-484f-b261-6b30d0e9f7f4
id: f7d38683-8088-4e04-81af-7c281b0e5974
encoding: FLOAT32
metadata:
{"source": "ollama.md", "name": "ollama.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "af48b429-ce51-4d08-8d8b-495dee1007cf", "start_index": 0, "hash": "79cb497a488fe3ed7525f1a60e395146c68fd790087dfad61165e3ebc62bbaa8", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "---\nsidebar_position: 14\ntitle: \"\u2696\ufe0f Ollama Load Balancing\"\n---\n\n# \u2696\ufe0f Ollama Load Balancing Setup\n\nThis guide demonstrates how to configure Open WebUI to connect to multiple Ollama instances for load balancing within your deployment. This approach enables you to distribute processing loads across several nodes, enhancing both performance and reliability. The configuration leverages environment variables to manage connections between container updates, rebuilds, or redeployments seamlessly.\n\n## Docker Run\n\nTo connect to multiple Ollama instances with Docker, use the following example command:\n\n```bash\ndocker run -d -p 3000:8080 \\\n  -v open-webui:/app/backend/data \\\n  -e OLLAMA_BASE_URLS=\"http://ollama-one:11434;http://ollama-two:11434\" \\\n  --name open-webui \\\n  --restart always \\\n  ghcr.io/open-webui/open-webui:main\n```\n\nThis command configures your Docker container with these key environment variables:"}


created_at: 2024-12-28 04:06:30
topic: persistent://default/default/e964eadb-f31f-484f-b261-6b30d0e9f7f4
id: 0c0101f5-6922-41c6-8dbf-dbe471885ec3
encoding: FLOAT32
metadata:
{"source": "ollama.md", "name": "ollama.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "af48b429-ce51-4d08-8d8b-495dee1007cf", "start_index": 831, "hash": "79cb497a488fe3ed7525f1a60e395146c68fd790087dfad61165e3ebc62bbaa8", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "This command configures your Docker container with these key environment variables:\n\n- `OLLAMA_BASE_URLS`: Specifies the base URLs for each Ollama instance, separated by semicolons (`;`). This example uses two instances, but you can adjust this to fit your setup.\n\nEnsure both Ollama instances are of the same version and have matching tags for each model they share. Discrepancies in model versions or tags across instances can lead to errors due to how WebUI de-duplicates and merges model lists.\n\n## Docker Compose\n\nFor those preferring `docker-compose`, here's an abridged version of a `docker-compose.yaml` file:\n\n```yaml\nservices:\n  open-webui:\n    environment:\n      - OLLAMA_BASE_URLS=http://ollama-one:11434;http://ollama-two:11434\n```\n\nTo further streamline this setup, you can define `OLLAMA_BASE_URLS` in an `.env` file located in the same directory as your `docker-compose.yaml`. Your `.env` file might look like this:"}


created_at: 2024-12-28 04:06:30
topic: persistent://default/default/e964eadb-f31f-484f-b261-6b30d0e9f7f4
id: 8ef8d36f-0e4e-4922-8ff6-82f03eb757de
encoding: FLOAT32
metadata:
{"source": "ollama.md", "name": "ollama.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "af48b429-ce51-4d08-8d8b-495dee1007cf", "start_index": 1764, "hash": "79cb497a488fe3ed7525f1a60e395146c68fd790087dfad61165e3ebc62bbaa8", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "```ini\nOLLAMA_BASE_URLS=\"http://ollama-one:11434;http://ollama-two:11434\"\n```\n\n## Ensuring Model Consistency\n\nBoth Ollama instances must run identical versions and tags for each shared model to prevent issues. The system allows for models to be present on one server and not the other, smartly routing requests to the server containing the requested model. However, having different versions or hashes for the same model tag across instances can cause inconsistencies.\n\nUtilize the `Update All Models` button beside the server selector drop-down within the **Settings > Models** screen to keep models synchronized across instances.\n\nBy following these steps, you can effectively distribute the computational load across multiple Ollama instances, ensuring a robust and efficient deployment with Open WebUI."}


created_at: 2024-12-28 04:06:30
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 43e98c93-a8b2-46b4-9cbb-ddd3a14c5f3c
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "af48b429-ce51-4d08-8d8b-495dee1007cf", "hash": "79cb497a488fe3ed7525f1a60e395146c68fd790087dfad61165e3ebc62bbaa8", "name": "ollama.md", "source": "ollama.md", "start_index": 0, "chroma:document": "---\nsidebar_position: 14\ntitle: \"\u2696\ufe0f Ollama Load Balancing\"\n---\n\n# \u2696\ufe0f Ollama Load Balancing Setup\n\nThis guide demonstrates how to configure Open WebUI to connect to multiple Ollama instances for load balancing within your deployment. This approach enables you to distribute processing loads across several nodes, enhancing both performance and reliability. The configuration leverages environment variables to manage connections between container updates, rebuilds, or redeployments seamlessly.\n\n## Docker Run\n\nTo connect to multiple Ollama instances with Docker, use the following example command:\n\n```bash\ndocker run -d -p 3000:8080 \\\n  -v open-webui:/app/backend/data \\\n  -e OLLAMA_BASE_URLS=\"http://ollama-one:11434;http://ollama-two:11434\" \\\n  --name open-webui \\\n  --restart always \\\n  ghcr.io/open-webui/open-webui:main\n```\n\nThis command configures your Docker container with these key environment variables:"}


created_at: 2024-12-28 04:06:30
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 28a6d9a2-8833-4844-8ad1-b8c18bae64a7
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "af48b429-ce51-4d08-8d8b-495dee1007cf", "hash": "79cb497a488fe3ed7525f1a60e395146c68fd790087dfad61165e3ebc62bbaa8", "name": "ollama.md", "source": "ollama.md", "start_index": 0, "chroma:document": "This command configures your Docker container with these key environment variables:\n\n- `OLLAMA_BASE_URLS`: Specifies the base URLs for each Ollama instance, separated by semicolons (`;`). This example uses two instances, but you can adjust this to fit your setup.\n\nEnsure both Ollama instances are of the same version and have matching tags for each model they share. Discrepancies in model versions or tags across instances can lead to errors due to how WebUI de-duplicates and merges model lists.\n\n## Docker Compose\n\nFor those preferring `docker-compose`, here's an abridged version of a `docker-compose.yaml` file:\n\n```yaml\nservices:\n  open-webui:\n    environment:\n      - OLLAMA_BASE_URLS=http://ollama-one:11434;http://ollama-two:11434\n```\n\nTo further streamline this setup, you can define `OLLAMA_BASE_URLS` in an `.env` file located in the same directory as your `docker-compose.yaml`. Your `.env` file might look like this:"}


created_at: 2024-12-28 04:06:30
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: bf322d89-256d-4e4f-8a80-178cc2c42eaa
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "af48b429-ce51-4d08-8d8b-495dee1007cf", "hash": "79cb497a488fe3ed7525f1a60e395146c68fd790087dfad61165e3ebc62bbaa8", "name": "ollama.md", "source": "ollama.md", "start_index": 0, "chroma:document": "```ini\nOLLAMA_BASE_URLS=\"http://ollama-one:11434;http://ollama-two:11434\"\n```\n\n## Ensuring Model Consistency\n\nBoth Ollama instances must run identical versions and tags for each shared model to prevent issues. The system allows for models to be present on one server and not the other, smartly routing requests to the server containing the requested model. However, having different versions or hashes for the same model tag across instances can cause inconsistencies.\n\nUtilize the `Update All Models` button beside the server selector drop-down within the **Settings > Models** screen to keep models synchronized across instances.\n\nBy following these steps, you can effectively distribute the computational load across multiple Ollama instances, ensuring a robust and efficient deployment with Open WebUI."}


created_at: 2024-12-28 04:06:31
topic: persistent://default/default/21c8b24e-f135-4e7f-96bc-ac74a8711eca
id: 6c5734e6-b40c-4845-b7cd-58f19213fbb3
encoding: FLOAT32
metadata:
{"source": "openai.md", "name": "openai.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "9338afdf-8b6c-4cd7-a41a-556810c28927", "start_index": 0, "hash": "1b96f7d9d545e158252eb9995ab178557b97822927e6467934f57787fcf05e83", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "---\nsidebar_position: 1\ntitle: \"\ud83d\udde8\ufe0f OpenAI API\"\n---\n\nComing soon!"}


created_at: 2024-12-28 04:06:31
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 08e36bf8-8e07-40d1-9301-95ba7b67f03e
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "9338afdf-8b6c-4cd7-a41a-556810c28927", "hash": "1b96f7d9d545e158252eb9995ab178557b97822927e6467934f57787fcf05e83", "name": "openai.md", "source": "openai.md", "start_index": 0, "chroma:document": "---\nsidebar_position: 1\ntitle: \"\ud83d\udde8\ufe0f OpenAI API\"\n---\n\nComing soon!"}


created_at: 2024-12-28 04:06:31
topic: persistent://default/default/ebd4adf1-40cd-4818-83cf-865f30f1939d
id: 46cbf021-8f8b-431c-818b-b250c23defd1
encoding: FLOAT32
metadata:
{"source": "openai-edge-tts-integration.md", "name": "openai-edge-tts-integration.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "f66bf138-b038-45a2-9fa5-adc2dae03745", "start_index": 0, "hash": "e184d85167100050d0cdbd2c1051dbae61380444802fe8c49347596cb04f320b", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "---\nsidebar_position: 1\ntitle: \"\ud83d\udde8\ufe0f Openai-edge-tts Using Docker\"\n---\n\n:::warning\nThis tutorial is a community contribution and is not supported by the OpenWebUI team. It serves only as a demonstration on how to customize OpenWebUI for your specific use case. Want to contribute? Check out the contributing tutorial.\n:::\n\n# Integrating `openai-edge-tts` \ud83d\udde3\ufe0f with Open WebUI\n\n## What is `openai-edge-tts`, and how is it different from `openedai-speech`?\n\nSimilar to [openedai-speech](https://github.com/matatonic/openedai-speech), [openai-edge-tts](https://github.com/travisvn/openai-edge-tts) is a text-to-speech API endpoint that mimics the OpenAI API endpoint, allowing for a direct substitute in scenarios where the OpenAI Speech endpoint is callable and the server endpoint URL can be configured.\n\n`openedai-speech` is a more comprehensive option that allows for entirely offline generation of speech with many modalities to choose from."}


created_at: 2024-12-28 04:06:31
topic: persistent://default/default/ebd4adf1-40cd-4818-83cf-865f30f1939d
id: 96449930-d991-45ca-89f9-549cff5bfdff
encoding: FLOAT32
metadata:
{"source": "openai-edge-tts-integration.md", "name": "openai-edge-tts-integration.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "f66bf138-b038-45a2-9fa5-adc2dae03745", "start_index": 941, "hash": "e184d85167100050d0cdbd2c1051dbae61380444802fe8c49347596cb04f320b", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "`openai-edge-tts` is a simpler option that uses a Python package called `edge-tts` to generate the audio.\n\n`edge-tts` ([repo](https://github.com/rany2/edge-tts)) leverages the Edge browser's free \"Read Aloud\" feature to emulate a request to Microsoft / Azure in order to receive very high quality text-to-speech for free.\n\n## Requirements\n\n- Docker installed on your system\n- Open WebUI running\n- ffmpeg (Optional - Only required if opting to not use `mp3` format)\n\n## \u26a1\ufe0f Quick start\n\nThe simplest way to get started without having to configure anything is to run the command below\n\n```bash\ndocker run -d -p 5050:5050 travisvn/openai-edge-tts:latest\n```\n\nThis will run the service at port 5050 with all the default configs\n\n## Setting up Open WebUI to use `openai-edge-tts`\n\n- Open the Admin Panel and go to Settings -> Audio\n- Set your TTS Settings to match the screenshot below\n- _Note: you can specify the TTS Voice here_"}


created_at: 2024-12-28 04:06:31
topic: persistent://default/default/ebd4adf1-40cd-4818-83cf-865f30f1939d
id: ead1d603-5a07-4647-92bf-3550caad466c
encoding: FLOAT32
metadata:
{"source": "openai-edge-tts-integration.md", "name": "openai-edge-tts-integration.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "f66bf138-b038-45a2-9fa5-adc2dae03745", "start_index": 1867, "hash": "e184d85167100050d0cdbd2c1051dbae61380444802fe8c49347596cb04f320b", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "![Screenshot of Open WebUI Admin Settings for Audio adding the correct endpoints for this project](https://utfs.io/f/MMMHiQ1TQaBo9GgL4WcUbjSRlqi86sV3TXh47KYBJCkdQ20M)\n\n:::info\nThe default API key is the string `your_api_key_here`. You do not have to change that value if you do not need the added security.\n:::\n\n**And that's it! You can end here**\n\nSee the [Usage](#usage) section for request examples.\n\n# Please \u2b50\ufe0f star the repo on GitHub if you find [OpenAI Edge TTS](https://github.com/travisvn/openai-edge-tts) useful\n\n:::tip\nYou can define the environment variables directly in the `docker run` command. See [Quick Config for Docker](#-quick-config-for-docker) below.\n:::\n\n## Alternative Options\n\n### \ud83d\udc0d Running with Python\n\nIf you prefer to run this project directly with Python, follow these steps to set up a virtual environment, install dependencies, and start the server.\n\n#### 1. Clone the Repository"}


created_at: 2024-12-28 04:06:31
topic: persistent://default/default/ebd4adf1-40cd-4818-83cf-865f30f1939d
id: d539d28d-f51b-46a9-9406-5c116a764176
encoding: FLOAT32
metadata:
{"source": "openai-edge-tts-integration.md", "name": "openai-edge-tts-integration.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "f66bf138-b038-45a2-9fa5-adc2dae03745", "start_index": 2749, "hash": "e184d85167100050d0cdbd2c1051dbae61380444802fe8c49347596cb04f320b", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "#### 1. Clone the Repository\n\n```bash\ngit clone https://github.com/travisvn/openai-edge-tts.git\ncd openai-edge-tts\n```\n\n#### 2. Set Up a Virtual Environment\n\nCreate and activate a virtual environment to isolate dependencies:\n\n```bash\n# For macOS/Linux\npython3 -m venv venv\nsource venv/bin/activate\n\n# For Windows\npython -m venv venv\nvenv\\Scripts\\activate\n```\n\n#### 3. Install Dependencies\n\nUse `pip` to install the required packages listed in `requirements.txt`:\n\n```bash\npip install -r requirements.txt\n```\n\n#### 4. Configure Environment Variables\n\nCreate a `.env` file in the root directory and set the following variables:\n\n```plaintext\nAPI_KEY=your_api_key_here\nPORT=5050\n\nDEFAULT_VOICE=en-US-AndrewNeural\nDEFAULT_RESPONSE_FORMAT=mp3\nDEFAULT_SPEED=1.2\n\nDEFAULT_LANGUAGE=en-US\n\nREQUIRE_API_KEY=True\n```\n\n#### 5. Run the Server\n\nOnce configured, start the server with:\n\n```bash\npython app/server.py\n```\n\nThe server will start running at `http://localhost:5050`.\n\n#### 6. Test the API"}


created_at: 2024-12-28 04:06:31
topic: persistent://default/default/ebd4adf1-40cd-4818-83cf-865f30f1939d
id: d9943812-c1ce-4048-aac6-636eb7db30b9
encoding: FLOAT32
metadata:
{"source": "openai-edge-tts-integration.md", "name": "openai-edge-tts-integration.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "f66bf138-b038-45a2-9fa5-adc2dae03745", "start_index": 3655, "hash": "e184d85167100050d0cdbd2c1051dbae61380444802fe8c49347596cb04f320b", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "The server will start running at `http://localhost:5050`.\n\n#### 6. Test the API\n\nYou can now interact with the API at `http://localhost:5050/v1/audio/speech` and other available endpoints. See the [Usage](#usage) section for request examples.\n\n#### Usage\n\n##### Endpoint: `/v1/audio/speech`\n\nGenerates audio from the input text. Available parameters:\n\n**Required Parameter:**\n\n- **input** (string): The text to be converted to audio (up to 4096 characters).\n\n**Optional Parameters:**\n\n- **model** (string): Set to \"tts-1\" or \"tts-1-hd\" (default: `\"tts-1\"`).\n- **voice** (string): One of the OpenAI-compatible voices (alloy, echo, fable, onyx, nova, shimmer) or any valid `edge-tts` voice (default: `\"en-US-AndrewNeural\"`).\n- **response_format** (string): Audio format. Options: `mp3`, `opus`, `aac`, `flac`, `wav`, `pcm` (default: `mp3`).\n- **speed** (number): Playback speed (0.25 to 4.0). Default is `1.2`."}


created_at: 2024-12-28 04:06:31
topic: persistent://default/default/ebd4adf1-40cd-4818-83cf-865f30f1939d
id: 046a3b24-8d96-4380-9de1-2865a5e9bc25
encoding: FLOAT32
metadata:
{"source": "openai-edge-tts-integration.md", "name": "openai-edge-tts-integration.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "f66bf138-b038-45a2-9fa5-adc2dae03745", "start_index": 4565, "hash": "e184d85167100050d0cdbd2c1051dbae61380444802fe8c49347596cb04f320b", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": ":::tip\nYou can browse available voices and listen to sample previews at [tts.travisvn.com](https://tts.travisvn.com)\n:::\n\nExample request with `curl` and saving the output to an mp3 file:\n\n```bash\ncurl -X POST http://localhost:5050/v1/audio/speech \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer your_api_key_here\" \\\n  -d '{\n    \"input\": \"Hello, I am your AI assistant! Just let me know how I can help bring your ideas to life.\",\n    \"voice\": \"echo\",\n    \"response_format\": \"mp3\",\n    \"speed\": 1.0\n  }' \\\n  --output speech.mp3\n```\n\nOr, to be in line with the OpenAI API endpoint parameters:\n\n```bash\ncurl -X POST http://localhost:5050/v1/audio/speech \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer your_api_key_here\" \\\n  -d '{\n    \"model\": \"tts-1\",\n    \"input\": \"Hello, I am your AI assistant! Just let me know how I can help bring your ideas to life.\",\n    \"voice\": \"alloy\"\n  }' \\\n  --output speech.mp3\n```"}


created_at: 2024-12-28 04:06:31
topic: persistent://default/default/ebd4adf1-40cd-4818-83cf-865f30f1939d
id: 2d9b9f1d-04fa-4b26-ac4e-4e15af7d67de
encoding: FLOAT32
metadata:
{"source": "openai-edge-tts-integration.md", "name": "openai-edge-tts-integration.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "f66bf138-b038-45a2-9fa5-adc2dae03745", "start_index": 5519, "hash": "e184d85167100050d0cdbd2c1051dbae61380444802fe8c49347596cb04f320b", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "And an example of a language other than English:\n\n```bash\ncurl -X POST http://localhost:5050/v1/audio/speech \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer your_api_key_here\" \\\n  -d '{\n    \"model\": \"tts-1\",\n    \"input\": \"\u3058\u3083\u3042\u3001\u884c\u304f\u3002\u96fb\u8eca\u306e\u6642\u9593\u3001\u8abf\u3079\u3066\u304a\u304f\u3088\u3002\",\n    \"voice\": \"ja-JP-KeitaNeural\"\n  }' \\\n  --output speech.mp3\n```\n\n##### Additional Endpoints\n\n- **POST/GET /v1/models**: Lists available TTS models.\n- **POST/GET /v1/voices**: Lists `edge-tts` voices for a given language / locale.\n- **POST/GET /v1/voices/all**: Lists all `edge-tts` voices, with language support information.\n\n## \ud83d\udc33 Quick Config for Docker\n\nYou can configure the environment variables in the command used to run the project\n\n```bash\ndocker run -d -p 5050:5050 \\\n  -e API_KEY=your_api_key_here \\\n  -e PORT=5050 \\\n  -e DEFAULT_VOICE=en-US-AndrewNeural \\\n  -e DEFAULT_RESPONSE_FORMAT=mp3 \\\n  -e DEFAULT_SPEED=1.2 \\\n  -e DEFAULT_LANGUAGE=en-US \\\n  -e REQUIRE_API_KEY=True \\\n  travisvn/openai-edge-tts:latest\n```"}


created_at: 2024-12-28 04:06:31
topic: persistent://default/default/ebd4adf1-40cd-4818-83cf-865f30f1939d
id: 973aee88-c23e-446a-adc0-6e0a919522fa
encoding: FLOAT32
metadata:
{"source": "openai-edge-tts-integration.md", "name": "openai-edge-tts-integration.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "f66bf138-b038-45a2-9fa5-adc2dae03745", "start_index": 6512, "hash": "e184d85167100050d0cdbd2c1051dbae61380444802fe8c49347596cb04f320b", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "## Additional Resources\n\nFor more information on `openai-edge-tts`, you can visit the [GitHub repo](https://github.com/travisvn/openai-edge-tts)\n\nFor direct support, you can visit the [Voice AI & TTS Discord](https://discord.gg/GkFbBCBqJ6)\n\n## \ud83c\udf99\ufe0f Voice Samples\n\n[Play voice samples and see all available Edge TTS voices](https://tts.travisvn.com/)"}


created_at: 2024-12-28 04:06:31
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: e6642698-0d46-44e2-b080-085f57eb0753
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "f66bf138-b038-45a2-9fa5-adc2dae03745", "hash": "e184d85167100050d0cdbd2c1051dbae61380444802fe8c49347596cb04f320b", "name": "openai-edge-tts-integration.md", "source": "openai-edge-tts-integration.md", "start_index": 0, "chroma:document": "---\nsidebar_position: 1\ntitle: \"\ud83d\udde8\ufe0f Openai-edge-tts Using Docker\"\n---\n\n:::warning\nThis tutorial is a community contribution and is not supported by the OpenWebUI team. It serves only as a demonstration on how to customize OpenWebUI for your specific use case. Want to contribute? Check out the contributing tutorial.\n:::\n\n# Integrating `openai-edge-tts` \ud83d\udde3\ufe0f with Open WebUI\n\n## What is `openai-edge-tts`, and how is it different from `openedai-speech`?\n\nSimilar to [openedai-speech](https://github.com/matatonic/openedai-speech), [openai-edge-tts](https://github.com/travisvn/openai-edge-tts) is a text-to-speech API endpoint that mimics the OpenAI API endpoint, allowing for a direct substitute in scenarios where the OpenAI Speech endpoint is callable and the server endpoint URL can be configured.\n\n`openedai-speech` is a more comprehensive option that allows for entirely offline generation of speech with many modalities to choose from."}


created_at: 2024-12-28 04:06:31
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: ac1cf901-2858-441d-9be0-747cccce3de4
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "f66bf138-b038-45a2-9fa5-adc2dae03745", "hash": "e184d85167100050d0cdbd2c1051dbae61380444802fe8c49347596cb04f320b", "name": "openai-edge-tts-integration.md", "source": "openai-edge-tts-integration.md", "start_index": 0, "chroma:document": "`openai-edge-tts` is a simpler option that uses a Python package called `edge-tts` to generate the audio.\n\n`edge-tts` ([repo](https://github.com/rany2/edge-tts)) leverages the Edge browser's free \"Read Aloud\" feature to emulate a request to Microsoft / Azure in order to receive very high quality text-to-speech for free.\n\n## Requirements\n\n- Docker installed on your system\n- Open WebUI running\n- ffmpeg (Optional - Only required if opting to not use `mp3` format)\n\n## \u26a1\ufe0f Quick start\n\nThe simplest way to get started without having to configure anything is to run the command below\n\n```bash\ndocker run -d -p 5050:5050 travisvn/openai-edge-tts:latest\n```\n\nThis will run the service at port 5050 with all the default configs\n\n## Setting up Open WebUI to use `openai-edge-tts`\n\n- Open the Admin Panel and go to Settings -> Audio\n- Set your TTS Settings to match the screenshot below\n- _Note: you can specify the TTS Voice here_"}


created_at: 2024-12-28 04:06:31
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 4d9d6776-4439-406f-b65d-384d7b96b187
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "f66bf138-b038-45a2-9fa5-adc2dae03745", "hash": "e184d85167100050d0cdbd2c1051dbae61380444802fe8c49347596cb04f320b", "name": "openai-edge-tts-integration.md", "source": "openai-edge-tts-integration.md", "start_index": 0, "chroma:document": "![Screenshot of Open WebUI Admin Settings for Audio adding the correct endpoints for this project](https://utfs.io/f/MMMHiQ1TQaBo9GgL4WcUbjSRlqi86sV3TXh47KYBJCkdQ20M)\n\n:::info\nThe default API key is the string `your_api_key_here`. You do not have to change that value if you do not need the added security.\n:::\n\n**And that's it! You can end here**\n\nSee the [Usage](#usage) section for request examples.\n\n# Please \u2b50\ufe0f star the repo on GitHub if you find [OpenAI Edge TTS](https://github.com/travisvn/openai-edge-tts) useful\n\n:::tip\nYou can define the environment variables directly in the `docker run` command. See [Quick Config for Docker](#-quick-config-for-docker) below.\n:::\n\n## Alternative Options\n\n### \ud83d\udc0d Running with Python\n\nIf you prefer to run this project directly with Python, follow these steps to set up a virtual environment, install dependencies, and start the server.\n\n#### 1. Clone the Repository"}


created_at: 2024-12-28 04:06:31
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 6e1d724d-29fa-4451-98a2-1c668b33aad3
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "f66bf138-b038-45a2-9fa5-adc2dae03745", "hash": "e184d85167100050d0cdbd2c1051dbae61380444802fe8c49347596cb04f320b", "name": "openai-edge-tts-integration.md", "source": "openai-edge-tts-integration.md", "start_index": 0, "chroma:document": "#### 1. Clone the Repository\n\n```bash\ngit clone https://github.com/travisvn/openai-edge-tts.git\ncd openai-edge-tts\n```\n\n#### 2. Set Up a Virtual Environment\n\nCreate and activate a virtual environment to isolate dependencies:\n\n```bash\n# For macOS/Linux\npython3 -m venv venv\nsource venv/bin/activate\n\n# For Windows\npython -m venv venv\nvenv\\Scripts\\activate\n```\n\n#### 3. Install Dependencies\n\nUse `pip` to install the required packages listed in `requirements.txt`:\n\n```bash\npip install -r requirements.txt\n```\n\n#### 4. Configure Environment Variables\n\nCreate a `.env` file in the root directory and set the following variables:\n\n```plaintext\nAPI_KEY=your_api_key_here\nPORT=5050\n\nDEFAULT_VOICE=en-US-AndrewNeural\nDEFAULT_RESPONSE_FORMAT=mp3\nDEFAULT_SPEED=1.2\n\nDEFAULT_LANGUAGE=en-US\n\nREQUIRE_API_KEY=True\n```\n\n#### 5. Run the Server\n\nOnce configured, start the server with:\n\n```bash\npython app/server.py\n```\n\nThe server will start running at `http://localhost:5050`.\n\n#### 6. Test the API"}


created_at: 2024-12-28 04:06:31
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: c8b70d39-3e1a-46fc-b403-2aa3dde36381
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "f66bf138-b038-45a2-9fa5-adc2dae03745", "hash": "e184d85167100050d0cdbd2c1051dbae61380444802fe8c49347596cb04f320b", "name": "openai-edge-tts-integration.md", "source": "openai-edge-tts-integration.md", "start_index": 0, "chroma:document": "The server will start running at `http://localhost:5050`.\n\n#### 6. Test the API\n\nYou can now interact with the API at `http://localhost:5050/v1/audio/speech` and other available endpoints. See the [Usage](#usage) section for request examples.\n\n#### Usage\n\n##### Endpoint: `/v1/audio/speech`\n\nGenerates audio from the input text. Available parameters:\n\n**Required Parameter:**\n\n- **input** (string): The text to be converted to audio (up to 4096 characters).\n\n**Optional Parameters:**\n\n- **model** (string): Set to \"tts-1\" or \"tts-1-hd\" (default: `\"tts-1\"`).\n- **voice** (string): One of the OpenAI-compatible voices (alloy, echo, fable, onyx, nova, shimmer) or any valid `edge-tts` voice (default: `\"en-US-AndrewNeural\"`).\n- **response_format** (string): Audio format. Options: `mp3`, `opus`, `aac`, `flac`, `wav`, `pcm` (default: `mp3`).\n- **speed** (number): Playback speed (0.25 to 4.0). Default is `1.2`."}


created_at: 2024-12-28 04:06:31
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 3576a4eb-b336-4cd3-bd5a-6d32967865eb
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "f66bf138-b038-45a2-9fa5-adc2dae03745", "hash": "e184d85167100050d0cdbd2c1051dbae61380444802fe8c49347596cb04f320b", "name": "openai-edge-tts-integration.md", "source": "openai-edge-tts-integration.md", "start_index": 0, "chroma:document": ":::tip\nYou can browse available voices and listen to sample previews at [tts.travisvn.com](https://tts.travisvn.com)\n:::\n\nExample request with `curl` and saving the output to an mp3 file:\n\n```bash\ncurl -X POST http://localhost:5050/v1/audio/speech \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer your_api_key_here\" \\\n  -d '{\n    \"input\": \"Hello, I am your AI assistant! Just let me know how I can help bring your ideas to life.\",\n    \"voice\": \"echo\",\n    \"response_format\": \"mp3\",\n    \"speed\": 1.0\n  }' \\\n  --output speech.mp3\n```\n\nOr, to be in line with the OpenAI API endpoint parameters:\n\n```bash\ncurl -X POST http://localhost:5050/v1/audio/speech \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer your_api_key_here\" \\\n  -d '{\n    \"model\": \"tts-1\",\n    \"input\": \"Hello, I am your AI assistant! Just let me know how I can help bring your ideas to life.\",\n    \"voice\": \"alloy\"\n  }' \\\n  --output speech.mp3\n```"}


created_at: 2024-12-28 04:06:31
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 47877280-b41f-4a62-9ff6-24a033bc4add
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "f66bf138-b038-45a2-9fa5-adc2dae03745", "hash": "e184d85167100050d0cdbd2c1051dbae61380444802fe8c49347596cb04f320b", "name": "openai-edge-tts-integration.md", "source": "openai-edge-tts-integration.md", "start_index": 0, "chroma:document": "And an example of a language other than English:\n\n```bash\ncurl -X POST http://localhost:5050/v1/audio/speech \\\n  -H \"Content-Type: application/json\" \\\n  -H \"Authorization: Bearer your_api_key_here\" \\\n  -d '{\n    \"model\": \"tts-1\",\n    \"input\": \"\u3058\u3083\u3042\u3001\u884c\u304f\u3002\u96fb\u8eca\u306e\u6642\u9593\u3001\u8abf\u3079\u3066\u304a\u304f\u3088\u3002\",\n    \"voice\": \"ja-JP-KeitaNeural\"\n  }' \\\n  --output speech.mp3\n```\n\n##### Additional Endpoints\n\n- **POST/GET /v1/models**: Lists available TTS models.\n- **POST/GET /v1/voices**: Lists `edge-tts` voices for a given language / locale.\n- **POST/GET /v1/voices/all**: Lists all `edge-tts` voices, with language support information.\n\n## \ud83d\udc33 Quick Config for Docker\n\nYou can configure the environment variables in the command used to run the project\n\n```bash\ndocker run -d -p 5050:5050 \\\n  -e API_KEY=your_api_key_here \\\n  -e PORT=5050 \\\n  -e DEFAULT_VOICE=en-US-AndrewNeural \\\n  -e DEFAULT_RESPONSE_FORMAT=mp3 \\\n  -e DEFAULT_SPEED=1.2 \\\n  -e DEFAULT_LANGUAGE=en-US \\\n  -e REQUIRE_API_KEY=True \\\n  travisvn/openai-edge-tts:latest\n```"}


created_at: 2024-12-28 04:06:31
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: bcb6176a-4d07-49f6-85e1-ea1efb36d4f5
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "f66bf138-b038-45a2-9fa5-adc2dae03745", "hash": "e184d85167100050d0cdbd2c1051dbae61380444802fe8c49347596cb04f320b", "name": "openai-edge-tts-integration.md", "source": "openai-edge-tts-integration.md", "start_index": 0, "chroma:document": "## Additional Resources\n\nFor more information on `openai-edge-tts`, you can visit the [GitHub repo](https://github.com/travisvn/openai-edge-tts)\n\nFor direct support, you can visit the [Voice AI & TTS Discord](https://discord.gg/GkFbBCBqJ6)\n\n## \ud83c\udf99\ufe0f Voice Samples\n\n[Play voice samples and see all available Edge TTS voices](https://tts.travisvn.com/)"}


created_at: 2024-12-28 04:06:32
topic: persistent://default/default/369be900-0884-4fa2-822f-ea036b95dea4
id: f1990ae4-4505-49bd-8ab3-1822d3dc1498
encoding: FLOAT32
metadata:
{"source": "openedai-speech-integration.md", "name": "openedai-speech-integration.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "353cae16-d98b-4aa3-b160-49939d00e651", "start_index": 0, "hash": "406312345cfe5cca93f55a22af1f7d7d5b1f38e8c002247b9bd874311cf1bb3e", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "---\nsidebar_position: 2\ntitle: \"\ud83d\udde8\ufe0f Openedai-speech Using Docker\"\n---\n\n:::warning\nThis tutorial is a community contribution and is not supported by the OpenWebUI team. It serves only as a demonstration on how to customize OpenWebUI for your specific use case. Want to contribute? Check out the contributing tutorial.\n:::\n\n**Integrating `openedai-speech` into Open WebUI using Docker**\n==============================================================\n\n**What is `openedai-speech`?**\n-----------------------------\n\n:::info\n[openedai-speech](https://github.com/matatonic/openedai-speech) is an OpenAI audio/speech API compatible text-to-speech server.\n\nIt serves the `/v1/audio/speech` endpoint and provides a free, private text-to-speech experience with custom voice cloning capabilities. This service is in no way affiliated with OpenAI and does not require an OpenAI API key.\n:::\n\n**Requirements**\n-----------------"}


created_at: 2024-12-28 04:06:32
topic: persistent://default/default/369be900-0884-4fa2-822f-ea036b95dea4
id: 4eee98b5-f4f0-4bdd-8c78-826ddfda6c36
encoding: FLOAT32
metadata:
{"source": "openedai-speech-integration.md", "name": "openedai-speech-integration.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "353cae16-d98b-4aa3-b160-49939d00e651", "start_index": 878, "hash": "406312345cfe5cca93f55a22af1f7d7d5b1f38e8c002247b9bd874311cf1bb3e", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "**Requirements**\n-----------------\n\n* Docker installed on your system\n* Open WebUI running in a Docker container\n* Basic understanding of Docker and Docker Compose\n\n**Option 1: Using Docker Compose**\n----------------------------------\n\n**Step 1: Create a new folder for the `openedai-speech` service**\n-----------------------------------------------------------------\n\nCreate a new folder, for example, `openedai-speech-service`, to store the `docker-compose.yml` and `speech.env` files.\n\n**Step 2: Clone the `openedai-speech` repository from GitHub**\n--------------------------------------------------------------\n\n```bash\ngit clone https://github.com/matatonic/openedai-speech.git\n```\n\nThis will download the `openedai-speech` repository to your local machine, which includes the Docker Compose files (`docker-compose.yml`, `docker-compose.min.yml`, and `docker-compose.rocm.yml`) and other necessary files."}


created_at: 2024-12-28 04:06:32
topic: persistent://default/default/369be900-0884-4fa2-822f-ea036b95dea4
id: 068704ff-6be2-4e2a-b496-8b8d619dd8a5
encoding: FLOAT32
metadata:
{"source": "openedai-speech-integration.md", "name": "openedai-speech-integration.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "353cae16-d98b-4aa3-b160-49939d00e651", "start_index": 1789, "hash": "406312345cfe5cca93f55a22af1f7d7d5b1f38e8c002247b9bd874311cf1bb3e", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "**Step 3: Rename the `sample.env` file to `speech.env` (Customize if needed)**\n------------------------------------------------------------------------------\n\nIn the `openedai-speech` repository folder, create a new file named `speech.env` with the following contents:\n\n```yaml\nTTS_HOME=voices\nHF_HOME=voices\n#PRELOAD_MODEL=xtts\n#PRELOAD_MODEL=xtts_v2.0.2\n#PRELOAD_MODEL=parler-tts/parler_tts_mini_v0.1\n#EXTRA_ARGS=--log-level DEBUG --unload-timer 300\n#USE_ROCM=1\n```\n\n**Step 4: Choose a Docker Compose file**\n----------------------------------------\n\nYou can use any of the following Docker Compose files:"}


created_at: 2024-12-28 04:06:32
topic: persistent://default/default/369be900-0884-4fa2-822f-ea036b95dea4
id: e4d2f60c-8103-4e36-8a17-b0287e318ab5
encoding: FLOAT32
metadata:
{"source": "openedai-speech-integration.md", "name": "openedai-speech-integration.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "353cae16-d98b-4aa3-b160-49939d00e651", "start_index": 2341, "hash": "406312345cfe5cca93f55a22af1f7d7d5b1f38e8c002247b9bd874311cf1bb3e", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "You can use any of the following Docker Compose files:\n\n* [docker-compose.yml](https://github.com/matatonic/openedai-speech/blob/main/docker-compose.yml): This file uses the `ghcr.io/matatonic/openedai-speech` image and builds from [Dockerfile](https://github.com/matatonic/openedai-speech/blob/main/Dockerfile).\n* [docker-compose.min.yml](https://github.com/matatonic/openedai-speech/blob/main/docker-compose.min.yml): This file uses the `ghcr.io/matatonic/openedai-speech-min` image and builds from [Dockerfile.min](https://github.com/matatonic/openedai-speech/blob/main/Dockerfile.min).\n  This image is a minimal version that only includes Piper support and does not require a GPU.\n* [docker-compose.rocm.yml](https://github.com/matatonic/openedai-speech/blob/main/docker-compose.rocm.yml): This file uses the `ghcr.io/matatonic/openedai-speech-rocm` image and builds from [Dockerfile](https://github.com/matatonic/openedai-speech/blob/main/Dockerfile) with ROCm support."}


created_at: 2024-12-28 04:06:32
topic: persistent://default/default/369be900-0884-4fa2-822f-ea036b95dea4
id: 09a9af0b-a63b-4619-9920-dda84924db53
encoding: FLOAT32
metadata:
{"source": "openedai-speech-integration.md", "name": "openedai-speech-integration.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "353cae16-d98b-4aa3-b160-49939d00e651", "start_index": 3317, "hash": "406312345cfe5cca93f55a22af1f7d7d5b1f38e8c002247b9bd874311cf1bb3e", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "**Step 4: Build the Chosen Docker Image**\n-----------------------------------------\n\nBefore running the Docker Compose file, you need to build the Docker image:\n\n* **Nvidia GPU (CUDA support)**:\n\n```bash\ndocker build -t ghcr.io/matatonic/openedai-speech .\n```\n\n* **AMD GPU (ROCm support)**:\n\n```bash\ndocker build -f Dockerfile --build-arg USE_ROCM=1 -t ghcr.io/matatonic/openedai-speech-rocm .\n```\n\n* **CPU only, No GPU (Piper only)**:\n\n```bash\ndocker build -f Dockerfile.min -t ghcr.io/matatonic/openedai-speech-min .\n```\n\n**Step 5: Run the correct `docker compose up -d` command**\n----------------------------------------------------------\n\n* **Nvidia GPU (CUDA support)**: Run the following command to start the `openedai-speech` service in detached mode:\n\n```bash\ndocker compose up -d\n```\n\n* **AMD GPU (ROCm support)**: Run the following command to start the `openedai-speech` service in detached mode:\n\n```bash\ndocker compose -f docker-compose.rocm.yml up -d\n```"}


created_at: 2024-12-28 04:06:32
topic: persistent://default/default/369be900-0884-4fa2-822f-ea036b95dea4
id: 40c40a22-b115-4c36-9909-212554b52463
encoding: FLOAT32
metadata:
{"source": "openedai-speech-integration.md", "name": "openedai-speech-integration.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "353cae16-d98b-4aa3-b160-49939d00e651", "start_index": 4225, "hash": "406312345cfe5cca93f55a22af1f7d7d5b1f38e8c002247b9bd874311cf1bb3e", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "```bash\ndocker compose -f docker-compose.rocm.yml up -d\n```\n\n* **ARM64 (Apple M-series, Raspberry Pi)**: XTTS only has CPU support here and will be very slow. You can use the Nvidia image for XTTS with CPU (slow), or use the Piper only image (recommended):\n\n```bash\ndocker compose -f docker-compose.min.yml up -d\n```\n\n* **CPU only, No GPU (Piper only)**: For a minimal docker image with only Piper support (< 1GB vs. 8GB):\n\n```bash\ndocker compose -f docker-compose.min.yml up -d\n```\n\nThis will start the `openedai-speech` service in detached mode.\n\n**Option 2: Using Docker Run Commands**\n---------------------------------------\n\nYou can also use the following Docker run commands to start the `openedai-speech` service in detached mode:\n\n* **Nvidia GPU (CUDA)**: Run the following command to build and start the `openedai-speech` service:"}


created_at: 2024-12-28 04:06:32
topic: persistent://default/default/369be900-0884-4fa2-822f-ea036b95dea4
id: cf8d1b25-612e-4708-82a9-a9348a17cd4e
encoding: FLOAT32
metadata:
{"source": "openedai-speech-integration.md", "name": "openedai-speech-integration.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "353cae16-d98b-4aa3-b160-49939d00e651", "start_index": 5066, "hash": "406312345cfe5cca93f55a22af1f7d7d5b1f38e8c002247b9bd874311cf1bb3e", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "```bash\ndocker build -t ghcr.io/matatonic/openedai-speech .\ndocker run -d --gpus=all -p 8000:8000 -v voices:/app/voices -v config:/app/config --name openedai-speech ghcr.io/matatonic/openedai-speech\n```\n\n* **ROCm (AMD GPU)**: Run the following command to build and start the `openedai-speech` service:\n\n> To enable ROCm support, uncomment the `#USE_ROCM=1` line in the `speech.env` file.\n\n```bash\ndocker build -f Dockerfile --build-arg USE_ROCM=1 -t ghcr.io/matatonic/openedai-speech-rocm .\ndocker run -d --privileged --init --name openedai-speech -p 8000:8000 -v voices:/app/voices -v config:/app/config ghcr.io/matatonic/openedai-speech-rocm\n```\n\n* **CPU only, No GPU (Piper only)**: Run the following command to build and start the `openedai-speech` service:\n\n```bash\ndocker build -f Dockerfile.min -t ghcr.io/matatonic/openedai-speech-min .\ndocker run -d -p 8000:8000 -v voices:/app/voices -v config:/app/config --name openedai-speech ghcr.io/matatonic/openedai-speech-min\n```"}


created_at: 2024-12-28 04:06:32
topic: persistent://default/default/369be900-0884-4fa2-822f-ea036b95dea4
id: 31fde923-d507-4767-8896-f2e978a4f133
encoding: FLOAT32
metadata:
{"source": "openedai-speech-integration.md", "name": "openedai-speech-integration.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "353cae16-d98b-4aa3-b160-49939d00e651", "start_index": 6048, "hash": "406312345cfe5cca93f55a22af1f7d7d5b1f38e8c002247b9bd874311cf1bb3e", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "**Step 6: Configuring Open WebUI to use `openedai-speech` for TTS**\n---------------------------------------------------------\n\n![openedai-tts](https://github.com/silentoplayz/docs/assets/50341825/ea08494f-2ebf-41a2-bb0f-9b48dd3ace79)\n\nOpen the Open WebUI settings and navigate to the TTS Settings under **Admin Panel > Settings > Audio**. Add the following configuration:\n\n* **API Base URL**: `http://host.docker.internal:8000/v1`\n* **API Key**: `sk-111111111` (Note that this is a dummy API key, as `openedai-speech` doesn't require an API key. You can use whatever you'd like for this field, as long as it is filled.)\n\n**Step 7: Choose a voice**\n--------------------------\n\nUnder `TTS Voice` within the same audio settings menu in the admin panel, you can set the `TTS Model` to use from the following choices below that `openedai-speech` supports. The voices of these models are optimized for the English language."}


created_at: 2024-12-28 04:06:32
topic: persistent://default/default/369be900-0884-4fa2-822f-ea036b95dea4
id: 359b7690-7c51-4e63-b8c7-2537418ebab9
encoding: FLOAT32
metadata:
{"source": "openedai-speech-integration.md", "name": "openedai-speech-integration.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "353cae16-d98b-4aa3-b160-49939d00e651", "start_index": 6967, "hash": "406312345cfe5cca93f55a22af1f7d7d5b1f38e8c002247b9bd874311cf1bb3e", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "* `tts-1` or `tts-1-hd`: `alloy`, `echo`, `echo-alt`, `fable`, `onyx`, `nova`, and `shimmer` (`tts-1-hd` is configurable; uses OpenAI samples by default)\n\n**Step 8: Press `Save` to apply the changes and start enjoying naturally sounding voices**\n--------------------------------------------------------------------------------------------\n\nPress the `Save` button to apply the changes to your Open WebUI settings. Refresh the page for the change to fully take effect and enjoy using `openedai-speech` integration within Open WebUI to read aloud text responses with text-to-speech in a natural sounding voice.\n\n**Model Details:**\n------------------\n\n`openedai-speech` supports multiple text-to-speech models, each with its own strengths and requirements. The following models are available:"}


created_at: 2024-12-28 04:06:32
topic: persistent://default/default/369be900-0884-4fa2-822f-ea036b95dea4
id: 25630297-8c9a-45f5-930f-fd88875b440b
encoding: FLOAT32
metadata:
{"source": "openedai-speech-integration.md", "name": "openedai-speech-integration.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "353cae16-d98b-4aa3-b160-49939d00e651", "start_index": 7758, "hash": "406312345cfe5cca93f55a22af1f7d7d5b1f38e8c002247b9bd874311cf1bb3e", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "* **Piper TTS** (very fast, runs on CPU): Use your own [Piper voices](https://rhasspy.github.io/piper-samples/) via the `voice_to_speaker.yaml` configuration file. This model is great for applications that require low latency and high performance. Piper TTS also supports [multilingual](https://github.com/matatonic/openedai-speech#multilingual) voices.\n* **Coqui AI/TTS XTTS v2** (fast, but requires around 4GB GPU VRAM & Nvidia GPU with CUDA): This model uses Coqui AI's XTTS v2 voice cloning technology to generate high-quality voices. While it requires a more powerful GPU, it provides excellent performance and high-quality audio. Coqui also supports [multilingual](https://github.com/matatonic/openedai-speech#multilingual) voices."}


created_at: 2024-12-28 04:06:32
topic: persistent://default/default/369be900-0884-4fa2-822f-ea036b95dea4
id: 7d24b489-e059-4557-984f-3bcbe8668eab
encoding: FLOAT32
metadata:
{"source": "openedai-speech-integration.md", "name": "openedai-speech-integration.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "353cae16-d98b-4aa3-b160-49939d00e651", "start_index": 8496, "hash": "406312345cfe5cca93f55a22af1f7d7d5b1f38e8c002247b9bd874311cf1bb3e", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "* **Beta Parler-TTS Support** (experimental, slower): This model uses the Parler-TTS framework to generate voices. While it's currently in beta, it allows you to describe very basic features of the speaker voice. The exact voice will be slightly different with each generation, but should be similar to the speaker description provided. For inspiration on how to describe voices, see [Text Description to Speech](https://www.text-description-to-speech.com/)."}


created_at: 2024-12-28 04:06:32
topic: persistent://default/default/369be900-0884-4fa2-822f-ea036b95dea4
id: b7a63f98-c707-421b-9ca8-92a2ee00f37b
encoding: FLOAT32
metadata:
{"source": "openedai-speech-integration.md", "name": "openedai-speech-integration.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "353cae16-d98b-4aa3-b160-49939d00e651", "start_index": 8956, "hash": "406312345cfe5cca93f55a22af1f7d7d5b1f38e8c002247b9bd874311cf1bb3e", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "**Troubleshooting**\n-------------------\n\nIf you encounter any problems integrating `openedai-speech` with Open WebUI, follow these troubleshooting steps:"}


created_at: 2024-12-28 04:06:32
topic: persistent://default/default/369be900-0884-4fa2-822f-ea036b95dea4
id: b1d896bc-cd91-4d9e-a1a8-5e8b3b0bc63f
encoding: FLOAT32
metadata:
{"source": "openedai-speech-integration.md", "name": "openedai-speech-integration.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "353cae16-d98b-4aa3-b160-49939d00e651", "start_index": 9111, "hash": "406312345cfe5cca93f55a22af1f7d7d5b1f38e8c002247b9bd874311cf1bb3e", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "* **Verify `openedai-speech` service**: Ensure that the `openedai-speech` service is running and the port you specified in the docker-compose.yml file is exposed.\n* **Check access to host.docker.internal**: Verify that the hostname `host.docker.internal` is resolvable from within the Open WebUI container. This is necessary because `openedai-speech` is exposed via `localhost` on your PC, but `open-webui` cannot normally access it from inside its container. You can add a volume to the `docker-compose.yml` file to mount a file from the host to the container, for example, to a directory that will be served by openedai-speech.\n* **Review API key configuration**: Make sure the API key is set to a dummy value or effectively left unchecked because `openedai-speech` doesn't require an API key."}


created_at: 2024-12-28 04:06:32
topic: persistent://default/default/369be900-0884-4fa2-822f-ea036b95dea4
id: d11bde90-beee-4611-b154-c0bd54c6a335
encoding: FLOAT32
metadata:
{"source": "openedai-speech-integration.md", "name": "openedai-speech-integration.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "353cae16-d98b-4aa3-b160-49939d00e651", "start_index": 9907, "hash": "406312345cfe5cca93f55a22af1f7d7d5b1f38e8c002247b9bd874311cf1bb3e", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "* **Check voice configuration**: Verify that the voice you are trying to use for TTS exists in your `voice_to_speaker.yaml` file and the corresponding files (e.g., voice XML files) are present in the correct directory.\n* **Verify voice model paths**: If you're experiencing issues with voice model loading, double-check that the paths in your `voice_to_speaker.yaml` file match the actual locations of your voice models."}


created_at: 2024-12-28 04:06:32
topic: persistent://default/default/369be900-0884-4fa2-822f-ea036b95dea4
id: 951bda85-5d31-4f76-9881-ecead177fd86
encoding: FLOAT32
metadata:
{"source": "openedai-speech-integration.md", "name": "openedai-speech-integration.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "353cae16-d98b-4aa3-b160-49939d00e651", "start_index": 10329, "hash": "406312345cfe5cca93f55a22af1f7d7d5b1f38e8c002247b9bd874311cf1bb3e", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "**Additional Troubleshooting Tips**\n------------------------------------\n\n* Check the openedai-speech logs for errors or warnings that might indicate where the issue lies.\n* Verify that the `docker-compose.yml` file is correctly configured for your environment.\n* If you're still experiencing issues, try restarting the `openedai-speech` service or the entire Docker environment.\n* If the problem persists, consult the `openedai-speech` GitHub repository or seek help on a relevant community forum.\n\n**FAQ**\n-------\n\n**How can I control the emotional range of the generated audio?**\n\nThere is no direct mechanism to control the emotional output of the generated audio. Certain factors such as capitalization or grammar may affect the output audio, but internal testing has yielded mixed results.\n\n**Where are the voice files stored? What about the configuration file?**."}


created_at: 2024-12-28 04:06:32
topic: persistent://default/default/369be900-0884-4fa2-822f-ea036b95dea4
id: 3829a71b-5dec-40f8-9eaf-c3cf81212a5a
encoding: FLOAT32
metadata:
{"source": "openedai-speech-integration.md", "name": "openedai-speech-integration.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "353cae16-d98b-4aa3-b160-49939d00e651", "start_index": 11126, "hash": "406312345cfe5cca93f55a22af1f7d7d5b1f38e8c002247b9bd874311cf1bb3e", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "**Where are the voice files stored? What about the configuration file?**.\n\nThe configuration files, which define the available voices and their properties, are stored in the config volume. Specifically, the default voices are defined in voice_to_speaker.default.yaml.\n\n**Additional Resources**\n------------------------\n\nFor more information on configuring Open WebUI to use `openedai-speech`, including setting environment variables, see the [Open WebUI documentation](https://docs.openwebui.com/getting-started/advanced-topics/env-configuration#text-to-speech).\n\nFor more information about `openedai-speech`, please visit the [GitHub repository](https://github.com/matatonic/openedai-speech).\n\n**How to add more voices to openedai-speech:**\n[Custom-Voices-HowTo](https://github.com/matatonic/openedai-speech?tab=readme-ov-file#custom-voices-howto)"}


created_at: 2024-12-28 04:06:32
topic: persistent://default/default/369be900-0884-4fa2-822f-ea036b95dea4
id: c045c03a-44dd-44b4-97e8-1d9bd44353a4
encoding: FLOAT32
metadata:
{"source": "openedai-speech-integration.md", "name": "openedai-speech-integration.md", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "353cae16-d98b-4aa3-b160-49939d00e651", "start_index": 11976, "hash": "406312345cfe5cca93f55a22af1f7d7d5b1f38e8c002247b9bd874311cf1bb3e", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": ":::note\nYou can change the port number in the `docker-compose.yml` file to any open and usable port, but be sure to update the **API Base URL** in Open WebUI Admin Audio settings accordingly.\n:::"}


created_at: 2024-12-28 04:06:32
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: c29e8eca-63f9-4048-8241-1777e3b952e4
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "353cae16-d98b-4aa3-b160-49939d00e651", "hash": "406312345cfe5cca93f55a22af1f7d7d5b1f38e8c002247b9bd874311cf1bb3e", "name": "openedai-speech-integration.md", "source": "openedai-speech-integration.md", "start_index": 0, "chroma:document": "---\nsidebar_position: 2\ntitle: \"\ud83d\udde8\ufe0f Openedai-speech Using Docker\"\n---\n\n:::warning\nThis tutorial is a community contribution and is not supported by the OpenWebUI team. It serves only as a demonstration on how to customize OpenWebUI for your specific use case. Want to contribute? Check out the contributing tutorial.\n:::\n\n**Integrating `openedai-speech` into Open WebUI using Docker**\n==============================================================\n\n**What is `openedai-speech`?**\n-----------------------------\n\n:::info\n[openedai-speech](https://github.com/matatonic/openedai-speech) is an OpenAI audio/speech API compatible text-to-speech server.\n\nIt serves the `/v1/audio/speech` endpoint and provides a free, private text-to-speech experience with custom voice cloning capabilities. This service is in no way affiliated with OpenAI and does not require an OpenAI API key.\n:::\n\n**Requirements**\n-----------------"}


created_at: 2024-12-28 04:06:32
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 70df2155-4cff-478b-8065-932c97bed7d9
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "353cae16-d98b-4aa3-b160-49939d00e651", "hash": "406312345cfe5cca93f55a22af1f7d7d5b1f38e8c002247b9bd874311cf1bb3e", "name": "openedai-speech-integration.md", "source": "openedai-speech-integration.md", "start_index": 0, "chroma:document": "**Requirements**\n-----------------\n\n* Docker installed on your system\n* Open WebUI running in a Docker container\n* Basic understanding of Docker and Docker Compose\n\n**Option 1: Using Docker Compose**\n----------------------------------\n\n**Step 1: Create a new folder for the `openedai-speech` service**\n-----------------------------------------------------------------\n\nCreate a new folder, for example, `openedai-speech-service`, to store the `docker-compose.yml` and `speech.env` files.\n\n**Step 2: Clone the `openedai-speech` repository from GitHub**\n--------------------------------------------------------------\n\n```bash\ngit clone https://github.com/matatonic/openedai-speech.git\n```\n\nThis will download the `openedai-speech` repository to your local machine, which includes the Docker Compose files (`docker-compose.yml`, `docker-compose.min.yml`, and `docker-compose.rocm.yml`) and other necessary files."}


created_at: 2024-12-28 04:06:32
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 1dabe19b-3294-464e-8b42-9ee9e4cfe99b
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "353cae16-d98b-4aa3-b160-49939d00e651", "hash": "406312345cfe5cca93f55a22af1f7d7d5b1f38e8c002247b9bd874311cf1bb3e", "name": "openedai-speech-integration.md", "source": "openedai-speech-integration.md", "start_index": 0, "chroma:document": "**Step 3: Rename the `sample.env` file to `speech.env` (Customize if needed)**\n------------------------------------------------------------------------------\n\nIn the `openedai-speech` repository folder, create a new file named `speech.env` with the following contents:\n\n```yaml\nTTS_HOME=voices\nHF_HOME=voices\n#PRELOAD_MODEL=xtts\n#PRELOAD_MODEL=xtts_v2.0.2\n#PRELOAD_MODEL=parler-tts/parler_tts_mini_v0.1\n#EXTRA_ARGS=--log-level DEBUG --unload-timer 300\n#USE_ROCM=1\n```\n\n**Step 4: Choose a Docker Compose file**\n----------------------------------------\n\nYou can use any of the following Docker Compose files:"}


created_at: 2024-12-28 04:06:32
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 4753b7f9-cafe-4819-974f-64316324b5a7
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "353cae16-d98b-4aa3-b160-49939d00e651", "hash": "406312345cfe5cca93f55a22af1f7d7d5b1f38e8c002247b9bd874311cf1bb3e", "name": "openedai-speech-integration.md", "source": "openedai-speech-integration.md", "start_index": 0, "chroma:document": "You can use any of the following Docker Compose files:\n\n* [docker-compose.yml](https://github.com/matatonic/openedai-speech/blob/main/docker-compose.yml): This file uses the `ghcr.io/matatonic/openedai-speech` image and builds from [Dockerfile](https://github.com/matatonic/openedai-speech/blob/main/Dockerfile).\n* [docker-compose.min.yml](https://github.com/matatonic/openedai-speech/blob/main/docker-compose.min.yml): This file uses the `ghcr.io/matatonic/openedai-speech-min` image and builds from [Dockerfile.min](https://github.com/matatonic/openedai-speech/blob/main/Dockerfile.min).\n  This image is a minimal version that only includes Piper support and does not require a GPU.\n* [docker-compose.rocm.yml](https://github.com/matatonic/openedai-speech/blob/main/docker-compose.rocm.yml): This file uses the `ghcr.io/matatonic/openedai-speech-rocm` image and builds from [Dockerfile](https://github.com/matatonic/openedai-speech/blob/main/Dockerfile) with ROCm support."}


created_at: 2024-12-28 04:06:32
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 1c1612d9-5544-4c88-ad16-9cb176686777
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "353cae16-d98b-4aa3-b160-49939d00e651", "hash": "406312345cfe5cca93f55a22af1f7d7d5b1f38e8c002247b9bd874311cf1bb3e", "name": "openedai-speech-integration.md", "source": "openedai-speech-integration.md", "start_index": 0, "chroma:document": "**Step 4: Build the Chosen Docker Image**\n-----------------------------------------\n\nBefore running the Docker Compose file, you need to build the Docker image:\n\n* **Nvidia GPU (CUDA support)**:\n\n```bash\ndocker build -t ghcr.io/matatonic/openedai-speech .\n```\n\n* **AMD GPU (ROCm support)**:\n\n```bash\ndocker build -f Dockerfile --build-arg USE_ROCM=1 -t ghcr.io/matatonic/openedai-speech-rocm .\n```\n\n* **CPU only, No GPU (Piper only)**:\n\n```bash\ndocker build -f Dockerfile.min -t ghcr.io/matatonic/openedai-speech-min .\n```\n\n**Step 5: Run the correct `docker compose up -d` command**\n----------------------------------------------------------\n\n* **Nvidia GPU (CUDA support)**: Run the following command to start the `openedai-speech` service in detached mode:\n\n```bash\ndocker compose up -d\n```\n\n* **AMD GPU (ROCm support)**: Run the following command to start the `openedai-speech` service in detached mode:\n\n```bash\ndocker compose -f docker-compose.rocm.yml up -d\n```"}


created_at: 2024-12-28 04:06:32
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 159c0a02-80ec-47e0-a013-d9cf91844719
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "353cae16-d98b-4aa3-b160-49939d00e651", "hash": "406312345cfe5cca93f55a22af1f7d7d5b1f38e8c002247b9bd874311cf1bb3e", "name": "openedai-speech-integration.md", "source": "openedai-speech-integration.md", "start_index": 0, "chroma:document": "```bash\ndocker compose -f docker-compose.rocm.yml up -d\n```\n\n* **ARM64 (Apple M-series, Raspberry Pi)**: XTTS only has CPU support here and will be very slow. You can use the Nvidia image for XTTS with CPU (slow), or use the Piper only image (recommended):\n\n```bash\ndocker compose -f docker-compose.min.yml up -d\n```\n\n* **CPU only, No GPU (Piper only)**: For a minimal docker image with only Piper support (< 1GB vs. 8GB):\n\n```bash\ndocker compose -f docker-compose.min.yml up -d\n```\n\nThis will start the `openedai-speech` service in detached mode.\n\n**Option 2: Using Docker Run Commands**\n---------------------------------------\n\nYou can also use the following Docker run commands to start the `openedai-speech` service in detached mode:\n\n* **Nvidia GPU (CUDA)**: Run the following command to build and start the `openedai-speech` service:"}


created_at: 2024-12-28 04:06:32
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: b63c29de-384f-4f11-a849-a550270b6adb
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "353cae16-d98b-4aa3-b160-49939d00e651", "hash": "406312345cfe5cca93f55a22af1f7d7d5b1f38e8c002247b9bd874311cf1bb3e", "name": "openedai-speech-integration.md", "source": "openedai-speech-integration.md", "start_index": 0, "chroma:document": "```bash\ndocker build -t ghcr.io/matatonic/openedai-speech .\ndocker run -d --gpus=all -p 8000:8000 -v voices:/app/voices -v config:/app/config --name openedai-speech ghcr.io/matatonic/openedai-speech\n```\n\n* **ROCm (AMD GPU)**: Run the following command to build and start the `openedai-speech` service:\n\n> To enable ROCm support, uncomment the `#USE_ROCM=1` line in the `speech.env` file.\n\n```bash\ndocker build -f Dockerfile --build-arg USE_ROCM=1 -t ghcr.io/matatonic/openedai-speech-rocm .\ndocker run -d --privileged --init --name openedai-speech -p 8000:8000 -v voices:/app/voices -v config:/app/config ghcr.io/matatonic/openedai-speech-rocm\n```\n\n* **CPU only, No GPU (Piper only)**: Run the following command to build and start the `openedai-speech` service:\n\n```bash\ndocker build -f Dockerfile.min -t ghcr.io/matatonic/openedai-speech-min .\ndocker run -d -p 8000:8000 -v voices:/app/voices -v config:/app/config --name openedai-speech ghcr.io/matatonic/openedai-speech-min\n```"}


created_at: 2024-12-28 04:06:32
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 68cc798f-f1cc-465a-af35-b7b8b8653937
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "353cae16-d98b-4aa3-b160-49939d00e651", "hash": "406312345cfe5cca93f55a22af1f7d7d5b1f38e8c002247b9bd874311cf1bb3e", "name": "openedai-speech-integration.md", "source": "openedai-speech-integration.md", "start_index": 0, "chroma:document": "**Step 6: Configuring Open WebUI to use `openedai-speech` for TTS**\n---------------------------------------------------------\n\n![openedai-tts](https://github.com/silentoplayz/docs/assets/50341825/ea08494f-2ebf-41a2-bb0f-9b48dd3ace79)\n\nOpen the Open WebUI settings and navigate to the TTS Settings under **Admin Panel > Settings > Audio**. Add the following configuration:\n\n* **API Base URL**: `http://host.docker.internal:8000/v1`\n* **API Key**: `sk-111111111` (Note that this is a dummy API key, as `openedai-speech` doesn't require an API key. You can use whatever you'd like for this field, as long as it is filled.)\n\n**Step 7: Choose a voice**\n--------------------------\n\nUnder `TTS Voice` within the same audio settings menu in the admin panel, you can set the `TTS Model` to use from the following choices below that `openedai-speech` supports. The voices of these models are optimized for the English language."}


created_at: 2024-12-28 04:06:32
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 85ec330c-6c68-4090-bd3c-9c2d87ac5224
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "353cae16-d98b-4aa3-b160-49939d00e651", "hash": "406312345cfe5cca93f55a22af1f7d7d5b1f38e8c002247b9bd874311cf1bb3e", "name": "openedai-speech-integration.md", "source": "openedai-speech-integration.md", "start_index": 0, "chroma:document": "* `tts-1` or `tts-1-hd`: `alloy`, `echo`, `echo-alt`, `fable`, `onyx`, `nova`, and `shimmer` (`tts-1-hd` is configurable; uses OpenAI samples by default)\n\n**Step 8: Press `Save` to apply the changes and start enjoying naturally sounding voices**\n--------------------------------------------------------------------------------------------\n\nPress the `Save` button to apply the changes to your Open WebUI settings. Refresh the page for the change to fully take effect and enjoy using `openedai-speech` integration within Open WebUI to read aloud text responses with text-to-speech in a natural sounding voice.\n\n**Model Details:**\n------------------\n\n`openedai-speech` supports multiple text-to-speech models, each with its own strengths and requirements. The following models are available:"}


created_at: 2024-12-28 04:06:32
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: c0414544-84c4-43b5-bf3d-197323c7f681
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "353cae16-d98b-4aa3-b160-49939d00e651", "hash": "406312345cfe5cca93f55a22af1f7d7d5b1f38e8c002247b9bd874311cf1bb3e", "name": "openedai-speech-integration.md", "source": "openedai-speech-integration.md", "start_index": 0, "chroma:document": "* **Piper TTS** (very fast, runs on CPU): Use your own [Piper voices](https://rhasspy.github.io/piper-samples/) via the `voice_to_speaker.yaml` configuration file. This model is great for applications that require low latency and high performance. Piper TTS also supports [multilingual](https://github.com/matatonic/openedai-speech#multilingual) voices.\n* **Coqui AI/TTS XTTS v2** (fast, but requires around 4GB GPU VRAM & Nvidia GPU with CUDA): This model uses Coqui AI's XTTS v2 voice cloning technology to generate high-quality voices. While it requires a more powerful GPU, it provides excellent performance and high-quality audio. Coqui also supports [multilingual](https://github.com/matatonic/openedai-speech#multilingual) voices."}


created_at: 2024-12-28 04:06:32
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 9513cdbb-bf30-445b-8725-271799fc0bba
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "353cae16-d98b-4aa3-b160-49939d00e651", "hash": "406312345cfe5cca93f55a22af1f7d7d5b1f38e8c002247b9bd874311cf1bb3e", "name": "openedai-speech-integration.md", "source": "openedai-speech-integration.md", "start_index": 0, "chroma:document": "* **Beta Parler-TTS Support** (experimental, slower): This model uses the Parler-TTS framework to generate voices. While it's currently in beta, it allows you to describe very basic features of the speaker voice. The exact voice will be slightly different with each generation, but should be similar to the speaker description provided. For inspiration on how to describe voices, see [Text Description to Speech](https://www.text-description-to-speech.com/)."}


created_at: 2024-12-28 04:06:32
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 0b5c52e4-ee33-4e51-83c3-0b5b53fc16f6
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "353cae16-d98b-4aa3-b160-49939d00e651", "hash": "406312345cfe5cca93f55a22af1f7d7d5b1f38e8c002247b9bd874311cf1bb3e", "name": "openedai-speech-integration.md", "source": "openedai-speech-integration.md", "start_index": 0, "chroma:document": "**Troubleshooting**\n-------------------\n\nIf you encounter any problems integrating `openedai-speech` with Open WebUI, follow these troubleshooting steps:"}


created_at: 2024-12-28 04:06:32
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: fecb9539-1bfa-472c-b6b4-ab358805e1ec
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "353cae16-d98b-4aa3-b160-49939d00e651", "hash": "406312345cfe5cca93f55a22af1f7d7d5b1f38e8c002247b9bd874311cf1bb3e", "name": "openedai-speech-integration.md", "source": "openedai-speech-integration.md", "start_index": 0, "chroma:document": "* **Verify `openedai-speech` service**: Ensure that the `openedai-speech` service is running and the port you specified in the docker-compose.yml file is exposed.\n* **Check access to host.docker.internal**: Verify that the hostname `host.docker.internal` is resolvable from within the Open WebUI container. This is necessary because `openedai-speech` is exposed via `localhost` on your PC, but `open-webui` cannot normally access it from inside its container. You can add a volume to the `docker-compose.yml` file to mount a file from the host to the container, for example, to a directory that will be served by openedai-speech.\n* **Review API key configuration**: Make sure the API key is set to a dummy value or effectively left unchecked because `openedai-speech` doesn't require an API key."}


created_at: 2024-12-28 04:06:32
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 1bbfc634-12f7-4eaa-b2f1-42ecf6a4e9bb
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "353cae16-d98b-4aa3-b160-49939d00e651", "hash": "406312345cfe5cca93f55a22af1f7d7d5b1f38e8c002247b9bd874311cf1bb3e", "name": "openedai-speech-integration.md", "source": "openedai-speech-integration.md", "start_index": 0, "chroma:document": "* **Check voice configuration**: Verify that the voice you are trying to use for TTS exists in your `voice_to_speaker.yaml` file and the corresponding files (e.g., voice XML files) are present in the correct directory.\n* **Verify voice model paths**: If you're experiencing issues with voice model loading, double-check that the paths in your `voice_to_speaker.yaml` file match the actual locations of your voice models."}


created_at: 2024-12-28 04:06:32
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 6f0a31c3-193a-442c-ba28-a54b90bedafb
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "353cae16-d98b-4aa3-b160-49939d00e651", "hash": "406312345cfe5cca93f55a22af1f7d7d5b1f38e8c002247b9bd874311cf1bb3e", "name": "openedai-speech-integration.md", "source": "openedai-speech-integration.md", "start_index": 0, "chroma:document": "**Additional Troubleshooting Tips**\n------------------------------------\n\n* Check the openedai-speech logs for errors or warnings that might indicate where the issue lies.\n* Verify that the `docker-compose.yml` file is correctly configured for your environment.\n* If you're still experiencing issues, try restarting the `openedai-speech` service or the entire Docker environment.\n* If the problem persists, consult the `openedai-speech` GitHub repository or seek help on a relevant community forum.\n\n**FAQ**\n-------\n\n**How can I control the emotional range of the generated audio?**\n\nThere is no direct mechanism to control the emotional output of the generated audio. Certain factors such as capitalization or grammar may affect the output audio, but internal testing has yielded mixed results.\n\n**Where are the voice files stored? What about the configuration file?**."}


created_at: 2024-12-28 04:06:32
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: ea8ccb11-cc7f-482c-a5bb-664a4e7e7833
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "353cae16-d98b-4aa3-b160-49939d00e651", "hash": "406312345cfe5cca93f55a22af1f7d7d5b1f38e8c002247b9bd874311cf1bb3e", "name": "openedai-speech-integration.md", "source": "openedai-speech-integration.md", "start_index": 0, "chroma:document": "**Where are the voice files stored? What about the configuration file?**.\n\nThe configuration files, which define the available voices and their properties, are stored in the config volume. Specifically, the default voices are defined in voice_to_speaker.default.yaml.\n\n**Additional Resources**\n------------------------\n\nFor more information on configuring Open WebUI to use `openedai-speech`, including setting environment variables, see the [Open WebUI documentation](https://docs.openwebui.com/getting-started/advanced-topics/env-configuration#text-to-speech).\n\nFor more information about `openedai-speech`, please visit the [GitHub repository](https://github.com/matatonic/openedai-speech).\n\n**How to add more voices to openedai-speech:**\n[Custom-Voices-HowTo](https://github.com/matatonic/openedai-speech?tab=readme-ov-file#custom-voices-howto)"}


created_at: 2024-12-28 04:06:32
topic: persistent://default/default/b6de8a8b-537e-4b0e-b8b5-652445befdfa
id: 735930ef-cf64-4572-a436-b40666e4a1eb
encoding: FLOAT32
metadata:
{"created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "file_id": "353cae16-d98b-4aa3-b160-49939d00e651", "hash": "406312345cfe5cca93f55a22af1f7d7d5b1f38e8c002247b9bd874311cf1bb3e", "name": "openedai-speech-integration.md", "source": "openedai-speech-integration.md", "start_index": 0, "chroma:document": ":::note\nYou can change the port number in the `docker-compose.yml` file to any open and usable port, but be sure to update the **API Base URL** in Open WebUI Admin Audio settings accordingly.\n:::"}


created_at: 2024-12-28 04:06:32
topic: persistent://default/default/915b5ffa-30d2-42af-8fef-3406a3752e03
id: 69b1c17a-a98a-4815-bf70-a67d641b236c
encoding: FLOAT32
metadata:
{"source": "password-reset.mdx", "name": "password-reset.mdx", "created_by": "fd14fd72-e381-4cf3-a8f9-e171967d318c", "file_id": "ee383f9c-35ac-4c76-abd5-e132700c2c21", "start_index": 0, "hash": "10ba6e98fe78a59f75804f7d941923d509296cc6137dd56a5d2a62400949033f", "embedding_config": "{\"engine\": \"\", \"model\": \"sentence-transformers/all-MiniLM-L6-v2\"}", "chroma:document": "---\nsidebar_position: 1\ntitle: \"\ud83d\udd11 Reset Admin Password\"\n---\n\n# Resetting Your Admin Password \ud83d\udddd\ufe0f\n\nIf you've forgotten your admin password, don't worry! Below you'll find step-by-step guides to reset your admin password for Docker \ud83d\udc33 deployments and local installations of Open WebUI.\n\n## For Docker Deployments \ud83d\udc33\n\nFollow these steps to reset the admin password for Open WebUI when deployed using Docker.\n\n### Step 1: Generate a New Password Hash \ud83d\udd10\n\nFirst, you need to create a bcrypt hash of your new password. Run the following command on your local machine, replacing `your-new-password` with the password you wish to use:\n\n```bash\nhtpasswd -bnBC 10 \"\" your-new-password | tr -d ':\\n'\n```\n\n**Note:** The output will include a bcrypt hash with special characters that need to be handled carefully. Any `$` characters in the hash will need to be triple-escaped (replaced with `\\\\\\`) to be used correctly in the next step.\n\n### Step 2: Update the Password in Docker \ud83d\udd04"}


