Ollama is powerful but the terminal is not where most people want to have conversations with an AI. Typing into a command-line prompt, losing conversation history when you close the session, no file uploads, no model switching mid-conversation — the CLI is a developer tool, not a daily driver.
Open WebUI is the solution. It is a free, open-source web application that wraps Ollama in a polished chat interface that rivals the ChatGPT UI in features. Conversation history, multi-model switching, document upload, image analysis, voice input, a system prompt library, user accounts, and RAG with your own documents — all running entirely on your local machine.
Open WebUI is the default recommendation for anyone who wants to use Ollama daily rather than just experiment with it.
🔗 This is Post #4 in the Ollama Unlocked series. Requires Ollama installed — see Ollama Masterclass 2026 (Post #1). For models to use with Open WebUI, see The Local LLM Model Guide (Post #2). For RAG setup, see RAG with Ollama (Post #10).
What Open WebUI Is
Open WebUI is a locally-hosted web application — you open it in your browser at http://localhost:3000, but it runs entirely on your machine. No data leaves your network.
Current version: Open WebUI v0.6.x (May 2026) GitHub: github.com/open-webui/open-webui License: MIT — free to use, modify, and self-host
Key capabilities:
- Chat interface with conversation history and search
- Switch between any Ollama model mid-conversation
- Connect to OpenAI, Claude, Gemini APIs alongside local models
- Upload documents (PDF, DOCX, TXT) for context
- Image upload for vision models
- Voice input and text-to-speech output
- Custom system prompts and prompt library
- Multi-user support with accounts
- RAG (Retrieval Augmented Generation) with local document stores
- Web search integration
- Model file management
Installation: Three Methods
Method 1 — Docker (Recommended)
Docker is the simplest installation with automatic updates:
# Install Docker first if not installed: docker.com/get-started
# Then run Open WebUI:
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
Open http://localhost:3000 in your browser.
If Ollama is also running in Docker (not recommended — use host Ollama instead):
docker run -d \
-p 3000:8080 \
-e OLLAMA_BASE_URL=http://host.docker.internal:11434 \
-v open-webui:/app/backend/data \
--name open-webui \
--restart always \
ghcr.io/open-webui/open-webui:main
Update Open WebUI:
docker pull ghcr.io/open-webui/open-webui:main
docker stop open-webui
docker rm open-webui
# Re-run the docker run command above
Method 2 — pip (Python)
If you prefer not to use Docker:
# Requires Python 3.11+
pip install open-webui
# Start Open WebUI
open-webui serve
# Or specify port
open-webui serve --port 3000
Method 3 — From Source
For developers who want to modify Open WebUI:
git clone https://github.com/open-webui/open-webui.git
cd open-webui
cp .env.example .env
# Edit .env if needed
npm install
npm run build
pip install -r backend/requirements.txt
bash start.sh
First Setup: Account and Model Connection
Creating Your Admin Account
When you first open Open WebUI at http://localhost:3000:
- Click Get started
- Create your admin account (name, email, password)
- This is your local account — no external sign-up
Verifying Ollama Connection
Open WebUI automatically detects Ollama at http://localhost:11434. Verify:
- Click the model selector (top of chat interface)
- You should see all your pulled Ollama models listed
- If no models appear: Settings → Connections → Ollama → verify URL is
http://localhost:11434
Adding Your First Models
If you have not pulled models yet, you can do it from Open WebUI:
- Settings (gear icon) → Models
- Pull a model → type model name → Pull
- Example: type
llama4:scoutand click Pull
Core Features: The Complete Tour
Model Switching
Switch between models mid-conversation or per-conversation:
- Top of chat: Click the model name dropdown → select any available model
- Per-conversation default: Set in conversation settings (three dots menu)
- Multi-model comparison: Enable in Settings → Features to get side-by-side model responses
Conversation Management
- All conversations are saved automatically in the left sidebar
- Search conversation history with the search bar
- Pin important conversations
- Export conversations as JSON or Markdown
- Delete or archive old conversations
- Organize with folders (drag conversations to folder)
System Prompts and Presets
Open WebUI’s Modelfile system lets you create personas:
- Settings → Models → Create Model
- Or: Use the Prompts library (left sidebar → Prompts)
Example: Creating a Code Review Assistant
Name: Code Reviewer
Base Model: qwen3.6:27b
System Prompt: You are an expert code reviewer. When shown code:
1. Identify bugs and logic errors
2. Flag security vulnerabilities
3. Suggest performance improvements
4. Rate code quality (1-10) with justification
Be direct and specific. Show corrected code when suggesting improvements.
Save → appears in your model list as “Code Reviewer”
Document Upload and RAG
Upload documents directly in the chat interface:
- Click the paperclip icon in the message input
- Select a PDF, DOCX, TXT, or other supported file
- The document content is added to the conversation context
- Ask questions about the document
For persistent document collections (RAG):
- Settings → Documents → Enable RAG
- Upload documents to your Knowledge Base
- When chatting, toggle RAG to search across all stored documents
- Use
#in your message to reference specific documents:#filename query here
Full RAG setup is covered in RAG with Ollama (Post #10).
Image Analysis With Vision Models
For vision-capable models (Gemma 4, Llama 3.2 Vision):
- Make sure a vision model is selected:
gemma4:9borllama3.2-vision:11b - Click the image icon in the message input (or paste an image)
- Upload the image and type your question
- The model analyzes the image and responds
Example workflow: Upload a screenshot of an error message → ask “What is causing this error and how do I fix it?”
Voice Input and Text-to-Speech
Voice input:
- Click the microphone icon in the message input
- Speak your message
- Uses your browser’s built-in speech recognition (Whisper optional)
Text-to-speech responses:
- Settings → Audio → Enable TTS
- Choose voice (uses your OS text-to-speech or a connected Kokoro/Coqui TTS model)
- Each response has a speaker icon to play it aloud
For high-quality local TTS, connect Kokoro TTS:
# Run Kokoro TTS server
docker run -p 8880:8880 kokorotts/kokoro-fastapi
# In Open WebUI: Settings → Audio → TTS URL → http://localhost:8880
Web Search Integration
Open WebUI can search the web before responding:
- Settings → Web Search → Enable
- Choose search provider (SearXNG recommended for privacy, or DuckDuckGo)
- SearXNG self-hosted (best privacy option):
docker run -d \ -p 8888:8080 \ -e BASE_URL=http://localhost:8888 \ searxng/searxng - Set Search URL in Open WebUI to
http://localhost:8888
With web search enabled, Open WebUI fetches current information before generating responses — giving local models access to current events.
Connecting Cloud APIs (Optional)
Open WebUI can connect to cloud APIs alongside local models — giving you one interface for everything:
Adding OpenAI:
- Settings → Connections → OpenAI → Add
- Enter your OpenAI API key
- GPT-5.5, GPT-5.4, etc. now appear in your model list
Adding Anthropic (Claude):
- Settings → Connections → Add Custom API
- URL:
https://api.anthropic.com/v1 - Add your Anthropic API key and select Claude models
Adding Ollama remote server (if running Ollama on another machine on your network):
- Settings → Connections → Ollama → Add
- Enter the IP address of your Ollama server:
http://192.168.1.100:11434
This lets you run Ollama on a powerful desktop while accessing it from any device on your network through Open WebUI.
Multi-User Setup
Open WebUI supports multiple users — useful for households or small teams:
- First account created is admin
- Settings → Admin Panel → Users → Invite users
- Create user accounts with email/password
- Set permissions per user: which models they can access, whether they can upload files
Each user has their own conversation history, but models and documents are shared.
For team use on a local network:
# Run Open WebUI accessible on your network (not just localhost)
docker run -d \
-p 0.0.0.0:3000:8080 \ # Accessible from other devices
--add-host=host.docker.internal:host-gateway \
-v open-webui:/app/backend/data \
--name open-webui \
ghcr.io/open-webui/open-webui:main
Team members on the same network access it at http://[your-machine-IP]:3000.
Open WebUI Alternatives
Open WebUI is the best full-featured option, but alternatives exist for specific use cases:
| Tool | Best For | Key Difference |
|---|---|---|
| Open WebUI | Full-featured daily driver | Best overall, most features |
| Msty | Beautiful desktop app, no Docker | Native app, slightly fewer features |
| LM Studio | Model discovery and testing | Better model browser, GUI-native |
| Hollama | Lightweight, minimal | Faster/simpler but fewer features |
| AnythingLLM | Enterprise team use | Better admin controls, workspace model |
| Chatbox | Cross-platform desktop | Simpler setup, fewer features |
For most users: Open WebUI. For users who want a native desktop app without Docker: Msty or LM Studio.
Common Setup Issues
Issue: Open WebUI opens but shows no models Cause: Ollama is not running or not accessible Fix:
ollama serve # Start Ollama manually
# Verify: curl http://localhost:11434/api/tags
Issue: Document upload fails
Cause: RAG dependencies not installed
Fix: Ensure you are using the full Open WebUI image, not a minimal version. Re-pull: docker pull ghcr.io/open-webui/open-webui:main
Issue: Slow responses despite fast hardware Cause: Browser connection overhead or context length set too high Fix: Check the context length setting in the model parameters panel (three dots next to model name)
Issue: Cannot access from other devices on network
Cause: Docker binding to localhost only
Fix: Use -p 0.0.0.0:3000:8080 instead of -p 3000:8080 in the docker run command
Conclusion
Open WebUI is the upgrade that makes Ollama a daily productivity tool rather than a technical experiment. Installation takes 10 minutes with Docker. The result is a ChatGPT-quality interface — with conversation history, document upload, model switching, voice, and RAG — running entirely on your local hardware.
Your next step: Install Docker if you haven’t. Run the single docker run command above. Open http://localhost:3000. Create your account. Select llama4:scout and start a conversation. The experience will immediately show you what daily local AI looks like.
📚 Continue the Series:
Last updated: May 2026. Open WebUI releases updates frequently. Verify the current version at github.com/open-webui/open-webui.