Crea un endpoint async per l'analisi del sentiment
Stai creando una piattaforma di analisi per i social media che deve analizzare le recensioni per il sentiment. Per gestire in modo efficiente un alto volume di traffico, devi implementare un endpoint async. Il modello di analisi del sentiment è già caricato ed è disponibile come sentiment_model.
Questo esercizio fa parte del corso
Deployment di AI in produzione con FastAPI
Istruzioni dell'esercizio
- Crea un endpoint POST asincrono
/analyzeusando l'app FastAPI. - Aggiungi la keyword per chiamare
sentiment_modelin modo asincrono senza bloccare le altre operazioni. - Esegui
sentiment_modelin un thread separato con il testo della recensione, assicurandoti che non blocchi l'event loop.
esercizio interattivo pratico
Prova questo esercizio completando questo codice di esempio.
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"]}