evaluating-cosmos-policy

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Cosmos Policy Evaluation

Cosmos Policy 评估

Evaluation workflows for NVIDIA Cosmos Policy on LIBERO and RoboCasa simulation environments from the public
cosmos-policy
repository. Covers blank-machine setup, headless GPU evaluation, and inference profiling.
基于公开
cosmos-policy
仓库,在LIBERO和RoboCasa仿真环境中运行NVIDIA Cosmos Policy的评估工作流。内容覆盖裸机环境搭建、无桌面GPU评估和推理性能分析。

Quick start

快速开始

Run a minimal LIBERO evaluation using the official public eval module:
bash
uv run --extra cu128 --group libero --python 3.10 \
  python -m cosmos_policy.experiments.robot.libero.run_libero_eval \
    --config cosmos_predict2_2b_480p_libero__inference_only \
    --ckpt_path nvidia/Cosmos-Policy-LIBERO-Predict2-2B \
    --config_file cosmos_policy/config/config.py \
    --use_wrist_image True \
    --use_proprio True \
    --normalize_proprio True \
    --unnormalize_actions True \
    --dataset_stats_path nvidia/Cosmos-Policy-LIBERO-Predict2-2B/libero_dataset_statistics.json \
    --t5_text_embeddings_path nvidia/Cosmos-Policy-LIBERO-Predict2-2B/libero_t5_embeddings.pkl \
    --trained_with_image_aug True \
    --chunk_size 16 \
    --num_open_loop_steps 16 \
    --task_suite_name libero_10 \
    --num_trials_per_task 1 \
    --local_log_dir cosmos_policy/experiments/robot/libero/logs/ \
    --seed 195 \
    --randomize_seed False \
    --deterministic True \
    --run_id_note smoke \
    --ar_future_prediction False \
    --ar_value_prediction False \
    --use_jpeg_compression True \
    --flip_images True \
    --num_denoising_steps_action 5 \
    --num_denoising_steps_future_state 1 \
    --num_denoising_steps_value 1 \
    --data_collection False
使用官方公开评估模块运行最简LIBERO评估:
bash
uv run --extra cu128 --group libero --python 3.10 \
  python -m cosmos_policy.experiments.robot.libero.run_libero_eval \
    --config cosmos_predict2_2b_480p_libero__inference_only \
    --ckpt_path nvidia/Cosmos-Policy-LIBERO-Predict2-2B \
    --config_file cosmos_policy/config/config.py \
    --use_wrist_image True \
    --use_proprio True \
    --normalize_proprio True \
    --unnormalize_actions True \
    --dataset_stats_path nvidia/Cosmos-Policy-LIBERO-Predict2-2B/libero_dataset_statistics.json \
    --t5_text_embeddings_path nvidia/Cosmos-Policy-LIBERO-Predict2-2B/libero_t5_embeddings.pkl \
    --trained_with_image_aug True \
    --chunk_size 16 \
    --num_open_loop_steps 16 \
    --task_suite_name libero_10 \
    --num_trials_per_task 1 \
    --local_log_dir cosmos_policy/experiments/robot/libero/logs/ \
    --seed 195 \
    --randomize_seed False \
    --deterministic True \
    --run_id_note smoke \
    --ar_future_prediction False \
    --ar_value_prediction False \
    --use_jpeg_compression True \
    --flip_images True \
    --num_denoising_steps_action 5 \
    --num_denoising_steps_future_state 1 \
    --num_denoising_steps_value 1 \
    --data_collection False

Core concepts

核心概念

