# CALVIN (/docs/evaluation/benchmark-hub/calvin)



## About [#about]

CALVIN external benchmark task manifest for long-horizon language-conditioned manipulation.

## Metrics [#metrics]

CALVIN external benchmark task manifest for long-horizon language-conditioned manipulation.

### Task YAML [#task-yaml]

`worldfoundry/data/benchmarks/tasks/external/calvin.yaml`

### Primary [#primary]

* `success_rate`

| Metric             | Focus                                                                                              |
| ------------------ | -------------------------------------------------------------------------------------------------- |
| `success_rate`     | Share of episodes or tasks that complete successfully.                                             |
| `sequence_success` | Share of episodes or tasks that complete successfully.                                             |
| `task_success`     | Share of episodes or tasks that complete successfully.                                             |
| `completion`       | Fraction of consecutive CALVIN language-conditioned sub-tasks completed without environment reset. |

## Environment setup [#environment-setup]

### Runtime environment [#runtime-environment]

* **Conda env:** `giga-world-policy-py311`.
* **Separate setup:** defaults to the unified WorldFoundry env (`needs_new_env: false`); a benchmark-only conda env is usually not required.
* CALVIN 官方 rollout 需要数据集 split、policy checkpoint 和 long-horizon evaluator 输出；轻量 preflight 不启动仿真/评测。

### Evaluation data [#evaluation-data]

* WorldFoundry tracks the upstream CALVIN runtime and normalizes official result files; dataset materialization is handled outside this manifest.
* Candidate model outputs: set `WORLDFOUNDRY_CALVIN_RESULTS_PATH` to the generated-video or rollout artifact root.
* `${WORLDFOUNDRY_CACHE_DIR}/repos/mees--calvin`

### Checkpoints & assets [#checkpoints--assets]

* This benchmark is primarily rollout- or official-result-driven; see catalog `requires` and the task YAML for policy/simulator checkpoints.

### Key environment variables [#key-environment-variables]

* `WORLDFOUNDRY_CALVIN_ROOT`
* `WORLDFOUNDRY_CALVIN_DATASET_ROOT`
* `WORLDFOUNDRY_CALVIN_RESULTS_PATH`

### Verify setup [#verify-setup]

```bash
PYTHONPATH=${WORLDFOUNDRY_CACHE_DIR}/repos/mees--calvin:src ${WORLDFOUNDRY_CONDA_ENVS_ROOT}/worldfoundry-giga-world-policy-py311/bin/python -m worldfoundry.evaluation.tasks.execution.orchestration.runtime_preflight --profile calvin --manifest worldfoundry/data/benchmarks/runtime_profiles/official/calvin.yaml --output-dir tmp/worldfoundry_preflight/calvin --json
```

## Run Evaluation [#run-evaluation]

After preparing the assets and candidate artifacts listed on this page, use the public run entry points below.

### Set Candidate Artifacts [#set-candidate-artifacts]

```bash
export WORLDFOUNDRY_GENERATED_ARTIFACT_DIR=/path/to/generated/artifacts
```

### Import Official Results [#import-official-results]

```bash
worldfoundry-eval zoo benchmark-run \
  --benchmark-id calvin \
  --mode normalizer \
  --official-results-path /path/to/official/results-or-report \
  --generated-artifact-dir "${WORLDFOUNDRY_GENERATED_ARTIFACT_DIR}" \
  --output-dir tmp/calvin/normalizer \
  --json
```

### Score Generated Artifacts [#score-generated-artifacts]

```bash
worldfoundry-eval zoo benchmark-run \
  --benchmark-id calvin \
  --mode official-run \
  --generated-artifact-dir "${WORLDFOUNDRY_GENERATED_ARTIFACT_DIR}" \
  --output-dir tmp/calvin/official-run \
  --json
```

### Direct In-Tree Runner [#direct-in-tree-runner]

```bash
worldfoundry-eval zoo benchmark-run --benchmark-id calvin --mode official-validation --official-results-path <official_results.json> --output-dir <out> --json
```

## Requirements [#requirements]

### Inputs [#inputs]

* Official CALVIN repository checkout
* CALVIN dataset root
* Benchmark-specific policy checkpoint
* Official long-horizon sequence evaluation command

### Environment [#environment]

* `WORLDFOUNDRY_CALVIN_RESULTS_PATH`

### Outputs [#outputs]

* `scorecard.json`
* `raw_results.jsonl`

[← Benchmark Hub](/docs/evaluation/benchmark-hub)
