Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥

DSPyとLangfuseで行うプロンプト最適化

Avatar for Yuto Toya Yuto Toya
November 19, 2025
130

 DSPyとLangfuseで行うプロンプト最適化

LangfuseNight#4の登壇資料です

Avatar for Yuto Toya

Yuto Toya

November 19, 2025
Tweet

Transcript

  1. 長大化・複雑化 「精度を出すために ルールを追加し続け、 プロンプトが 秘伝のタレ化」 性能デグレ 「プロンプト変更したら、 別のユースケースで 性能が落ちた...」 モデル追従

    「GPT-5が更新されて、 またプロンプト調整が 必要になった」 バージョン管理 「この変更、誰がいつやった? Gitで管理する?」 プロンプト改善でのよくある悩み
  2. ビジネスの要求 (本音) 「コストを抑えたい」 Gemini ProやClaude Opusは⾼い。 Gemini FlashやClaude Haikuのような安価なモデル で本番運⽤したい。

    現実の壁 「安価なモデルは精度が出ない」 そのままでは⾼性能モデルに劣る。 → 結果、不⾜分を「⼈間の職⼈技」によるプロンプト エンジニアリングで必死に補っている。 根本的な課題 : 「コスト vs 精度」のジレンマ
  3. DSPy 「プロンプトをプログラミングする」 最適化フレームワーク 役割: 最適化の「実⾏エンジン」 Signature: LLMの⼊出⼒を定義 Module: 処理の組み合わせ (ReAct等)

    Optimizer: プロンプトを⾃動最適化 (GEPA等) 2つの主要プロダクト Langfuse LLMアプリ向け 観測‧管理プラットフォーム Tracing: 全実⾏のコスト‧レイテンシを追跡 Prompt Management: プロンプトのバージョン管理 Dataset Run: 実験結果の記録‧⽐較 役割: 最適化の「観測‧管理基盤」
  4. 人間 (開発者) 1. 評価関数と「データセット」を定義 Langfuse Dataset 2. データセットをLangfuseに登録‧管理 DSPy (Optimizer)

    3. Langfuseのデータセットを使い、プロンプトを⾃動最適化 (GEPA実⾏) Langfuse (Tracing / Dataset Run) 4. 全実⾏トレースと実験結果 (スコア) を⾃動記録‧⽐較 Langfuse Prompt Management 「自動プロンプトエンジニアリング」のサイクル 5. プロンプト作成をして、ラベルを⾃動更新
  5. 要求 ⽣成結果 問題点 HP最低値 時々 10 未満になる  ルール違反 (HP≥15) バランス調整

    極端なステータス配分(例:速度5)  実⽤性が低い 職業特性 特性要件を満たさないケースあり  盗賊らしさ不⾜ (速度<30) 名前の⼀貫性 時々職業イメージと不⼀致 (例:名前が「トリックスター 等」)  名前の質が低い Before: 手書きプロンプト (スコア: 89.7%) 評価用LLM:Gemini 2.5 Flash