Download real_robot/README.md from mmmmmcyaaa/ReTime: direct link, hf CLI and curl.
- Browser
- Download file 4.75 kB
-
https://huggingface.co/mmmmmcyaaa/ReTime/resolve/main/real_robot/README.md
- Command line
-
hf download hf://mmmmmcyaaa/ReTime/real_robot/README.md
-
curl -L -o README.md https://huggingface.co/mmmmmcyaaa/ReTime/resolve/main/real_robot/README.md
Xtrainer2 真机代码交接
这份源码来自你的 GitHub 仓库,整理在 HF 的独立目录 real_robot/。训练与推理服务以 ReTime_source/main 的 Xtrainer2 实现为主体,原开发仓库 OPTR-StarVLA/main 提供 HDF5 数据转换与 LeRobot 格式验证工具。逐文件来源见 SOURCE_FILES.json。
代码入口
| 用途 | 文件 |
|---|---|
| HDF5 → LeRobot 数据转换 | source/scripts/convert_xtrainer2_hdf5_to_lerobot.py |
| 数据格式与四元数约定验证 | source/scripts/validate_xtrainer2_lerobot.py |
| 数据注册、三相机及双臂状态配置 | source/examples/Xtrainer2/train_files/data_registry/data_config.py |
| 数据 support 构建 | source/examples/Xtrainer2/train_files/build_pack_phone_support.py 和 build_pick_bottle_support.py |
| 训练启动 | source/examples/Xtrainer2/train_files/run_xtrainer2_train.sh |
| ReTime proposal 与 continuation | source/retime/cli.py 和 source/scripts/run_xtrainer2_arm.sh |
| 真机 policy server 启动 | source/examples/Xtrainer2/train_files/run_xtrainer2_policy_server.sh |
| 双臂动作与四元数转换 | source/deployment/model_server/xtrainer2_command.py |
| WebSocket 客户端通信工具 | source/deployment/model_server/tools/websocket_policy_client.py |
source/ 保留上游包布局。进入该目录再运行命令,使 starVLA、retime 和 deployment 使用这份源码。
环境与依赖
目标运行环境为 Linux、Python ≥ 3.10。原依赖列表为 requirements.txt 和 requirements-xtrainer2.txt,其中 PyTorch 为 2.7.1,Transformers 为 4.57.0,Accelerate 为 1.13.0。
双臂四元数与 rotation-6D 转换需要匹配 Python、PyTorch、CUDA 的 PyTorch3D。数据转换另需 h5py、pandas、Pillow 和可执行的 ffmpeg。按目标 GPU 环境安装相应依赖。
数据与训练配置
训练配置放在 source/configs/,包含 pack-phone、pick-bottle、smoke 和从 pack-phone common start 延续的配置。原配置使用 Florence、8 GPU、每卡 micro-batch 4、累积 4,global batch 为 128。pack-phone 的完整训练预算为 52,380 updates,warmup 为 5,000。continuation 配置从 steps_17460_accelerate 延续,训练 seed 为 117465,基础训练 seed 为 42。
运行前按配置设置 FLORENCE_MODEL_PATH、XTRAINER2_DATA_ROOT、OPTR_RUN_ROOT 及数据 support 路径。训练入口会检查配置实际引用的环境变量。具体实现见 Xtrainer2 数据说明。
推理服务
准备真机 checkpoint 对应的运行目录,模型、配置、归一化统计保持成套。
your_real_robot_run/
├── config.yaml
├── dataset_statistics.json
└── checkpoints/
└── your_model.pt
在下载后的 real_robot/source 中执行以下命令,将示例路径改为实际路径。
export OPTR_PYTHON=/path/to/your/python
export FLORENCE_MODEL_PATH=/path/to/Florence-2-large
export TMPDIR="$PWD/runtime_tmp"
mkdir -p "$TMPDIR"
bash examples/Xtrainer2/train_files/run_xtrainer2_policy_server.sh \
/path/to/your_real_robot_run/checkpoints/your_model.pt 0 10093
服务使用 BF16,并在连接握手中返回动作维数、相机顺序、四元数约定和 action chunk 长度。
机械臂客户端接口
相机顺序为 cam_high、cam_left_wrist、cam_right_wrist,图像使用 HWC RGB uint8。客户端提供 image、lang 和原始 16 维 state。双臂状态与动作按每臂位置 3 维、四元数 4 维、夹爪 1 维排列,机器人侧四元数顺序为 xyzw。服务端负责归一化和坐标表示转换,模型内部使用 20 维 rotation-6D 表示,返回动作使用机器人侧的 16 维布局。
pick-bottle 的相对末端动作由服务端结合当前状态还原为绝对动作。真实机械臂驱动、相机采集和执行循环由独立硬件客户端完成,需接入师兄实际使用的控制程序。上游接口说明见 ROBOT.md。
本次交接验证
- 129 个源文件与来源清单的字节数一致,逐文件来源见
SOURCE_FILES.json。 - 95 个 Python 文件通过语法检查,7 个 YAML、1 个 JSON 和 1 个 TOML 文件通过解析检查。
- 8 个 shell 入口通过
bash -n,python -m retime --help可正常运行。 - 使用 jlu66 现有 Python 环境在 CPU 上执行 13 项配置测试,全部通过,覆盖双臂维数、global batch、梯度累积、ZeRO-3 权重保存设置、训练种子和 continuation 参数。
实际模型加载、GPU 推理和机械臂动作执行需在配套设备与 checkpoint 上验证。