claude-skills/

Anthropic公式スキル・プラグインの日本語ディレクトリ

last sync 22h ago
スキルOfficialdatabase

🔬databricks-mlflow-evaluation

プラグイン
databricks

説明

MLflow 3 GenAI エージェント評価。 次のような場合に使用: - `mlflow.genai.evaluate()` のコードを記述する - `@scorer` 関数を作成する - 組み込みスコアラー(Guidelines、Correctness、Safety、RetrievalGroundedness)を使用する - トレースから評価データセットを構築する - トレースの取り込みおよび本番環境モニタリングをセットアップする - ドメイン専門家のフィードバックをもとに MemAlign でジャッジを調整する - 自動プロンプト改善のために GEPA を用いた `optimize_prompts()` を実行する

原文を表示

MLflow 3 GenAI agent evaluation. Use when writing mlflow.genai.evaluate() code, creating @scorer functions, using built-in scorers (Guidelines, Correctness, Safety, RetrievalGroundedness), building eval datasets from traces, setting up trace ingestion and production monitoring, aligning judges with MemAlign from domain expert feedback, or running optimize_prompts() with GEPA for automated prompt improvement.

ユースケース

  • mlflow.genai.evaluate()のコードを記述する
  • @scorer関数を作成する
  • 組み込みスコアラーを使用する
  • トレースから評価データセットを構築する
  • トレースの取り込みおよび本番環境モニタリングをセットアップする

本文(日本語訳)

MLflow 3 GenAI 評価

このスキルのスコープとアップストリームの mlflow/skills との違い

OSS の mlflow/skills リポジトリには、agent-evaluation およびその関連スキル(instrumenting-with-mlflow-tracinganalyze-mlflow-traceretrieving-mlflow-tracesquerying-mlflow-metrics)が含まれています。 これらは、mlflow.genai.evaluate()、スコアラー/ジャッジ、データセット、トレーシングのセットアップ、5ステップの評価ループといった、MLflow GenAI 評価の汎用ワークフロー全般をカバーしています。

