Szkolenie: Wdrażanie modeli AI
Szkolenie "Wdrażanie modeli AI" pokrywa powszechnie stosowane narzędzia w procesie wdrożenia modeli opartych o AI i dostarcza niezbędnych kompetencji pozwalających na samodzielne ich wdrożenie.
- Trenerzy praktycy
- Kameralne grupy
Czas trwania szkolenia:5 dni (40h)
Kod kursu:DEPLOY/AI
Wdrażanie modeli AI
Cele szkolenia
Doświadczenie całego procesu wdrożenia modeli AI
Poznanie najlepszych praktyk w implementacji API w FastAPI
Poznanie najlepszych praktyk w pracy z kontenerami z wykorzystaniem Dockera
Poznanie najlepszych praktyk podczas wdrązania na klastry Kubernetes
Zautomatyzowanie całego procesu wdrożeniowego
Dla kogo?
Doświadczonych Data Scientistów oraz Programistów, którzy chcieliby rozwinąć się w procesach wdrożeniowych modeli uczenia maszynowego i AI
Zalety
Szkolenie "Wdrażanie modeli AI" w pełni dostosowane do problematyki wdrożenia modeli uczenia maszynowego
Realizowanie projektu end-to-end - od implementacji API, poprzez kontenery, na klaster Kubernetes, zautomatyzowane w CICD
Szkolenie "Wdrażanie modeli AI" ma charakter warsztatowy - dużo praktyki i ćwiczeń, teoria niezbędne minimum
Wymagania
Szkolenie nie jest kierowane dla osób początkujących - wymagane co najmniej roczne doświadczenie programistyczne
Dobra znajomość języka Python
Podstawowa znajomość zagadnień sieciowych i protokołu HTTP
Podstawowa znajomość środowiska Linux
Podstawowa znajomość uczenia maszynowego
W cenie otrzymasz:
Materiały szkoleniowe
Certyfikat ukończenia szkolenia
W przypadku szkolenia w trybie stacjonarnym zapewnimy Ci również lunch oraz sprzęt niezbędny do nauki
Program szkolenia
Wprowadzenie do wdrożenia modeli uczenia maszynowego
Charakterystyka wdrożenia
Problemy z wdrożeniem modeli uczenia maszynowego
Różne sposoby wdrożenia modeli
API (FastAPI)
Implementacja API dla modeli uczenia maszynowego
Protokół HTTP
Type Annotations i jak wykorzystywane jest w FastAPI
Schematy Pydantic
Czym jest REST
Cache'owanie w API
Zapisy i odczyt z baz danych
Przetwarzanie asynchroniczne
Kontenery (Docker)
Czym jest kontener - zalety i wady
Budowa obrazów przy użyciu Dockerfile
Warstwy w Dockerze
Cache'owanie i przyśpieszenie budowy obrazów
Praca z kontenerem i jego debugowanie
Wdrożenie na produkcję (Kubernetes)
Czym jest Kubernetes - zalety i wady
Przegląd narzędzi w celach uczenia maszynowego powstałych wokół Kubernetesa
Podstawy architektury Kubernetesa
Namespaces - przestrzenie w klastrze
Pod - podstawowa jednostka alokacji procesów w klastrze
Deployment - zarządzanie liczbą replik serwisów wraz ze sposobem ich aktualizacji
Service - konfiguracja komunikacji oraz sposoby na udostępnienie serwisu
Ingress - przekierowywanie zapytań do serwisów znajdujących się na klastrze
Health, Readiness, Startup Probing - kontrolowanie poprawnego funkcjonowania serwisów
Requests, Limits - Ustalanie wymaganych zasobów na serwisach
HorizontalPodAutoscaler - konfiguracja automatycznego skalowania serwisów
Przeprowadzanie testów obciążeniowych
Automatyzacja (CICD)
Definiowanie pipeline'ów
Zrównoleglanie kroków
Continuous Integration - lintowanie, skanowanie, uruchamianie testów
Continuous Deployment - automatyczna budowa obrazów, wdrożenie na środowiska dev/prod