Post-training humanoid whole-body trackers for perceptive control tasks
See the code
implementation accompanying ViBe: Visual Behavior Adaptation for Perceptive Humanoid Whole-Body Control.
Requires uv and Git LFS; uv fetches Python itself.
git clone https://github.com/lok-i/vibe && cd vibe
uv venv --prompt vibe
source .venv/bin/activate
bash scripts/setup/sync_deps.sh # Vibe + pinned deps
bash scripts/setup/sync_data.sh # all | inhouse | omre | grail
data modes, dependencies, troubleshooting: docs/setup.md.
# train
list-envs # task ids
train Vibe-Repose-BigCubeFloor-ImgFeat-Ext --env.scene.num-envs 4096 \
--agent.max-iterations 60000 --env.commands.motion.init-phase-anneal-iterations 50000 \
--agent.wandb-project vibe
# play
play Vibe-Repose-BigCubeFloor-ImgFeat-Ext --agent release --viewer native
play Vibe-Uolm-ImgFeat-Ext --agent initial --viewer native
| arg | options |
|---|---|
--agent | auto · initial · release · trained · zero · random |
--checkpoint-file · --wandb-run-path | for trained |
--viewer | auto · native · viser (also records clips) |
--env.img-encoder (train) | backbones; default Theia-tiny |
--agent.logger (train) | wandb · tensorboard; reading the metrics |
lkrajan/vibe, one per task--agent release: fetched on first use into ~/.cache/vibe/releasesbash scripts/setup/download_released_models.shbash scripts/setup/sync_deps.sh --deploy # + onnxruntime
export-agent <task-id> --release # policy -> exports/agent/<task-id>/
export-agent <task-id> --release --viewer native # + watch the two-world check
export-encoder --tag theia-tiny # vision backbone -> exports/enc/
for deployment support, see: docs/export.md.
ruff check src tests # lint (also CI)
pytest tests/ # contracts over the synced data; no GPU, ~7 s
We welcome contributions, be it an item on our roadmap or new features. Feel free to open an issue/PR.
Code: BSD-3-Clause. Third-party models, data and the released checkpoints keep their own terms: THIRD_PARTY_NOTICES.md.
Post-training humanoid whole-body trackers for perceptive control tasks
See the code
implementation accompanying ViBe: Visual Behavior Adaptation for Perceptive Humanoid Whole-Body Control.
Requires uv and Git LFS; uv fetches Python itself.
git clone https://github.com/lok-i/vibe && cd vibe
uv venv --prompt vibe
source .venv/bin/activate
bash scripts/setup/sync_deps.sh # Vibe + pinned deps
bash scripts/setup/sync_data.sh # all | inhouse | omre | grail
data modes, dependencies, troubleshooting: docs/setup.md.
# train
list-envs # task ids
train Vibe-Repose-BigCubeFloor-ImgFeat-Ext --env.scene.num-envs 4096 \
--agent.max-iterations 60000 --env.commands.motion.init-phase-anneal-iterations 50000 \
--agent.wandb-project vibe
# play
play Vibe-Repose-BigCubeFloor-ImgFeat-Ext --agent release --viewer native
play Vibe-Uolm-ImgFeat-Ext --agent initial --viewer native
| arg | options |
|---|---|
--agent | auto · initial · release · trained · zero · random |
--checkpoint-file · --wandb-run-path | for trained |
--viewer | auto · native · viser (also records clips) |
--env.img-encoder (train) | backbones; default Theia-tiny |
--agent.logger (train) | wandb · tensorboard; reading the metrics |
lkrajan/vibe, one per task--agent release: fetched on first use into ~/.cache/vibe/releasesbash scripts/setup/download_released_models.shbash scripts/setup/sync_deps.sh --deploy # + onnxruntime
export-agent <task-id> --release # policy -> exports/agent/<task-id>/
export-agent <task-id> --release --viewer native # + watch the two-world check
export-encoder --tag theia-tiny # vision backbone -> exports/enc/
for deployment support, see: docs/export.md.
ruff check src tests # lint (also CI)
pytest tests/ # contracts over the synced data; no GPU, ~7 s
We welcome contributions, be it an item on our roadmap or new features. Feel free to open an issue/PR.
Code: BSD-3-Clause. Third-party models, data and the released checkpoints keep their own terms: THIRD_PARTY_NOTICES.md.