Open WebUI
Overview
- Self-Hosted Web Interface: Provides web and API-based interaction with Large Language Models (LLMs).
- Formerly Ollama WebUI: It was rebranded from "Ollama WebUI" to reflect its expanded support for many different LLM backends beyond just Ollama.
- Intuitive Chat Experience: Provides a familiar, user-friendly chat interface similar to popular services.
- Chat With Your Documents: A key feature is Retrieval-Augmented Generation (RAG), allowing you to upload documents and ask questions about their content.
- Multi-Modal Support: The interface supports interacting with vision models, allowing you to upload images and ask questions about them.
- Many More Features
Up and Running
Setup Database
podman exec -ti -u postgres postgres psql
CREATE USER openwebui PASSWORD 'PUT_OPENWEBUI_DB_PASSWORD_HERE';
CREATE DATABASE openwebui OWNER openwebui;
\c openwebui
CREATE EXTENSION vector;
select * from pg_extension;
\q
Launch openwebui
podman run -d \
--name openwebui \
--network llm-stack \
-e DATABASE_URL="postgresql://openwebui:PUT_OPENWEBUI_DB_PASSWORD_HERE@postgres:5432/openwebui" \
-e WEBUI_SECRET_KEY="PUT_A_RANDOM_STRING_HERE" \
-e VECTOR_DB="pgvector" \
-e ENABLE_WEB_SEARCH="True" \
-e WEB_SEARCH_ENGINE="duckduckgo" \
-e ENABLE_OLLAMA_API="False" \
-e OPENAI_API_BASE_URL="http://litellm:4000" \
-e OPENAI_API_KEY="PUT_LITELLM_KEY_HERE" \
-e CONTENT_EXTRACTION_ENGINE="tika" \
-e TIKA_SERVER_URL="http://tika:9998" \
-e ENABLE_COMMUNITY_SHARING="False" \
-e ENABLE_MESSAGE_RATING="False" \
-e ENABLE_FOLLOW_UP_GENERATION="False" \
-e ENABLE_EVALUATION_ARENA_MODELS="False" \
-e TASK_MODEL="my-gemini-2.5-flash" \
-e TASK_MODEL_EXTERNAL="my-gemini-2.5-flash" \
-e RAG_EMBEDDING_ENGINE="openai" \
-e RAG_OPENAI_API_BASE_URL="http://litellm:4000" \
-e RAG_OPENAI_API_KEY="PUT_LITELLM_KEY_HERE" \
-e RAG_EMBEDDING_MODEL="my-bge-m3:567m" \
-e REDIS_URL="redis://:PUT_REDIS_PASSWORD_HERE@redis:6379/0" \
-p 8080:8080 \
ghcr.io/open-webui/open-webui:v0.6.18
podman logs -f openwebui
# Open the firewall so port 8080 for external access
sudo firewall-cmd --permanent --add-port=8080/tcp
sudo firewall-cmd --reload