Instalacja Open WebUI i konfiguracja OmniProxy
Chcesz korzystać z modeli lokalnych i chmurowych w jednym oknie czatu, ale obawiasz się skomplikowanego wdrożenia i konfiguracji połączenia? Open WebUI oferuje znajomy interfejs czatu, a po instalacji wystarczy krok po kroku wprowadzić parametry połączenia.
Open WebUI to interfejs czatu, który można wdrożyć samodzielnie na własnym komputerze lub serwerze i używać nawet całkowicie offline. Nie jest powiązany z jednym dostawcą modeli: może łączyć się zarówno z narzędziami uruchamiającymi modele lokalnie, takimi jak Ollama, jak i z interfejsami zgodnymi z formatem OpenAI, czyli adresami udostępniającymi modele przy użyciu tego samego formatu żądań. Dzięki temu można przełączać się między modelami lokalnymi i chmurowymi w jednym oknie.
Rozwiązanie nadaje się do długotrwałego użytkowania przez zespoły i organizacje. Szybciej aktualizowane funkcje pojawiają się najpierw w Computer, czyli produkcie używanym przez Open WebUI do testowania nowych możliwości.
Przygotowanie przed instalacją
Open WebUI działa w systemach macOS, Linux i Windows. Można go zainstalować za pomocą Dockera, Pythona lub Kubernetes. Docker umieszcza aplikację i jej środowisko uruchomieniowe w stosunkowo odizolowanym kontenerze i jest zalecaną metodą. Jeśli Docker nie jest dostępny, można użyć przetestowanego polecenia Pythona podanego poniżej. Kubernetes jest systemem do wdrażania kontenerów i zarządzania nimi; odpowiednie instrukcje znajdują się w dokumencie Quick Start podanym na końcu strony.
Oficjalnie zalecane
Docker
- Jedno docker run
- Otwórz 3000 w przeglądarce
- Dane znajdują się w wolumenie danych
Tylko czat
slim image
- Mniejszy rozmiar do pobrania
- Zmień tag na :slim
- Funkcja czatu pozostaje dostępna
Nie omawiamy tutaj
Dwie inne drogi
- Ręczna instalacja przez Python
- Wdrożenie Kubernetes
- Zobacz oficjalny Quick Start
Przed rozpoczęciem przygotuj:
- Zainstalowany i działający Docker.
- Ciąg klucza przeznaczony wyłącznie do Twojego użytku. Wygeneruj go poleceniem
openssl rand -hex 32, a następnie wprowadź jakoWEBUI_SECRET_KEY. Zachowaj tę wartość bez zmian. Jeśli zmienisz ją podczas ponownego tworzenia kontenera, zalogowani użytkownicy zostaną wylogowani. - Działające OmniProxy oraz identyfikator modelu z jego bieżącej listy modeli. Identyfikator modelu to pełna nazwa używana do wyboru konkretnego modelu.
Instalacja i pierwsze uruchomienie
Otwórz terminal i wykonaj polecenie z dokumentu Quick Start. Najpierw zastąp your-secret-key wygenerowanym wcześniej ciągiem klucza:
docker run -d -p 3000:8080 --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data -e WEBUI_SECRET_KEY=your-secret-key --name open-webui --restart always ghcr.io/open-webui/open-webui:main
Poszczególne elementy tego polecenia odpowiadają za:
-p 3000:8080: umożliwia otwarcie interfejsu przez port 3000 tego komputera. Jeśli port 3000 jest zajęty, zmień liczbę po lewej stronie.-v open-webui:/app/backend/data: zapisuje czaty, użytkowników i ustawienia w woluminie danych. Wolumin danych to miejsce poza kontenerem przeznaczone do trwałego przechowywania danych. Jego zawartość pozostaje dostępna po aktualizacji kontenera, dlatego nie usuwaj tej opcji.--add-host=host.docker.internal:host-gateway: pozwala kontenerowi uzyskiwać dostęp do innych usług działających na tym komputerze.--restart always: ponownie uruchamia kontener po restarcie komputera.
Po wykonaniu polecenia otwórz w przeglądarce http://localhost:3000 i zgodnie z instrukcjami na stronie utwórz pierwsze konto.
Jeśli chcesz korzystać wyłącznie z czatu przez interfejs API, możesz zmienić znacznik obrazu z :main na :slim. slim jest mniejszym obrazem i nie zawiera lokalnych modeli mowy ani osadzania wewnątrz kontenera, ale interfejs czatu nadal działa. Jeśli potrzebujesz tych lokalnych funkcji, nadal używaj :main.
Aby przeprowadzić aktualizację ręcznie, najpierw wykonaj docker rm -f open-webui, następnie docker pull ghcr.io/open-webui/open-webui:main, po czym uruchom aplikację ponownie za pomocą tego samego polecenia docker run. Wolumin danych i wartość WEBUI_SECRET_KEY muszą pozostać bez zmian.
Gdy Docker nie jest dostępny
Quick Start udostępnia również metodę instalacji za pomocą Pythona. 2026-10-09 na macOS zainstalowano poniższym poleceniem Open WebUI v0.11.4 i przeprowadzono jedną rozmowę. Na tym komputerze nie było wówczas Docker Desktop.
DATA_DIR=~/.open-webui uvx --python 3.11 open-webui@latest serve
Po uruchomieniu otwórz w przeglądarce http://localhost:8080. Jest to port używany przez instalację opartą na Pythonie, a nie port 3000 używany przez Dockera.
Podczas pierwszego uruchomienia zostanie pobrany model osadzania, co może potrwać kilka minut. Model osadzania przekształca tekst w dane ułatwiające wyszukiwanie i dopasowywanie. Poczekaj na pojawienie się strony logowania; pierwsze zarejestrowane konto otrzyma uprawnienia administratora. Język interfejsu jest zgodny z ustawieniami systemowymi; podczas tego testu interfejs był wyświetlany w języku chińskim uproszczonym.
DATA_DIR powinien wskazywać katalog przeznaczony do długotrwałego przechowywania danych Open WebUI. Jeśli nie ustawisz tej zmiennej, dane mogą trafić do katalogu tymczasowego i zostać utracone po zamknięciu programu. Jeśli WEBUI_SECRET_KEY nie jest ustawiony, program zapisze plik .webui_secret_key w bieżącym katalogu. Uruchom program z katalogu, który zamierzasz zachować, albo samodzielnie ustaw tę zmienną.
Pobieranie parametrów połączenia z OmniProxy
Skopiuj następujące trzy wartości z własnego OmniProxy:
URL: https://your-omniproxy-origin.example/v1
API Key: <YOUR_OMNIPROXY_API_KEY>
Model ID: Skopiuj pełny identyfikator z bieżącej listy modeli OmniProxy
URL to adres używany przez Open WebUI do łączenia się z interfejsem API. Musi kończyć się na /v1. Nie dodawaj na końcu /chat/completions, ponieważ Open WebUI dołączy tę część automatycznie.
Skopiuj pełny identyfikator modelu z bieżącej listy OmniProxy. Jeśli identyfikator zawiera prefiks źródła i ukośnik, zachowaj je. Poniższe dwie krótkie nazwy służą jedynie jako odniesienie na podstawie dokumentacji dostawców z 2026-10-09. Nie używaj ich, jeśli nie znajdują się na bieżącej liście:
- Identyfikator Claude API dla Claude Sonnet 5.5:
claude-sonnet-5-5 - Nazwa interfejsu API dla Gemini 3.8 Flash:
gemini-3.8-flash
Nie wprowadzaj klucza dostawcy w Open WebUI. Jeśli brama nie weryfikuje klucza, pole klucza API może pozostać puste. Nie wymyślaj dodatkowego klucza.
Przeglądarka
Lokalne 3000
- Otwórz stronę czatu
- Najpierw dokończ rejestrację
- Następnie przejdź do ustawień
W kontenerze
Open WebUI
- Nie wpisuj localhost
- Użyj nazwy hosta
- URL kończy się na /v1
Ten sam komputer
OmniProxy
- Klucz pozostaw w bramie
- Lista modeli pochodzi z bramy
- Następnie sprawdź rejestr wywołań
Jeśli usługa modelu działa na hoście, a Open WebUI w kontenerze Dockera, zastąp localhost w adresie URL wartością host.docker.internal. Host to komputer, na którym bezpośrednio działa Docker. Jeśli OmniProxy nasłuchuje wyłącznie na tym komputerze, URL może mieć postać http://host.docker.internal:port/v1, gdzie port należy zastąpić portem faktycznie używanym przez OmniProxy.
Jeśli Open WebUI działa lokalnie za pomocą polecenia Pythona z poprzedniej sekcji, a OmniProxy również działa lokalnie, użyj w adresie 127.0.0.1 lub localhost. W takim przypadku nie używaj host.docker.internal.
Wprowadzanie konfiguracji narzędzia
Interfejs Open WebUI v0.11.4 w języku chińskim uproszczonym z 2026-10-09 używał nazw innych niż Settings > Admin > Connections podane w angielskich instrukcjach. Wykonaj poniższe czynności zgodnie z opcjami widocznymi w interfejsie:
- Rozwiń lewy pasek boczny.
- Kliknij menu użytkownika na dole.
- Kliknij Ustawienia.
- W sekcji administratora na dole kliknij Połączenia zewnętrzne.
- Otwórz Interfejs OpenAI.
- Kliknij + po prawej stronie sekcji Zarządzanie połączeniami interfejsu OpenAI.
- W wyświetlonym oknie Edytuj połączenie wprowadź URL kończący się na
/v1. Jako typ interfejsu pozostaw Chat Completions. - Jako Metodę uwierzytelniania pozostaw Klucz (Bearer). Bearer to sposób uwierzytelniania polegający na umieszczeniu klucza API w żądaniu. Jeśli OmniProxy przekazało Ci klucz, wprowadź go w polu Klucz API. Jeśli brama nie weryfikuje klucza, pozostaw to pole puste. 2026-10-09 po pozostawieniu go pustego zarówno weryfikacja, jak i jedna rozmowa zakończyły się powodzeniem.
- Kliknij Zweryfikuj połączenie obok adresu URL. Jeśli OmniProxy udostępnia
/models, zostanie w tym miejscu pobrana lista modeli. - Otwórz Zaawansowane. Jeśli pole Identyfikator modelu pozostanie puste, zostaną użyte wszystkie modele zwrócone przez
/modelspod tym adresem. Dopiero gdy weryfikacja się nie powiedzie, wprowadź pełny identyfikator z listy w polu Dodaj identyfikator modelu, a następnie kliknij Dodaj. Każdy identyfikator dodaj tylko raz. Spacje przed nim i po nim zostaną usunięte. - Kliknij Zapisz w tym oknie, a następnie kliknij Zapisz w prawym dolnym rogu strony połączeń zewnętrznych.
Samo zapisanie konfiguracji nie zastępuje weryfikacji. Funkcja Zweryfikuj połączenie wysyła żądanie do /models, czyli interfejsu służącego do wyświetlania dostępnych modeli. Niektóre usługi nie udostępniają tego interfejsu, więc weryfikacja może zgłosić błąd, mimo że czat nadal będzie działać. W takiej sytuacji dodaj identyfikator modelu ręcznie.
Weryfikacja rzeczywistego zadania
Wróć do strony czatu, otwórz menu modeli obok pola wprowadzania i wybierz pełny identyfikator z listy OmniProxy. Wyślij bardzo krótką wiadomość, na przykład poproś model, aby odpowiedział tylko jednym słowem. Odpowiedź musi rzeczywiście pojawić się w oknie czatu.
2026-10-09 rozmowę tę przeprowadzono w Open WebUI v0.11.4 zainstalowanym za pomocą Pythona. Docker nadal jest zalecaną metodą, ale tego testu nie powtórzono w Dockerze.
Następnie otwórz rejestr wywołań OmniProxy i potwierdź źródło żądania oraz identyfikator modelu. Sam komunikat o pomyślnym zapisaniu konfiguracji albo samo pojawienie się modelu w menu nie oznacza jeszcze zakończenia konfiguracji.
Interfejs
Można wybrać model
- Connections zostało zapisane
- Model pojawia się na liście
- Wyślij krótkie pytanie
Odpowiedź
Pole czatu zawiera odpowiedź
- To nie jest pusta wiadomość
- To nie jest błąd połączenia
- Spróbuj ponownie z innym modelem
Rejestr
Brama go widzi
- Źródłem jest to połączenie
- Identyfikator modelu jest zgodny
- Żaden klucz nie trafił na stronę
Typowe błędy
- W kontenerze użyto
localhostlub127.0.0.1: oba adresy wskazują na sam kontener, a nie hosta. Zmień adres nahost.docker.internali upewnij się, że polecenie uruchamiające zawiera--add-host=host.docker.internal:host-gateway. Jeśli Open WebUI nie działa w kontenerze, należy postąpić odwrotnie i użyć adresu lokalnego. - Nie można otworzyć strony w przeglądarce: w przypadku Dockera sprawdź port 3000, a w przypadku Pythona port 8080. Przy pierwszym uruchomieniu poczekaj na zakończenie pobierania modelu osadzania. Polecenie
docker pspozwala sprawdzić, czy kontener działa. Jeśli port 3000 jest zajęty, zmień port po lewej stronie opcji-p. - Identyfikator w menu modeli jest dłuższy niż krótka nazwa dostawcy: użyj pełnego identyfikatora z menu, łącznie ze wszystkimi ukośnikami.
- Po aktualizacji wszyscy użytkownicy zostali wylogowani: wartość
WEBUI_SECRET_KEYuległa zmianie. Uruchom aplikację ponownie, używając ciągu klucza wygenerowanego za pierwszym razem. - Funkcja Zweryfikuj połączenie zgłasza błąd: najpierw ręcznie dodaj identyfikator modelu w sekcji Zaawansowane, a następnie sprawdź działanie, wysyłając rzeczywistą krótką wiadomość na czacie. Niektóre usługi nie udostępniają
/models, dlatego czat może działać mimo błędu weryfikacji. - Model nie istnieje: ponownie skopiuj identyfikator z bieżącej listy OmniProxy i nie używaj nieaktualnej nazwy.
Oficjalne materiały
Polecenie instalacyjne znajduje się w dokumencie Open WebUI Quick Start. Instrukcje konfiguracji połączenia znajdują się w dokumencie OpenAI-compatible — instrukcja połączenia. Identyfikatory modeli użyte w przykładach można znaleźć na stronach Przegląd modeli Claude i Lista modeli Gemini.
Zastąp każdy placeholder wartościami z własnej konfiguracji OmniProxy. Nigdy nie publikuj prawdziwego klucza.
Zapisany wynik lub HTTP 200 samo w sobie nie dowodzi pełnej kompatybilności Agenta. Sprawdź źródło i model w rejestrze połączeń OmniProxy.