本镜像提供基于 NVIDIA Isaac Sim 6.0.1、Isaac Lab 和 Isaac Lab Arena 的 G1 机器人仿真实验环境,适用于学习环境配置
本镜像提供基于 NVIDIA Isaac Sim 6.0.1、Isaac Lab 和 Isaac Lab Arena 的 G1 机器人仿真实验环境,适用于学习环境配置、运行 G1 搬箱示范,以及使用 Mimic 扩增仿真轨迹。
环境安装在 Compshare 托管容器内,使用独立 Python 虚拟环境,无需在实例中再启动一层 Docker。镜像包含原实验的源码、运行脚本、资产缓存与实验数据。软件不会随实例启动而自动运行,需按下方步骤执行。
**已验证范围:**原 RTX 4090 24 GB 实例完成离屏 RGB 渲染、官方 G1 示范回放、Mimic 轨迹生成和远程编辑器交互。**尚未验证:**从本镜像新建实例后的完整恢复,以及 RTX 5090 上的端到端运行。本文不将原实例验证等同于新实例验收。
| 组件 | 版本或提交 |
|---|---|
| Python | 3.12.15 |
| Isaac Sim | 产品版本 6.0.1,Python 包版本 6.0.1.0 |
| Isaac Lab Arena | 0.3.0 |
| Arena 源码提交 | 8737b4ceb25f99f81a81786b7fde73139b52f324 |
| Isaac Lab 源码提交 | af1bab4dc173ba69b08fab779c14ead61d13fd33 |
| Isaac Lab 包内部版本 | 固定源码对应 6.1.17,不是 wheel 安装路线的 3.0.0b2 |
| Isaac Lab Mimic 包内部版本 | 固定源码对应 1.3.4 |
| PyTorch | 2.11.0+cu128 |
| 原实例 GPU | RTX 4090 24 GB |
| 原实例宿主 NVIDIA 驱动 | 595.80;由云平台提供,不随镜像复制 |
平台展示的基础镜像 PyTorch/CUDA 标签可能与本项目虚拟环境不同,请以以下命令输出为准。nvidia-smi 显示的 CUDA 版本也不等同于 PyTorch 自带 CUDA 运行时版本。

