Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Use when working on the Evaluator plugin CLI, jobs, SDK-backed specs, metric types, or plugin-owned Evaluator skills.
| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-01 | ✗→✓ | ▲ Improved | 51% | 0% |
| case-02 | ✗→✓ | ▲ Improved | 47% | 0% |
| case-07 | ✗→✓ | ▲ Improved | 100% | 0% |
| case-08 | ✗→✓ | ▲ Improved | 46% | 0% |
| case-13 | ✗→✓ | ▲ Improved | 171% | 0% |
The Plugin CLI entrypoint is uv run nemo evaluator.
Use this skill to choose an evaluation interface and metric, validate a minimal example, submit a NeMo Platform evaluation job, and retrieve its results.
Establish these inputs before building an evaluation:
or task-driven agent work.
Read Metric Selection before choosing a metric for a rubric, RAG workflow, or tool-calling evaluation.
| Need | Interface | | --- | --- | | Fast metric iteration without NeMo Platform | nemo_evaluator_sdk.Evaluator | | Dataset-driven platform job | client.evaluator.submit(...) or nemo evaluator evaluate submit | | Multiple inline/stored metric refs in one job | nemo evaluator evaluate submit with an EvaluateInputSpec | | Task-driven platform job | nemo evaluator agent-evaluate submit | | Reusable platform definitions and result indexes | client.evaluator.metrics, .tasks, .tasksets, .eval_results, .agent_eval_results |
Default to submit for every plugin evaluation. The plugin's local execution path — client.evaluator.run() and the nemo evaluator ... run CLI verb — is being retired, so do not build on it even though --help still lists it. For fast metric iteration without the platform, use the standalone nemo_evaluator_sdk.Evaluator instead.
configuration, field mapping, job lifecycle, and custom metric packaging.
result queries.
api_key_secret is an environment-variable name standalone but a NeMoPlatform secret name on submit. See API Auth.
missing, not a duplicate job. Read the response body.
intent is grader metadata and is never shown to the agent; only inputsreaches it.
item.* for dataset rows but reference.*, sample.*,and inputs.* in agent evaluation.
Always call job.wait_until_done() before retrieving results or downloading artifacts.
All commands in this file assume that the shell's working directory is the root of the NVIDIA-NeMo/nemo-platform repository.
In a NeMo Platform repository checkout, run commands through the workspace:
bash# confirms plugin readiness and lists the registered evaluator jobs. uv run nemo evaluator info # lists available metric names; add a metric name to print its schema. uv run nemo evaluator metric-types # next two commands print the dataset-driven and task-driven job input and # output schemas - can be very large, use with caution to avoid filling up the context window. uv run nemo evaluator evaluate explain uv run nemo evaluator agent-evaluate explain
When the skill and plugin are installed, use the installed nemo command without assuming a repository root or manually activating .venv.
Resolve bundled assets relative to this skill directory. In this repository the canonical path is skills/nemo-evaluator-plugin; an installed skill may live under a different skills root.
| Path | Use | | --- | --- | | assets/specs/exact_match_metric.json | Two-row offline smoke spec; submit as-is | | assets/specs/llm_as_judge.json | Online generation + judge; local-first (NVIDIA_API_KEY) | | assets/specs/fabric_agent_eval.json | Task-driven Fabric runner spec | | assets/examples/plugin_sdk_examples.py | Copyable SDK snippets for each plugin surface |
| Script | Purpose | Arguments | | --- | --- | --- | | scripts/generate_example_specs.py | Generate or drift-check bundled specs | --check, --write |
In this repository, NeMo uses the displayed workspace command:
bashuv run --frozen python skills/nemo-evaluator-plugin/scripts/generate_example_specs.py --check
Do not assume a client-specific run_script() helper; use the displayed uv run command.
for the two-row pass/fail smoke test and its CLI submission.
when dataset columns need field_mapping.
for submission, terminal waiting, result retrieval, and artifact download.
for reusable definitions, and Query persisted results for result lookup.
Standalone SDK evaluation
Use AgentEvaluator().run(...) for standalone task-driven SDK evaluation. Its target can be a Model, a GenericAgent, or a direct AgentTaskRunner.
Platform job evaluation
Use the plugin agent-evaluate submit job for platform task evaluation. Its target is a ModelTarget, AgentTarget, CodexRunnerTarget, FabricRunnerTarget, or HarborRunnerTarget; alternatively provide precomputed trials. Provide exactly one of target or trials.
Submission accepts inline tasks or a stored TasksetRef. Stored tasksets are resolved in the target workspace.
Read Agent Evaluation for inline tasks, TasksetRef, concurrency, fail-fast behavior, result artifacts, and runner configuration.
Fabric runner examples and tests need the optional harness adapters and the matching Relay gateway:
bashuv sync --frozen --package nemo-evaluator-sdk --extra fabric --inexact script/dev-install-fabric.sh
The install script downloads the checksum-verified nemo-relay binary that matches the locked Python bindings. Add its reported directory to PATH, then use uv run --frozen --no-sync ... for Fabric checks so uv does not remove the optional adapters.
Report a completed platform evaluation in this form:
textJob: <job-name> Status: <terminal-status> Metrics: <metric-names> Mean: <aggregate-mean> Artifacts: <downloaded result or artifact location> Errors: <error messages>
agent, remote metric, or durable submission.
prompts, or parsers.
Read Evaluator troubleshooting when schema, authentication, job, result, or runner behavior fails.
Never print, serialize, or commit secret values. Store only environment-variable names or platform secret references in specs and examples.
Other measured skills in the registry, with their headline benchmark lift.