Open WebUI is a self-hosted AI platform designed to run entirely offline, giving teams a chat interface and control plane for local and API-based language models. It supports LLM runners like Ollama alongside any OpenAI-compatible API, so you can point it at local models, hosted providers such as LMStudio or OpenRouter, or a mix of both. It's aimed at individuals and organizations that want a self-hosted alternative to hosted chat products, with the extensibility to build custom agents, tools, and workflows on top of a shared platform.
Open WebUI fits organizations that want to self-host a chat interface for local or API-backed models while keeping full control over data, authentication, and deployment. It works well for teams already running Ollama that want a full-featured front end on top, and for teams that need RAG over internal documents without sending that data to a third-party hosted product. The plugin and MCP tool-server support make it a reasonable base for building custom internal agents rather than starting from a bare API, and features like Channels and Calendar & AI Scheduling extend it toward being a shared team workspace rather than a single-user chat window.
It's a heavier setup than a hosted chat product if you just want the simplest possible way to talk to a model, since you're responsible for running and maintaining the server, database, and any vector store you choose. It's also worth checking the license before adopting it at scale: the codebase carries a source-available license with a requirement to preserve Open WebUI branding, rather than a permissive license like MIT, and full enterprise features (SLAs, LTS versions, custom branding) require a separate enterprise plan.
Teams running at larger scale can rely on Redis-backed session management and WebSocket support for horizontal scalability across multiple workers and nodes behind a load balancer, and built-in OpenTelemetry support means traces, metrics, and logs plug into monitoring stacks you may already run for other services.
Via pip (Python 3.11 recommended):
pip install open-webui
open-webui serve
This starts the server at http://localhost:8080.
Via Docker, if Ollama is running on the same machine:
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
If you're only using an OpenAI-compatible API:
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
A bundled image that includes Ollama is also available under the :ollama tag, with a :cuda tag for GPU acceleration. Kubernetes installs via kubectl, kustomize, or Helm are documented in the official docs, and setting HF_HUB_OFFLINE=1 prevents the app from attempting to download models in a fully offline environment.