Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
PydanticAIの基本と活用
Search
yuuki shimizu
December 05, 2024
Programming
0
53
PydanticAIの基本と活用
yuuki shimizu
December 05, 2024
Tweet
Share
More Decks by yuuki shimizu
See All by yuuki shimizu
Anthropicが発表したClioについて
olivemochi23
0
18
Introducing the Model Context Protocol
olivemochi23
0
13
「12月6日発表 中小企業支援策・補助金最新情報
olivemochi23
0
18
多様性を重視した集団ベースのモデルマージ
olivemochi23
0
21
ファイブフォース分析まとめ
olivemochi23
1
21
Anthropic のMCPについて
olivemochi23
0
36
Other Decks in Programming
See All in Programming
asdf-ecspresso作って 友達が増えた話 / Fujiwara Tech Conference 2025
koluku
0
1.5k
盆栽転じて家具となる / Bonsai and Furnitures
aereal
0
2k
Асинхронность неизбежна: как мы проектировали сервис уведомлений
lamodatech
0
1.4k
Amazon Nova Reelの可能性
hideg
0
230
Fixstars高速化コンテスト2024準優勝解法
eijirou
0
190
毎日13時間もかかるバッチ処理をたった3日で60%短縮するためにやったこと
sho_ssk_
1
560
20年もののレガシープロダクトに 0からPHPStanを入れるまで / phpcon2024
hirobe1999
0
1k
どうして手を動かすよりもチーム内のコードレビューを優先するべきなのか
okashoi
3
910
php-conference-japan-2024
tasuku43
0
440
非ブラウザランタイムとWeb標準 / Non-Browser Runtimes and Web Standards
petamoriken
0
430
chibiccをCILに移植した結果 (NGK2025S版)
kekyo
PRO
0
160
[JAWS-UG横浜 #80] うわっ…今年のServerless アップデート、少なすぎ…?
maroon1st
0
120
Featured
See All Featured
Product Roadmaps are Hard
iamctodd
PRO
50
11k
A Tale of Four Properties
chriscoyier
157
23k
A designer walks into a library…
pauljervisheath
205
24k
Docker and Python
trallard
43
3.2k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
27
1.5k
Building Applications with DynamoDB
mza
93
6.2k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Into the Great Unknown - MozCon
thekraken
34
1.6k
How to Think Like a Performance Engineer
csswizardry
22
1.3k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3.1k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
28
4.5k
Transcript
PydanticAIの基本と活⽤ PydanticAIは、PythonでのLLM活⽤を加速するフレームワークである。こ のプレゼンテーションでは、PydanticAIの全体像と特徴を解説し、開発者 やAI·データサイエンスに関⼼を持つ幅広い聴衆に向けて、その活⽤⽅法 を紹介する。 by yuuki shimizu YS
PydanticAIとは? 定義 PythonでGenerative AIを簡単 かつ効率的に活⽤するための フレームワークである。エー ジェント構造でコードの再利 ⽤性が⾼く、プロダクション レベルのアプリケーション開 発を⽀援する。
特徴 モデル⾮依存、型安全性、 Pydanticとの統合、柔軟なツ ールシステム、監視機能を備 えている。 LLM連携 OpenAI、Gemini、Groqなど、様々なLLMと連携可能である。
なぜPydanticAIを選ぶべきか 他のフレームワークとの違い PydanticAIは、Pydanticの特性を最⼤限 活⽤し、LLM活⽤のベストプラクティ スを提供する。 具体的なメリット 簡単な初期設定、⾼度な拡張性、豊富 な応⽤例を持つ。少ないコードでエー ジェントが構築可能で、型安全な依存 関係を導⼊し、テストがしやすい。
ユースケース チャットボット開発、⾃然⾔語による データベース操作、タスクの⾃動化な ど、実⽤性が⾼い。
基朷構造 1 エージェント LLMインターフェースの中⼼ 2 システムプロンプト LLMへの初期指⽰ 3 ツール 外部関数やデータ取得ロジック
4 構造化レスポンス 出⼒の型やデータ形式定義 5 依存関係 テスト可能な外部データ注⼊ 開発者は最⼩限のコードでエージェントを定義し、再利⽤できる。基朷的な使⽤例では、OpenAIのGPT-4モデルを使⽤し、1⽂で 簡潔に回答するエージェントを作成できる。
実践例 銀⾏サポートエージェン ト 顧客名や残⾼を取得し、ユー ザー問い合わせに応答する。 型安全な依存関係を使⽤して 顧客データを注⼊する。 ダイスゲームエージェン ト ユーザーの予想をもとにサイ
コロを振り、結果を⽣成す る。モデルとツールの連携例 として簡潔で分かりやすい。
PydanticAIの主要機能 1 システムプロンプト 静的プロンプト(コード内で定義)と動的プロンプト (実⾏時に⽣成)の併⽤が可能である。 2 ツールの登録⽅法 @agent.toolでコンテキストを使うツールを登録し、tools パラメータで複数ツールをまとめて登録できる。 3
リフレクションと⾃⼰修正 モデルが不完全な応答を返した場合、リトライして改善 を試みる仕組みを持つ。
導⼊とセットアップ 1 インストール pip install pydantic-ai コマンドでインストールする。 2 環境変数設定 必要な環境変数(例:OPENAI_API_KEY)を設定する。
3 サンプル実⾏ python -m pydantic_ai_examples.pydantic_model コマンドで 動作確認が可能である。
開発プロセス 1 エージェントの作成 システムプロンプト、依存関係、レスポンス型を定義する。 2 ツールの登録 必要に応じて外部機能を追加する。 3 実⾏とデバッグ エラーやモデルの応答を確認しながら調整する。
4 モニタリング Logfireを使い、パフォーマンスを追跡する。
応⽤シナリオ RAG Retrieval-Augmented Generation。モデルに動的なデータを提供して回答精 度を向上させる。 チャットボット メッセージ履歴を利⽤して会話を継続する。 業務⽀援 カスタマーサポートや技術⽀援などの実⽤的なアプリケーションを構築 できる。
まとめと次のステップ PydanticAIの利点 型安全性とツールの柔軟性に より⽣産性が向上し、モデル ⾮依存性で多様なアプリケー ションに対応できる。 次のステップ 実例コードを試し、プロジェ クトに導⼊する。ドキュメン トやAPIリファレンスを活⽤
して理解を深める。