서론FastAPI를 사용하다보면 Pydantic을 이용해 커스텀 class를 정의해야 할 일이 생긴다.아래는 Pydantic의 BaseModel class를 상속한 CorrectionRequest class를 정의하는 모습이다.실제 맞춤법 검사기에서 사용하는 클래스이다.class CorrectionRequest(BaseModel): text: str correction: str memo: str recaptcha_response: str그러면 Pydantic은 무엇이고 왜 사용하는 걸까? 본론Pydantic의 공식 Docs의 서문을 인용하겠다.Pydantic is the most widely used data validation library for Python.Pydantic은 데..
서론맞춤법검사기를 제작하면서 Huggingface Transformer API(이하 Transfomer API)를 FastAPI 백엔드에서 사용할 일이 생겼다.처음에는 당연하게도 이런식으로 구성했다.@router.post("/correction", response_model=CorrectionResponse)@limiter.limit("60/seconds")async def correction(request: Request, correction: CorrectionRequest, user: Session = Depends(get_logged_user)): # 1. Tokenize and pad inputs in batches batch = [tokenizer([f"{tokenizer.bos_t..