What Cosmos Policy is: NVIDIA Cosmos Policy is a vision-language-action (VLA) model that uses Cosmos Tokenizer to encode visual observations into discrete tokens, then predicts robot actions conditioned on language instructions and visual context.
Key architecture choices:
ComponentDesign
Visual encoderCosmos Tokenizer (discrete tokens)
Language conditioningCross-attention to language embeddings
Action predictionAutoregressive action token generation
Public command surface: The supported evaluation entrypoints are
cosmos_policy.experiments.robot.libero.run_libero_eval
and
cosmos_policy.experiments.robot.robocasa.run_robocasa_eval
. Keep reproduction notes anchored to these public modules and their documented flags.
Cosmos Policy简介:NVIDIA Cosmos Policy是一款视觉-语言-动作(VLA)模型,它使用Cosmos Tokenizer将视觉观测编码为离散令牌,然后基于语言指令和视觉上下文预测机器人动作。
核心架构选型
组件设计
视觉编码器Cosmos Tokenizer (离散令牌)
语言条件注入对语言嵌入做交叉注意力
动作预测自回归动作令牌生成
公开命令入口:支持的评估入口为
cosmos_policy.experiments.robot.libero.run_libero_eval
cosmos_policy.experiments.robot.robocasa.run_robocasa_eval
。复现说明请锚定这些公开模块及其文档化的参数。

Compute requirements

算力要求

TaskGPUVRAMTypical wall time
LIBERO smoke eval (1 trial)1x A40/A100~16 GB5-10 min
LIBERO full eval (50 trials)1x A40/A100~16 GB2-4 hours
RoboCasa single-task (2 trials)1x A40/A100~18 GB10-15 min
RoboCasa all-tasks1x A40/A100~18 GB4-8 hours
任务GPUVRAM典型耗时
LIBERO冒烟评估(1次试跑)1x A40/A100~16 GB5-10 分钟
LIBERO全量评估(50次试跑)1x A40/A100~16 GB2-4 小时
RoboCasa单任务评估(2次试跑)1x A40/A100~18 GB10-15 分钟
RoboCasa全任务评估1x A40/A100~18 GB4-8 小时

When to use vs alternatives

适用场景与替代方案

Use this skill when:
  • Evaluating NVIDIA Cosmos Policy on LIBERO or RoboCasa benchmarks
  • Profiling inference latency and throughput for Cosmos Policy
  • Setting up headless EGL rendering for robot simulation on GPU clusters
Use alternatives when:
  • Training or fine-tuning Cosmos Policy from scratch (use official Cosmos training docs)
  • Working with OpenVLA-based policies (use
    fine-tuning-openvla-oft
    )
  • Working with Physical Intelligence pi0 models (use
    fine-tuning-serving-openpi
    )
  • Running real-robot evaluation rather than simulation

适用场景:
  • 在LIBERO或RoboCasa基准上评估NVIDIA Cosmos Policy
  • 分析Cosmos Policy的推理延迟和吞吐量
  • 在GPU集群上为机器人仿真搭建无桌面EGL渲染环境
