Trả về đầu ra có cấu trúc từ API
Bạn đang xây dựng hệ thống kiểm duyệt nội dung, nơi bạn cần định nghĩa một endpoint POST để kiểm thử model sentiment analysis đã được huấn luyện sẵn trên bình luận của người dùng.
Bạn cần tạo một endpoint sử dụng các model pydantic để trả về dự đoán theo định dạng có cấu trúc.
Lưu ý: Các Pydantic model - CommentRequest và CommentResponse đã được tạo sẵn để bạn dùng cùng với sentiment_model đã huấn luyện trước từ lớp SentimentAnalyzer được định nghĩa sẵn.
Bài tập này là một phần của khóa học
Triển khai AI vào môi trường sản xuất với FastAPI
Hướng dẫn bài tập
- Cài đặt một endpoint
POSTtại route/analyze. - Xác thực
requesttrong hàmanalyze_comment()theoCommentRequest. - Thực hiện dự đoán bằng
sentiment_modelbằng cách truyềntextcủarequest. - Trả về các thuộc tính dự đoán (
texttừrequest,"label"và"score"từresult[0]) để định dạng phản hồi đầu ra theoCommentResponse.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
# 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"
)