Aan de slagBegin gratis

Maak een async endpoint voor sentimentanalyse

Je bouwt een platform voor socialmedia-analytics dat reviews op sentiment moet analyseren. Om veel verkeer efficiënt af te handelen, moet je een async endpoint implementeren. Het sentimentanalysemodel is al geladen en beschikbaar als sentiment_model.

Deze oefening maakt deel uit van de cursus

AI in productie brengen met FastAPI

Bekijk cursus

Oefeninstructies

  • Maak een asynchroon POST-endpoint /analyze met de FastAPI-app.
  • Voeg het trefwoord toe om sentiment_model asynchroon aan te roepen zonder andere operaties te blokkeren.
  • Laat sentiment_model in een aparte thread draaien met de tekst van de review, zodat de event loop niet wordt geblokkeerd.

Interactieve oefening met praktijkervaring

Probeer deze oefening door deze voorbeeldcode aan te vullen.

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"]}
Code bewerken en uitvoeren