{"id":13408972,"url":"https://github.com/open-webui/open-webui","last_synced_at":"2025-05-12T16:12:47.792Z","repository":{"id":199152863,"uuid":"701547123","full_name":"open-webui/open-webui","owner":"open-webui","description":"User-friendly AI Interface (Supports Ollama, OpenAI API, ...)","archived":false,"fork":false,"pushed_at":"2025-05-12T13:34:36.000Z","size":207956,"stargazers_count":94244,"open_issues_count":191,"forks_count":12058,"subscribers_count":437,"default_branch":"main","last_synced_at":"2025-05-12T14:50:37.576Z","etag":null,"topics":["ai","llm","llm-ui","llm-webui","llms","mcp","ollama","ollama-webui","open-webui","openai","openapi","rag","self-hosted","ui","webui"],"latest_commit_sha":null,"homepage":"https://openwebui.com","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/open-webui.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"docs/CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"docs/SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"github":"tjbck"}},"created_at":"2023-10-06T22:08:27.000Z","updated_at":"2025-05-12T14:40:45.000Z","dependencies_parsed_at":"2023-11-28T06:31:49.425Z","dependency_job_id":"9d4609c3-8d78-40d8-a397-723cdbe67803","html_url":"https://github.com/open-webui/open-webui","commit_stats":{"total_commits":4572,"total_committers":249,"mean_commits":18.36144578313253,"dds":0.3506124234470691,"last_synced_commit":"1d225dd804575af9ae5981528dfdce695f7f7040"},"previous_names":["ollama-webui/ollama-webui","open-webui/open-webui"],"tags_count":108,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-webui%2Fopen-webui","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-webui%2Fopen-webui/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-webui%2Fopen-webui/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-webui%2Fopen-webui/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/open-webui","download_url":"https://codeload.github.com/open-webui/open-webui/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253774007,"owners_count":21962198,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai","llm","llm-ui","llm-webui","llms","mcp","ollama","ollama-webui","open-webui","openai","openapi","rag","self-hosted","ui","webui"],"created_at":"2024-07-30T20:00:56.977Z","updated_at":"2025-05-12T16:12:47.781Z","avatar_url":"https://github.com/open-webui.png","language":"JavaScript","readme":"# Open WebUI 👋\n\n![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[![Discord](https://img.shields.io/badge/Discord-Open_WebUI-blue?logo=discord\u0026logoColor=white)](https://discord.gg/5rJgQTnV4s)\n[![](https://img.shields.io/static/v1?label=Sponsor\u0026message=%E2%9D%A4\u0026logo=GitHub\u0026color=%23fe8e86)](https://github.com/sponsors/tjbck)\n\n**Open WebUI is an [extensible](https://docs.openwebui.com/features/plugin/), feature-rich, and user-friendly self-hosted AI platform designed to operate entirely offline.** It supports various LLM runners like **Ollama** and **OpenAI-compatible APIs**, with **built-in inference engine** for RAG, making it a **powerful AI deployment solution**.\n\n![Open WebUI Demo](./demo.gif)\n\n\u003e [!TIP]  \n\u003e **Looking for an [Enterprise Plan](https://docs.openwebui.com/enterprise)?** – **[Speak with Our Sales Team Today!](mailto:sales@openwebui.com)**\n\u003e\n\u003e Get **enhanced capabilities**, including **custom theming and branding**, **Service Level Agreement (SLA) support**, **Long-Term Support (LTS) versions**, and **more!**\n\nFor more information, be sure to check out our [Open WebUI Documentation](https://docs.openwebui.com/).\n\n## Key Features of Open WebUI ⭐\n\n- 🚀 **Effortless Setup**: Install seamlessly using Docker or Kubernetes (kubectl, kustomize or helm) for a hassle-free experience with support for both `:ollama` and `:cuda` tagged images.\n\n- 🤝 **Ollama/OpenAI API Integration**: Effortlessly integrate OpenAI-compatible APIs for versatile conversations alongside Ollama models. Customize the OpenAI API URL to link with **LMStudio, GroqCloud, Mistral, OpenRouter, and more**.\n\n- 🛡️ **Granular Permissions and User Groups**: By allowing administrators to create detailed user roles and permissions, we ensure a secure user environment. This granularity not only enhances security but also allows for customized user experiences, fostering a sense of ownership and responsibility amongst users.\n\n- 📱 **Responsive Design**: Enjoy a seamless experience across Desktop PC, Laptop, and Mobile devices.\n\n- 📱 **Progressive Web App (PWA) for Mobile**: Enjoy a native app-like experience on your mobile device with our PWA, providing offline access on localhost and a seamless user interface.\n\n- ✒️🔢 **Full Markdown and LaTeX Support**: Elevate your LLM experience with comprehensive Markdown and LaTeX capabilities for enriched interaction.\n\n- 🎤📹 **Hands-Free Voice/Video Call**: Experience seamless communication with integrated hands-free voice and video call features, allowing for a more dynamic and interactive chat environment.\n\n- 🛠️ **Model Builder**: Easily create Ollama models via the Web UI. Create and add custom characters/agents, customize chat elements, and import models effortlessly through [Open WebUI Community](https://openwebui.com/) integration.\n\n- 🐍 **Native Python Function Calling Tool**: Enhance your LLMs with built-in code editor support in the tools workspace. Bring Your Own Function (BYOF) by simply adding your pure Python functions, enabling seamless integration with LLMs.\n\n- 📚 **Local RAG Integration**: Dive into the future of chat interactions with groundbreaking Retrieval Augmented Generation (RAG) support. This feature seamlessly integrates document interactions into your chat experience. You can load documents directly into the chat or add files to your document library, effortlessly accessing them using the `#` command before a query.\n\n- 🔍 **Web Search for RAG**: Perform web searches using providers like `SearXNG`, `Google PSE`, `Brave Search`, `serpstack`, `serper`, `Serply`, `DuckDuckGo`, `TavilySearch`, `SearchApi` and `Bing` and inject the results directly into your chat experience.\n\n- 🌐 **Web Browsing Capability**: Seamlessly integrate websites into your chat experience using the `#` command followed by a URL. This feature allows you to incorporate web content directly into your conversations, enhancing the richness and depth of your interactions.\n\n- 🎨 **Image Generation Integration**: Seamlessly incorporate image generation capabilities using options such as AUTOMATIC1111 API or ComfyUI (local), and OpenAI's DALL-E (external), enriching your chat experience with dynamic visual content.\n\n- ⚙️ **Many Models Conversations**: Effortlessly engage with various models simultaneously, harnessing their unique strengths for optimal responses. Enhance your experience by leveraging a diverse set of models in parallel.\n\n- 🔐 **Role-Based Access Control (RBAC)**: Ensure secure access with restricted permissions; only authorized individuals can access your Ollama, and exclusive model creation/pulling rights are reserved for administrators.\n\n- 🌐🌍 **Multilingual Support**: Experience Open WebUI in your preferred language with our internationalization (i18n) support. Join us in expanding our supported languages! We're actively seeking contributors!\n\n- 🧩 **Pipelines, Open WebUI Plugin Support**: Seamlessly integrate custom logic and Python libraries into Open WebUI using [Pipelines Plugin Framework](https://github.com/open-webui/pipelines). Launch your Pipelines instance, set the OpenAI URL to the Pipelines URL, and explore endless possibilities. [Examples](https://github.com/open-webui/pipelines/tree/main/examples) include **Function Calling**, User **Rate Limiting** to control access, **Usage Monitoring** with tools like Langfuse, **Live Translation with LibreTranslate** for multilingual support, **Toxic Message Filtering** and much more.\n\n- 🌟 **Continuous Updates**: We are committed to improving Open WebUI with regular updates, fixes, and new features.\n\nWant to learn more about Open WebUI's features? Check out our [Open WebUI documentation](https://docs.openwebui.com/features) for a comprehensive overview!\n\n## Sponsors 🙌\n\n#### Emerald\n\n\u003ctable\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\n      \u003ca href=\"https://n8n.io/\" target=\"_blank\"\u003e\n        \u003cimg src=\"https://docs.openwebui.com/sponsors/logos/n8n.png\" alt=\"n8n\" style=\"width: 8rem; height: 8rem; border-radius: .75rem;\" /\u003e\n      \u003c/a\u003e\n    \u003c/td\u003e\n    \u003ctd\u003e\n      Does your interface have a backend yet?\u003cbr\u003eTry \u003ca href=\"https://n8n.io/\"\u003en8n\u003c/a\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n---\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## How to Install 🚀\n\n### Installation via Python pip 🐍\n\nOpen WebUI can be installed using pip, the Python package installer. Before proceeding, ensure you're using **Python 3.11** to avoid compatibility issues.\n\n1. **Install Open WebUI**:\n   Open your terminal and run the following command to install Open WebUI:\n\n   ```bash\n   pip install open-webui\n   ```\n\n2. **Running Open WebUI**:\n   After installation, you can start Open WebUI by executing:\n\n   ```bash\n   open-webui serve\n   ```\n\nThis will start the Open WebUI server, which you can access at [http://localhost:8080](http://localhost:8080)\n\n### Quick Start with Docker 🐳\n\n\u003e [!NOTE]  \n\u003e Please note that for certain Docker environments, additional configurations might be needed. If you encounter any connection issues, our detailed guide on [Open WebUI Documentation](https://docs.openwebui.com/) is ready to assist you.\n\n\u003e [!WARNING]\n\u003e When 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\u003e [!TIP]  \n\u003e If you wish to utilize Open WebUI with Ollama included or CUDA acceleration, we recommend utilizing our official images tagged with either `:cuda` or `:ollama`. To enable CUDA, you must install the [Nvidia CUDA container toolkit](https://docs.nvidia.com/dgx/nvidia-container-runtime-upgrade/) on your Linux/WSL system.\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:\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:\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! 😄\n\n### 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\nEncountering connection issues? Our [Open WebUI Documentation](https://docs.openwebui.com/troubleshooting/) has got you covered. For further assistance and to join our vibrant community, visit the [Open WebUI Discord](https://discord.gg/5rJgQTnV4s).\n\n#### Open WebUI: Server Connection Error\n\nIf you're experiencing connection issues, it’s often due to the WebUI docker container not being able to reach the Ollama server at 127.0.0.1:11434 (host.docker.internal:11434) inside the container . Use the `--network=host` flag in your docker command to resolve this. Note that the port changes from 3000 to 8080, resulting in the link: `http://localhost:8080`.\n\n**Example Docker Command**:\n\n```bash\ndocker run -d --network=host -v open-webui:/app/backend/data -e OLLAMA_BASE_URL=http://127.0.0.1:11434 --name open-webui --restart always ghcr.io/open-webui/open-webui:main\n```\n\n### Keeping Your Docker Installation Up-to-Date\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```\n\nIn the last part of the command, replace `open-webui` with your container name if it is different.\n\nCheck our Updating Guide available in our [Open WebUI Documentation](https://docs.openwebui.com/getting-started/updating).\n\n### Using the Dev Branch 🌙\n\n\u003e [!WARNING]\n\u003e The `:dev` branch contains the latest unstable features and changes. Use it at your own risk as it may have bugs or incomplete features.\n\nIf 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 --add-host=host.docker.internal:host-gateway --restart always ghcr.io/open-webui/open-webui:dev\n```\n\n### Offline Mode\n\nIf you are running Open WebUI in an offline environment, you can set the `HF_HUB_OFFLINE` environment variable to `1` to prevent attempts to download models from the internet.\n\n```bash\nexport HF_HUB_OFFLINE=1\n```\n\n## What's Next? 🌟\n\nDiscover upcoming features on our roadmap in the [Open WebUI Documentation](https://docs.openwebui.com/roadmap/).\n\n## License 📜\n\nThis project is licensed under the [Open WebUI License](LICENSE), a revised BSD-3-Clause license. You receive all the same rights as the classic BSD-3 license: you can use, modify, and distribute the software, including in proprietary and commercial products, with minimal restrictions. The only additional requirement is to preserve the \"Open WebUI\" branding, as detailed in the LICENSE file. For full terms, see the [LICENSE](LICENSE) document. 📄\n\n## Support 💬\n\nIf you have any questions, suggestions, or need assistance, please open an issue or join our\n[Open WebUI Discord community](https://discord.gg/5rJgQTnV4s) to connect with us! 🤝\n\n## Star History\n\n\u003ca href=\"https://star-history.com/#open-webui/open-webui\u0026Date\"\u003e\n  \u003cpicture\u003e\n    \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"https://api.star-history.com/svg?repos=open-webui/open-webui\u0026type=Date\u0026theme=dark\" /\u003e\n    \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"https://api.star-history.com/svg?repos=open-webui/open-webui\u0026type=Date\" /\u003e\n    \u003cimg alt=\"Star History Chart\" src=\"https://api.star-history.com/svg?repos=open-webui/open-webui\u0026type=Date\" /\u003e\n  \u003c/picture\u003e\n\u003c/a\u003e\n\n---\n\nCreated by [Timothy Jaeryang Baek](https://github.com/tjbck) - Let's make Open WebUI even more amazing together! 💪\n","funding_links":["https://github.com/sponsors/tjbck"],"categories":["JavaScript","Python","ChatAI","WELCOME","Self Hosting 💾","Uncategorized","Sites","AI Сервисы для разработки ПО","ai","Azure Cognitive Search \u0026 OpenAI","Svelte","Top","Langchain","置顶","\u003cimg src=\"./assets/message-square.svg\" width=\"16\" height=\"16\" style=\"vertical-align: middle;\"\u003e Frontends","🧠 AI Applications \u0026 Platforms","A01_文本生成_文本对话","Community Projects","语言资源库","HarmonyOS","Web \u0026 Desktop UIs","推理 Inference","Deployment and Serving","Tools","ui","📚 Projects (1974 total)","LLMs","Repos","AI应用","AI and Simulation Tools","📚 Contents","Coding","MCP Servers","Application Recommendation","Apps","🏠 Local and Self-Hosted AI","Project Submissions","User Interfaces","webui","Table of Contents","📊 Interactive UI \u0026 Demos","ML / AI","📋 Contents","List","Multimodal AI","Runtime","10. Open Web UI","\u003ca name=\"Python\"\u003e\u003c/a\u003ePython","Applied AI","Applications","UI \u0026 Interaction Layers","Open-Source Local LLM Projects","📈 Trending Vibe-Coding Repos (Auto-updated 2026-04-06)","LLM 部署与推理 (Deployment \u0026 Inference)","Open Source","LLMs ChatUI","🧩 Agent Frameworks \u0026 Dev Libraries"],"sub_categories":["Web app","**Chatbot**","AI","Uncategorized","Web и Desktop клиенты для чатинга с LLM через API","1、AI应用生态","Tools","大语言对话模型及数据","Chat Interfaces","typescript","Windows Manager","Web","MCP Servers","Local LLM Deployment","Agent Platforms","🧠 AI Applications","Self-Hosted Agents and UIs","Web Interfaces","LLM GUI","🖥️ 12. User Interfaces \u0026 Self-hosted Platforms","ChatGPT","Chatbot","Chat Apps","AI Platforms","推理网关 (Inference Gateways)","Self-Hosted","LLM App \u0026 RAG Builders"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopen-webui%2Fopen-webui","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fopen-webui%2Fopen-webui","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopen-webui%2Fopen-webui/lists"}