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

Triển khai background tasks

API phân tích cảm xúc của bạn đang nhận yêu cầu xử lý theo lô hàng trăm đánh giá cùng lúc. Để xử lý hiệu quả mà không bắt người dùng phải chờ, bạn sẽ triển khai xử lý tác vụ chạy nền để các yêu cầu được tiếp tục xử lý sau khi gửi phản hồi cho client.

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

  • Import lớp background task từ fastapi.
  • Khai báo tham số background_tasks để xử lý yêu cầu như một tác vụ chạy nền.
  • Lên lịch tác vụ phân tích văn bản đánh giá bằng hàm process_reviews.

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.

# Import the background task class
from fastapi import ____
# Create a background task dependency
@app.post("/analyze_batch")
async def analyze_batch(
    reviews: Reviews,
    background_tasks: ____
):
    async def process_reviews(texts: List[str]):
        for text in texts:
            result = await asyncio.to_thread(sentiment_model, text)
            print(f"Processed: {result[0]['label']}")
    # Add the task of analysing reviews' texts to the background
    background_tasks.____(process_reviews, reviews.texts)
    return {"message": "Processing started"}
Chỉnh sửa và Chạy Mã