# VideoVerse (/zh/docs/evaluation/benchmark-hub/videoverse)



## 评测目标 [#评测目标]

VideoVerse 从 world model 角度评测 text-to-video 生成器：视频是否符合事件顺序、二元验证问题、静态场景常识、动态事件一致性、交互、相机行为、力学与世界知识。

官方标准集包含 300 条 prompt、815 个事件单元和 793 个验证问题。每条 prompt 记录里有用于生成视频的 `t2v_prompt`，以及后续 judge 使用的事件顺序与 yes/no 检查项。

## 官方参考 [#官方参考]

| 资源        | 链接                                                                                             |
| --------- | ---------------------------------------------------------------------------------------------- |
| 项目页       | [naptmn.cn/Homepage\_of\_VideoVerse](https://www.naptmn.cn/Homepage_of_VideoVerse/)            |
| 论文        | [arXiv:2510.08398](https://arxiv.org/abs/2510.08398)                                           |
| GitHub    | [github.com/Zeqing-Wang/VideoVerse](https://github.com/Zeqing-Wang/VideoVerse)                 |
| HF 数据集    | [NNaptmn/VideoVerse](https://huggingface.co/datasets/NNaptmn/VideoVerse)                       |
| 仓内 runner | `worldfoundry/evaluation/tasks/execution/runners/videoverse/run_videoverse_official_runner.py` |

## 资产与数据 [#资产与数据]

WorldFoundry 已经把 VideoVerse runner 和 prompt 资产放在仓内：

| 资产                         | 路径                                                                                             |
| -------------------------- | ---------------------------------------------------------------------------------------------- |
| Task YAML                  | `worldfoundry/data/benchmarks/tasks/external/videoverse.yaml`                                  |
| Prompt manifest            | `worldfoundry/data/benchmarks/assets/videoverse/prompt/prompts_of_VideoVerse.json`             |
| Decomposed prompt manifest | `worldfoundry/data/benchmarks/assets/videoverse/prompt/prompts_of_VideoVerse_decomposed.json`  |
| Runner                     | `worldfoundry/evaluation/tasks/execution/runners/videoverse/run_videoverse_official_runner.py` |

可选公开数据资产在仓内记为 `videoverse_dataset_assets`，对应 Hugging Face 数据集 `NNaptmn/VideoVerse`。

## 生成结果目录 [#生成结果目录]

每个 prompt key 生成一个视频，直接放在同一个目录下，文件名使用 prompt 字典 key：

```text
/path/to/videoverse/generated/
  8f348e44-546c-4319-aefa-b860c02d9cbc.mp4
  dc4fa681-8b4a-413d-9571-29af7aa36c2e.mp4
  <prompt-id>.mp4
```

支持 `.mp4`、`.mov`、`.mkv`、`.webm`、`.avi`、`.m4v`。完整评测应覆盖全部 300 个 canonical prompt id。

## 依赖 [#依赖]

in-tree judge 支持几种后端：

| 后端            | 必要设置                                                                                                           |
| ------------- | -------------------------------------------------------------------------------------------------------------- |
| Gemini 上传/API | `WORLDFOUNDRY_VIDEOVERSE_JUDGE_BACKEND=gemini`，并设置 `GEMINI_API_KEY` 或 `WORLDFOUNDRY_VIDEOVERSE_GEMINI_API_KEY` |
| Gemini URL 模式 | `WORLDFOUNDRY_VIDEOVERSE_JUDGE_BACKEND=url`、API key、`WORLDFOUNDRY_VIDEOVERSE_VIDEO_BASE_URL`                   |
| Local VLM     | `WORLDFOUNDRY_VIDEOVERSE_JUDGE_BACKEND=local_vlm`、`WORLDFOUNDRY_VIDEOVERSE_LOCAL_VLM_PATH`                     |

Gemini 路径还需要运行环境中安装 `google-genai`。

## 命令 [#命令]

先设置生成视频目录：

```bash
export WORLDFOUNDRY_GENERATED_ARTIFACT_DIR=/path/to/videoverse/generated
export WORLDFOUNDRY_BENCHMARK_OUTPUT_DIR=tmp/videoverse/run
```

运行仓内 judge，并对生成的 `eval_res.json` 计分：

```bash
PYTHONPATH=. "${WORLDFOUNDRY_UNIFIED_PYTHON:-python}" \
  worldfoundry/evaluation/tasks/execution/runners/videoverse/run_videoverse_official_runner.py \
  --run-official \
  --generated-artifact-dir "${WORLDFOUNDRY_GENERATED_ARTIFACT_DIR}" \
  --output-dir "${WORLDFOUNDRY_BENCHMARK_OUTPUT_DIR}" \
  --json
```

导入已有的 official-shaped `eval_res.json` 或 metric JSON/JSONL：

```bash
worldfoundry-eval zoo benchmark-run \
  --benchmark-id videoverse \
  --mode official-validation \
  --official-results-path /path/to/eval_res.json \
  --generated-artifact-dir "${WORLDFOUNDRY_GENERATED_ARTIFACT_DIR}" \
  --output-dir tmp/videoverse/import \
  --json
```

直接 runner 支持 `--limit N` 做小规模开发运行，但这类结果不能用于 leaderboard 对比。

## Python 导入 [#python-导入]

如果只需要复用计分公式：

```python
from worldfoundry.evaluation.tasks.execution.runners._benchmark_metrics.formulas import videoverse_subquestion_metrics
```

CLI runner 也可以直接导入：

```python
from worldfoundry.evaluation.tasks.execution.runners.videoverse.run_videoverse_official_runner import (
    normalize_videoverse_results,
    run_official_videoverse,
)
```

## 输出 [#输出]

输出目录包含：

| 文件                        | 含义                                      |
| ------------------------- | --------------------------------------- |
| `scorecard.json`          | 运行状态、覆盖率、可比性信息和 leaderboard-facing 指标值。 |
| `raw_metric_table.jsonl`  | 每个指标一行。                                 |
| `per_sample_scores.jsonl` | 从官方结果中得到的 per-video 或 per-check 行。      |
| `eval_res.json`           | 使用 `--run-official` 时由仓内 judge 写出。      |
| `judge_responses.jsonl`   | 仓内 judge 的原始响应。                         |

runner 输出 `qa_accuracy`、`event_coverage`、`temporal_causality`、`world_knowledge_consistency`、`static_scene_consistency`、`dynamic_event_consistency`、`videoverse_average`。七个指标都是越高越好。

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