เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

โหลดโมเดล AI ตอนเริ่มต้นเซิร์ฟเวอร์

ในแบบฝึกหัดนี้ คุณจะต้องนำโมเดลวิเคราะห์ความรู้สึก (sentiment analysis) ที่ฝึกไว้แล้วไปใช้งาน เพื่อช่วยกลั่นกรองความคิดเห็นของผู้ใช้ โดยต้องการให้ API พร้อมทำงานทันทีที่เริ่มต้น เพื่อไม่ให้เกิดช่วงหยุดทำงาน (zero downtime)

ในแบบฝึกหัดนี้ จะได้ใช้ lifespan events ของ FastAPI เพื่อโหลดโมเดลอย่างมีประสิทธิภาพ สำหรับสร้างระบบกลั่นกรองความคิดเห็น คลาสโมเดล SentimentAnalyzer ถูกกำหนดและนำเข้ามาให้แล้ว

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

การ Deploy AI สู่ Production ด้วย FastAPI

ดูคอร์ส

คำแนะนำการฝึกหัด

  • นำเข้า context manager decorator จากโมดูล contextlib เพื่อสร้าง lifespan event
  • ใช้ context manager decorator ของ FastAPI เพื่อกำหนดฟังก์ชัน lifespan event ให้โมเดลโหลดตอนเริ่มต้นเซิร์ฟเวอร์
  • เรียกฟังก์ชันโหลดโมเดลใน lifespan event เพื่อให้โมเดลพร้อมใช้งานตั้งแต่เริ่มต้น
  • เรียก yield เพื่อให้กระบวนการโหลดเซิร์ฟเวอร์ดำเนินต่อไปได้

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

# Import the context manager decorator from contextlib module
from contextlib import ____

sentiment_model = None

def load_model():
    global sentiment_model
    sentiment_model = SentmentAnalyzer("sentiment_model.joblib")

# Use FastAPI's context manager to define lifespan event
@____
def lifespan(app: FastAPI):
    # Call the function to load the model
    ____
    ____
แก้ไขและรันโค้ด