Vrácení strukturovaného výstupu z API
Vytváříš systém moderování obsahu, ve kterém potřebuješ definovat POST endpoint pro testování předtrénovaného modelu analýzy sentimentu na uživatelských komentářích.
Tvým úkolem je vytvořit endpoint, který využívá modely pydantic k vrácení predikcí ve strukturovaném formátu.
Poznámka: Pydantic modely CommentRequest a CommentResponse jsou již připravené k použití spolu s předtrénovaným sentiment_model z předdefinované třídy SentimentAnalyzer.
Toto cvičení je součástí kurzu
Nasazení AI do produkce s FastAPI
Pokyny k cvičení
- Implementuj
POSTendpoint na route/analyze. - Validuj
requestve funkcianalyze_comment()podle schématuCommentRequest. - Proveď predikci pomocí
sentiment_modeltak, že mu předáštextzrequest. - Vrať atributy predikce (
textzrequest,"label"a"score"zresult[0]) a naformátuj tak odchozí odpověď do podobyCommentResponse.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# Create a POST request endpoint
@app.____("/analyze")
# Capture the request text for validation as per CommentRequest model
def analyze_comment(____: CommentRequest):
try:
# Specify pass the request text to the model
result = sentiment_model(____.____)
# Specify the result attributes to complete the comment response
return CommentResponse(text=____,
sentiment=____,
confidence=____)
except Exception:
raise HTTPException(status_code=500,
detail="Prediction failed"
)