====== Model Deployment (Nasazení modelu) ====== **Model Deployment** je proces integrace modelu strojového učení do stávajícího produkčního prostředí. Zatímco trénování modelu je zaměřeno na přesnost, nasazení se soustředí na **dostupnost, rychlost (latenci), stabilitu a škálovatelnost**. ===== 1. Typy strategií nasazení ===== Podle toho, jakým způsobem aplikace potřebuje výsledky, volíme různé architektury: ==== A. Online Inference (Real-time) ==== Model běží jako služba (často v [[it_encyklopedie:containerization|kontejneru]]) a odpovídá na požadavky přes [[it_encyklopedie:api|API]] (REST nebo gRPC). * **Vhodné pro:** Doporučovací systémy v e-shopech, detekci podvodů při platbě kartou. * **Výhoda:** Okamžitá odpověď. ==== B. Batch Inference (Dávkové zpracování) ==== Model zpracovává velké balíky dat najednou v pravidelných intervalech (např. jednou za noc). Výsledky se uloží do databáze. * **Vhodné pro:** Generování měsíčních reportů, hromadné bodování zákazníků (scoring). * **Výhoda:** Vysoká propustnost, nižší náklady na infrastrukturu. ==== C. Edge Deployment ==== Model běží přímo na zařízení uživatele (mobil, IoT senzor, auto). * **Vhodné for:** Rozpoznávání obličeje v telefonu, autonomní řízení. * **Výhoda:** Soukromí, funguje bez internetu, nulová síťová latence. ===== 2. Techniky bezpečné aktualizace modelu ===== Při nasazování nové verze modelu musíme minimalizovat riziko chyby: ^ Strategie ^ Popis ^ | **Blue-Green** | Máte dvě identická prostředí. Nový model (Green) se otestuje a pak se na něj naráz přepne veškerý provoz z Blue. | | **Canary Deployment** | Nový model dostane nejdříve jen malé procento provozu (např. 5 %). Pokud jsou výsledky dobré, podíl se postupně zvyšuje. | | **Shadow Mode** | Nový model běží na pozadí, dostává reálná data, ale jeho predikce se uživateli neukazují. Pouze se porovnávají s produkčním modelem. | | **A/B Testing** | Část uživatelů vidí výsledky modelu A, část modelu B. Sleduje se, který model má lepší obchodní výsledky (např. vyšší prodeje). | ===== 3. Nástroje pro nasazení ===== Dnes se k nasazení využívají technologie, které zajišťují stabilitu: * **Kontejnery (Docker):** Zabalí model se všemi knihovnami. * **Orchestrace (Kubernetes):** Spravuje běh mnoha instancí modelu. * **Model Servery:** Specializované nástroje jako **TFServing**, **TorchServe** nebo **NVIDIA Triton**, které optimalizují využití GPU/TPU. ===== 4. Monitorování po nasazení ===== Nasazením práce nekončí. Je nutné sledovat: * **Latenci:** Jak dlouho trvá jedna predikce. * **Data Drift:** Zda se data v reálném světě nezačala lišit od těch, na kterých se model učil. * **Využití zdrojů:** CPU, RAM a GPU paměť. ===== 5. Formáty modelů pro produkci ===== Při přechodu z vývoje do produkce se modely často převádějí do formátů optimalizovaných pro rychlost: * **ONNX (Open Neural Network Exchange):** Univerzální formát pro přenos mezi různými frameworky. * **TensorRT:** Optimalizace pro NVIDIA grafické karty. * **TensorFlow Lite:** Pro mobilní zařízení. > **Zajímavost:** Existuje pojem **"Model Decay"** (rozklad modelu). Je to jev, kdy model v produkci postupně ztrácí svou přesnost jednoduše proto, že se mění okolní svět. Průměrný model pro predikci chování uživatelů na webu může začít zastarávat již po několika týdnech bez aktualizace. [[it_encyklopedie:ai_rozcestnik|Zpět na AI rozcestník]]