Kom igångKom igång gratis

Skapa en asynkron endpoint för sentimentanalys

Du bygger en analysplattform för sociala medier som behöver analysera recensioner för sentiment. För att hantera hög trafik på ett effektivt sätt behöver du implementera en async-endpoint. Sentimentanalysmodellen är redan inläst och tillgänglig som sentiment_model.

Den här övningen är en del av kursen

Driftsättning av AI i produktion med FastAPI

Visa kurs

Övningsinstruktioner

  • Skapa en asynkron POST-endpoint /analyze med FastAPI-appen.
  • Lägg till nyckelordet för att anropa sentiment_model asynkront utan att blockera andra operationer.
  • Kör sentiment_model i en separat tråd med recensionens text, så att händelseloopen inte blockeras.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

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"]}
Redigera och kör kod