BEHAVIOR-1K 评测
BEHAVIOR-1K 是斯坦福大学开发的家庭任务仿真基准,包含 1000 种日常生活活动(如做饭、清洁、整理等)。我们按照 2025 BEHAVIOR Challenge 的结构,在 50 个完整家庭任务上进行训练和评测。使用 R1Pro 人形机器人(双臂 + 底座 + 躯干,23 维动作空间)。
评测流程主要包含两部分:
- 配置
behavior环境与依赖。 - 分别在
starVLA与behavior环境中启动服务并运行评测。
BEHAVIOR 评测
Section titled “BEHAVIOR 评测”1. 环境配置
Section titled “1. 环境配置”配置 behavior conda 环境:
git clone https://github.com/StanfordVL/BEHAVIOR-1K.gitconda create -n behavior python=3.10 -yconda activate behaviorcd BEHAVIOR-1Kpip install "setuptools<=79"# --omnigibson: 安装 OmniGibson 仿真器(BEHAVIOR 的底层物理引擎)# --bddl: 安装 BDDL(Behavior Domain Definition Language,任务定义语言)# --joylo: 安装 JoyLo(遥操作控制接口)# --dataset: 下载 BEHAVIOR 数据集资源(场景、物体模型等)./setup.sh --omnigibson --bddl --joylo --datasetconda install -c conda-forge libglupip install rich omegaconf hydra-core msgpack websockets av pandas google-auth同时在 starVLA 环境中:
pip install websockets2. 评测流程
Section titled “2. 评测流程”步骤:
- 下载检查点
- 根据需要选择以下脚本
(A) 并行评测脚本
Section titled “(A) 并行评测脚本”CUDA_VISIBLE_DEVICES=0,1,2,3,4,5,6,7 bash examples/Behavior/start_parallel_eval.sh运行 start_parallel_eval.sh 之前,设置以下路径:
star_vla_python:StarVLA 环境的 Python 解释器sim_python:Behavior 环境的 Python 解释器TASKS_JSONL_PATH:从训练数据集下载的任务描述文件(已包含在examples/Behavior/tasks.jsonl)BEHAVIOR_ASSET_PATH:behavior 资源的本地路径(使用./setup.sh安装后默认在BEHAVIOR-1K/datasets)
(B) 使用独立终端调试
Section titled “(B) 使用独立终端调试”为便于调试,你也可以在两个独立终端中分别启动客户端(评测环境)和服务端(策略):
bash examples/Behavior/start_server.shbash examples/Behavior/start_client.sh以上调试文件将在训练集上进行评测。
(C) 按任务评测(内存安全)
Section titled “(C) 按任务评测(内存安全)”为防止内存溢出,我们实现了另一个文件 start_parallel_eval_per_task.sh:
CUDA_VISIBLE_DEVICES=0,1,2,3,4,5,6,7 bash examples/Behavior/start_parallel_eval_per_task.sh- 脚本将迭代运行
INSTANCE_NAMES中每个任务的评测 - 对于每个任务,将
TEST_EVAL_INSTANCE_IDS中的所有实例分配到各 GPU - 等待前一个任务完成后再继续下一个任务
Wrapper 类型
Section titled “Wrapper 类型”-
RGBLowResWrapper:仅使用 RGB 作为视觉观测,相机分辨率为 224×224。仅使用低分辨率 RGB 可以加速仿真器并减少评测时间。此 wrapper 可用于标准赛道。
-
DefaultWrapper:使用数据收集时的默认观测配置(RGB + 深度 + 分割,头部相机 720p,手腕相机 480p)。此 wrapper 可用于标准赛道,但评测速度会比 RGBLowResWrapper 慢很多。
-
RichObservationWrapper:加载额外的观测模态,如法线和光流,以及特权任务信息。此 wrapper 只能用于特权信息赛道。
BEHAVIOR 的动作维度 = 23:
"R1Pro": { "base": np.s_[0:3], # 索引 0-2 "torso": np.s_[3:7], # 索引 3-6 "left_arm": np.s_[7:14], # 索引 7-13 "left_gripper": np.s_[14:15], # 索引 14 "right_arm": np.s_[15:22], # 索引 15-21 "right_gripper": np.s_[22:23] # 索引 22}视频将以 {task_name}_{idx}_{epi}.mp4 格式保存,其中 idx 是实例编号,epi 是 episode 编号。
Segmentation fault (core dumped): 可能的原因是 Vulkan 未成功安装。请查看此链接。
ImportError: libGL.so.1: cannot open shared object file:
apt-get install ffmpeg libsm6 libxext6 -y