pxi-eval-dataset

Generate synthetic YAML evaluation datasets for the PXI eval harness.

11.3k|1.1k|Updated Nov 9, 2022
One-click install
npx skills add https://github.com/Arize-ai/phoenix --skill pxi-eval-dataset
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: pxi-eval-dataset
Source: https://github.com/Arize-ai/phoenix/tree/main/.agents/skills/pxi-eval-dataset
Command: npx skills add https://github.com/Arize-ai/phoenix --skill pxi-eval-dataset

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) components.

What problem does it solve?

Writing evaluation datasets for the PXI agent harness by hand is slow and error-prone: ground truth annotations drift, coverage gaps go unnoticed, and failures get misattributed between the dataset, the agent, and the evaluators. This Skill produces small, well-targeted synthetic YAML datasets that drop into evals/pxi/datasets/ and run through the PXI experiment harness with deterministic scoring.

Core Features & Use Cases

  • Coverage-driven dataset authoring: Walks parameter, value, combination, negative, and ambiguity dimensions to draft 10-50 realistic user queries with mixed voice, difficulty, and polarity targets.
  • Cross-model annotation protocol: Fans out ground-truth annotation to three independent subprocesses (Sonnet, Opus, and Codex via a Bash wrapper) plus an orchestrator subprocess that adjudicates disagreements against the tool spec and records agreement metadata.
  • Evaluator gap detection: Inspects evals/pxi/evaluators/ at use time and pauses to propose a new evaluator when the behavior under test cannot be scored by existing ones.
  • Failure triage workflow: Classifies experiment failures into dataset, agent, or harness/evaluator issues and prescribes the fix order.
  • Use Case: Ask to "write evals for the set_time_range tool" and get a validated YAML regression dataset with per-example annotation provenance, run end-to-end against the real PXI agent.

Quick Start

Ask the assistant to write evals covering a specific PXI tool such as set_spans_filter, and it will survey the evaluators, draft coverage-diverse queries, annotate ground truth via cross-model subprocesses, and validate the dataset through the experiment harness.

Frequently Asked Questions about pxi-eval-dataset

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I write evals for a PXI tool in Phoenix?

Invoke the skill with the target tool name; it reads the tool definition and parameters_json_schema, surveys existing evaluators, drafts coverage-diverse queries, and annotates expected outputs via three independent model subprocesses. The result is a YAML dataset saved to evals/pxi/datasets/ and validated through run_experiment.

How does cross-model annotation of eval ground truth work?

Each example is annotated in three fresh subprocesses: Sonnet and Opus via the Agent tool, and Codex via the annotate_via_codex.sh Bash wrapper in read-only sandbox mode. A fourth orchestrator subprocess merges the anonymized candidates, drops spec-invalid values, and records an agreement level of high, medium, or low in the example metadata.

What happens if no existing evaluator can score my behavior?

The skill stops and summarizes the gap, proposing a new evaluator with a name, the expected field it reads, and score semantics. With your approval it implements the evaluator under evals/pxi/evaluators/, adds unit tests, exports it, and then continues dataset generation.

Why do eval dataset examples fail after running the experiment?

Failures fall into three categories: dataset or annotation issues where the expectation is wrong or too strict, genuine agent issues where the harness caught a real bug, and harness or evaluator issues where matching logic is broken. The skill prescribes fixing harness issues first, dataset issues second, and escalating genuine agent issues.

What are the limitations of the PXI eval harness?

The harness invokes the agent once per example, so multi-turn conversational behaviors are out of scope. Datasets must include a non-empty splits list, unique example ids, and only evaluators listed in the dataset's top-level evaluators field are run.