Construire avec les APIs
Intégrer les LLMs dans des applications réelles : architecture, patterns et bonnes pratiques.
3.1Architecture d'une app IA
Anatomie d'une application IA moderne
Les couches d'une app IA : UI, orchestration, LLM, outils, données. Où se situe la complexité.
Patterns d'architecture : proxy, gateway, router
Les trois patterns principaux pour structurer l'accès aux LLMs dans une app.
Sécurité : API keys, rate limiting, input validation
Protéger votre application des abus et des injections de prompt.
Exercice : dessiner l'architecture d'un cas d'usage
Concevoir l'architecture d'un assistant de support client avec diagramme.
3.2Intégrer Claude / OpenAI / Gemini
SDK Anthropic : premiers appels à Claude
Installer le SDK, configurer l'authentification et faire ses premiers appels API.
SDK OpenAI : chat completions et beyond
L'API OpenAI en pratique : chat, embeddings, modération.
Google AI SDK : Gemini en production
Intégrer Gemini via le SDK Google avec gestion des modèles et quotas.
Abstraction multi-provider : AI SDK de Vercel
Utiliser une couche d'abstraction pour switcher de provider sans changer le code.
Projet : app Next.js avec chat multi-modèle
Construire une interface de chat qui peut utiliser Claude, GPT ou Gemini.
3.3Streaming, retry, error handling
Streaming SSE : affichage token par token
Implémenter le streaming Server-Sent Events pour un affichage progressif.
Retry avec backoff exponentiel
Gérer les erreurs transitoires (429, 500, 529) avec une stratégie de retry robuste.
Timeout, fallback et circuit breaker
Patterns de résilience pour des applications IA qui ne tombent jamais.
Exercice : implémenter un client résilient
Coder un wrapper API avec streaming, retry, timeout et fallback multi-provider.
3.4Prompt caching et optimisation des coûts
Prompt caching : principes et implémentation
Comprendre le cache de prompts Anthropic/OpenAI et réduire les coûts de 90%.
Optimiser la longueur des prompts
Techniques pour réduire les tokens sans perdre en qualité de réponse.
Routing intelligent : gros modèle vs petit modèle
Router automatiquement les requêtes vers le modèle le plus adapté (et le moins cher).
Monitoring des coûts en temps réel
Mettre en place un dashboard de suivi des coûts par feature, par user, par modèle.
3.5Tool use et function calling
Principes du tool use : donner des mains au LLM
Comment fonctionne le tool use et quand l'utiliser dans vos applications.
Définir des tools : schémas et descriptions
Écrire des définitions de tools claires que le modèle utilisera correctement.
Orchestration multi-tools et boucle agentique
Gérer les appels multiples, la validation des inputs et la boucle tool use.
Projet : assistant avec accès à une base de données
Construire un assistant qui peut interroger une DB via des tools définis.