Déployer une application IA (ML / NLP) en production.

Objectifs :

  • Packager un modèle ML et concevoir une API d'inférence robuste avec FastAPI et Docker
  • Choisir et mettre en œuvre la bonne stratégie de déploiement (CPU, GPU, serverless, batch)
  • Exposer une application LLM en production avec streaming, retry et cache sémantique
  • Mettre en place un monitoring adapté à l'IA et détecter le drift de données et de modèle
  • Industrialiser avec un pipeline CI/CD spécifique IA et appliquer les exigences RGPD et IA Act
Tarif inter / participant
2 500 € HT
📄 Programme (PDF) 📅 Voir les dates

Public visé

  • Data scientists souhaitant passer du notebook expérimental à la production
  • ML engineers chargés de mettre en production des modèles ML ou des applications LLM
  • Développeurs Python avancés intervenant sur des projets IA en entreprise

Objectifs pédagogiques

  • Comprendre les enjeux spécifiques du déploiement d'applications IA
  • Packager un modèle ML : sérialisation, versioning, reproductibilité
  • Concevoir une API d'inférence robuste (FastAPI + modèle)
  • Conteneuriser une application IA avec Docker et optimiser les images
  • Choisir une stratégie de déploiement adaptée (CPU, GPU, serverless, batch)
  • Déployer sur Azure ML, AWS SageMaker ou solutions plus légères
  • Exposer une API intégrant un LLM externe avec streaming et gestion des erreurs
  • Mettre en place un monitoring adapté aux applications IA
  • Détecter le drift de données et le drift de modèle
  • Maîtriser les coûts d'inférence : batching, caching, modèles hybrides
  • Mettre en place un pipeline CI/CD pour modèles : test, validation, déploiement
  • Appliquer les bonnes pratiques de sécurité (RGPD, PII, prompt injection)

