BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//pretalx//pretalx.com//pyconjp2026//speaker//NAJ9RS
BEGIN:VTIMEZONE
TZID:Asia/Tokyo
BEGIN:STANDARD
DTSTART:20250821T000000
TZNAME:JST
TZOFFSETFROM:+0900
TZOFFSETTO:+0900
END:STANDARD
END:VTIMEZONE
BEGIN:VEVENT
SUMMARY:LLMの出力を"いい感じに"する技術 — FastAPIで仕上
 げるAI Agent設計パターンを野球AIで実践した話 - Shinichi N
 akagawa(@shinyorke)
DTSTART;TZID=Asia/Tokyo:20260821T133000
DTEND;TZID=Asia/Tokyo:20260821T140000
DTSTAMP:20260818T075633Z
UID:pretalx-pyconjp2026-FXRALX@pretalx.com
DESCRIPTION:**「全ての野球に関わる人にAI Agentで野球に新
 たな価値を吹き込みたい」**\n\n私はそんな気持ちでMLB
 （メジャーリーグ）野球分析AI Agent「The Scouter 3」を開
 発しました（[詳細](https://shinyorke.hatenablog.com/entry/ai-agent
 -for-all-baseball)）。\n\nその際に私は以下の課題に直面し
 ました。\n\n- LLMのレスポンスが遅い\n- 出力が不安定\n\n
 本トークでは、これらの課題をFastAPIの設計パターンで
 どうやって向き合い、解決したかを紹介します。\n\n## 
 仕様とシステム構成\n\n- Geminiを用いてMLBの選手レポー
 トを出力\n- BackendはFastAPI\, FrontendをNext.jsで構築\n- Cloud R
 un（Google Cloud）でホスト\n\n## トークの構成\n\nLive Demoで
 実際の分析レポートをお披露目します。\n\nその上で2つ
 の課題と意思決定について話します。\n\n### LLMのレスポ
 ンスが遅い\n\nSSE（Server-Sent Events）を選択した背景からF
 astAPI StreamingResponseの実装までをコード付きで解説し、Ne
 xt.jsプロキシやCloud Runタイムアウトなど運用上の落とし
 穴も一問一答で紹介します。\n\n### 出力が不安定\n\nMarkd
 ownフォーマット制御とPydanticによる出力バリデーション
 の合わせ技、野球ドメイン知識をプロンプトにどう注
 入するかの設計判断を共有します。\n\n### 技術的な意思
 決定\n\nLangChain等のフレームワークを使わずgoogle-genai SDK
 を直接利用した判断基準。\n\nLLMをプロダクトに組み込
 むエンジニアが、知見として持ち帰れる再現可能な設
 計パターンを提供します。
LOCATION:Dahlia 2
URL:https://pretalx.com/pyconjp2026/talk/FXRALX/
END:VEVENT
END:VCALENDAR
