OSS探訪

Python type hintsをruntime validationへつなぐ

スコアの見方

OSS規模スコアはStars・Watchers・Forks・Contributorsを対数圧縮して重み付けした現在の規模指標(上限なし)です。発掘スコアは現在のOSS規模スコアから発掘時点のOSS規模スコアを引いた値、更新ペースは直近30日Commit数、成長モメンタムは直近の観測期間におけるOSS規模スコア差、OSS健全度は取得できた更新状況・Community Health・Releaseの0〜100評価です。

Stars
28,908
主要言語
Python
ライセンス
MIT
リポジトリ最終更新
2026/09/29
ページ内ナビ

概要

PydanticはPythonのtype hintsを使って入力validation、型変換、serialization、JSON Schema生成を行うlibraryです。BaseModelを中心に外部入力を型付きdataへ変換できます。

特徴と向いている用途

公式資料に基づく紹介・実機未検証 · 内容確認日:

主な特徴

BaseModelで入力を検証して型付きobjectへ変換する

field annotationとmodel定義からvalidation ruleを組み立て、dictionaryやJSON由来の値をPython objectへ変換します。

出典:[2]

serializationとJSON Schemaを同じmodelから生成する

validationに使うmodel定義をserializationやschema generationにも再利用できます。

出典:[2]

向いている用途

API・設定・structured dataの入力境界に向く

untrustedまたはloosely typedなinputをapplication内部へ渡す前に検証し、型情報を保ちたい場合に適します。

出典:[2]

導入前の確認

v1からv2ではAPI差分が大きい

既存v1 codeを更新する場合はvalidator、serialization、config等のmigration guideを確認する必要があります。

出典:[2]

2.13.5基準でdependency互換性を確認する

FastAPI等のframeworkやpluginがPydantic major versionを固定している場合があるため、既存dependencyとの互換性を先に確認します。

出典:[3][2]

参考にした公式資料

  1. [1]pydantic/pydantic repository(2026-09-30)
  2. [2]Pydantic documentation(2026-09-30)
  3. [3]Pydantic v2.13.5 release(2026-09-30)
編集部からの補足

PydanticはPython type hintsをruntime validationへつなぎ、外部入力を型付きmodelへ変換したい場面に向きます。API request、設定、LLM structured output等で入力境界を明示できます。

3ステップで試す

  1. 1

    Pydantic 2.13.5を追加

    versionを固定してvirtual environmentへ追加します。

    python -m pip install "pydantic==2.13.5"
  2. 2

    BaseModelを定義

    Python type hintsから入力schemaを定義します。

    from pydantic import BaseModel class User(BaseModel): id: int name: str
  3. 3

    入力をvalidation

    外部inputを検証・変換し、型付きmodelとして扱えることを確認します。

    user = User.model_validate({"id": "1", "name": "Ada"})
公式READMEで確認

成長

成長の推移 · 直近30日

28,908 Stars

推移データを蓄積中です。

Built with

カテゴリとタグ

タグ

GitHubデータ

GitHubのデータGitHubの詳細データを見る

GitHub Topics

  • hints
  • json-schema
  • parsing
  • pydantic
  • python
  • python310
  • python311
  • python312
  • python313
  • python39
  • validation
Stars
28,908
Forks
3,002
Watchers
180
Open Issues
588
所有者種別
Organization
主要言語
Python
ライセンス
MIT
リポジトリ最終更新
2026/09/29

このOSSの使い方や活用事例をMarkdownで投稿できます。管理者が承認した後に公開されます。

情報の誤りを報告

掲載内容に誤りや古い情報があればお知らせください。

このページを読んで、次に何をすればよいか分かりましたか?