allenai/vla-evaluation-harness

One framework to evaluate any VLA model on any robot simulation benchmark.

vla-evaluation-harness – 一个框架即可在任何机器人模拟基准上评估任何VLA模型

它是什么 – 一个Python库(可通过pip install vla-eval安装),让你无需手动配置每个基准的依赖项,即可将VLA(视觉-语言-动作)模型用于多个机器人模拟基准(LIBERO、CALVIN、SimplerEnv等)。基准在Docker容器内运行,而模型代码以轻量级HTTP服务器(模型服务器)的形式提供服务。该工具协调两者,记录结果,并支持大规模批量并行运行。

主要功能

  • 大规模矩阵 – 18个基准 × 2,456个复现模型(截至2026年排行榜)。官方模型服务器包括OpenVLA、π₀、GR00T、OFT、X-VLA、MolmoBot等,以及来自dexbotic、starVLA和🤗 LeRobot的社区服务器。
  • 零设置Docker – 基准是预构建的Docker镜像;该工具会自动拉取它们。基准之间没有依赖冲突。
  • 批量并行评估 – 剧集(episodes)在多个进程间分片,模型推理进行批处理,最高可加速约47倍(在单个H100上处理2,000个LIBERO剧集仅需18分钟)。
  • Python API – vla_eval.evaluate(model_server, config_path)允许你在训练时评估,如examples/pusht_train_eval/脚本所示。
  • 可观测性 – 结果保存为JSON或SQLite记录;与Weights & Biases、TrackIO以及内置导出工具集成。
  • 可扩展 – 技能(skills/add-benchmark/、skills/add-model-server/)和AI辅助模板帮助添加新基准或模型服务器。

典型工作流

  1. 服务模型(GPU主机):
    vla-eval serve --config configs/model_servers/openvla/libero.yaml
    
  2. 运行基准(默认使用Docker):
    vla-eval run --config configs/benchmarks/libero/spatial.yaml
    
    结果出现在results/下。
  3. 可选批量运行 – 使用./scripts/run_sharded.sh -c <config> -n <num_shards>启动多个分片,并在模型服务器配置中启用max_batch_size。

安装 – pip install vla-eval(需要Python 3.8+、SQLite 3.24+)。开发时,克隆仓库并使用uv sync。

适用人群 – 构建VLA代理的研究人员,需要在多个机器人模拟套件中获得可复现、可比较的评估;以及需要快速、可扩展基准测试管道的工程师。

了解更多 – README中的Motivation、Batch Parallel Evaluation部分、架构文档以及实时排行榜。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目