请使用替代方案的场景:
  • 从头训练或微调Cosmos Policy(请使用官方Cosmos训练文档)
  • 使用基于OpenVLA的策略(请使用
    fine-tuning-openvla-oft
  • 使用Physical Intelligence pi0模型(请使用
    fine-tuning-serving-openpi
  • 运行真机机器人评估而非仿真评估

Workflow 1: LIBERO evaluation

工作流1:LIBERO评估

Copy this checklist and track progress:
text
LIBERO Eval Progress:
- [ ] Step 1: Install environment and dependencies
- [ ] Step 2: Configure headless EGL rendering
- [ ] Step 3: Run smoke evaluation
- [ ] Step 4: Validate outputs and parse results
- [ ] Step 5: Run full benchmark if smoke passes
Step 1: Install environment
bash
git clone https://github.com/NVlabs/cosmos-policy.git
cd cosmos-policy
复制此检查清单跟踪进度:
text
LIBERO评估进度:
- [ ] 步骤1:安装环境和依赖
- [ ] 步骤2:配置无桌面EGL渲染
- [ ] 步骤3:运行冒烟评估
- [ ] 步骤4:验证输出并解析结果
- [ ] 步骤5:冒烟测试通过后运行全量基准测试
步骤1:安装环境
bash
git clone https://github.com/NVlabs/cosmos-policy.git
cd cosmos-policy

Follow SETUP.md to build and enter the supported Docker container.

参考SETUP.md构建并进入支持的Docker容器

Then, inside the container:

然后在容器内执行:

uv sync --extra cu128 --group libero --python 3.10

**Step 2: Configure headless rendering**

```bash
export CUDA_VISIBLE_DEVICES=0
export MUJOCO_EGL_DEVICE_ID=0
export MUJOCO_GL=egl
export PYOPENGL_PLATFORM=egl
Step 3: Run smoke evaluation
bash
uv run --extra cu128 --group libero --python 3.10 \
  python -m cosmos_policy.experiments.robot.libero.run_libero_eval \
    --config cosmos_predict2_2b_480p_libero__inference_only \
    --ckpt_path nvidia/Cosmos-Policy-LIBERO-Predict2-2B \
    --config_file cosmos_policy/config/config.py \
    --use_wrist_image True \
    --use_proprio True \
    --normalize_proprio True \
    --unnormalize_actions True \
    --dataset_stats_path nvidia/Cosmos-Policy-LIBERO-Predict2-2B/libero_dataset_statistics.json \
    --t5_text_embeddings_path nvidia/Cosmos-Policy-LIBERO-Predict2-2B/libero_t5_embeddings.pkl \
    --trained_with_image_aug True \
    --chunk_size 16 \
    --num_open_loop_steps 16 \
    --task_suite_name libero_10 \
    --num_trials_per_task 1 \
    --local_log_dir cosmos_policy/experiments/robot/libero/logs/ \
    --seed 195 \
    --randomize_seed False \
    --deterministic True \
    --run_id_note smoke \
    --ar_future_prediction False \
    --ar_value_prediction False \
    --use_jpeg_compression True \
    --flip_images True \
    --num_denoising_steps_action 5 \
    --num_denoising_steps_future_state 1 \
    --num_denoising_steps_value 1 \
    --data_collection False
Step 4: Validate and parse results
python
import json
import glob
uv sync --extra cu128 --group libero --python 3.10

**步骤2:配置无桌面渲染**

```bash
export CUDA_VISIBLE_DEVICES=0
export MUJOCO_EGL_DEVICE_ID=0
export MUJOCO_GL=egl
export PYOPENGL_PLATFORM=egl
步骤3:运行冒烟评估
bash
uv run --extra cu128 --group libero --python 3.10 \
  python -m cosmos_policy.experiments.robot.libero.run_libero_eval \
    --config cosmos_predict2_2b_480p_libero__inference_only \
    --ckpt_path nvidia/Cosmos-Policy-LIBERO-Predict2-2B \
    --config_file cosmos_policy/config/config.py \
    --use_wrist_image True \
    --use_proprio True \
    --normalize_proprio True \
    --unnormalize_actions True \
    --dataset_stats_path nvidia/Cosmos-Policy-LIBERO-Predict2-2B/libero_dataset_statistics.json \
    --t5_text_embeddings_path nvidia/Cosmos-Policy-LIBERO-Predict2-2B/libero_t5_embeddings.pkl \
    --trained_with_image_aug True \
    --chunk_size 16 \
    --num_open_loop_steps 16 \
    --task_suite_name libero_10 \
    --num_trials_per_task 1 \
    --local_log_dir cosmos_policy/experiments/robot/libero/logs/ \
    --seed 195 \
    --randomize_seed False \
    --deterministic True \
    --run_id_note smoke \
    --ar_future_prediction False \
    --ar_value_prediction False \
    --use_jpeg_compression True \
    --flip_images True \
    --num_denoising_steps_action 5 \
    --num_denoising_steps_future_state 1 \
    --num_denoising_steps_value 1 \
    --data_collection False
步骤4:验证并解析结果
python
import json
import glob

Find latest evaluation result from the official log directory

从官方日志目录查找最新的评估结果

log_files = sorted(glob.glob("cosmos_policy/experiments/robot/libero/logs/**/*.json", recursive=True)) with open(log_files[-1]) as f: results = json.load(f)
print(results)

**Step 5: Scale up**

Run across all four LIBERO task suites with 50 trials:

```bash
for suite in libero_spatial libero_object libero_goal libero_10; do
  uv run --extra cu128 --group libero --python 3.10 \
    python -m cosmos_policy.experiments.robot.libero.run_libero_eval \
      --config cosmos_predict2_2b_480p_libero__inference_only \
      --ckpt_path nvidia/Cosmos-Policy-LIBERO-Predict2-2B \
      --config_file cosmos_policy/config/config.py \
      --use_wrist_image True \
      --use_proprio True \
      --normalize_proprio True \
      --unnormalize_actions True \
      --dataset_stats_path nvidia/Cosmos-Policy-LIBERO-Predict2-2B/libero_dataset_statistics.json \
      --t5_text_embeddings_path nvidia/Cosmos-Policy-LIBERO-Predict2-2B/libero_t5_embeddings.pkl \
      --trained_with_image_aug True \
      --chunk_size 16 \
      --num_open_loop_steps 16 \
      --task_suite_name "$suite" \
      --num_trials_per_task 50 \
      --local_log_dir cosmos_policy/experiments/robot/libero/logs/ \
      --seed 195 \
      --randomize_seed False \
      --deterministic True \
      --run_id_note "suite_${suite}" \
      --ar_future_prediction False \
      --ar_value_prediction False \
      --use_jpeg_compression True \
      --flip_images True \
      --num_denoising_steps_action 5 \
      --num_denoising_steps_future_state 1 \
      --num_denoising_steps_value 1 \
      --data_collection False
done

log_files = sorted(glob.glob("cosmos_policy/experiments/robot/libero/logs/**/*.json", recursive=True)) with open(log_files[-1]) as f: results = json.load(f)
print(results)

**步骤5:扩展评估规模**

覆盖所有四个LIBERO任务集,每个任务运行50次试跑:

```bash
for suite in libero_spatial libero_object libero_goal libero_10; do
  uv run --extra cu128 --group libero --python 3.10 \
    python -m cosmos_policy.experiments.robot.libero.run_libero_eval \
      --config cosmos_predict2_2b_480p_libero__inference_only \
      --ckpt_path nvidia/Cosmos-Policy-LIBERO-Predict2-2B \
      --config_file cosmos_policy/config/config.py \
      --use_wrist_image True \
      --use_proprio True \
      --normalize_proprio True \
      --unnormalize_actions True \
      --dataset_stats_path nvidia/Cosmos-Policy-LIBERO-Predict2-2B/libero_dataset_statistics.json \
      --t5_text_embeddings_path nvidia/Cosmos-Policy-LIBERO-Predict2-2B/libero_t5_embeddings.pkl \
      --trained_with_image_aug True \
      --chunk_size 16 \
      --num_open_loop_steps 16 \
      --task_suite_name "$suite" \
      --num_trials_per_task 50 \
      --local_log_dir cosmos_policy/experiments/robot/libero/logs/ \
      --seed 195 \
      --randomize_seed False \
      --deterministic True \
      --run_id_note "suite_${suite}" \
      --ar_future_prediction False \
      --ar_value_prediction False \
      --use_jpeg_compression True \
      --flip_images True \
      --num_denoising_steps_action 5 \
      --num_denoising_steps_future_state 1 \
      --num_denoising_steps_value 1 \
      --data_collection False
done

Workflow 2: RoboCasa evaluation

工作流2:RoboCasa评估

Copy this checklist and track progress:
text
RoboCasa Eval Progress:
- [ ] Step 1: Install RoboCasa assets and verify macros
- [ ] Step 2: Run single-task smoke evaluation
- [ ] Step 3: Validate outputs
- [ ] Step 4: Expand to multi-task runs
Step 1: Install RoboCasa
bash
git clone https://github.com/moojink/robocasa-cosmos-policy.git
uv pip install -e robocasa-cosmos-policy
python -m robocasa.scripts.setup_macros
python -m robocasa.scripts.download_kitchen_assets
This fork installs the
robocasa
Python package expected by Cosmos Policy while preserving the patched environment changes used in the public RoboCasa eval path. Verify
macros_private.py
exists and paths are correct.
Step 2: Single-task smoke evaluation
bash
uv run --extra cu128 --group robocasa --python 3.10 \
  python -m cosmos_policy.experiments.robot.robocasa.run_robocasa_eval \
    --config cosmos_predict2_2b_480p_robocasa_50_demos_per_task__inference \
    --ckpt_path nvidia/Cosmos-Policy-RoboCasa-Predict2-2B \
    --config_file cosmos_policy/config/config.py \
    --use_wrist_image True \
    --num_wrist_images 1 \
    --use_proprio True \
    --normalize_proprio True \
    --unnormalize_actions True \
    --dataset_stats_path nvidia/Cosmos-Policy-RoboCasa-Predict2-2B/robocasa_dataset_statistics.json \
    --t5_text_embeddings_path nvidia/Cosmos-Policy-RoboCasa-Predict2-2B/robocasa_t5_embeddings.pkl \
    --trained_with_image_aug True \
    --chunk_size 32 \
    --num_open_loop_steps 16 \
    --task_name TurnOffMicrowave \
    --obj_instance_split A \
    --num_trials_per_task 2 \
    --local_log_dir cosmos_policy/experiments/robot/robocasa/logs/ \
    --seed 195 \
    --randomize_seed False \
    --deterministic True \
    --run_id_note smoke \
    --use_variance_scale False \
    --use_jpeg_compression True \
    --flip_images True \
    --num_denoising_steps_action 5 \
    --num_denoising_steps_future_state 1 \
    --num_denoising_steps_value 1 \
    --data_collection False
Step 3: Validate outputs
  • Confirm the eval log prints the expected task name, object split, and checkpoint/config values.
  • Inspect the final
    Success rate:
    line in the log.
Step 4: Expand scope
Increase
--num_trials_per_task
or add more tasks. Keep
--obj_instance_split
fixed across repeated runs for comparability.

复制此检查清单跟踪进度:
text
RoboCasa评估进度:
- [ ] 步骤1:安装RoboCasa资产并验证宏配置
- [ ] 步骤2:运行单任务冒烟评估
- [ ] 步骤3:验证输出
- [ ] 步骤4:扩展为多任务运行
步骤1:安装RoboCasa
bash
git clone https://github.com/moojink/robocasa-cosmos-policy.git
uv pip install -e robocasa-cosmos-policy
python -m robocasa.scripts.setup_macros
python -m robocasa.scripts.download_kitchen_assets
此分支会安装Cosmos Policy所需的
robocasa
Python包,同时保留公开RoboCasa评估路径中使用的补丁环境变更。请验证
macros_private.py
存在且路径正确。
步骤2:单任务冒烟评估
bash
uv run --extra cu128 --group robocasa --python 3.10 \
  python -m cosmos_policy.experiments.robot.robocasa.run_robocasa_eval \
    --config cosmos_predict2_2b_480p_robocasa_50_demos_per_task__inference \
    --ckpt_path nvidia/Cosmos-Policy-RoboCasa-Predict2-2B \
    --config_file cosmos_policy/config/config.py \
    --use_wrist_image True \
    --num_wrist_images 1 \
    --use_proprio True \
    --normalize_proprio True \
    --unnormalize_actions True \
    --dataset_stats_path nvidia/Cosmos-Policy-RoboCasa-Predict2-2B/robocasa_dataset_statistics.json \
    --t5_text_embeddings_path nvidia/Cosmos-Policy-RoboCasa-Predict2-2B/robocasa_t5_embeddings.pkl \
    --trained_with_image_aug True \
    --chunk_size 32 \
    --num_open_loop_steps 16 \
    --task_name TurnOffMicrowave \
    --obj_instance_split A \
    --num_trials_per_task 2 \
    --local_log_dir cosmos_policy/experiments/robot/robocasa/logs/ \
    --seed 195 \
    --randomize_seed False \
    --deterministic True \
    --run_id_note smoke \
    --use_variance_scale False \
    --use_jpeg_compression True \
    --flip_images True \
    --num_denoising_steps_action 5 \
    --num_denoising_steps_future_state 1 \
    --num_denoising_steps_value 1 \
    --data_collection False
步骤3:验证输出
  • 确认评估日志打印了预期的任务名、对象拆分和检查点/配置值
  • 检查日志中最终的
    Success rate:
步骤4:扩大评估范围
增加
--num_trials_per_task
参数或添加更多任务。重复运行时请固定
--obj_instance_split
参数以保证结果可比性。

Workflow 3: Blank-machine cluster launch

工作流3:裸机集群启动

text
Cluster Launch Progress:
- [ ] Step 1: Clone the public repo and enter the supported runtime
- [ ] Step 2: Sync the benchmark-specific dependency group
- [ ] Step 3: Export rendering and cache environment variables before eval
Step 1: Clone and enter the supported runtime
bash
git clone https://github.com/NVlabs/cosmos-policy.git
cd cosmos-policy
text
集群启动进度:
- [ ] 步骤1:克隆公开仓库并进入支持的运行时环境
- [ ] 步骤2:同步基准测试专属依赖组
- [ ] 步骤3:评估前导出渲染和缓存环境变量
步骤1:克隆仓库并进入支持的运行时
bash
git clone https://github.com/NVlabs/cosmos-policy.git
cd cosmos-policy

Follow SETUP.md, start the Docker container, and enter it before continuing.

参考SETUP.md启动Docker容器并进入后再继续后续操作


**Step 2: Sync dependencies**

```bash
uv sync --extra cu128 --group libero --python 3.10

**步骤2:同步依赖**

```bash
uv sync --extra cu128 --group libero --python 3.10

or, for RoboCasa:

如果是RoboCasa评估则执行:

uv sync --extra cu128 --group robocasa --python 3.10
uv sync --extra cu128 --group robocasa --python 3.10

then install the Cosmos-compatible RoboCasa fork:

然后安装兼容Cosmos的RoboCasa分支:

git clone https://github.com/moojink/robocasa-cosmos-policy.git uv pip install -e robocasa-cosmos-policy

**Step 3: Export runtime environment**

```bash
export CUDA_VISIBLE_DEVICES=0
export MUJOCO_EGL_DEVICE_ID=0
export MUJOCO_GL=egl
export PYOPENGL_PLATFORM=egl
export HF_HOME=${HF_HOME:-$HOME/.cache/huggingface}
export TRANSFORMERS_CACHE=${TRANSFORMERS_CACHE:-$HF_HOME}

git clone https://github.com/moojink/robocasa-cosmos-policy.git uv pip install -e robocasa-cosmos-policy

**步骤3:导出运行时环境变量**

```bash
export CUDA_VISIBLE_DEVICES=0
export MUJOCO_EGL_DEVICE_ID=0
export MUJOCO_GL=egl
export PYOPENGL_PLATFORM=egl
export HF_HOME=${HF_HOME:-$HOME/.cache/huggingface}
export TRANSFORMERS_CACHE=${TRANSFORMERS_CACHE:-$HF_HOME}

Expected performance benchmarks

预期性能基准

Reference values from official evaluation (tied to specific setup and seeds):
Task SuiteSuccess RateNotes
LIBERO-Spatial98.1%Official LIBERO spatial result
LIBERO-Object100.0%Official LIBERO object result
LIBERO-Goal98.2%Official LIBERO goal result
LIBERO-Long97.6%Official LIBERO long-horizon result
LIBERO-Average98.5%Official average across LIBERO suites
RoboCasa67.1%Official RoboCasa average result
Reproduction note: Published success rates still depend on checkpoint choice, task suite, seeds, and simulator setup. Record the exact command and environment alongside any reported number.

官方评估的参考值(与特定配置和种子绑定):
任务集成功率说明
LIBERO-Spatial98.1%官方LIBERO空间任务结果
LIBERO-Object100.0%官方LIBERO物体任务结果
LIBERO-Goal98.2%官方LIBERO目标任务结果
LIBERO-Long97.6%官方LIBERO长程任务结果
LIBERO-平均98.5%官方LIBERO所有任务集平均结果
RoboCasa67.1%官方RoboCasa平均结果
复现说明:公开的成功率依赖于检查点选择、任务集、种子和仿真器配置。上报任何数值时请同时记录准确的命令和环境信息。

Non-negotiable rules

硬性规则

  • EGL alignment: Always set
    CUDA_VISIBLE_DEVICES
    ,
    MUJOCO_EGL_DEVICE_ID
    ,
    MUJOCO_GL=egl
    , and
    PYOPENGL_PLATFORM=egl
    together on headless GPU nodes.
  • Official runtime first: If host-Python installs hit binary compatibility issues, fall back to the supported container workflow from
    SETUP.md
    before debugging package internals.
  • Cache consistency: Use the same cache directory across setup and eval so Hugging Face and dependency caches are reused.
  • Run comparability: Keep task name, object split, seed, and trial count fixed across repeated runs.

  • EGL对齐:在无桌面GPU节点上必须同时设置
    CUDA_VISIBLE_DEVICES
    MUJOCO_EGL_DEVICE_ID
    MUJOCO_GL=egl
    PYOPENGL_PLATFORM=egl
  • 优先官方运行时:如果主机Python安装遇到二进制兼容性问题,请先回退到
    SETUP.md
    中支持的容器工作流,再调试包内部问题
  • 缓存一致性:搭建环境和评估时使用相同的缓存目录,以复用Hugging Face和依赖缓存
  • 运行可比性:重复运行时请固定任务名、对象拆分、种子和试跑次数

Common issues

常见问题

Issue: binary compatibility or loader failures on host Python
Fix: rerun inside the official container/runtime from
SETUP.md
. Do not assume host-package rebuilds will match the public release environment.
Issue: LIBERO prompts for config path in a non-interactive shell
Fix: pre-create
LIBERO_CONFIG_PATH/config.yaml
:
python
import os, yaml

config_dir = os.path.expanduser("~/.libero")
os.makedirs(config_dir, exist_ok=True)
with open(os.path.join(config_dir, "config.yaml"), "w") as f:
    yaml.dump({"benchmark_root": "/path/to/libero/datasets"}, f)
Issue: EGL initialization or shutdown noise
Fix: align EGL environment variables first. Treat teardown-only
EGL_NOT_INITIALIZED
warnings as low-signal unless the job exits non-zero.
Issue: Kitchen object sampling NaNs or asset lookup failures in RoboCasa
Fix: rerun asset setup and confirm the patched robocasa install is intact:
bash
python -m robocasa.scripts.download_kitchen_assets
python -c "import robocasa; print(robocasa.__file__)"
Issue: MuJoCo rendering mismatch
Fix: verify GPU device alignment:
python
import os
cuda_dev = os.environ.get("CUDA_VISIBLE_DEVICES", "not set")
egl_dev = os.environ.get("MUJOCO_EGL_DEVICE_ID", "not set")
assert cuda_dev == egl_dev, f"GPU mismatch: CUDA={cuda_dev}, EGL={egl_dev}"
print(f"Rendering on GPU {cuda_dev}")

问题:主机Python上出现二进制兼容性或加载器失败
解决方法:在
SETUP.md
提供的官方容器/运行时中重新运行。不要假设主机包重建会匹配公开发布的环境。
问题:LIBERO在非交互shell中提示输入配置路径
解决方法:预先创建
LIBERO_CONFIG_PATH/config.yaml
python
import os, yaml

config_dir = os.path.expanduser("~/.libero")
os.makedirs(config_dir, exist_ok=True)
with open(os.path.join(config_dir, "config.yaml"), "w") as f:
    yaml.dump({"benchmark_root": "/path/to/libero/datasets"}, f)
问题:EGL初始化或关闭报错
解决方法:先对齐EGL环境变量。如果任务没有非零退出,仅关闭阶段的
EGL_NOT_INITIALIZED
警告可以忽略。
问题:RoboCasa中厨房对象采样出现NaN或资产查找失败
解决方法:重新运行资产设置,确认打过补丁的robocasa安装完整:
bash
python -m robocasa.scripts.download_kitchen_assets
python -c "import robocasa; print(robocasa.__file__)"
问题:MuJoCo渲染不匹配
解决方法:验证GPU设备对齐:
python
import os
cuda_dev = os.environ.get("CUDA_VISIBLE_DEVICES", "not set")
egl_dev = os.environ.get("MUJOCO_EGL_DEVICE_ID", "not set")
assert cuda_dev == egl_dev, f"GPU mismatch: CUDA={cuda_dev}, EGL={egl_dev}"
print(f"Rendering on GPU {cuda_dev}")

Advanced topics

进阶主题

LIBERO command matrix: See references/libero-commands.md RoboCasa command matrix: See references/robocasa-commands.md
LIBERO命令矩阵:参考references/libero-commands.md RoboCasa命令矩阵:参考references/robocasa-commands.md

Resources

资源