Rozdíly
Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.
| it:server:openwebui [2026/01/18 16:40] – vytvořeno Petr Nosek | it:server:openwebui [2026/01/18 18:56] (aktuální) – Petr Nosek | ||
|---|---|---|---|
| Řádek 1: | Řádek 1: | ||
| - | ====== Open WebUI (self-hosting UI pro LLM) ====== | + | ====== Open WebUI: RAG, pluginy a integrace poskytovatelů |
| - | ===== Úvodní kontext | + | ===== Úvod ===== |
| + | Open WebUI používám jako webové rozhraní pro práci s LLM (chat, modely, nastavení) a pro napojení dalších funkcí přes RAG, pluginy a integrace poskytovatelů. V praxi mi slouží jako centrální UI, ve kterém kombinuji modely a rozšíření bez toho, abych přepisoval vlastní aplikaci. | ||
| - | Open WebUI používám jako self-hostované webové rozhraní pro práci s LLM, protože mi dává jednu konzistentní „chat“ vrstvu nad více poskytovateli modelů a zároveň prostor pro rozšiřování | + | ===== Kdy co použít (RAG vs pluginy vs integrace poskytovatelů) ===== |
| + | Když si ujasňuji, jakou cestou něco řešit, držím se těchto pravidel: | ||
| - | ===== Co je v Open WebUI nejdůležitější ===== | + | * **RAG** používám, |
| + | * **Pluginy / funkce (filters, functions, pipelines)** používám, | ||
| + | * **Integrace poskytovatelů (Gemini / Anthropic / OpenRouter)** používám, | ||
| - | ==== RAG (Retrieval-Augmented Generation) ==== | + | ===== RAG (návody) ===== |
| + | RAG beru jako „dokumenty → vyhledání → kontext v promptu“. Konkrétní postup konfigurace neodvozuji z poznámek, takže se držím oficiálního návodu. | ||
| - | RAG beru jako způsob, jak přidat k odpovědím modelu kontext z mých dat (dokumenty, poznámky, interní wiki) bez toho, abych je musel „učit“ do modelu. Prakticky to řeším | + | * https:// |
| + | Tenhle odkaz používám | ||
| - | * [[https://docs.openwebui.com/ | + | ===== Pluginy: přepínač reasoning (reasoning toggle) ===== |
| + | U „reasoning“ jsem narazil na praktickou potřebu: chci mít v UI jednoduché **zaškrtávací políčko**, | ||
| - | ==== Integrace poskytovatelů | + | * [[https:// |
| + | Tenhle příspěvek z Open WebUI Community používám jako referenci k tomu, jak přidat do Open WebUI přepínač | ||
| - | Open WebUI mi dává smysl tehdy, když chci kombinovat více backendů/ | + | * [[https:// |
| + | Tenhle konkrétní soubor | ||
| - | | + | Poznámka k praxi: u pluginů si hlídám, jestli jde o **UI/UX přepínač** (komfort) nebo o **změnu request parametrů** (dopad na cenu/ |
| - | | + | |
| - | | + | |
| - | ===== Pluginy vs. Functions vs. Filtry vs. Pipelines (praktické vysvětlení) | + | ===== Integrace poskytovatelů |
| - | V komunitě a v projektu se často míchají pojmy. Já si je v praxi rozlišuji takto: | + | ==== Google Gemini (včetně zmínky Nano Banana) ==== |
| + | Gemini řeším jako integraci poskytovatele | ||
| - | ==== „Pluginy“ (komunitní rozšíření | + | * https:// |
| + | Tenhle soubor používám jako zdroj pravdy k tomu, jak je Gemini pipeline v Open WebUI reálně napojená (včetně toho, že sahá i na obrazové modely typu Nano Banana). | ||
| - | Pluginem typicky myslím hotové komunitní řešení, které si vezmu a zapnu, protože řeší konkrétní potřebu bez zásahu do jádra. Příklad z mých poznámek je „zapnutí reasoning modelu skrze zaškrtávací políčko“, které je publikované jako komunitní | + | * [[https:// |
| + | Tenhle community post používám jako „UI-orientovanou“ referenci k integraci Gemini v Open WebUI (co přidat a kde to v Open WebUI typicky najdu). | ||
| - | * [[https://openwebui.com/ | + | ==== Claude |
| + | Claude řeším přes integraci v Open WebUI, která je publikovaná v Open WebUI Community. V poznámkách je to označené jako integrace pro **claude.ai**, | ||
| - | Kdy po tom sahám: když chci funkci rychle a nechci psát vlastní kód. | + | * [[https:// |
| + | Tenhle odkaz používám jako výchozí dokument k integraci Anthropic/ | ||
| - | ==== Functions (logika, kterou přidávám do Open WebUI) | + | ==== OpenRouter |
| + | OpenRouter používám, | ||
| - | Functions beru jako mechanismus, | + | * https:// |
| + | Tenhle community post používám | ||
| - | * [[https:// | + | * repo: https:// |
| + | Tenhle repozitář používám jako doplněk/referenci, když potřebuji v Open WebUI vidět nebo řešit zobrazení „reasoning tokenů“ pro OpenRouter. | ||
| - | Kdy po tom sahám: když potřebuji přesně řídit chování | + | ===== Tipy a troubleshooting |
| + | Držím se jen toho, co plyne z poznámek, bez domýšlení konkrétních klikacích kroků: | ||
| - | ==== Filtry (specializovaný typ function) ==== | + | |
| - | + | * Když řeším OpenRouter | |
| - | Filtry si představuji jako „hooky“ v toku dat: něco upravím před odesláním do modelu, nebo po návratu odpovědi. V praxi mi to sedí na případy typu: | + | * Když potřebuji Gemini „rozšířeně“ |
| - | + | ||
| - | | + | |
| - | * sanitizace promptu | + | |
| - | * doplnění/ | + | |
| - | + | ||
| - | ==== Pipelines (napojení providerů, routing, složitější tok) ==== | + | |
| - | + | ||
| - | Pipelines používám jako mental model pro věci, které jsou víc než jen jednoduchý filtr: typicky integrace poskytovatele, | + | |
| - | + | ||
| - | * [[https:// | + | |
| - | + | ||
| - | Kdy po tom sahám: když integruji nového providera, potřebuji víc kontrolovat parametry a datové typy (text, obrázky), nebo když chci jednotný interface nad více modely. | + | |
| - | + | ||
| - | ===== Reasoning: přepínání | + | |
| - | + | ||
| - | Když potřebuji rychle zpřístupnit „reasoning“ jako přepínač pro uživatele, mám v poznámkách dvě cesty: | + | |
| - | + | ||
| - | | + | |
| - | | + | |
| - | | + | |
| - | * [[https:// | + | |
| - | + | ||
| - | Praktický rozdíl pro mě: komunitní „plugin“ | + | |
| - | + | ||
| - | ===== Google Gemini (včetně obrázkových modelů) ===== | + | |
| - | + | ||
| - | U Gemini | + | |
| - | + | ||
| - | * [[https:// | + | |
| - | + | ||
| - | A zároveň existuje komunitní popis přímo v Open WebUI community: | + | |
| - | + | ||
| - | * [[https:// | + | |
| - | + | ||
| - | Co si z toho beru prakticky: | + | |
| - | + | ||
| - | * Pipeline si projdu jako referenci pro to, jak se mapují parametry a jak je řešené volání API. | + | |
| - | * Komunitní příspěvek beru jako „operational“ návod (co nastavit v Open WebUI). | + | |
| - | + | ||
| - | Konkrétní instalační/ | + | |
| - | + | ||
| - | ===== Claude (Anthropic) ===== | + | |
| - | + | ||
| - | Claude řeším | + | |
| - | + | ||
| - | * [[https:// | + | |
| - | + | ||
| - | Poznámky neobsahují konkrétní parametry ani konkrétní kroky konfigurace. Držím se tedy principu: | + | |
| - | + | ||
| - | * nastavit integraci podle oficiální dokumentace Open WebUI a podle uvedeného community postu | + | |
| - | * ověřit, že se správně propisují klíče, modely a limity na úrovni backendu | + | |
| - | + | ||
| - | ===== OpenRouter ===== | + | |
| - | + | ||
| - | OpenRouter používám jako agregátor modelů, protože mi umožní | + | |
| - | + | ||
| - | * [[https:// | + | |
| - | + | ||
| - | A doplněk, který má „zobrazit reasoning tokeny v OpenRouteru“: | + | |
| - | + | ||
| - | * [[https:// | + | |
| - | + | ||
| - | Prakticky si to vykládám tak, že: | + | |
| - | + | ||
| - | * základní integraci řeším přes community post | + | |
| - | * pokud chci detailní telemetrii/ | + | |
| - | + | ||
| - | ===== Praktické příklady (co přesně si z poznámek beru) ===== | + | |
| - | + | ||
| - | ==== 1) RAG jako první „produkční“ feature ==== | + | |
| - | + | ||
| - | Když potřebuji, aby UI nebylo jen chat, začínám RAGem. Jako jediný mám v poznámkách přímý oficiální návod: | + | |
| - | + | ||
| - | * [[https:// | + | |
| - | + | ||
| - | Můj postup je: nejdřív RAG rozchodím na jedné malé sadě dokumentů, až potom řeším škálování a automatizaci ingestu. | + | |
| - | + | ||
| - | ==== 2) Reasoning přepínač (UX vs. kontrola) ==== | + | |
| - | + | ||
| - | Když chci rychle přidat přepínač, | + | |
| - | + | ||
| - | * [[https:// | + | |
| - | + | ||
| - | Když potřebuji | + | |
| - | + | ||
| - | * [[https:// | + | |
| - | + | ||
| - | ==== 3) Provider jako pipeline (Gemini) ==== | + | |
| - | + | ||
| - | Když integruji providera, pipeline mi slouží jako „zdroj pravdy“ pro mapování API. Z mých poznámek: | + | |
| - | + | ||
| - | * [[https:// | + | |
| - | + | ||
| - | ===== Závěr / výstupy ===== | + | |
| - | + | ||
| - | Open WebUI mi dává jednotné UI nad více LLM backendy a rozšiřitelnost přes RAG a Functions/ | + | |
| - | + | ||
| - | ===== Doporučený postup ===== | + | |
| - | + | ||
| - | * Ověřím základní běh Open WebUI podle oficiální dokumentace (bez vlastních úprav). | + | |
| - | * Zprovozním RAG podle [[https:// | + | |
| - | * Přidám integraci providera podle community postu (Gemini/ | + | |
| - | * Rozhodnu se, zda mi stačí hotový „plugin“, | + | |
| - | * Teprve potom řeším pokročilé doplňky (např. reasoning tokeny pro OpenRouter) a automatizaci. | + | |
| - | + | ||
| - | ===== Časté chyby / poznámky ===== | + | |
| - | + | ||
| - | * Pletu si „plugin“ a „pipeline“: | + | |
| - | * Nasazuji doplňky bez minimálního testu: nejdřív jeden model + jeden prompt, až potom další vrstvy (RAG, filtry, token telemetry). | + | |
| - | * Spoléhám na poznámky místo dokumentace: | + | |
| + | ===== Zdroje ===== | ||
| + | * https:// | ||
| + | Dokumentace RAG v Open WebUI (návod a koncepty). | ||
| + | * https:// | ||
| + | Open WebUI Community post k „OpenAI Reasoning Effort“ a přepínači reasoning v UI. | ||
| + | * https:// | ||
| + | Ukázkový filter pro reasoning toggle (implementační reference). | ||
| + | * https:// | ||
| + | Gemini pipeline (včetně podpory pro obrazové modely jako Nano Banana). | ||
| + | * https:// | ||
| + | Open WebUI Community post pro integraci Google Gemini. | ||
| + | * https:// | ||
| + | Open WebUI Community post pro integraci Anthropic / Claude (claude.ai). | ||
| + | * https:// | ||
| + | Open WebUI Community post pro integraci OpenRouter. | ||
| + | * https:// | ||
| + | Repozitář pro zobrazení/ | ||