mcpField
P
pydanticai-docs

pydanticai-docs

github.com/dougtrajano開発381115 回インストール5 日前に更新
リポジトリ

pydanticai-docs について

pydanticai-docsは、Pydantic AI Pythonエージェントフレームワークを使う開発者向けのドキュメントスキルです。基本概念を説明し、テーマ別の参照ファイルへ案内して、根拠のないAPI情報を避けます。

主な機能

  1. 01エージェントの作成と実行
  2. 02関数ツールと依存性注入
  3. 03Pydanticによる構造化出力
  4. 04テーマ別の参照ドキュメント案内

活用シーン

  1. 01エージェントの構築と実行方法の確認
  2. 02ツール登録と依存関係の確認
  3. 03構造化出力の情報検索
  4. 04MCPやモデルプロバイダーの質問を参照先へ案内

MCP 対応

MCPサーバー連携を追加トピックとして挙げ、詳細の参照先に `references/MCP.md` を指定しています。

インストール

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

$npx skills add https://github.com/dougtrajano/pydantic-ai-skills --skill pydanticai-docs

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

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
AGENT.md
DEPENDENCIES.md
FUNCTION_TOOLS.md
MCP.md
MESSAGES.md
MODELS.md
OUTPUT.md
TOOLS_AND_TOOLSETS.md

詳細

Pydantic AI ドキュメントスキル

Pydantic AI とは?

Pydantic AI は、型安全で依存性注入に対応した生成 AI アプリケーションを構築するための、本番環境対応の Python エージェントフレームワークです。複数の LLM プロバイダー、Pydantic モデルによる構造化出力、組み合わせ可能なマルチエージェントパターンをサポートしています。

ドキュメント:https://ai.pydantic.dev/


コアコンセプト

1. エージェントのインスタンス化
from pydantic_ai import Agent

agent = Agent(
    'openai:gpt-4o',          # model string: provider:model-name
    system_prompt='Be helpful.',
)
result = agent.run_sync('What is the capital of France?')
print(result.output)

コンストラクターの全パラメーター、実行メソッド、ストリーミングについては、references/AGENT.md を読み込んでください。

2. 関数ツール(@agent.tool)
from pydantic_ai import Agent, RunContext

agent = Agent('openai:gpt-4o', deps_type=str)

@agent.tool
def get_user_name(ctx: RunContext[str]) -> str:
    """Return the current user's name."""
    return ctx.deps

result = agent.run_sync('What is my name?', deps='Alice')

RunContext が不要な場合は、@agent.tool_plain を使用してください。ツールの登録、戻り値の型、再試行については、references/FUNCTION_TOOLS.md を読み込んでください。

3. 依存性注入(RunContext)
from dataclasses import dataclass
from pydantic_ai import Agent, RunContext

@dataclass
class MyDeps:
    api_key: str
    user_id: int

agent = Agent('openai:gpt-4o', deps_type=MyDeps)

@agent.tool
async def fetch_data(ctx: RunContext[MyDeps]) -> str:
    return f'User {ctx.deps.user_id}'

RunContext のフィールド、システムプロンプトへの注入、出力バリデーターについては、references/DEPENDENCIES.md を読み込んでください。

4. 構造化出力
from pydantic import BaseModel
from pydantic_ai import Agent

class CityInfo(BaseModel):
    city: str
    country: str

agent = Agent('openai:gpt-4o', output_type=CityInfo)
result = agent.run_sync('Where were the 2012 Olympics held?')
print(result.output)  # CityInfo(city='London', country='United Kingdom')

共用体型、プレーンなスカラー値、output_validator、部分的な検証については、references/OUTPUT.md を読み込んでください。


その他のトピック

これらのトピックについては、指定されたリファレンスファイルを読み込むか、ドキュメントのリンクを参照してください。ここでは実装コードは提供していません。

トピックリファレンスファイルドキュメントリンク
メッセージ履歴/複数ターンの会話references/MESSAGES.mdhttps://ai.pydantic.dev/core-concepts/message-history/index.md
モデル/プロバイダーの設定(すべてのプロバイダー)references/MODELS.mdhttps://ai.pydantic.dev/models/overview/index.md
ツールセット(FunctionToolset、合成)references/TOOLS_AND_TOOLSETS.mdhttps://ai.pydantic.dev/tools-toolsets/toolsets/index.md
MCP サーバーの統合references/MCP.mdhttps://ai.pydantic.dev/mcp/client/index.md
マルチエージェントアプリケーションドキュメントリンクのみhttps://ai.pydantic.dev/guides/multi-agent-applications/index.md
グラフ(pydantic-graph)ドキュメントリンクのみhttps://ai.pydantic.dev/graph/graph/index.md
評価(pydantic-evals)ドキュメントリンクのみhttps://ai.pydantic.dev/evals/evals/index.md
耐久実行ドキュメントリンクのみhttps://ai.pydantic.dev/durable_execution/overview/index.md
再試行ドキュメントリンクのみhttps://ai.pydantic.dev/core-concepts/retries/index.md
テスト(TestModel、override)ドキュメントリンクのみhttps://ai.pydantic.dev/guides/testing/index.md
Logfire の統合ドキュメントリンクのみhttps://ai.pydantic.dev/integrations/logfire/index.md
ネイティブツール(旧称:組み込みツール)ドキュメントリンクのみhttps://ai.pydantic.dev/tools-toolsets/native-tools/index.md
ストリーミングドキュメントリンクのみhttps://ai.pydantic.dev/core-concepts/agent/index.md

エージェントの動作ルール

  1. まずこのファイルを参照する — まずコアコンセプトに基づいて回答し、さらに詳しい情報が必要な場合に限り、ユーザーの質問に関連する特定の references/<CONCEPT>.md を読み込んでください。
  2. API の詳細を捏造しない — 上記の公式インデックスにあるリンクを使用し、必ず「詳細については、こちらを参照してください:<URL>」で締めくくってください。
  3. コア以外のトピックでは実装コードを提供しない — 「その他のトピック」表に記載されたトピックについては、ドキュメントリンクのみを返してください。
  4. 具体性を重視する — ユーザーの質問が特定のプロバイダーを対象としている場合は、概要ではなく、より具体的なページ(例:models/anthropic/index.md)を案内してください。
  5. 対象外 — ユーザーのコードを受動的にデバッグしたり、本番環境向けのエージェント実装一式を生成したり、Pydantic AI エコシステムに関係のない質問に回答したりしないでください。

コメント