시작하기무료로 시작하기

서버 시작 시 AI 모델 로딩하기

사용자 댓글을 관리하는 감성 분석 모델을 배포해야 합니다. 서비스 중단 없이 API가 시작되자마자 사용자 댓글을 분석할 수 있어야 합니다.

이번 연습 문제에서는 FastAPI의 lifespan 이벤트를 활용해 모델을 효율적으로 로드하고, 댓글 관리 시스템을 구축해 보겠습니다. SentimentAnalyzer 모델 클래스는 이미 정의되어 가져온 상태입니다.

이 연습은 강의의 일부입니다

FastAPI로 AI 프로덕션 배포하기

강의 보기

연습 안내

  • contextlib 모듈에서 lifespan 이벤트를 생성하는 데 필요한 컨텍스트 매니저 데코레이터를 가져오세요.
  • FastAPI의 컨텍스트 매니저 데코레이터를 사용해 lifespan 이벤트 함수를 정의하고, 서버 시작 시 모델이 로드되도록 하세요.
  • lifespan 이벤트 안에서 모델을 로드하는 함수를 호출하세요.
  • 서버 로딩 프로세스가 계속 진행될 수 있도록 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
    ____
    ____
코드 편집 및 실행