Charger un modèle d’IA au démarrage du serveur
Vous devez déployer un modèle entraîné d’analyse de sentiments pour aider à modérer les commentaires des utilisateurs. Pour garantir zéro interruption de service, l’API doit être prête à analyser les commentaires dès son lancement.
Dans cet exercice, vous allez implémenter les événements de cycle de vie de FastAPI pour charger efficacement votre modèle et construire le système de modération des commentaires. La classe de modèle SentimentAnalyzer est déjà définie et importée pour vous.
Cet exercice fait partie du cours
Déployer l’IA en production avec FastAPI
Instructions
- Importez le décorateur de gestionnaire de contexte depuis le module
contextlibpour créer l’événement de cycle de vie. - Utilisez le décorateur de gestionnaire de contexte de FastAPI pour définir la fonction d’événement
lifespanafin de garantir le chargement du modèle au démarrage. - Appelez la fonction de chargement du modèle au démarrage dans l’événement
lifespan. - Utilisez
yieldpour permettre au processus de chargement du serveur de se poursuivre.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# Import the context manager decorator from contextlib module
from contextlib import ____
sentiment_model = None
def load_model():
global sentiment_model
sentiment_model = SentmentAnalyzer("sentiment_model.joblib")
# Use FastAPI's context manager to define lifespan event
@____
def lifespan(app: FastAPI):
# Call the function to load the model
____
____