CommencezCommencez gratuitement

Créer un point de terminaison asynchrone pour l'analyse de sentiment

Vous créez une plateforme d'analytique des médias sociaux qui doit analyser des évaluations pour en dégager le sentiment. Pour gérer efficacement un trafic élevé, vous devez mettre en place un point de terminaison async. Le modèle d'analyse de sentiment est déjà chargé et accessible sous le nom sentiment_model.

Cette activité fait partie du cours

Déployer l'IA en production avec FastAPI

Voir le cours

Instructions de l’exercice

  • Créez un point de terminaison POST asynchrone /analyze à l'aide de l'application FastAPI.
  • Ajoutez le mot-clé nécessaire pour appeler sentiment_model de façon asynchrone sans bloquer les autres opérations.
  • Exécutez sentiment_model dans un fil d'exécution distinct avec le texte de l'évaluation afin de ne pas bloquer la boucle d'événements.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

from fastapi import FastAPI
from pydantic import BaseModel

app = FastAPI()

class Review(BaseModel):
    text: str

# Create async endpoint at /analyze route
@app.post("____")
# Write an asynchronous function to process review's text
____ def analyze_review(review: Review):
    # Run the model in a separate thread to avoid any event loop blockage
    result = ____ asyncio.____(sentiment_model, ____)
    return {"sentiment": result[0]["label"]}
Modifier et exécuter le code