本スキルは、そのワークフローを再説明するのではなく、Databricks 固有のパターンをその上に重ねるものです。 次のような場合に使用:

  • Unity Catalog へのトレース取り込み — UCテーブルへのプロダクショントレースの書き込み、ログベースのモニタリング(patterns-trace-ingestion.md
  • UCのSMEラベリングセッションを利用したMemAlignジャッジのアライメント — Databricks上でドメイン専門家のフィードバックを収集し、カスタムジャッジをそれに合わせて調整する(patterns-judge-alignment.md
  • optimize_prompts() GEPAループ — UCデータセット上で動作する、Databricksの自動プロンプト最適化ドライバー(patterns-prompt-optimization.md
  • Databricks向けスコアラー/データセットパターン — UCテーブルをバックエンドとするデータセット、DatabricksのUIでトレースにタグを付けて評価対象に含める手法(patterns-datasets.mdpatterns-scorers.md

それ以外のすべて — 汎用の mlflow.genai.evaluate() 呼び出し、スコアラー作成パターン、Databricks 外でのデータセット作成、UCテーブルに紐付かない MLflow トレーシングのセットアップ — については、アップストリームの mlflow/skills/agent-evaluation スキルが正式な情報源であり、MLflow チームによって常に最新の状態に保たれています。


コードを書く前に

  1. GOTCHAS.md を読む — 失敗の原因となる15以上のよくある間違いを掲載
  2. CRITICAL-interfaces.md を読む — 正確な API シグネチャとデータスキーマを掲載

エンドツーエンドワークフロー

目的に応じて以下のワークフローに従ってください。各ステップには、参照すべきファイルが示されています。

ワークフロー 1: 初回評価セットアップ

MLflow GenAI 評価を初めて使用するユーザー、または新しい agent の評価を設定するユーザー向け。

ステップ アクション 参照ファイル
1 何を評価するかを理解する user-journeys.md(Journey 0: Strategy)
2 API パターンを学ぶ GOTCHAS.md + CRITICAL-interfaces.md
3 初期データセットを構築する patterns-datasets.md(Patterns 1–4)
4 スコアラーを選択/作成する patterns-scorers.md + CRITICAL-interfaces.md(組み込みリスト)
5 評価を実行する patterns-evaluation.md(Patterns 1–3)

ワークフロー 2: プロダクショントレース → 評価データセット

プロダクショントレースから評価データセットを構築する場合向け。

ステップ アクション 参照ファイル
1 トレースを検索・フィルタリングする patterns-trace-analysis.md(MCPツールセクション)
2 トレースの品質を分析する patterns-trace-analysis.md(Patterns 1–7)
3 対象トレースにタグを付ける patterns-datasets.md(Patterns 16–17)
4 トレースからデータセットを構築する patterns-datasets.md(Patterns 6–7)
5 期待値/グラウンドトゥルースを追加する patterns-datasets.md(Pattern 2)

ワークフロー 3: パフォーマンス最適化

agent の実行が遅い、またはコストが高い場合のデバッグ向け。

ステップ アクション 参照ファイル
1 スパンごとにレイテンシをプロファイリングする patterns-trace-analysis.md(Patterns 4–6)
2 トークン使用量を分析する patterns-trace-analysis.md(Pattern 9)
3 コンテキストの問題を検出する patterns-context-optimization.md(Section 5)
4 最適化を適用する patterns-context-optimization.md(Sections 1–4, 6)
5 再評価して効果を測定する patterns-evaluation.md(Pattern 6–7)

ワークフロー 4: リグレッション検出

agent のバージョン間を比較し、リグレッションを検出する場合向け。

ステップ アクション 参照ファイル
1 ベースラインを確立する patterns-evaluation.md(Pattern 4: named runs)
2 現在のバージョンを実行する patterns-evaluation.md(Pattern 1)
3 メトリクスを比較する patterns-evaluation.md(Patterns 6–7)
4 失敗したトレースを分析する patterns-trace-analysis.md(Pattern 7)
5 特定の失敗をデバッグする patterns-trace-analysis.md(Patterns 8–9)

ワークフロー 5: カスタムスコアラーの開発

プロジェクト固有の評価メトリクスを作成する場合向け。

ステップ アクション 参照ファイル
1 スコアラーのインターフェースを理解する CRITICAL-interfaces.md(Scorer セクション)
2 スコアラーパターンを選択する patterns-scorers.md(Patterns 4–11)
3 マルチ agent スコアラーの場合 patterns-scorers.md(Patterns 13–16)
4 評価を使ってテストする patterns-evaluation.md(Pattern 1)

ワークフロー 6: Unity Catalog へのトレース取り込みとプロダクションモニタリング

トレースをUnity Catalogに保存し、アプリケーションをインストルメント化して、継続的なプロダクションモニタリングを有効にする場合向け。

ステップ アクション 参照ファイル
1 UCスキーマをExperimentにリンクする patterns-trace-ingestion.md(Patterns 1–2)
2 トレースの送信先を設定する patterns-trace-ingestion.md(Patterns 3–4)
3 アプリケーションをインストルメント化する patterns-trace-ingestion.md(Patterns 5–8)
4 トレースソースを設定する(Apps/Serving/OTEL) patterns-trace-ingestion.md(Patterns 9–11)
5 プロダクションモニタリングを有効にする patterns-trace-ingestion.md(Patterns 12–13)
6 UCトレースをクエリ・分析する patterns-trace-ingestion.md(Pattern 14)

ワークフロー 7: MemAlign を使ったジャッジのアライメント

LLMジャッジをドメイン専門家の好みに合わせて調整する場合向け。 適切にアライメントされたジャッジは、評価精度、プロダクションモニタリングのシグナル品質、プロンプト最適化の精度など、すべての下流ユースケースを改善します。 このワークフローはプロンプト最適化とは独立して、単独でも大きな価値をもたらします。

ステップ アクション 参照ファイル
1 make_judge でベースジャッジを設計する(任意のフィードバックタイプ対応) patterns-judge-alignment.md(Pattern 1)
2 evaluate() を実行し、成功したトレースにタグを付ける patterns-judge-alignment.md(Pattern 2)
3 UCデータセットを構築し、SMEラベリングセッションを作成する patterns-judge-alignment.md(Pattern 3)
4 ラベリング完了後、MemAlignでジャッジをアライメントする patterns-judge-alignment.md(Pattern 4)
5 アライメント済みジャッジをExperimentに登録する patterns-judge-alignment.md(Pattern 5)
6 アライメント済みジャッジで再評価する(ベースライン) patterns-judge-alignment.md(Pattern 6)

ワークフロー 8: GEPAによる自動プロンプト最適化

optimize_prompts() を使用して、登録済みのシステムプロンプトを自動的に改善する場合向け。 任意のスコアラーと組み合わせて動作しますが、アライメント済みジャッジ(ワークフロー 7)と組み合わせることで、最もドメインに適したシグナルが得られます。 アライメントと最適化を組み合わせたフルエンドツーエンドループについては、user-journeys.md の Journey 10 を参照してください。

ステップ アクション 参照ファイル
1 最適化用データセットを構築する(inputs + expectations) patterns-prompt-optimization.md(Pattern 1)
2 GEPA + スコアラーで optimize_prompts() を実行する patterns-prompt-optimization.md(Pattern 2)
3 新バージョンを登録し、条件付きでプロモートする patterns-prompt-optimization.md(Pattern 3)

参照ファイルクイックルックアップ

参照ファイル 目的 読むタイミング
GOTCHAS.md よくある間違い コードを書く前に必ず最初に読む
CRITICAL-interfaces.md APIシグネチャ、スキーマ 評価コードを書く際
patterns-evaluation.md 評価の実行・比較 評価を実行する際
patterns-scorers.md カスタムスコアラーの作成 組み込みスコアラーでは不十分な場合
patterns-datasets.md データセット構築 評価データを準備する際
patterns-trace-analysis.md トレースのデバッグ agentの挙動を分析する際
patterns-context-optimization.md トークン/レイテンシの改善 agentが遅い、またはコストが高い場合
patterns-trace-ingestion.md UCトレースのセットアップ・モニタリング トレースストレージやプロダクションモニタリングを設定する際
patterns-judge-alignment.md MemAlignジャッジのアライメント、ラベリングセッション、SMEフィードバック ジャッジをドメイン専門家の好みに合わせる際
patterns-prompt-optimization.md GEPAによる最適化: データセット構築、optimize_prompts()、プロモート 自動プロンプト改善を実行する際
user-journeys.md ハイレベルワークフロー、アライメント+最適化のフルループ 新しい評価プロジェクトを開始する際、またはフルループを実行する際

重要なAPI仕様

  • 使用すべきAPI: mlflow.genai.evaluate()mlflow.evaluate()不可
  • データフォーマット: {"inputs": {"query": "..."}} (ネスト構造が必須)
  • predict_fn: **unpacked kwargs を受け取る(dictではない)
  • MemAlign: スコアラー非依存(floatboolcategorical など任意の feedback_value_type に対応);埋め込みモデルへのトークン消費が多いため、embedding_model を明示的に指定すること
  • ラベルスキーマ名の一致: align() がスコアを正しく対応付けるために、ラベリングセッション内のラベルスキーマの name は、evaluate() で使用するジャッジの name必ず一致させること
  • アライメント済みジャッジのスコア: アライメント前より低くなる場合があるが、これは想定された動作であり、
原文(English)を表示

MLflow 3 GenAI Evaluation

Scope vs upstream mlflow/skills

The OSS mlflow/skills repo ships agent-evaluation and related skills (instrumenting-with-mlflow-tracing, analyze-mlflow-trace, retrieving-mlflow-traces, querying-mlflow-metrics) that cover the generic MLflow GenAI evaluation workflow — mlflow.genai.evaluate(), scorers/judges, datasets, tracing setup, and the 5-step evaluation loop.

This skill layers Databricks-specific patterns on top of that workflow rather than restating it. Use this skill when you need any of:

  • Unity Catalog trace ingestion — production traces written into UC tables, log-based monitoring (patterns-trace-ingestion.md).
  • MemAlign judge alignment via UC SME labeling sessions — aligning custom judges against domain-expert feedback collected in Databricks (patterns-judge-alignment.md).
  • optimize_prompts() GEPA loop — Databricks' automated prompt-optimization driver running on a UC dataset (patterns-prompt-optimization.md).
  • Databricks-flavored scorer/dataset patterns — UC-table-backed datasets, tagging traces in the Databricks UI for inclusion (patterns-datasets.md, patterns-scorers.md).

For everything else — generic mlflow.genai.evaluate() calls, scorer authoring patterns, dataset creation outside Databricks, MLflow tracing setup that isn't UC-table-bound — the upstream mlflow/skills/agent-evaluation skill is the canonical source and is kept current by the MLflow team.

Before Writing Any Code

  1. Read GOTCHAS.md - 15+ common mistakes that cause failures
  2. Read CRITICAL-interfaces.md - Exact API signatures and data schemas

End-to-End Workflows

Follow these workflows based on your goal. Each step indicates which reference files to read.

Workflow 1: First-Time Evaluation Setup

For users new to MLflow GenAI evaluation or setting up evaluation for a new agent.

Step Action Reference Files
1 Understand what to evaluate user-journeys.md (Journey 0: Strategy)
2 Learn API patterns GOTCHAS.md + CRITICAL-interfaces.md
3 Build initial dataset patterns-datasets.md (Patterns 1-4)
4 Choose/create scorers patterns-scorers.md + CRITICAL-interfaces.md (built-in list)
5 Run evaluation patterns-evaluation.md (Patterns 1-3)

Workflow 2: Production Trace -> Evaluation Dataset

For building evaluation datasets from production traces.

Step Action Reference Files
1 Search and filter traces patterns-trace-analysis.md (MCP tools section)
2 Analyze trace quality patterns-trace-analysis.md (Patterns 1-7)
3 Tag traces for inclusion patterns-datasets.md (Patterns 16-17)
4 Build dataset from traces patterns-datasets.md (Patterns 6-7)
5 Add expectations/ground truth patterns-datasets.md (Pattern 2)

Workflow 3: Performance Optimization

For debugging slow or expensive agent execution.

Step Action Reference Files
1 Profile latency by span patterns-trace-analysis.md (Patterns 4-6)
2 Analyze token usage patterns-trace-analysis.md (Pattern 9)
3 Detect context issues patterns-context-optimization.md (Section 5)
4 Apply optimizations patterns-context-optimization.md (Sections 1-4, 6)
5 Re-evaluate to measure impact patterns-evaluation.md (Pattern 6-7)

Workflow 4: Regression Detection

For comparing agent versions and finding regressions.

Step Action Reference Files
1 Establish baseline patterns-evaluation.md (Pattern 4: named runs)
2 Run current version patterns-evaluation.md (Pattern 1)
3 Compare metrics patterns-evaluation.md (Patterns 6-7)
4 Analyze failing traces patterns-trace-analysis.md (Pattern 7)
5 Debug specific failures patterns-trace-analysis.md (Patterns 8-9)

Workflow 5: Custom Scorer Development

For creating project-specific evaluation metrics.

Step Action Reference Files
1 Understand scorer interface CRITICAL-interfaces.md (Scorer section)
2 Choose scorer pattern patterns-scorers.md (Patterns 4-11)
3 For multi-agent scorers patterns-scorers.md (Patterns 13-16)
4 Test with evaluation patterns-evaluation.md (Pattern 1)

Workflow 6: Unity Catalog Trace Ingestion & Production Monitoring

For storing traces in Unity Catalog, instrumenting applications, and enabling continuous production monitoring.

Step Action Reference Files
1 Link UC schema to experiment patterns-trace-ingestion.md (Patterns 1-2)
2 Set trace destination patterns-trace-ingestion.md (Patterns 3-4)
3 Instrument your application patterns-trace-ingestion.md (Patterns 5-8)
4 Configure trace sources (Apps/Serving/OTEL) patterns-trace-ingestion.md (Patterns 9-11)
5 Enable production monitoring patterns-trace-ingestion.md (Patterns 12-13)
6 Query and analyze UC traces patterns-trace-ingestion.md (Pattern 14)

Workflow 7: Judge Alignment with MemAlign

For aligning an LLM judge to match domain expert preferences. A well-aligned judge improves every downstream use: evaluation accuracy, production monitoring signal, and prompt optimization quality. This workflow is valuable on its own, independent of prompt optimization.

Step Action Reference Files
1 Design base judge with make_judge (any feedback type) patterns-judge-alignment.md (Pattern 1)
2 Run evaluate(), tag successful traces patterns-judge-alignment.md (Pattern 2)
3 Build UC dataset + create SME labeling session patterns-judge-alignment.md (Pattern 3)
4 Align judge with MemAlign after labeling completes patterns-judge-alignment.md (Pattern 4)
5 Register aligned judge to experiment patterns-judge-alignment.md (Pattern 5)
6 Re-evaluate with aligned judge (baseline) patterns-judge-alignment.md (Pattern 6)

Workflow 8: Automated Prompt Optimization with GEPA

For automatically improving a registered system prompt using optimize_prompts(). Works with any scorer, but paired with an aligned judge (Workflow 7) gives the most domain-accurate signal. For the full end-to-end loop combining alignment and optimization, see user-journeys.md Journey 10.

Step Action Reference Files
1 Build optimization dataset (inputs + expectations) patterns-prompt-optimization.md (Pattern 1)
2 Run optimize_prompts() with GEPA + scorer patterns-prompt-optimization.md (Pattern 2)
3 Register new version, promote conditionally patterns-prompt-optimization.md (Pattern 3)

Reference Files Quick Lookup

Reference Purpose When to Read
GOTCHAS.md Common mistakes Always read first before writing code
CRITICAL-interfaces.md API signatures, schemas When writing any evaluation code
patterns-evaluation.md Running evals, comparing When executing evaluations
patterns-scorers.md Custom scorer creation When built-in scorers aren't enough
patterns-datasets.md Dataset building When preparing evaluation data
patterns-trace-analysis.md Trace debugging When analyzing agent behavior
patterns-context-optimization.md Token/latency fixes When agent is slow or expensive
patterns-trace-ingestion.md UC trace setup, monitoring When setting up trace storage or production monitoring
patterns-judge-alignment.md MemAlign judge alignment, labeling sessions, SME feedback When aligning judges to domain expert preferences
patterns-prompt-optimization.md GEPA optimization: build dataset, optimize_prompts(), promote When running automated prompt improvement
user-journeys.md High-level workflows, full domain-expert optimization loop When starting a new evaluation project or running the full align + optimize cycle

Critical API Facts

  • Use: mlflow.genai.evaluate() (NOT mlflow.evaluate())
  • Data format: {"inputs": {"query": "..."}} (nested structure required)
  • predict_fn: Receives **unpacked kwargs (not a dict)
  • MemAlign: Scorer-agnostic (works with any feedback_value_type -- float, bool, categorical); token-heavy on the embedding model so set embedding_model explicitly
  • Label schema name matching: The label schema name in the labeling session MUST match the judge name used in evaluate() for align() to pair scores
  • Aligned judge scores: May be lower than unaligned judge scores -- this is expected and means the judge is now more accurate, not that the agent regressed
  • GEPA optimization dataset: Must have both inputs AND expectations per record (different from eval dataset)
  • Episodic memory: Lazily loaded -- get_scorer() results won't show episodic memory on print until the judge is first used
  • optimize_prompts: Requires MLflow >= 3.5.0

See GOTCHAS.md for complete list.

Related Skills

原文・著作権は Anthropic および各プラグイン作者に帰属します。日本語訳は Claude API による自動翻訳です。