代理框架/開發工具
Pydantic AI 2.41/2.42がCodex、Copilotと連携、Deferred Tool承認データの検証も厳格化
2つの連続リリースで、直接利用できる画像生成APIに加え、ChatGPT/CodexサブスクリプションおよびGitHub CopilotのOpenAI互換エンドポイントに対応するproviderを追加した。2.42では形式が不正なDeferred Tool承認結果も拒否するため、アップグレードにより、従来は緩やかに受け入れられていたAgentワークフローが即座に失敗する可能性がある。

Pydantic AIは約24時間のうちに2.41.0と2.42.0をリリースした。焦点はチャット用ラッパーをさらに一層追加することではなく、より多くのモデルへの入口とツール実行データを、同一の型付きインターフェースに統合することにある。[2.41.0のリリースノート](https://github.com/pydantic/pydantic-ai/releases/tag/v2.41.0)では、独立した`ImageGenerator` APIが追加され、アプリケーションは完全なAgentループを事前に構築しなくても画像生成を呼び出せるようになった。また、ChatGPT/Codexサブスクリプションの認証を利用してサービスに接続する`openai-codex` providerも追加された。従来`ImageGeneration`と`XSearch`で使用されていた`fallback_model`は非推奨となり、名称が`fallback_subagent_model`に変更された。これにより、フォールバックの実行主体が通常のモデルパラメーターではなく、独自の実行経路を持つsubagentであることが、より明確に示されている。
翌日の[2.42.0](https://github.com/pydantic/pydantic-ai/releases/tag/v2.42.0)では、CopilotのOpenAI互換APIに接続する`GitHubCopilotProvider`も追加された。複数のサブスクリプション型モデル接続先を併用するチームにとっては、独自のトランスポートアダプターを作成する必要性を減らせる。ただし、「OpenAI互換」であっても、ツール呼び出し、サンプリングパラメーター、エラーコード、課金情報まで完全に同等であるとは限らない。新版ではこのほか、Anthropicで無効化されているサンプリング設定に対するBedrock Converseの処理を修正し、正規化された履歴内のAnthropic recovery情報を保持するようになった。また、code-modeの関数シグネチャ内で非object型を参照するJSON Schemaの`$ref`を直接インライン展開し、一部providerによってツールschemaが拒否される問題を回避している。
アップグレード時に、より入念なテストが必要なのは`DeferredToolResults.approvals`だ。2.42では、仕様に適合しないデータをAgentの復旧経路へ流し続けるのではなく、無効な承認値を拒否する。これは、人による承認、外部ワークキュー、Agentの状態の間に曖昧なセマンティクスが生じるのを防ぐ一方、公式に挙げられている互換性上の注意事項でもある。従来の緩やかなパースに依存するシリアライズ済みデータは、復旧時にエラーになる可能性がある。`ToolReturnContent`の検証も、JSONの各ノードでPython呼び出しが1回ずつ発生することを避けるよう変更された。これはフレームワークのオーバーヘッドを抑える最適化だが、公式からエンドツーエンドのAgentスループットは公表されていない。PyPIによると、[2.42.0パッケージ](https://pypi.org/project/pydantic-ai/2.42.0/)は9月9日にTrusted Publishingプロセスを通じてアップロードされた。エンジニアリングチームは、既存の承認記録、providerをまたぐツールschema、コスト追跡、サブスクリプション認証情報のライフサイクルについて、特に回帰テストを行うべきだ。