위키득계정 ↗
기술

Pydantic

Pydantic기술
대상 언어
Python
주요 역할
자료 검증과 직렬화
규칙 정의
형식 힌트
대표 모델
BaseModel
Pydantic은 Python 형식 힌트로 자료 검증과 직렬화 규칙을 정의하는 라이브러리다. 모델에 맞춰 외부 자료를 확인하고 필요한 변환을 수행하며 JSON Schema 생성과 사용자 정의 검증을 지원한다.

형식으로 정의하는 자료 모델

BaseModel을 상속한 클래스의 필드와 형식 힌트로 자료의 구조를 정의한다. 기본값과 필요한 필드 및 값의 조건을 모델에 표현할 수 있다. 검증에 실패하면 잘못된 위치와 원인을 담은 오류를 반환한다.

변환과 엄격한 검사

일반 모드에서는 적절한 경우 입력을 원하는 형식으로 변환한다. 엄격 모드에서는 이러한 자동 변환을 제한해 검사한다. 원래 입력의 표현과 검증 후 모델에 들어가는 값이 같은 형식이라고 가정해서는 안 된다.

직렬화와 외부 도구

모델을 사전 형태로 내보내고 JSON Schema를 생성할 수 있다. 표준 라이브러리의 여러 형식과 사용자 정의 검증기 및 직렬화기도 지원한다. 자료 모델의 정의를 입력 검사와 외부 인터페이스의 설명에 함께 활용하는 방식이다.

관련 문서

Msgspec / Python / Serde / JSON / API / 직렬화