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
DSPyとLangfuseで行うプロンプト最適化
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Yuto Toya
November 19, 2025
0
170
DSPyとLangfuseで行うプロンプト最適化
LangfuseNight#4の登壇資料です
Yuto Toya
November 19, 2025
Tweet
Share
More Decks by Yuto Toya
See All by Yuto Toya
LangfuseとClickHouse で進化するLLMOps
toyayuto
3
2.3k
Langfuse ✖️ Clickhouse MCPサーバを活用した分析
toyayuto
0
89
Langfuseを活用して、評価用プロンプトを育てていく
toyayuto
0
280
Langfuseを活用したLLM評価について
toyayuto
1
150
Featured
See All Featured
The Curse of the Amulet
leimatthew05
1
7.6k
Balancing Empowerment & Direction
lara
5
850
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
290
The Spectacular Lies of Maps
axbom
PRO
1
440
My Coaching Mixtape
mlcsv
0
31
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.8k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
54k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Un-Boring Meetings
codingconduct
0
180
Rebuilding a faster, lazier Slack
samanthasiow
85
9.4k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
55k
Transcript
ガオ株式会社 遠⽮侑⾳ Langfuse Night #4 2025/11/19 DSPy + Langfuseによる プロンプト最適化
長大化・複雑化 「精度を出すために ルールを追加し続け、 プロンプトが 秘伝のタレ化」 性能デグレ 「プロンプト変更したら、 別のユースケースで 性能が落ちた...」 モデル追従
「GPT-5が更新されて、 またプロンプト調整が 必要になった」 バージョン管理 「この変更、誰がいつやった? Gitで管理する?」 プロンプト改善でのよくある悩み
ビジネスの要求 (本音) 「コストを抑えたい」 Gemini ProやClaude Opusは⾼い。 Gemini FlashやClaude Haikuのような安価なモデル で本番運⽤したい。
現実の壁 「安価なモデルは精度が出ない」 そのままでは⾼性能モデルに劣る。 → 結果、不⾜分を「⼈間の職⼈技」によるプロンプト エンジニアリングで必死に補っている。 根本的な課題 : 「コスト vs 精度」のジレンマ
従来の手動アプローチ ⼈間がプロンプトを⼿で書く 評価‧テストが主観的で時間がかかる 再現性が低く、職⼈が必要 DSPy + Langfuse データ駆動で⾃動最適化 客観的で全て記録‧⽐較可能 安価なモデルでも⾼精度が狙える
解決策:2つのアプローチ
DSPy 「プロンプトをプログラミングする」 最適化フレームワーク 役割: 最適化の「実⾏エンジン」 Signature: LLMの⼊出⼒を定義 Module: 処理の組み合わせ (ReAct等)
Optimizer: プロンプトを⾃動最適化 (GEPA等) 2つの主要プロダクト Langfuse LLMアプリ向け 観測‧管理プラットフォーム Tracing: 全実⾏のコスト‧レイテンシを追跡 Prompt Management: プロンプトのバージョン管理 Dataset Run: 実験結果の記録‧⽐較 役割: 最適化の「観測‧管理基盤」
人間 (開発者) 1. 評価関数と「データセット」を定義 Langfuse Dataset 2. データセットをLangfuseに登録‧管理 DSPy (Optimizer)
3. Langfuseのデータセットを使い、プロンプトを⾃動最適化 (GEPA実⾏) Langfuse (Tracing / Dataset Run) 4. 全実⾏トレースと実験結果 (スコア) を⾃動記録‧⽐較 Langfuse Prompt Management 「自動プロンプトエンジニアリング」のサイクル 5. プロンプト作成をして、ラベルを⾃動更新
タスク ユーザーの要求から適切なRPGキャラクターを⽣成する 制約 ステータス合計は100 職業ごとのルール(例:戦⼠は魔⼒0) 名前も職業に合ったものを⽣成 (内部制約)特定のツールを必ず使⽤ デモ:RPGキャラ生成の最適化 利用モデル 回答モデル:Gemini
2.5 Flash lite
要求 ⽣成結果 問題点 HP最低値 時々 10 未満になる ルール違反 (HP≥15) バランス調整
極端なステータス配分(例:速度5) 実⽤性が低い 職業特性 特性要件を満たさないケースあり 盗賊らしさ不⾜ (速度<30) 名前の⼀貫性 時々職業イメージと不⼀致 (例:名前が「トリックスター 等」) 名前の質が低い Before: 手書きプロンプト (スコア: 89.7%) 評価用LLM:Gemini 2.5 Flash
平均点だけでなく、最低点が⼤幅に改善‧システムの安定性が向上 After: DSPy自動最適化 (最適化後 スコア: 97.9%) 最適化手法: GEPA Reflection (反省・内省)
LLM:Gemini 2.5 Pro スコア結果
何が嬉しい? ベースラインと最適化後のスコアが⼀⽬瞭然 全実験の⽐較がワンクリックで可能 Itemレベルで「どのサンプルが失敗したか」 を即座に特定 Langfuse: 最適化の「結果」を比較 Dataset Runでの⽐較画像
何が嬉しい? 「なぜスコアが低いのか」がわかる 「ルール遵守」は完璧だが「職業特性」 が弱い、など 次に何を改善すべきかが明確になる Langfuse: 最適化の「中身」を分析
DSPy (最適化側) 最適化が完了したら、Langfuse SDKを呼び出し プロンプトを保存 Langfuse (管理側) ⾃動的プロンプトの作成とラベルの更新を管理します。 Langfuse: 最適化と管理の「自動連携」
最適化後プロンプト
まとめ プロンプトは「書く」から「最適化する」ものへ DSPyが「最適化エンジン」 Langfuseが「観測‧管理基盤 」 2つで「⾃動最適化サイクル」が実現できる