mcpField
P
pydantic

pydantic

github.com/jiatastic開発10184 回インストール41 週間前に更新
リポジトリ

pydantic について

Python の型注釈付き Pydantic モデルでデータを検証、シリアライズするためのスキルです。カスタム検証、JSON Schema の生成、環境変数に基づく設定を扱い、構造化データを扱う開発者向けです。

主な機能

  1. 01型付きモデルの検証
  2. 02フィールドとモデルのバリデーター
  3. 03Python と JSON のシリアライズ
  4. 04JSON Schema の生成
  5. 05環境変数による設定

活用シーン

  1. 01リクエストとレスポンスの検証
  2. 02信頼できない入力の正規化
  3. 03ドキュメント用 Schema の生成

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/jiatastic/open-python-skills --skill pydantic

インストール後、Claude Code で/pydanticを入力して読み込まれたか確認します。

同梱ファイルreferences/pitfalls.mdreferences/quickstart.md

詳細

pydantic

Pydantic モデルを使用した、型駆動の検証とシリアライズです。

概要

Pydantic は Python の型ヒントを使用してデータを検証し、model_dump() と JSON スキーマ出力によって豊富なシリアライズ機能を提供します。

使用する場面

  • リクエスト/レスポンスのペイロードを検証する
  • 信頼できない入力を正規化する
  • ドキュメント用の JSON スキーマを生成する

クイックスタート

uv pip install pydantic
from pydantic import BaseModel

class User(BaseModel):
    id: int
    email: str

user = User(id=1, email="[email protected]")

主なパターン

  1. 型付きフィールド:厳密なスキーマ定義です。
  2. フィールドバリデーター:カスタムの検証ロジックです。
  3. モデルバリデーター:フィールド間のチェックです。
  4. シリアライズ:model_dump() と model_dump_json() を使用します。
  5. 設定:BaseSettings を使用した、環境変数に基づく設定です。

例:field_validator

from pydantic import BaseModel, field_validator

class Model(BaseModel):
    name: str

    @field_validator("name")
    @classmethod
    def ensure_not_empty(cls, v: str):
        if not v:
            raise ValueError("name required")
        return v

例:model_validate + model_dump

from pydantic import BaseModel

class Model(BaseModel):
    foo: int

model = Model.model_validate({"foo": 1})
print(model.model_dump())

トラブルシューティング

  • 予期しない型変換:必要に応じて厳密な型を使用してください
  • 低速なバリデーター:最小限に抑えてください
  • 変更可能なデフォルト値:default_factory を使用してください

参考資料

コメント