04 モニタリング
学習者ガイド: 04 監視
ワークショップ資料は公開されている langfuse/langfuse-workshop リポジトリで管理されています。実行可能なアプリケーション、チェックポイント ブランチ、ローカル セットアップはリポジトリを参照してください。
学習者ガイド: 04 監視
インストラクター ノート
- これはまだ UI ファースト チャプターですが、2 つの評価器タイプをミックスしています: セマンティック シグナル用の LLM に基づく判定と、確定的な不満信号用のコード評価器。
- シーディングで終了します: モニターがライブになった後、
npm run langfuse:seed:otel:no-scoresは現実的なproductionトラフィック (スコープ外、全大文字、異議エッジ ケースを含む) のバッチをプロジェクトにドロップし、評価器がすでに実行されているため、ライブでスコア付けされます。これは満足度の高い「監視がスケーリング時に点灯する」ペイオフです。:no-scoresバリアントは意図的です。スコアは学習者の独自の評価器から来るべきです。リマインド学習者が冪等ではありません (再実行でデータが増倍されます)。 - 最初の評価器の前に、プロジェクトに Project Settings → LLM Connections が設定されていることを確認してください。新規プロジェクトで、Set up evaluator ウィザードが Set up LLM connection ステップでブロックされます。学習者がそこで OpenAI 接続と構造化出力対応モデルを選択するようにします。
- マネージド テンプレートは Use existing の下の設定評価器ページにあります。Create from scratch → LLM as a judge evaluator をクリックした学習者は空白の Create new evaluator フォームに行き着き、テンプレートが失われたと思う場合があります。ダイアログを閉じてリストから選択するよう指示してください。
- 2 つのモニターが異なるオブザーベーションをターゲットにする理由を説明してください: スコープ外には生成のシステム プロンプトが必要であり、異議にはエージェント ルートの会話履歴が必要です。
- 全大文字モニターがコード ベースの理由を説明してください: 単純な確定的ルールで十分なときはモデル呼び出しは不要です。
- 最初の数個の評価器結果をデバッグ演習として使用してください。単なるパス/フェイル チェックではなく。
デモ リズム
- 最後の生成オブザーベーションに対して Out-of-Scope Request を設定します。
dad-it-support-chat-turnエージェント オブザーベーションに対して User Disagreement を設定します。- 同じ
dad-it-support-chat-turnエージェント オブザーベーションに対して全大文字コード評価器を設定します。 - 1 つのきれいなスコープ内ターン、1 つのスコープ外ターン、1 つの異議ターン、1 つの全大文字ターンを送信します。
npm run langfuse:seed:otel:no-scoresで本番トラフィックをシードし、トレーシング ビューをリフレッシュして、ライブ評価器がシードされたバッチをスコア付けするのを監視します。
注視する点
- User Disagreement の誤ったテンプレートを選択する場合。
.envからの Langfuse API キーで十分だと考える場合。判定ベースの評価器は Langfuse 側の LLM 接続も必要とします。last_user_messageを最後のトランスクリプト項目に最終生成上にマッピングする場合。最終生成にはユーザー ターン後のツール メッセージが含まれます。- 全大文字信号の場合、学習者ドキュメントの Python バージョンを優先してください。TypeScript エディターと戦う代わりに。
- 学習者が全大文字スコアが怒りの保証だと仮定する場合。トリアージ シグナルとして、判決ではなくフレーミングしてください。