Bắt đầu ngayBắt đầu miễn phí

Tạo endpoint phân tích cảm xúc async

Bạn đang xây dựng một nền tảng phân tích mạng xã hội cần phân tích cảm xúc của các review. Để xử lý lưu lượng cao hiệu quả, bạn cần triển khai một endpoint async. Model phân tích cảm xúc đã được nạp sẵn và có sẵn dưới tên sentiment_model.

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

Xem khóa học

Hướng dẫn bài tập

  • Tạo một endpoint POST bất đồng bộ /analyze bằng FastAPI app.
  • Thêm từ khóa để gọi sentiment_model một cách bất đồng bộ mà không chặn các tác vụ khác.
  • Chạy sentiment_model trong một thread riêng với văn bản của review, đảm bảo không chặn event loop.

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.

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"]}
Chỉnh sửa và Chạy Mã