Prérequis

  • Python avancé : POO, typage, gestion d'exceptions, packaging
  • Entraînement d'au moins un modèle avec scikit-learn, PyTorch ou HuggingFace
  • Notions de cloud : avoir déjà déployé une application (n'importe laquelle)
  • Notions de Docker (un rappel est proposé en début de formation)
  • Aisance avec Git, CLI, SSH
  • Compte GitHub personnel et carte bancaire pour les providers cloud (crédits fournis)

Méthodes pédagogiques

  • Alternance de théorie (35%) et de pratique (65%)
  • Live coding : construction progressive d'une application IA déployée de bout en bout
  • Pédagogie par la comparaison : mêmes problèmes résolus avec plusieurs plateformes
  • Analyse d'incidents : étude de cas réels d'échecs de mise en production IA
  • Retours personnalisés : revue individuelle de chaque projet final
  • Code source, templates MLOps et checklists de production remis aux stagiaires (accès pérenne)

Programme détaillé

JOUR 1 — Fondamentaux du MLOps et packaging de modèles

  • Différences entre une app classique et une app IA en production
  • Pourquoi 80 % des modèles n'atteignent jamais la production
  • Principes du MLOps : reproductibilité, automatisation, monitoring
  • Cycle de vie d'un modèle : données, training, validation, déploiement, monitoring
  • Rôle des différentes équipes : data scientist, ML engineer, DevOps
  • Panorama des plateformes MLOps : MLflow, DVC, Kubeflow, ZenML, Metaflow
  • Cartographie des solutions cloud : Azure ML, AWS SageMaker, GCP Vertex AI
  • Sérialisation des modèles : pickle, joblib, ONNX, safetensors
  • Versioning des modèles : MLflow Model Registry, DVC
  • Versioning des données : pourquoi, comment (DVC, Git LFS)
  • Reproductibilité : pinning des versions, environnements isolés
  • Construire une API d'inférence avec FastAPI : lifespan events, validation Pydantic
  • Gestion des erreurs spécifiques à l'IA : OOM, timeout, valeurs aberrantes
  • Tests de l'API d'inférence : cas nominaux, cas dégradés

■ Travaux pratiques :
→ TP1 : Packager un modèle scikit-learn avec versioning MLflow
→ TP2 : Construire une API FastAPI d'inférence avec validation stricte
→ TP3 : Écrire les tests de l'API couvrant cas nominaux et cas limites

JOUR 2 — Docker et stratégies de déploiement IA

  • Rappels Docker : images, conteneurs, Dockerfile, docker-compose
  • Spécificités des images IA : taille, GPU, dépendances lourdes
  • Multi-stage builds : réduire drastiquement la taille des images
  • Choix de l'image de base : python:slim, distroless, nvidia/cuda
  • Gestion des modèles dans les images : embarquer ou télécharger au démarrage
  • Optimisation : couches, cache, .dockerignore
  • Tester une image en local avant déploiement
  • Publication sur un registry : Docker Hub, Azure Container Registry, ECR
  • Panorama des options : conteneur simple, serverless, managed ML platform
  • Inférence synchrone vs asynchrone : critères de choix
  • Inférence batch : cas d'usage et outillage
  • Déploiement CPU vs GPU : quand, combien ça coûte
  • Azure ML : endpoints managés, principe et guide pas à pas
  • AWS SageMaker : endpoints, serverless inference
  • Solutions plus légères : Modal, Replicate, RunPod pour les GPU
  • Kubernetes pour l'IA : KServe, BentoML (survol pour culture)

■ Travaux pratiques :
→ TP1 : Conteneuriser l'API d'inférence du jour 1 et optimiser la taille
→ TP2 : Déployer le conteneur sur Render ou Railway, tester à distance
→ TP3 : Déployer le même modèle sur Azure ML et comparer les approches

JOUR 3 — Applications LLM et monitoring en production

  • Architecture d'une application LLM : clients, proxy, observabilité
  • Proxy LLM : LiteLLM, pourquoi et quand l'utiliser
  • Gestion des clés API et rotation des secrets
  • Retry, backoff, timeouts : patterns pour résister aux pannes des providers
  • Streaming des réponses LLM : SSE, WebSocket, FastAPI
  • Gestion des coûts par requête : tokenisation, comptage, attribution
  • Cache sémantique : principes et implémentation avec Redis
  • Gestion des conversations et du contexte long
  • Logs structurés pour l'IA : requête, modèle, latence, coût, confiance
  • Métriques essentielles : latence, erreurs, volume, coûts, performances modèle
  • Outils : Langfuse, Arize, Fiddler, Evidently, Prometheus + Grafana
  • Observabilité spécifique LLM : traces, évaluations, feedback utilisateur
  • Détection de drift des données d'entrée et du modèle
  • Feedback loop utilisateur : boutons thumbs up/down, analyses
  • Alerting intelligent : seuils pertinents, éviter la fatigue d'alertes

■ Travaux pratiques :
→ TP1 : Transformer l'API d'inférence en API LLM avec streaming et retry
→ TP2 : Mettre en place un monitoring complet avec Langfuse
→ TP3 : Simuler un drift de données et vérifier sa détection par le monitoring

JOUR 4 — CI/CD, sécurité et projet final

  • Pipeline CI/CD spécifique à l'IA avec GitHub Actions
  • Tests automatisés : code, API, modèle (performance, non-régression)
  • Étapes clés : lint, tests, build image, scan sécurité, déploiement
  • Déploiements progressifs : blue-green, canary, shadow
  • Rollback rapide en cas d'incident
  • Feature flags pour activer / désactiver un modèle
  • Optimisation des coûts d'inférence : batching, caching, modèles hybrides
  • Modèle en cascade : petit modèle rapide puis grand modèle si nécessaire
  • Quantization et distillation : quand et comment (survol)
  • Sécurité des applications IA : panorama des risques
  • Protection des modèles : extraction, inversion, adversarial
  • Gestion des PII : détection, anonymisation, conformité RGPD
  • Prompt injection et jailbreak : détection et mitigation
  • Guardrails : Llama Guard, NeMo Guardrails, approches custom
  • Conformité : AI Act européen, obligations selon le niveau de risque
  • Documentation du modèle : model card, data card, log d'usage
  • Gouvernance : validation, audit, traçabilité

■ Travaux pratiques — Projet final :
→ Chaque participant finalise une application IA complète et déployée
→ Modèle ML ou intégration LLM, API conteneurisée, pipeline CI/CD actif, monitoring configuré
→ Soutenance individuelle de 20 min : architecture, choix, démonstration, limites

Évaluation

  • Test de positionnement en début de formation
  • Évaluations formatives : exercices pratiques, débogage collectif, revues d'architecture
  • QCM mi-parcours de 25 questions (Jour 2)
  • QCM final de 35 questions (Jour 4) — critère de réussite : 60%
  • Soutenance individuelle du projet final (20 min) avec démonstration live
  • Attestation de fin de formation délivrée

Retour en haut