Skip to main content
友田 陽大

Category

Pydantic v2 実装ガイド(境界バリデーション/パフォーマンス/カスタム型/設定管理/v1→v2移行/エラー設計/技術選定/テスト/PydanticAI/LLM構造化出力)

Pydanticは「システム境界の外から来るデータを信頼しない」という規律を、型アノテーションで宣言的に表現するライブラリです。Rust製pydantic-coreを中核に、外部入力・設定・API・LLM出力をモデルとして検証し、信頼できるデータだけを内側へ通す。本クラスタは、BaseModel/Field/field_validator/model_validator/strictの基礎(境界バリデーション)から、TypeAdapter再利用・判別共用体・融合パースによるパフォーマンス最適化、Annotatedパターンで検証を再利用可能なドメイン型へ昇格させるカスタム型設計、pydantic-settingsによる型安全な設定・シークレット管理、v1→v2の安全な移行、ValidationErrorを使いやすく安全なAPIエラーに変える設計、dataclasses/TypedDict/attrs/msgspecとの技術選定、polyfactory/Hypothesisによるテスト戦略、そしてPydanticAIによる型安全なAIエージェントと生APIでのLLM構造化出力まで——型安全・セキュリティ・可観測性・回復性・テスト容易性を軸に、Pydantic v2公式ドキュメントに忠実な実コードで体系化します。FastAPI/SQLAlchemy/Alembicを含むPythonバックエンド全体の設計は『Pythonバックエンド』クラスタ、marshmallowとの比較・使い分けは『marshmallow』クラスタを参照してください。

10 articles in total

Foundational guide

Foundational guide (start here)

Python
Pydantic
型安全
バリデーション
FastAPI

Pydantic v2 Practical Guide: Protect the System Boundary with Types and Pass Only Trustworthy Data

Faithful to the Pydantic v2 official documentation, we explain — from a boundary-validation practical perspective — declarative models with BaseModel/Field, field_validator/model_validator, model_dump, ConfigDict and strict mode, pydantic-settings, and v1 migration.

16 min read

Related practical articles