df 为准。bash
set -euo pipefail
nvidia-smi
df -h / /dev/shm
test -d /root/g1-lab/upgrade601
test -f /root/g1-lab/upgrade601/runtime.env
test -x /root/g1-lab/upgrade601/src/arena/.venv/bin/python
若 GPU 不可见、目录缺失或磁盘不足,先处理该问题,不继续后续步骤。原实验数据保存在根磁盘;不要假定 /cloud 一定是可用的大容量持久盘。
cd /root/g1-lab/upgrade601
source runtime.env
src/arena/.venv/bin/python - <<'PY'
import sys
from importlib.metadata import version
import torch
print('Python:', sys.version)
print('Executable:', sys.executable)
assert sys.version_info[:3] == (3, 12, 15)
expected = {
'isaacsim': '6.0.1.0',
'isaaclab': '6.1.17',
'isaaclab-mimic': '1.3.4',
'torch': '2.11.0+cu128',
}
for package, target in expected.items():
actual = version(package)
print(package, actual)
assert actual == target, (package, actual, target)
assert torch.cuda.is_available(), 'GPU unavailable'
print('GPU:', torch.cuda.get_device_name(0))
print('Compute capability:', torch.cuda.get_device_capability(0))
print('Torch CUDA:', torch.version.cuda)
print('Compiled architectures:', torch.cuda.get_arch_list())
x = torch.ones(16, device='cuda')
assert (x + x).sum().item() == 32
torch.cuda.synchronize()
print('VERSIONS_AND_CUDA_OK')
PY
成功标准:版本断言通过,输出 VERSIONS_AND_CUDA_OK。此处只验收版本与基础 CUDA 运算,下一步还需验证实际渲染。不要激活旧 /opt/isaac50/env,不要混用平台预装的 Python 环境,也不要直接执行不带版本约束的升级命令。
cd /root/g1-lab/upgrade601
source runtime.env
test -f scripts/render_smoke.py
mkdir -p logs
G1_RENDER_LOG="logs/render-check-$(date +%Y%m%d-%H%M%S).log"
src/arena/.venv/bin/python scripts/render_smoke.py --allow-root \
2>&1 | tee "$G1_RENDER_LOG"
检查本次日志及本次生成的 RGB 图片,确认不是黑屏、纯色或旧结果。镜像内已有历史实验产物,不能以「文件存在」判定本次成功。首次启动可能编译 shader,耗时较长。
若失败,先检查宿主驱动和日志中的 Vulkan、NGX、OptiX 错误。原环境补齐过 595.80 对应的图形组件;只有当前宿主驱动确为 595.80 且缺少相应组件时,才考虑镜像中的恢复脚本:
cd /root/g1-lab/upgrade601
test "$(nvidia-smi --query-gpu=driver_version --format=csv,noheader | head -n 1)" = '595.80'
test -f scripts/restore-graphics-runtime.sh
bash scripts/restore-graphics-runtime.sh
当前宿主驱动若不是 595.80,不要执行该恢复脚本;应向云平台取得与宿主驱动匹配的用户态图形组件,再重新验收。不要在托管容器内安装内核驱动。仅 nvidia-smi 成功不能证明 NGX、OptiX 或 RGB 渲染正常。
仅需批量离屏运行时可跳过本步。先在平台安全组和端口转发中允许当前客户端公网出口 IP 访问实例 TCP 49100 与 UDP 47998。这些配置不随系统镜像复制。
在 SSH 终端执行以下命令,根据提示输入新实例当前公网 IP:
cd /root/g1-lab/upgrade601
read -r -p '输入当前实例公网 IP: ' G1_PUBLIC_IP
test -n "$G1_PUBLIC_IP"
bash scripts/start-gui.sh "$G1_PUBLIC_IP"
该命令在前台运行,保持 SSH 会话连接;按 Ctrl+C 停止。不要省略 IP 参数:历史脚本带有原实例默认地址,新实例必须显式覆盖。
本地安装 NVIDIA 官方 Isaac Sim WebRTC Streaming Client,连接同一个公网 IP,Signal 端口 49100、Stream 端口 47998。原实验使用 macOS ARM 客户端 2.0.0 显示完整编辑器并完成菜单交互;其他客户端组合仍需验证。
成功标准:编辑器画面可见且可交互。首次连接白屏时可重连,同时检查启动日志和 UDP 通路。先停止编辑器,再启动其他仿真任务,避免多个进程争用 GPU。
镜像中的任务是 Galileo 场景下的 G1 棕色盒子抓取、搬运并放入蓝色容器。机器人使用三指手模型,但示范的手部接口为开合标量,不应描述为多指精细操作数据集。
原实例完成官方种子回放,并分别生成 1 条和 10 条成功轨迹。两批均使用同一官方标注种子扩增;主要随机化盒子的初始 XY 位置,范围为基准位置附近各 ±2.5 cm。这些是 Mimic 扩增结果,不代表训练出了新的 VLA 策略,也未运行 Cosmos Transfer。
如需运行原实验,请先阅读镜像内 experiment.sh 的输入输出配置并为旧结果另存备份或修改输出目录,再执行。不要直接覆盖镜像内已有结果。G1 资产缓存和代码补丁属于该实验配置,不代表任意 Arena 任务都已缓存或测试。
RTX 5090 属于 Blackwell,计算能力为 12.0;PyTorch 2.11 的 CUDA 12.8 构建包含 Blackwell 12.0 支持,Isaac Sim 6.0.1 官方硬件要求也包含 Blackwell GPU。因此,这组核心软件版本具备使用 RTX 5090 的基础,不需要仅因为换成 5090 就升级 PyTorch。
但本镜像尚未在 5090 实例验收。能否在平台选择该镜像创建 5090 实例,还取决于镜像地域和平台机型限制;运行成功还取决于宿主驱动、容器图形库和任务中的其他二进制依赖。尤其要检查镜像内历史补齐的 595.80 图形组件与新宿主是否匹配。
对外支持口径:RTX 4090 原实例已实测;RTX 5090 核心软件版本具备支持基础,待新实例验收。 在 5090 上应依次完成基础 CUDA 运算、真实 RGB 渲染、目标任务物理执行,再验收串流;其中任一步未通过,都不能宣称整体可用。
| 问题 | 检查和处理 |
|---|---|
| Python 包缺失或版本错乱 | 使用 /root/g1-lab/upgrade601/src/arena/.venv/bin/python,先加载 runtime.env |
| GPU 可见但相机黑屏 | 检查 Vulkan、NGX、OptiX 和驱动匹配,验收真实 RGB |
| 旧 Sim 环境退出码 139 | 原 Sim 5 环境曾发生 RTX 崩溃,切换至当前 6.0.1 组合后跑通;不能将所有 139 都归因于同一原因 |
| 串流白屏或连接失败 | 检查新公网 IP、TCP 49100、UDP 47998 和客户端;原实例曾重连后恢复 |
| 实例启动后没有界面 | 镜像不保存运行进程,需手动启动 GUI 脚本 |
| 想直接升级全部依赖 | 先保留固定版本和源码提交,升级视为新的环境组合,需重新验收 |
| 恢复后发现旧轨迹和旧日志 | 这是实验快照;以本次运行时间和输出判断结果,执行扩增前保护旧数据 |
本镜像是第三方整理的实验环境,不是 NVIDIA 官方镜像。各软件、资产、示范数据的使用与再分发遵循各自许可;不能将此 README 视为统一商用授权。