@r1z4x/tezgah 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +738 -0
- package/LICENSE +21 -0
- package/MANIFEST +753 -0
- package/README.de.md +169 -0
- package/README.es.md +168 -0
- package/README.fr.md +166 -0
- package/README.md +161 -0
- package/README.tr.md +163 -0
- package/agents/tezgah-reviewer.md +70 -0
- package/bin/codegen +337 -0
- package/bin/consult +797 -0
- package/bin/tezgah-adhd +50 -0
- package/bin/tezgah-agents +45 -0
- package/bin/tezgah-capture +66 -0
- package/bin/tezgah-context +96 -0
- package/bin/tezgah-decisions +213 -0
- package/bin/tezgah-design +953 -0
- package/bin/tezgah-docs +1199 -0
- package/bin/tezgah-doctor +497 -0
- package/bin/tezgah-dsh +37 -0
- package/bin/tezgah-dsh.cmd +70 -0
- package/bin/tezgah-gate +75 -0
- package/bin/tezgah-import-ai-research +439 -0
- package/bin/tezgah-index +32 -0
- package/bin/tezgah-lessons +148 -0
- package/bin/tezgah-mcp +322 -0
- package/bin/tezgah-migrate +324 -0
- package/bin/tezgah-pony +50 -0
- package/bin/tezgah-research +772 -0
- package/bin/tezgah-rollback +93 -0
- package/bin/tezgah-route +124 -0
- package/bin/tezgah-setup +5798 -0
- package/bin/tezgah-status +383 -0
- package/bin/tezgah-task +607 -0
- package/bin/tezgah-taste +423 -0
- package/bin/tezgah-triage +485 -0
- package/bin/tezgah.js +36 -0
- package/commands/adhd.md +21 -0
- package/commands/ponytail.md +21 -0
- package/docs/README.md +112 -0
- package/docs/architecture.md +226 -0
- package/docs/citations-baseline.json +59 -0
- package/docs/clarity-baseline.json +116 -0
- package/docs/contract.md +416 -0
- package/docs/environment.md +141 -0
- package/docs/evidence.md +831 -0
- package/docs/feature-audit.md +139 -0
- package/docs/gate.md +407 -0
- package/docs/glossary.md +201 -0
- package/docs/hosts.md +400 -0
- package/docs/index.json +471 -0
- package/docs/judge.md +193 -0
- package/docs/layers.md +189 -0
- package/docs/models.md +160 -0
- package/docs/operations.md +666 -0
- package/docs/research.md +809 -0
- package/docs/results/paired-outcome-2026-10.jsonl +254 -0
- package/docs/results/paired-outcome-2026-10.md +204 -0
- package/docs/skills.md +236 -0
- package/docs/status-line.md +315 -0
- package/docs/testing.md +287 -0
- package/docs/vision.md +117 -0
- package/hooks/hooks.json +33 -0
- package/hooks/projects-auto-init.py +98 -0
- package/hooks/projects-posttooluse.py +149 -0
- package/hooks/projects-pretooluse.py +40 -0
- package/hooks/projects-stop.py +60 -0
- package/hooks/tezgah_agents.py +817 -0
- package/hooks/tezgah_apps.py +266 -0
- package/hooks/tezgah_attest.py +255 -0
- package/hooks/tezgah_clarity.py +171 -0
- package/hooks/tezgah_components.py +140 -0
- package/hooks/tezgah_context.py +2953 -0
- package/hooks/tezgah_embed.py +765 -0
- package/hooks/tezgah_gate.py +2736 -0
- package/hooks/tezgah_guard.py +177 -0
- package/hooks/tezgah_index.py +124 -0
- package/hooks/tezgah_integrity.py +5141 -0
- package/hooks/tezgah_judge.py +487 -0
- package/hooks/tezgah_lang.py +230 -0
- package/hooks/tezgah_lessons.py +210 -0
- package/hooks/tezgah_models.py +855 -0
- package/hooks/tezgah_paths.py +1132 -0
- package/hooks/tezgah_policy.py +1039 -0
- package/hooks/tezgah_rank.py +77 -0
- package/hooks/tezgah_replay.py +1109 -0
- package/hooks/tezgah_research.py +5176 -0
- package/hooks/tezgah_shapes.py +305 -0
- package/hooks/tezgah_skill_pick.py +227 -0
- package/hooks/tezgah_snapshot.py +490 -0
- package/hooks/tezgah_stopspec.py +320 -0
- package/hooks/tezgah_task.py +458 -0
- package/hooks/tezgah_taste.py +201 -0
- package/hooks/tezgah_untrusted.py +112 -0
- package/hooks/tezgah_update.py +430 -0
- package/hosts/codex/hook.py +268 -0
- package/hosts/codex/hooks.json +26 -0
- package/hosts/cursor/hook.py +461 -0
- package/hosts/cursor/hooks.json +44 -0
- package/hosts/dsh/hooks.json +21 -0
- package/hosts/dsh/statusline/lib/client.js +138 -0
- package/hosts/dsh/statusline/lib/index.js +104 -0
- package/hosts/dsh/statusline/package.json +28 -0
- package/hosts/omp/hook.py +277 -0
- package/hosts/omp/tezgah-hook.ts.in +701 -0
- package/hosts/opencode/plugins/tezgah.js +2742 -0
- package/hosts/opencode/tui/tezgah-tui.tsx +151 -0
- package/output-styles/tezgah.md +142 -0
- package/package.json +32 -0
- package/packaging/build.sh +342 -0
- package/packaging/install.ps1 +166 -0
- package/packaging/install.sh +56 -0
- package/packaging/upgrade.sh +142 -0
- package/skills/ai-research/0-autoresearch-skill/SKILL.md +411 -0
- package/skills/ai-research/0-autoresearch-skill/references/agent-continuity.md +95 -0
- package/skills/ai-research/0-autoresearch-skill/references/progress-reporting.md +166 -0
- package/skills/ai-research/0-autoresearch-skill/references/skill-routing.md +219 -0
- package/skills/ai-research/0-autoresearch-skill/templates/findings.md +44 -0
- package/skills/ai-research/0-autoresearch-skill/templates/research-log.md +41 -0
- package/skills/ai-research/01-model-architecture/litgpt/SKILL.md +469 -0
- package/skills/ai-research/01-model-architecture/litgpt/references/custom-models.md +569 -0
- package/skills/ai-research/01-model-architecture/litgpt/references/distributed-training.md +452 -0
- package/skills/ai-research/01-model-architecture/litgpt/references/supported-models.md +337 -0
- package/skills/ai-research/01-model-architecture/litgpt/references/training-recipes.md +620 -0
- package/skills/ai-research/01-model-architecture/mamba/SKILL.md +260 -0
- package/skills/ai-research/01-model-architecture/mamba/references/architecture-details.md +207 -0
- package/skills/ai-research/01-model-architecture/mamba/references/benchmarks.md +256 -0
- package/skills/ai-research/01-model-architecture/mamba/references/training-guide.md +389 -0
- package/skills/ai-research/01-model-architecture/nanogpt/SKILL.md +290 -0
- package/skills/ai-research/01-model-architecture/nanogpt/references/architecture.md +383 -0
- package/skills/ai-research/01-model-architecture/nanogpt/references/data.md +477 -0
- package/skills/ai-research/01-model-architecture/nanogpt/references/training.md +565 -0
- package/skills/ai-research/01-model-architecture/rwkv/SKILL.md +260 -0
- package/skills/ai-research/01-model-architecture/rwkv/references/architecture-details.md +345 -0
- package/skills/ai-research/01-model-architecture/rwkv/references/rwkv7.md +387 -0
- package/skills/ai-research/01-model-architecture/rwkv/references/state-management.md +370 -0
- package/skills/ai-research/01-model-architecture/torchtitan/SKILL.md +358 -0
- package/skills/ai-research/01-model-architecture/torchtitan/references/checkpoint.md +182 -0
- package/skills/ai-research/01-model-architecture/torchtitan/references/custom-models.md +259 -0
- package/skills/ai-research/01-model-architecture/torchtitan/references/float8.md +134 -0
- package/skills/ai-research/01-model-architecture/torchtitan/references/fsdp.md +127 -0
- package/skills/ai-research/02-tokenization/huggingface-tokenizers/SKILL.md +516 -0
- package/skills/ai-research/02-tokenization/huggingface-tokenizers/references/algorithms.md +654 -0
- package/skills/ai-research/02-tokenization/huggingface-tokenizers/references/integration.md +638 -0
- package/skills/ai-research/02-tokenization/huggingface-tokenizers/references/pipeline.md +724 -0
- package/skills/ai-research/02-tokenization/huggingface-tokenizers/references/training.md +566 -0
- package/skills/ai-research/02-tokenization/sentencepiece/SKILL.md +235 -0
- package/skills/ai-research/02-tokenization/sentencepiece/references/algorithms.md +201 -0
- package/skills/ai-research/02-tokenization/sentencepiece/references/training.md +305 -0
- package/skills/ai-research/03-fine-tuning/axolotl/SKILL.md +158 -0
- package/skills/ai-research/03-fine-tuning/axolotl/references/api.md +5549 -0
- package/skills/ai-research/03-fine-tuning/axolotl/references/dataset-formats.md +1030 -0
- package/skills/ai-research/03-fine-tuning/axolotl/references/index.md +16 -0
- package/skills/ai-research/03-fine-tuning/axolotl/references/other.md +3564 -0
- package/skills/ai-research/03-fine-tuning/llama-factory/SKILL.md +80 -0
- package/skills/ai-research/03-fine-tuning/llama-factory/references/_images.md +24 -0
- package/skills/ai-research/03-fine-tuning/llama-factory/references/advanced.md +1056 -0
- package/skills/ai-research/03-fine-tuning/llama-factory/references/getting_started.md +350 -0
- package/skills/ai-research/03-fine-tuning/llama-factory/references/index.md +20 -0
- package/skills/ai-research/03-fine-tuning/llama-factory/references/other.md +32 -0
- package/skills/ai-research/03-fine-tuning/peft/SKILL.md +431 -0
- package/skills/ai-research/03-fine-tuning/peft/references/advanced-usage.md +515 -0
- package/skills/ai-research/03-fine-tuning/peft/references/troubleshooting.md +481 -0
- package/skills/ai-research/03-fine-tuning/unsloth/SKILL.md +80 -0
- package/skills/ai-research/03-fine-tuning/unsloth/references/index.md +8 -0
- package/skills/ai-research/03-fine-tuning/unsloth/references/llms.md +83 -0
- package/skills/ai-research/04-mechanistic-interpretability/nnsight/SKILL.md +436 -0
- package/skills/ai-research/04-mechanistic-interpretability/nnsight/references/README.md +79 -0
- package/skills/ai-research/04-mechanistic-interpretability/nnsight/references/api.md +345 -0
- package/skills/ai-research/04-mechanistic-interpretability/nnsight/references/tutorials.md +301 -0
- package/skills/ai-research/04-mechanistic-interpretability/pyvene/SKILL.md +473 -0
- package/skills/ai-research/04-mechanistic-interpretability/pyvene/references/README.md +74 -0
- package/skills/ai-research/04-mechanistic-interpretability/pyvene/references/api.md +384 -0
- package/skills/ai-research/04-mechanistic-interpretability/pyvene/references/tutorials.md +377 -0
- package/skills/ai-research/04-mechanistic-interpretability/saelens/SKILL.md +386 -0
- package/skills/ai-research/04-mechanistic-interpretability/saelens/references/README.md +71 -0
- package/skills/ai-research/04-mechanistic-interpretability/saelens/references/api.md +334 -0
- package/skills/ai-research/04-mechanistic-interpretability/saelens/references/tutorials.md +319 -0
- package/skills/ai-research/04-mechanistic-interpretability/transformer-lens/SKILL.md +346 -0
- package/skills/ai-research/04-mechanistic-interpretability/transformer-lens/references/README.md +55 -0
- package/skills/ai-research/04-mechanistic-interpretability/transformer-lens/references/api.md +363 -0
- package/skills/ai-research/04-mechanistic-interpretability/transformer-lens/references/tutorials.md +340 -0
- package/skills/ai-research/05-data-processing/nemo-curator/SKILL.md +383 -0
- package/skills/ai-research/05-data-processing/nemo-curator/references/deduplication.md +88 -0
- package/skills/ai-research/05-data-processing/nemo-curator/references/filtering.md +103 -0
- package/skills/ai-research/05-data-processing/ray-data/SKILL.md +326 -0
- package/skills/ai-research/05-data-processing/ray-data/references/integration.md +83 -0
- package/skills/ai-research/05-data-processing/ray-data/references/transformations.md +84 -0
- package/skills/ai-research/06-post-training/grpo-rl-training/README.md +98 -0
- package/skills/ai-research/06-post-training/grpo-rl-training/SKILL.md +572 -0
- package/skills/ai-research/06-post-training/miles/SKILL.md +315 -0
- package/skills/ai-research/06-post-training/miles/references/api-reference.md +142 -0
- package/skills/ai-research/06-post-training/miles/references/troubleshooting.md +353 -0
- package/skills/ai-research/06-post-training/openrlhf/SKILL.md +249 -0
- package/skills/ai-research/06-post-training/openrlhf/references/algorithm-comparison.md +405 -0
- package/skills/ai-research/06-post-training/openrlhf/references/custom-rewards.md +531 -0
- package/skills/ai-research/06-post-training/openrlhf/references/hybrid-engine.md +288 -0
- package/skills/ai-research/06-post-training/openrlhf/references/multi-node-training.md +455 -0
- package/skills/ai-research/06-post-training/simpo/SKILL.md +219 -0
- package/skills/ai-research/06-post-training/simpo/references/datasets.md +479 -0
- package/skills/ai-research/06-post-training/simpo/references/hyperparameters.md +453 -0
- package/skills/ai-research/06-post-training/simpo/references/loss-functions.md +351 -0
- package/skills/ai-research/06-post-training/slime/SKILL.md +464 -0
- package/skills/ai-research/06-post-training/slime/references/api-reference.md +393 -0
- package/skills/ai-research/06-post-training/slime/references/troubleshooting.md +387 -0
- package/skills/ai-research/06-post-training/torchforge/SKILL.md +433 -0
- package/skills/ai-research/06-post-training/torchforge/references/api-reference.md +328 -0
- package/skills/ai-research/06-post-training/torchforge/references/troubleshooting.md +410 -0
- package/skills/ai-research/06-post-training/trl-fine-tuning/SKILL.md +455 -0
- package/skills/ai-research/06-post-training/trl-fine-tuning/references/dpo-variants.md +228 -0
- package/skills/ai-research/06-post-training/trl-fine-tuning/references/online-rl.md +83 -0
- package/skills/ai-research/06-post-training/trl-fine-tuning/references/reward-modeling.md +123 -0
- package/skills/ai-research/06-post-training/trl-fine-tuning/references/sft-training.md +169 -0
- package/skills/ai-research/06-post-training/verl/SKILL.md +391 -0
- package/skills/ai-research/06-post-training/verl/references/api-reference.md +302 -0
- package/skills/ai-research/06-post-training/verl/references/troubleshooting.md +392 -0
- package/skills/ai-research/07-safety-alignment/constitutional-ai/SKILL.md +290 -0
- package/skills/ai-research/07-safety-alignment/llamaguard/SKILL.md +337 -0
- package/skills/ai-research/07-safety-alignment/nemo-guardrails/SKILL.md +297 -0
- package/skills/ai-research/07-safety-alignment/prompt-guard/SKILL.md +312 -0
- package/skills/ai-research/08-distributed-training/accelerate/SKILL.md +332 -0
- package/skills/ai-research/08-distributed-training/accelerate/references/custom-plugins.md +454 -0
- package/skills/ai-research/08-distributed-training/accelerate/references/megatron-integration.md +490 -0
- package/skills/ai-research/08-distributed-training/accelerate/references/performance.md +526 -0
- package/skills/ai-research/08-distributed-training/deepspeed/SKILL.md +141 -0
- package/skills/ai-research/08-distributed-training/deepspeed/references/08.md +18 -0
- package/skills/ai-research/08-distributed-training/deepspeed/references/09.md +174 -0
- package/skills/ai-research/08-distributed-training/deepspeed/references/2020.md +379 -0
- package/skills/ai-research/08-distributed-training/deepspeed/references/2023.md +280 -0
- package/skills/ai-research/08-distributed-training/deepspeed/references/assets.md +180 -0
- package/skills/ai-research/08-distributed-training/deepspeed/references/index.md +36 -0
- package/skills/ai-research/08-distributed-training/deepspeed/references/mii.md +119 -0
- package/skills/ai-research/08-distributed-training/deepspeed/references/other.md +1192 -0
- package/skills/ai-research/08-distributed-training/megatron-core/SKILL.md +366 -0
- package/skills/ai-research/08-distributed-training/megatron-core/references/benchmarks.md +250 -0
- package/skills/ai-research/08-distributed-training/megatron-core/references/parallelism-guide.md +405 -0
- package/skills/ai-research/08-distributed-training/megatron-core/references/production-examples.md +474 -0
- package/skills/ai-research/08-distributed-training/megatron-core/references/training-recipes.md +548 -0
- package/skills/ai-research/08-distributed-training/pytorch-fsdp2/SKILL.md +231 -0
- package/skills/ai-research/08-distributed-training/pytorch-fsdp2/references/pytorch_dcp_async_recipe.md +14 -0
- package/skills/ai-research/08-distributed-training/pytorch-fsdp2/references/pytorch_dcp_overview.md +19 -0
- package/skills/ai-research/08-distributed-training/pytorch-fsdp2/references/pytorch_dcp_recipe.md +18 -0
- package/skills/ai-research/08-distributed-training/pytorch-fsdp2/references/pytorch_ddp_notes.md +10 -0
- package/skills/ai-research/08-distributed-training/pytorch-fsdp2/references/pytorch_device_mesh_tutorial.md +22 -0
- package/skills/ai-research/08-distributed-training/pytorch-fsdp2/references/pytorch_examples_fsdp2.md +15 -0
- package/skills/ai-research/08-distributed-training/pytorch-fsdp2/references/pytorch_fsdp1_api.md +9 -0
- package/skills/ai-research/08-distributed-training/pytorch-fsdp2/references/pytorch_fsdp2_tutorial.md +45 -0
- package/skills/ai-research/08-distributed-training/pytorch-fsdp2/references/pytorch_fully_shard_api.md +49 -0
- package/skills/ai-research/08-distributed-training/pytorch-fsdp2/references/pytorch_tp_tutorial.md +22 -0
- package/skills/ai-research/08-distributed-training/pytorch-fsdp2/references/ray_train_fsdp2_example.md +13 -0
- package/skills/ai-research/08-distributed-training/pytorch-fsdp2/references/torchtitan_fsdp_notes.md +14 -0
- package/skills/ai-research/08-distributed-training/pytorch-lightning/SKILL.md +346 -0
- package/skills/ai-research/08-distributed-training/pytorch-lightning/references/callbacks.md +437 -0
- package/skills/ai-research/08-distributed-training/pytorch-lightning/references/distributed.md +491 -0
- package/skills/ai-research/08-distributed-training/pytorch-lightning/references/hyperparameter-tuning.md +557 -0
- package/skills/ai-research/08-distributed-training/ray-train/SKILL.md +406 -0
- package/skills/ai-research/08-distributed-training/ray-train/references/multi-node.md +629 -0
- package/skills/ai-research/09-infrastructure/lambda-labs/SKILL.md +545 -0
- package/skills/ai-research/09-infrastructure/lambda-labs/references/advanced-usage.md +612 -0
- package/skills/ai-research/09-infrastructure/lambda-labs/references/troubleshooting.md +531 -0
- package/skills/ai-research/09-infrastructure/modal/SKILL.md +341 -0
- package/skills/ai-research/09-infrastructure/modal/references/advanced-usage.md +504 -0
- package/skills/ai-research/09-infrastructure/modal/references/troubleshooting.md +495 -0
- package/skills/ai-research/09-infrastructure/skypilot/SKILL.md +509 -0
- package/skills/ai-research/09-infrastructure/skypilot/references/advanced-usage.md +492 -0
- package/skills/ai-research/09-infrastructure/skypilot/references/troubleshooting.md +571 -0
- package/skills/ai-research/10-optimization/awq/SKILL.md +310 -0
- package/skills/ai-research/10-optimization/awq/references/advanced-usage.md +325 -0
- package/skills/ai-research/10-optimization/awq/references/troubleshooting.md +345 -0
- package/skills/ai-research/10-optimization/bitsandbytes/SKILL.md +411 -0
- package/skills/ai-research/10-optimization/bitsandbytes/references/memory-optimization.md +522 -0
- package/skills/ai-research/10-optimization/bitsandbytes/references/qlora-training.md +522 -0
- package/skills/ai-research/10-optimization/bitsandbytes/references/quantization-formats.md +448 -0
- package/skills/ai-research/10-optimization/flash-attention/SKILL.md +367 -0
- package/skills/ai-research/10-optimization/flash-attention/references/benchmarks.md +216 -0
- package/skills/ai-research/10-optimization/flash-attention/references/transformers-integration.md +294 -0
- package/skills/ai-research/10-optimization/gguf/SKILL.md +427 -0
- package/skills/ai-research/10-optimization/gguf/references/advanced-usage.md +505 -0
- package/skills/ai-research/10-optimization/gguf/references/troubleshooting.md +443 -0
- package/skills/ai-research/10-optimization/gptq/SKILL.md +450 -0
- package/skills/ai-research/10-optimization/gptq/references/calibration.md +338 -0
- package/skills/ai-research/10-optimization/gptq/references/integration.md +130 -0
- package/skills/ai-research/10-optimization/gptq/references/troubleshooting.md +96 -0
- package/skills/ai-research/10-optimization/hqq/SKILL.md +445 -0
- package/skills/ai-research/10-optimization/hqq/references/advanced-usage.md +529 -0
- package/skills/ai-research/10-optimization/hqq/references/troubleshooting.md +504 -0
- package/skills/ai-research/10-optimization/ml-training-recipes/SKILL.md +319 -0
- package/skills/ai-research/10-optimization/ml-training-recipes/references/architecture.md +320 -0
- package/skills/ai-research/10-optimization/ml-training-recipes/references/biomedical.md +498 -0
- package/skills/ai-research/10-optimization/ml-training-recipes/references/domain-specific.md +626 -0
- package/skills/ai-research/10-optimization/ml-training-recipes/references/experiment-loop.md +129 -0
- package/skills/ai-research/10-optimization/ml-training-recipes/references/optimizers.md +330 -0
- package/skills/ai-research/10-optimization/ml-training-recipes/references/scaling-and-selection.md +428 -0
- package/skills/ai-research/11-evaluation/bigcode-evaluation-harness/SKILL.md +405 -0
- package/skills/ai-research/11-evaluation/bigcode-evaluation-harness/references/benchmarks.md +394 -0
- package/skills/ai-research/11-evaluation/bigcode-evaluation-harness/references/custom-tasks.md +425 -0
- package/skills/ai-research/11-evaluation/bigcode-evaluation-harness/references/issues.md +395 -0
- package/skills/ai-research/11-evaluation/lm-evaluation-harness/SKILL.md +490 -0
- package/skills/ai-research/11-evaluation/lm-evaluation-harness/references/api-evaluation.md +491 -0
- package/skills/ai-research/11-evaluation/lm-evaluation-harness/references/benchmark-guide.md +489 -0
- package/skills/ai-research/11-evaluation/lm-evaluation-harness/references/custom-tasks.md +603 -0
- package/skills/ai-research/11-evaluation/lm-evaluation-harness/references/distributed-eval.md +520 -0
- package/skills/ai-research/11-evaluation/nemo-evaluator/SKILL.md +494 -0
- package/skills/ai-research/11-evaluation/nemo-evaluator/references/adapter-system.md +341 -0
- package/skills/ai-research/11-evaluation/nemo-evaluator/references/configuration.md +448 -0
- package/skills/ai-research/11-evaluation/nemo-evaluator/references/custom-benchmarks.md +316 -0
- package/skills/ai-research/11-evaluation/nemo-evaluator/references/execution-backends.md +362 -0
- package/skills/ai-research/12-inference-serving/llama-cpp/SKILL.md +258 -0
- package/skills/ai-research/12-inference-serving/llama-cpp/references/optimization.md +90 -0
- package/skills/ai-research/12-inference-serving/llama-cpp/references/quantization.md +214 -0
- package/skills/ai-research/12-inference-serving/llama-cpp/references/server.md +126 -0
- package/skills/ai-research/12-inference-serving/sglang/SKILL.md +442 -0
- package/skills/ai-research/12-inference-serving/sglang/references/deployment.md +491 -0
- package/skills/ai-research/12-inference-serving/sglang/references/radix-attention.md +414 -0
- package/skills/ai-research/12-inference-serving/sglang/references/structured-generation.md +542 -0
- package/skills/ai-research/12-inference-serving/tensorrt-llm/SKILL.md +187 -0
- package/skills/ai-research/12-inference-serving/tensorrt-llm/references/multi-gpu.md +299 -0
- package/skills/ai-research/12-inference-serving/tensorrt-llm/references/optimization.md +243 -0
- package/skills/ai-research/12-inference-serving/tensorrt-llm/references/serving.md +471 -0
- package/skills/ai-research/12-inference-serving/vllm/SKILL.md +364 -0
- package/skills/ai-research/12-inference-serving/vllm/references/optimization.md +227 -0
- package/skills/ai-research/12-inference-serving/vllm/references/quantization.md +285 -0
- package/skills/ai-research/12-inference-serving/vllm/references/server-deployment.md +256 -0
- package/skills/ai-research/12-inference-serving/vllm/references/troubleshooting.md +448 -0
- package/skills/ai-research/13-mlops/mlflow/SKILL.md +704 -0
- package/skills/ai-research/13-mlops/mlflow/references/deployment.md +745 -0
- package/skills/ai-research/13-mlops/mlflow/references/model-registry.md +771 -0
- package/skills/ai-research/13-mlops/mlflow/references/tracking.md +681 -0
- package/skills/ai-research/13-mlops/swanlab/SKILL.md +406 -0
- package/skills/ai-research/13-mlops/swanlab/references/integrations.md +305 -0
- package/skills/ai-research/13-mlops/swanlab/references/visualization.md +234 -0
- package/skills/ai-research/13-mlops/tensorboard/SKILL.md +629 -0
- package/skills/ai-research/13-mlops/tensorboard/references/integrations.md +639 -0
- package/skills/ai-research/13-mlops/tensorboard/references/profiling.md +546 -0
- package/skills/ai-research/13-mlops/tensorboard/references/visualization.md +621 -0
- package/skills/ai-research/13-mlops/weights-and-biases/SKILL.md +590 -0
- package/skills/ai-research/13-mlops/weights-and-biases/references/artifacts.md +585 -0
- package/skills/ai-research/13-mlops/weights-and-biases/references/integrations.md +701 -0
- package/skills/ai-research/13-mlops/weights-and-biases/references/sweeps.md +848 -0
- package/skills/ai-research/14-agents/a-evolve/SKILL.md +383 -0
- package/skills/ai-research/14-agents/a-evolve/references/README.md +831 -0
- package/skills/ai-research/14-agents/a-evolve/references/api.md +594 -0
- package/skills/ai-research/14-agents/a-evolve/references/architecture.md +417 -0
- package/skills/ai-research/14-agents/a-evolve/references/design-patterns.md +462 -0
- package/skills/ai-research/14-agents/a-evolve/references/examples.md +352 -0
- package/skills/ai-research/14-agents/a-evolve/references/issues.md +591 -0
- package/skills/ai-research/14-agents/a-evolve/references/releases.md +112 -0
- package/skills/ai-research/14-agents/a-evolve/references/tutorials.md +819 -0
- package/skills/ai-research/14-agents/autogpt/SKILL.md +403 -0
- package/skills/ai-research/14-agents/autogpt/references/advanced-usage.md +536 -0
- package/skills/ai-research/14-agents/autogpt/references/troubleshooting.md +421 -0
- package/skills/ai-research/14-agents/crewai/SKILL.md +498 -0
- package/skills/ai-research/14-agents/crewai/references/flows.md +439 -0
- package/skills/ai-research/14-agents/crewai/references/tools.md +430 -0
- package/skills/ai-research/14-agents/crewai/references/troubleshooting.md +481 -0
- package/skills/ai-research/14-agents/langchain/SKILL.md +480 -0
- package/skills/ai-research/14-agents/langchain/references/agents.md +500 -0
- package/skills/ai-research/14-agents/langchain/references/integration.md +563 -0
- package/skills/ai-research/14-agents/langchain/references/rag.md +601 -0
- package/skills/ai-research/14-agents/llamaindex/SKILL.md +569 -0
- package/skills/ai-research/14-agents/llamaindex/references/agents.md +84 -0
- package/skills/ai-research/14-agents/llamaindex/references/data_connectors.md +109 -0
- package/skills/ai-research/14-agents/llamaindex/references/query_engines.md +407 -0
- package/skills/ai-research/15-rag/chroma/SKILL.md +406 -0
- package/skills/ai-research/15-rag/chroma/references/integration.md +39 -0
- package/skills/ai-research/15-rag/faiss/SKILL.md +221 -0
- package/skills/ai-research/15-rag/faiss/references/index_types.md +281 -0
- package/skills/ai-research/15-rag/pinecone/SKILL.md +358 -0
- package/skills/ai-research/15-rag/pinecone/references/deployment.md +182 -0
- package/skills/ai-research/15-rag/qdrant/SKILL.md +493 -0
- package/skills/ai-research/15-rag/qdrant/references/advanced-usage.md +649 -0
- package/skills/ai-research/15-rag/qdrant/references/troubleshooting.md +632 -0
- package/skills/ai-research/15-rag/sentence-transformers/SKILL.md +255 -0
- package/skills/ai-research/15-rag/sentence-transformers/references/models.md +124 -0
- package/skills/ai-research/16-prompt-engineering/dspy/SKILL.md +590 -0
- package/skills/ai-research/16-prompt-engineering/dspy/references/examples.md +664 -0
- package/skills/ai-research/16-prompt-engineering/dspy/references/modules.md +476 -0
- package/skills/ai-research/16-prompt-engineering/dspy/references/optimizers.md +567 -0
- package/skills/ai-research/16-prompt-engineering/guidance/SKILL.md +572 -0
- package/skills/ai-research/16-prompt-engineering/guidance/references/backends.md +555 -0
- package/skills/ai-research/16-prompt-engineering/guidance/references/constraints.md +675 -0
- package/skills/ai-research/16-prompt-engineering/guidance/references/examples.md +768 -0
- package/skills/ai-research/16-prompt-engineering/instructor/SKILL.md +740 -0
- package/skills/ai-research/16-prompt-engineering/instructor/references/examples.md +108 -0
- package/skills/ai-research/16-prompt-engineering/instructor/references/providers.md +71 -0
- package/skills/ai-research/16-prompt-engineering/instructor/references/validation.md +607 -0
- package/skills/ai-research/16-prompt-engineering/outlines/SKILL.md +652 -0
- package/skills/ai-research/16-prompt-engineering/outlines/references/backends.md +616 -0
- package/skills/ai-research/16-prompt-engineering/outlines/references/examples.md +774 -0
- package/skills/ai-research/16-prompt-engineering/outlines/references/json_generation.md +653 -0
- package/skills/ai-research/17-observability/langsmith/SKILL.md +422 -0
- package/skills/ai-research/17-observability/langsmith/references/advanced-usage.md +549 -0
- package/skills/ai-research/17-observability/langsmith/references/troubleshooting.md +538 -0
- package/skills/ai-research/17-observability/phoenix/SKILL.md +475 -0
- package/skills/ai-research/17-observability/phoenix/references/advanced-usage.md +620 -0
- package/skills/ai-research/17-observability/phoenix/references/troubleshooting.md +539 -0
- package/skills/ai-research/18-multimodal/audiocraft/SKILL.md +564 -0
- package/skills/ai-research/18-multimodal/audiocraft/references/advanced-usage.md +667 -0
- package/skills/ai-research/18-multimodal/audiocraft/references/troubleshooting.md +505 -0
- package/skills/ai-research/18-multimodal/blip-2/SKILL.md +564 -0
- package/skills/ai-research/18-multimodal/blip-2/references/advanced-usage.md +681 -0
- package/skills/ai-research/18-multimodal/blip-2/references/troubleshooting.md +527 -0
- package/skills/ai-research/18-multimodal/clip/SKILL.md +253 -0
- package/skills/ai-research/18-multimodal/clip/references/applications.md +208 -0
- package/skills/ai-research/18-multimodal/cosmos-policy/SKILL.md +402 -0
- package/skills/ai-research/18-multimodal/cosmos-policy/references/libero-commands.md +175 -0
- package/skills/ai-research/18-multimodal/cosmos-policy/references/robocasa-commands.md +147 -0
- package/skills/ai-research/18-multimodal/llava/SKILL.md +304 -0
- package/skills/ai-research/18-multimodal/llava/references/training.md +198 -0
- package/skills/ai-research/18-multimodal/openpi/SKILL.md +480 -0
- package/skills/ai-research/18-multimodal/openpi/references/checkpoints-and-env-map.md +86 -0
- package/skills/ai-research/18-multimodal/openpi/references/config-recipes.md +50 -0
- package/skills/ai-research/18-multimodal/openpi/references/pytorch-gotchas.md +49 -0
- package/skills/ai-research/18-multimodal/openpi/references/remote-client-pattern.md +48 -0
- package/skills/ai-research/18-multimodal/openpi/references/training-debugging.md +46 -0
- package/skills/ai-research/18-multimodal/openvla-oft/SKILL.md +441 -0
- package/skills/ai-research/18-multimodal/openvla-oft/references/aloha-workflow.md +141 -0
- package/skills/ai-research/18-multimodal/openvla-oft/references/config-troubleshooting.md +97 -0
- package/skills/ai-research/18-multimodal/openvla-oft/references/libero-workflow.md +115 -0
- package/skills/ai-research/18-multimodal/openvla-oft/references/paper-and-checkpoints.md +84 -0
- package/skills/ai-research/18-multimodal/segment-anything/SKILL.md +500 -0
- package/skills/ai-research/18-multimodal/segment-anything/references/advanced-usage.md +590 -0
- package/skills/ai-research/18-multimodal/segment-anything/references/troubleshooting.md +485 -0
- package/skills/ai-research/18-multimodal/stable-diffusion/SKILL.md +519 -0
- package/skills/ai-research/18-multimodal/stable-diffusion/references/advanced-usage.md +717 -0
- package/skills/ai-research/18-multimodal/stable-diffusion/references/troubleshooting.md +556 -0
- package/skills/ai-research/18-multimodal/whisper/SKILL.md +317 -0
- package/skills/ai-research/18-multimodal/whisper/references/languages.md +190 -0
- package/skills/ai-research/19-emerging-techniques/knowledge-distillation/SKILL.md +458 -0
- package/skills/ai-research/19-emerging-techniques/knowledge-distillation/references/minillm.md +335 -0
- package/skills/ai-research/19-emerging-techniques/long-context/SKILL.md +536 -0
- package/skills/ai-research/19-emerging-techniques/long-context/references/extension_methods.md +469 -0
- package/skills/ai-research/19-emerging-techniques/long-context/references/fine_tuning.md +612 -0
- package/skills/ai-research/19-emerging-techniques/long-context/references/rope.md +403 -0
- package/skills/ai-research/19-emerging-techniques/model-merging/SKILL.md +497 -0
- package/skills/ai-research/19-emerging-techniques/model-merging/references/coefficient-tuning.md +415 -0
- package/skills/ai-research/19-emerging-techniques/model-merging/references/evaluation.md +463 -0
- package/skills/ai-research/19-emerging-techniques/model-merging/references/examples.md +429 -0
- package/skills/ai-research/19-emerging-techniques/model-merging/references/methods.md +353 -0
- package/skills/ai-research/19-emerging-techniques/model-pruning/SKILL.md +495 -0
- package/skills/ai-research/19-emerging-techniques/model-pruning/references/wanda.md +348 -0
- package/skills/ai-research/19-emerging-techniques/moe-training/SKILL.md +526 -0
- package/skills/ai-research/19-emerging-techniques/moe-training/references/architectures.md +433 -0
- package/skills/ai-research/19-emerging-techniques/moe-training/references/inference.md +349 -0
- package/skills/ai-research/19-emerging-techniques/moe-training/references/training.md +426 -0
- package/skills/ai-research/19-emerging-techniques/speculative-decoding/SKILL.md +467 -0
- package/skills/ai-research/19-emerging-techniques/speculative-decoding/references/lookahead.md +310 -0
- package/skills/ai-research/19-emerging-techniques/speculative-decoding/references/medusa.md +351 -0
- package/skills/ai-research/20-ml-paper-writing/academic-plotting/SKILL.md +479 -0
- package/skills/ai-research/20-ml-paper-writing/academic-plotting/references/data-visualization.md +509 -0
- package/skills/ai-research/20-ml-paper-writing/academic-plotting/references/diagram-generation.md +395 -0
- package/skills/ai-research/20-ml-paper-writing/academic-plotting/references/style-guide.md +305 -0
- package/skills/ai-research/20-ml-paper-writing/ml-paper-writing/SKILL.md +982 -0
- package/skills/ai-research/20-ml-paper-writing/ml-paper-writing/references/checklists.md +348 -0
- package/skills/ai-research/20-ml-paper-writing/ml-paper-writing/references/citation-workflow.md +563 -0
- package/skills/ai-research/20-ml-paper-writing/ml-paper-writing/references/reviewer-guidelines.md +349 -0
- package/skills/ai-research/20-ml-paper-writing/ml-paper-writing/references/sources.md +165 -0
- package/skills/ai-research/20-ml-paper-writing/ml-paper-writing/references/writing-guide.md +477 -0
- package/skills/ai-research/20-ml-paper-writing/presenting-conference-talks/SKILL.md +298 -0
- package/skills/ai-research/20-ml-paper-writing/presenting-conference-talks/references/slide-templates.md +505 -0
- package/skills/ai-research/20-ml-paper-writing/systems-paper-writing/SKILL.md +270 -0
- package/skills/ai-research/20-ml-paper-writing/systems-paper-writing/references/checklist.md +279 -0
- package/skills/ai-research/20-ml-paper-writing/systems-paper-writing/references/reviewer-guidelines.md +116 -0
- package/skills/ai-research/20-ml-paper-writing/systems-paper-writing/references/section-blueprints.md +400 -0
- package/skills/ai-research/20-ml-paper-writing/systems-paper-writing/references/systems-conferences.md +261 -0
- package/skills/ai-research/20-ml-paper-writing/systems-paper-writing/references/writing-patterns.md +231 -0
- package/skills/ai-research/21-research-ideation/brainstorming-research-ideas/SKILL.md +384 -0
- package/skills/ai-research/21-research-ideation/creative-thinking-for-research/SKILL.md +366 -0
- package/skills/ai-research/22-agent-native-research-artifact/compiler/SKILL.md +245 -0
- package/skills/ai-research/22-agent-native-research-artifact/compiler/references/ara-schema.md +439 -0
- package/skills/ai-research/22-agent-native-research-artifact/compiler/references/exploration-tree-spec.md +125 -0
- package/skills/ai-research/22-agent-native-research-artifact/compiler/references/validation-checklist.md +149 -0
- package/skills/ai-research/22-agent-native-research-artifact/research-manager/SKILL.md +324 -0
- package/skills/ai-research/22-agent-native-research-artifact/research-manager/references/event-taxonomy.md +124 -0
- package/skills/ai-research/22-agent-native-research-artifact/research-manager/references/provenance-tags.md +190 -0
- package/skills/ai-research/22-agent-native-research-artifact/research-manager/references/session-protocol.md +162 -0
- package/skills/ai-research/22-agent-native-research-artifact/rigor-reviewer/SKILL.md +322 -0
- package/skills/ai-research/22-agent-native-research-artifact/rigor-reviewer/references/review-dimensions.md +182 -0
- package/skills/ai-research/SKILL.md +101 -0
- package/skills/ai-research/SOURCE +38 -0
- package/skills/ai-research/index/1-frame.md +18 -0
- package/skills/ai-research/index/2-data.md +21 -0
- package/skills/ai-research/index/3-train.md +48 -0
- package/skills/ai-research/index/4-measure.md +25 -0
- package/skills/ai-research/index/5-run.md +23 -0
- package/skills/ai-research/index/6-write.md +35 -0
- package/skills/ai-research/library.json +3456 -0
- package/skills/analyze-app/EVALS.md +82 -0
- package/skills/analyze-app/SKILL.md +188 -0
- package/skills/design-contract/EVALS.md +80 -0
- package/skills/design-contract/SKILL.md +171 -0
- package/skills/design-library/EVALS.md +85 -0
- package/skills/design-library/INDEX.md +59 -0
- package/skills/design-library/SKILL.md +58 -0
- package/skills/design-library/SOURCE +131 -0
- package/skills/design-library/adaptive-interfaces/skills/colour-independence/SKILL.md +90 -0
- package/skills/design-library/adaptive-interfaces/skills/flexible-typography/SKILL.md +83 -0
- package/skills/design-library/adaptive-interfaces/skills/information-density/SKILL.md +87 -0
- package/skills/design-library/adaptive-interfaces/skills/preference-audit/SKILL.md +70 -0
- package/skills/design-library/adaptive-interfaces/skills/responsive-accessibility/SKILL.md +86 -0
- package/skills/design-library/adaptive-interfaces/skills/responsive-review/SKILL.md +76 -0
- package/skills/design-library/adaptive-interfaces/skills/simplified-views/SKILL.md +97 -0
- package/skills/design-library/adaptive-interfaces/skills/specify/SKILL.md +63 -0
- package/skills/design-library/adaptive-interfaces/skills/user-preference-respect/SKILL.md +100 -0
- package/skills/design-library/cognitive-accessibility/skills/adaptive-personalisation/SKILL.md +61 -0
- package/skills/design-library/cognitive-accessibility/skills/assess-load/SKILL.md +48 -0
- package/skills/design-library/cognitive-accessibility/skills/cognitive-load-assessment/SKILL.md +60 -0
- package/skills/design-library/cognitive-accessibility/skills/contextual-help-design/SKILL.md +61 -0
- package/skills/design-library/cognitive-accessibility/skills/error-prevention-recovery/SKILL.md +71 -0
- package/skills/design-library/cognitive-accessibility/skills/focus-attention-design/SKILL.md +67 -0
- package/skills/design-library/cognitive-accessibility/skills/memory-load-reduction/SKILL.md +60 -0
- package/skills/design-library/cognitive-accessibility/skills/plain-language-design/SKILL.md +78 -0
- package/skills/design-library/cognitive-accessibility/skills/review/SKILL.md +56 -0
- package/skills/design-library/cognitive-accessibility/skills/simplify/SKILL.md +39 -0
- package/skills/design-library/cognitive-accessibility/skills/wayfinding-navigation/SKILL.md +64 -0
- package/skills/design-library/design-research/skills/behavioural-analytics/SKILL.md +33 -0
- package/skills/design-library/design-research/skills/qual-quant-triangulation/SKILL.md +33 -0
- package/skills/design-library/inclusive-interaction/skills/audit/SKILL.md +50 -0
- package/skills/design-library/inclusive-interaction/skills/design-flow/SKILL.md +58 -0
- package/skills/design-library/inclusive-interaction/skills/feedback-and-status/SKILL.md +76 -0
- package/skills/design-library/inclusive-interaction/skills/gesture-alternatives/SKILL.md +70 -0
- package/skills/design-library/inclusive-interaction/skills/keyboard-navigation/SKILL.md +99 -0
- package/skills/design-library/inclusive-interaction/skills/keyboard-review/SKILL.md +54 -0
- package/skills/design-library/inclusive-interaction/skills/motion-sensitivity/SKILL.md +79 -0
- package/skills/design-library/inclusive-interaction/skills/multi-modal-input/SKILL.md +70 -0
- package/skills/design-library/inclusive-interaction/skills/touch-target-design/SKILL.md +71 -0
- package/skills/design-library/inclusive-interaction/skills/voice-interaction/SKILL.md +68 -0
- package/skills/design-library/visual-critique/skills/critique-affordance/SKILL.md +45 -0
- package/skills/design-library/visual-critique/skills/critique-brand-consistency/SKILL.md +42 -0
- package/skills/design-library/visual-critique/skills/critique-color/SKILL.md +44 -0
- package/skills/design-library/visual-critique/skills/critique-composition/SKILL.md +46 -0
- package/skills/design-library/visual-critique/skills/critique-information-density/SKILL.md +45 -0
- package/skills/design-library/visual-critique/skills/critique-typography/SKILL.md +45 -0
- package/skills/design-library/visual-critique/skills/critique-visual-hierarchy/SKILL.md +40 -0
- package/skills/feature-audit/EVALS.md +83 -0
- package/skills/feature-audit/SKILL.md +326 -0
- package/skills/harness/EVALS.md +81 -0
- package/skills/harness/SKILL.md +88 -0
- package/skills/i-have-adhd/EVALS.md +80 -0
- package/skills/i-have-adhd/SKILL.md +183 -0
- package/skills/no-ai-slop/EVALS.md +89 -0
- package/skills/no-ai-slop/SKILL.md +209 -0
- package/skills/no-ai-slop/eval.md +52 -0
- package/skills/plan-add/EVALS.md +79 -0
- package/skills/plan-add/SKILL.md +179 -0
- package/skills/plan-add/render_table.py +72 -0
- package/skills/plan-status/EVALS.md +78 -0
- package/skills/plan-status/SKILL.md +52 -0
- package/skills/plan-sync/EVALS.md +80 -0
- package/skills/plan-sync/SKILL.md +69 -0
- package/skills/pm-frameworks/SKILL.md +33 -0
- package/skills/pm-frameworks/SOURCE +39 -0
- package/skills/pm-frameworks/intended-vs-implemented/SKILL.md +42 -0
- package/skills/pm-frameworks/opportunity-solution-tree/SKILL.md +64 -0
- package/skills/ponytail/EVALS.md +80 -0
- package/skills/ponytail/SKILL.md +124 -0
- package/skills/product-analysis/EVALS.md +103 -0
- package/skills/product-analysis/SKILL.md +361 -0
- package/skills/research/EVALS.md +104 -0
- package/skills/research/SKILL.md +570 -0
- package/skills/rl-env/SKILL.md +53 -0
- package/skills/rl-env/SOURCE +41 -0
- package/skills/rl-env/generate-nemo-gym-env/SKILL.md +169 -0
- package/skills/rl-env/generate-nemo-gym-env/references/architecture.md +114 -0
- package/skills/rl-env/generate-openenv-env/SKILL.md +183 -0
- package/skills/rl-env/generate-openenv-env/references/architecture.md +82 -0
- package/skills/rl-env/generate-ors-env/SKILL.md +209 -0
- package/skills/rl-env/generate-ors-env/references/architecture.md +113 -0
- package/skills/rl-env/generate-verifiers-env/SKILL.md +188 -0
- package/skills/rl-env/generate-verifiers-env/references/architecture.md +119 -0
- package/skills/rl-env/rl-env-from-description/SKILL.md +124 -0
- package/skills/rl-env/rl-env-from-description/references/interview.md +75 -0
- package/skills/rl-env/rl-env-from-description/references/nemo_gym.md +41 -0
- package/skills/rl-env/rl-env-from-description/references/openenv.md +35 -0
- package/skills/rl-env/rl-env-from-description/references/ors.md +50 -0
- package/skills/rl-env/rl-env-from-description/references/verifiers.md +39 -0
- package/skills/tezgah-contract/EVALS.md +78 -0
- package/skills/tezgah-contract/SKILL.md +792 -0
- package/statusline.py +129 -0
- package/workflows/graph-impact.js +153 -0
- package/workflows/graph-map.js +158 -0
- package/workflows/graph-review.js +170 -0
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
<!-- vendored from orchestra-research/AI-research-SKILLs@773a52944ba4747a18bd4ae9ade53fff041adcbc 18-multimodal/openpi/references/remote-client-pattern.md; MIT (c) Orchestra Research -->
|
|
2
|
+
# Remote Client Pattern
|
|
3
|
+
|
|
4
|
+
Use this pattern when the policy server runs on a GPU machine and control code runs elsewhere.
|
|
5
|
+
|
|
6
|
+
## Server side
|
|
7
|
+
|
|
8
|
+
```bash
|
|
9
|
+
uv run scripts/serve_policy.py --env DROID
|
|
10
|
+
# or
|
|
11
|
+
uv run scripts/serve_policy.py policy:checkpoint \
|
|
12
|
+
--policy.config=pi05_droid \
|
|
13
|
+
--policy.dir=gs://openpi-assets/checkpoints/pi05_droid
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
Default port is `8000`.
|
|
17
|
+
|
|
18
|
+
## Robot or eval client side
|
|
19
|
+
|
|
20
|
+
Install client package:
|
|
21
|
+
|
|
22
|
+
```bash
|
|
23
|
+
uv pip install -e packages/openpi-client
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
Call server from Python:
|
|
27
|
+
|
|
28
|
+
```python
|
|
29
|
+
from openpi_client import websocket_client_policy
|
|
30
|
+
|
|
31
|
+
client = websocket_client_policy.WebsocketClientPolicy(host="server-ip", port=8000)
|
|
32
|
+
result = client.infer(observation)
|
|
33
|
+
actions = result["actions"]
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
## Observation contract checks
|
|
37
|
+
|
|
38
|
+
- Pass observation keys expected by your policy transforms.
|
|
39
|
+
- Pass prompt as `observation["prompt"]` or use server `--default_prompt`.
|
|
40
|
+
- Resize image tensors to the expected model input shape before call (typically `224`).
|
|
41
|
+
- Keep state values in the policy's expected coordinate and ordering conventions.
|
|
42
|
+
|
|
43
|
+
## Read before integration
|
|
44
|
+
|
|
45
|
+
- `docs/remote_inference.md`
|
|
46
|
+
- `examples/simple_client/README.md`
|
|
47
|
+
- `examples/droid/README.md`
|
|
48
|
+
- `examples/aloha_real/README.md`
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
<!-- vendored from orchestra-research/AI-research-SKILLs@773a52944ba4747a18bd4ae9ade53fff041adcbc 18-multimodal/openpi/references/training-debugging.md; MIT (c) Orchestra Research -->
|
|
2
|
+
# Training Debugging
|
|
3
|
+
|
|
4
|
+
Use this quick loop during iteration:
|
|
5
|
+
|
|
6
|
+
1. Confirm config exists and resolves: `src/openpi/training/config.py`.
|
|
7
|
+
2. Recompute norm stats after transform or dataset changes.
|
|
8
|
+
3. Run short training smoke test.
|
|
9
|
+
4. Serve a recent checkpoint and run inference sanity check.
|
|
10
|
+
|
|
11
|
+
## Common failures and fixes
|
|
12
|
+
|
|
13
|
+
**Issue: `Config '<name>' not found`**
|
|
14
|
+
|
|
15
|
+
Fix: use exact config name from `_CONFIGS` in `src/openpi/training/config.py`.
|
|
16
|
+
|
|
17
|
+
**Issue: Missing normalization stats**
|
|
18
|
+
|
|
19
|
+
Fix: run `uv run scripts/compute_norm_stats.py --config-name <name>` before training.
|
|
20
|
+
|
|
21
|
+
**Issue: OOM on JAX startup or training**
|
|
22
|
+
|
|
23
|
+
Fix:
|
|
24
|
+
- Set `XLA_PYTHON_CLIENT_MEM_FRACTION=0.9`
|
|
25
|
+
- Lower batch size
|
|
26
|
+
- Use `fsdp_devices` for model sharding
|
|
27
|
+
|
|
28
|
+
**Issue: No progress after resume request**
|
|
29
|
+
|
|
30
|
+
Fix: ensure checkpoint directory exists and includes numeric step folders.
|
|
31
|
+
|
|
32
|
+
**Issue: Incompatible resume and overwrite settings**
|
|
33
|
+
|
|
34
|
+
Fix: do not set both simultaneously.
|
|
35
|
+
|
|
36
|
+
## Validation commands
|
|
37
|
+
|
|
38
|
+
```bash
|
|
39
|
+
# Quick serve validation
|
|
40
|
+
uv run scripts/serve_policy.py policy:checkpoint \
|
|
41
|
+
--policy.config=<config_name> \
|
|
42
|
+
--policy.dir=checkpoints/<config_name>/<exp_name>/<step>
|
|
43
|
+
|
|
44
|
+
# Quick client test
|
|
45
|
+
uv run examples/simple_client/main.py --env DROID
|
|
46
|
+
```
|
|
@@ -0,0 +1,441 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: fine-tuning-openvla-oft
|
|
3
|
+
description: Fine-tunes and evaluates OpenVLA-OFT and OpenVLA-OFT+ policies for robot action generation with continuous action heads, LoRA adaptation, and FiLM conditioning on LIBERO simulation and ALOHA real-world setups. Use when reproducing OpenVLA-OFT paper results, training custom VLA action heads (L1 or diffusion), deploying server-client inference for ALOHA, or debugging normalization, LoRA merge, and cross-GPU issues.
|
|
4
|
+
version: 1.0.0
|
|
5
|
+
author: Orchestra Research
|
|
6
|
+
license: MIT
|
|
7
|
+
tags: [OpenVLA, OpenVLA-OFT, VLA, Robotics, Fine-Tuning, LIBERO, ALOHA, LoRA, FiLM, Action Chunking, Deployment, Continuous Actions]
|
|
8
|
+
dependencies: [torch==2.2.0, transformers>=4.40.0, peft==0.11.1, draccus==0.8.0, accelerate>=0.25.0, wandb>=0.16.0, fastapi>=0.100.0, uvicorn>=0.24.0, tensorflow==2.15.0, robosuite==1.4.0] # Exact pins: OpenVLA-OFT paper results were validated on torch==2.2.0, peft==0.11.1, tensorflow==2.15.0; upgrading torch may require re-tuning the LoRA adapter merge step and re-validating action head outputs
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# OpenVLA-OFT
|
|
12
|
+
|
|
13
|
+
Fine-tuning and evaluation workflows for OpenVLA-OFT and OpenVLA-OFT+ from the official `openvla-oft` codebase. Covers blank-machine setup plus LoRA-based adaptation of OpenVLA for robot action generation with continuous action prediction heads.
|
|
14
|
+
|
|
15
|
+
## Quick start
|
|
16
|
+
|
|
17
|
+
Clone the public repo, follow the official setup, then evaluate a pretrained LIBERO checkpoint:
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
git clone https://github.com/moojink/openvla-oft.git
|
|
21
|
+
cd openvla-oft
|
|
22
|
+
python experiments/robot/libero/run_libero_eval.py \
|
|
23
|
+
--pretrained_checkpoint moojink/openvla-7b-oft-finetuned-libero-spatial \
|
|
24
|
+
--task_suite_name libero_spatial \
|
|
25
|
+
--center_crop True \
|
|
26
|
+
--num_trials_per_task 50 \
|
|
27
|
+
--seed 7
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
## Core concepts
|
|
31
|
+
|
|
32
|
+
**What OpenVLA-OFT changes**: Standard OpenVLA tokenizes continuous actions into discrete bins, losing precision. OFT replaces this with dedicated continuous action heads (L1 regression or diffusion) while keeping the VLA backbone frozen and adapting via LoRA.
|
|
33
|
+
|
|
34
|
+
**OFT vs OFT+ variants**:
|
|
35
|
+
|
|
36
|
+
| Variant | FiLM | Images | Typical use |
|
|
37
|
+
|---------|------|--------|-------------|
|
|
38
|
+
| OFT | Off | 2 (front + wrist) | LIBERO simulation |
|
|
39
|
+
| OFT+ | On | 3 (high + left + right wrist) | ALOHA real-world |
|
|
40
|
+
|
|
41
|
+
**Key architecture choices**:
|
|
42
|
+
- **LoRA adaptation**: Rank-32 LoRA on VLA backbone (no full fine-tuning needed)
|
|
43
|
+
- **Continuous actions**: L1 regression head (default) or diffusion head
|
|
44
|
+
- **FiLM conditioning**: Feature-wise Linear Modulation for stronger language grounding in OFT+
|
|
45
|
+
- **Multi-image input**: Configurable 2 or 3 camera streams via `num_images_in_input`
|
|
46
|
+
|
|
47
|
+
## Compute requirements
|
|
48
|
+
|
|
49
|
+
| Task | GPU | VRAM | Notes |
|
|
50
|
+
|------|-----|------|-------|
|
|
51
|
+
| LIBERO evaluation | 1x A100/A40 | ~16 GB | Single GPU |
|
|
52
|
+
| ALOHA evaluation | 1x A100/A40 | ~18 GB | Single GPU |
|
|
53
|
+
| LIBERO fine-tuning | 8x A100 | ~27 GB/GPU | Paper default |
|
|
54
|
+
| ALOHA fine-tuning (OFT+) | 8x A100 | ~35 GB/GPU | FiLM + 3 images |
|
|
55
|
+
| LoRA merge | 1x any GPU | ~16 GB | One-time step |
|
|
56
|
+
|
|
57
|
+
## Expected performance benchmarks
|
|
58
|
+
|
|
59
|
+
Official results (paper setup, seed=7, 50 trials per task):
|
|
60
|
+
|
|
61
|
+
| Task Suite | Task-Specific | Combined Policy | Notes |
|
|
62
|
+
|-----------|--------------|-----------------|-------|
|
|
63
|
+
| LIBERO-Spatial | 97.2% | 96.8% | Easiest suite |
|
|
64
|
+
| LIBERO-Object | 97.4% | 97.0% | Object manipulation |
|
|
65
|
+
| LIBERO-Goal | 95.8% | 95.4% | May peak at 50k-100k steps |
|
|
66
|
+
| LIBERO-10 | 98.0% | 98.0% | Long-horizon tasks |
|
|
67
|
+
| **Average** | **97.1%** | **96.8%** | Near-equivalent |
|
|
68
|
+
|
|
69
|
+
Reproduction notes: results are tied to Python 3.10.14, PyTorch 2.2.0, NVIDIA A100, and custom Transformers fork.
|
|
70
|
+
|
|
71
|
+
## When to use vs alternatives
|
|
72
|
+
|
|
73
|
+
**Use OpenVLA-OFT when:**
|
|
74
|
+
- The target task is robot action generation with visual and language conditioning
|
|
75
|
+
- LoRA-based adaptation of `openvla/openvla-7b` is preferred
|
|
76
|
+
- You need official LIBERO or ALOHA workflows from the OpenVLA-OFT paper
|
|
77
|
+
- You want continuous action heads (L1 regression or diffusion) instead of tokenized actions
|
|
78
|
+
|
|
79
|
+
**Use alternatives when:**
|
|
80
|
+
- You need a different VLA architecture (use `fine-tuning-serving-openpi` for pi0/pi0.5 models)
|
|
81
|
+
- You need the NVIDIA Cosmos Policy stack (use `evaluating-cosmos-policy`)
|
|
82
|
+
- You need general LLM fine-tuning without robot action heads
|
|
83
|
+
|
|
84
|
+
---
|
|
85
|
+
|
|
86
|
+
## Workflow 1: Set up environment
|
|
87
|
+
|
|
88
|
+
Copy this checklist and track progress:
|
|
89
|
+
|
|
90
|
+
```text
|
|
91
|
+
Setup Progress:
|
|
92
|
+
- [ ] Step 1: Create conda env and install PyTorch
|
|
93
|
+
- [ ] Step 2: Install openvla-oft package in editable mode
|
|
94
|
+
- [ ] Step 3: Install FlashAttention2
|
|
95
|
+
- [ ] Step 4: Verify critical versions
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
**Step 1: Create conda env and clone repo**
|
|
99
|
+
|
|
100
|
+
```bash
|
|
101
|
+
conda create -n openvla-oft python=3.10 -y
|
|
102
|
+
conda activate openvla-oft
|
|
103
|
+
git clone https://github.com/moojink/openvla-oft.git
|
|
104
|
+
cd openvla-oft
|
|
105
|
+
pip3 install torch==2.2.0 torchvision==0.17.0 torchaudio==2.2.0
|
|
106
|
+
pip3 install robosuite==1.4.0
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
**Step 2: Install package**
|
|
110
|
+
|
|
111
|
+
```bash
|
|
112
|
+
pip install -e .
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
**Step 3: Install FlashAttention2**
|
|
116
|
+
|
|
117
|
+
```bash
|
|
118
|
+
pip install packaging ninja
|
|
119
|
+
pip install "flash-attn==2.5.5" --no-build-isolation
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
**Step 4: Verify versions**
|
|
123
|
+
|
|
124
|
+
```python
|
|
125
|
+
import torch, transformers, peft
|
|
126
|
+
print(f"PyTorch: {torch.__version__}") # Expected: 2.2.0
|
|
127
|
+
print(f"Transformers: {transformers.__version__}")
|
|
128
|
+
print(f"PEFT: {peft.__version__}") # Expected: 0.11.1
|
|
129
|
+
```
|
|
130
|
+
|
|
131
|
+
---
|
|
132
|
+
|
|
133
|
+
## Workflow 2: Evaluate pretrained checkpoints on LIBERO
|
|
134
|
+
|
|
135
|
+
```text
|
|
136
|
+
LIBERO Eval Progress:
|
|
137
|
+
- [ ] Step 1: Install LIBERO dependencies
|
|
138
|
+
- [ ] Step 2: Choose checkpoint and task suite
|
|
139
|
+
- [ ] Step 3: Run evaluation
|
|
140
|
+
- [ ] Step 4: Parse and validate results
|
|
141
|
+
```
|
|
142
|
+
|
|
143
|
+
**Step 1: Install LIBERO**
|
|
144
|
+
|
|
145
|
+
```bash
|
|
146
|
+
git clone https://github.com/Lifelong-Robot-Learning/LIBERO.git
|
|
147
|
+
pip install -e LIBERO
|
|
148
|
+
pip install -r experiments/robot/libero/libero_requirements.txt
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
**Step 2: Choose checkpoint**
|
|
152
|
+
|
|
153
|
+
| Checkpoint | Task suite |
|
|
154
|
+
|-----------|------------|
|
|
155
|
+
| `moojink/openvla-7b-oft-finetuned-libero-spatial` | `libero_spatial` |
|
|
156
|
+
| `moojink/openvla-7b-oft-finetuned-libero-object` | `libero_object` |
|
|
157
|
+
| `moojink/openvla-7b-oft-finetuned-libero-goal` | `libero_goal` |
|
|
158
|
+
| `moojink/openvla-7b-oft-finetuned-libero-10` | `libero_10` |
|
|
159
|
+
| `moojink/openvla-7b-oft-finetuned-libero-spatial-object-goal-10` | Combined |
|
|
160
|
+
|
|
161
|
+
**Step 3: Run evaluation**
|
|
162
|
+
|
|
163
|
+
```bash
|
|
164
|
+
python experiments/robot/libero/run_libero_eval.py \
|
|
165
|
+
--pretrained_checkpoint moojink/openvla-7b-oft-finetuned-libero-spatial \
|
|
166
|
+
--task_suite_name libero_spatial \
|
|
167
|
+
--center_crop True \
|
|
168
|
+
--num_trials_per_task 50 \
|
|
169
|
+
--seed 7
|
|
170
|
+
```
|
|
171
|
+
|
|
172
|
+
**Step 4: Parse results**
|
|
173
|
+
|
|
174
|
+
```python
|
|
175
|
+
import re
|
|
176
|
+
|
|
177
|
+
def parse_libero_log(log_path):
|
|
178
|
+
"""Extract per-task success rates from LIBERO eval log."""
|
|
179
|
+
with open(log_path) as f:
|
|
180
|
+
content = f.read()
|
|
181
|
+
matches = re.findall(r"Task (.+?): (\d+)/(\d+) successes", content)
|
|
182
|
+
for task, successes, trials in matches:
|
|
183
|
+
rate = int(successes) / int(trials)
|
|
184
|
+
print(f" {task}: {rate:.0%} ({successes}/{trials})")
|
|
185
|
+
|
|
186
|
+
parse_libero_log("experiments/logs/latest.log")
|
|
187
|
+
```
|
|
188
|
+
|
|
189
|
+
---
|
|
190
|
+
|
|
191
|
+
## Workflow 3: Fine-tune on LIBERO
|
|
192
|
+
|
|
193
|
+
> **Detailed reference**: See [references/libero-workflow.md](references/libero-workflow.md) for the full LIBERO setup, checkpoint selection strategy, and LoRA merge instructions.
|
|
194
|
+
|
|
195
|
+
```text
|
|
196
|
+
LIBERO Fine-Tune Progress:
|
|
197
|
+
- [ ] Step 1: Prepare RLDS dataset
|
|
198
|
+
- [ ] Step 2: Launch torchrun with OFT defaults
|
|
199
|
+
- [ ] Step 3: Evaluate intermediate and final checkpoints
|
|
200
|
+
- [ ] Step 4: Merge LoRA for deployment if needed
|
|
201
|
+
```
|
|
202
|
+
|
|
203
|
+
**Step 1: Dataset**
|
|
204
|
+
|
|
205
|
+
Use RLDS datasets: `libero_spatial_no_noops`, `libero_object_no_noops`, `libero_goal_no_noops`, `libero_10_no_noops`.
|
|
206
|
+
|
|
207
|
+
**Step 2: Launch training**
|
|
208
|
+
|
|
209
|
+
```bash
|
|
210
|
+
torchrun --standalone --nnodes 1 --nproc-per-node 8 vla-scripts/finetune.py \
|
|
211
|
+
--vla_path openvla/openvla-7b \
|
|
212
|
+
--data_root_dir /PATH/TO/RLDS/DATASETS/ \
|
|
213
|
+
--dataset_name libero_spatial_no_noops \
|
|
214
|
+
--run_root_dir /YOUR/CHECKPOINTS/ \
|
|
215
|
+
--use_l1_regression True \
|
|
216
|
+
--use_diffusion False \
|
|
217
|
+
--use_film False \
|
|
218
|
+
--num_images_in_input 2 \
|
|
219
|
+
--use_proprio True \
|
|
220
|
+
--batch_size 8 \
|
|
221
|
+
--learning_rate 5e-4 \
|
|
222
|
+
--num_steps_before_decay 100000 \
|
|
223
|
+
--max_steps 150005 \
|
|
224
|
+
--save_freq 10000 \
|
|
225
|
+
--save_latest_checkpoint_only False \
|
|
226
|
+
--image_aug True \
|
|
227
|
+
--lora_rank 32 \
|
|
228
|
+
--wandb_entity YOUR_WANDB_ENTITY \
|
|
229
|
+
--wandb_project YOUR_WANDB_PROJECT
|
|
230
|
+
```
|
|
231
|
+
|
|
232
|
+
**Step 3: Evaluate checkpoints**
|
|
233
|
+
|
|
234
|
+
Evaluate 50k, 100k, and 150k checkpoints — LIBERO-Goal may peak earlier than other suites. Keep best checkpoint per suite by actual task success, not only training loss.
|
|
235
|
+
|
|
236
|
+
**Step 4: Merge LoRA**
|
|
237
|
+
|
|
238
|
+
```bash
|
|
239
|
+
python vla-scripts/merge_lora_weights_and_save.py \
|
|
240
|
+
--base_checkpoint openvla/openvla-7b \
|
|
241
|
+
--lora_finetuned_checkpoint_dir /PATH/TO/CHECKPOINT_DIR
|
|
242
|
+
```
|
|
243
|
+
|
|
244
|
+
---
|
|
245
|
+
|
|
246
|
+
## Workflow 4: Train and evaluate OpenVLA-OFT+ on ALOHA
|
|
247
|
+
|
|
248
|
+
> **Detailed reference**: See [references/aloha-workflow.md](references/aloha-workflow.md) for the full ALOHA server-client setup, data preprocessing, dataset registration, and troubleshooting.
|
|
249
|
+
|
|
250
|
+
```text
|
|
251
|
+
ALOHA Progress:
|
|
252
|
+
- [ ] Step 1: Preprocess raw ALOHA demonstrations
|
|
253
|
+
- [ ] Step 2: Convert to RLDS and register dataset configs
|
|
254
|
+
- [ ] Step 3: Fine-tune OFT+ with FiLM and 3 images
|
|
255
|
+
- [ ] Step 4: Start VLA server on GPU machine
|
|
256
|
+
- [ ] Step 5: Run client-side robot evaluation
|
|
257
|
+
```
|
|
258
|
+
|
|
259
|
+
**Step 1: Preprocess raw data**
|
|
260
|
+
|
|
261
|
+
```bash
|
|
262
|
+
python experiments/robot/aloha/preprocess_split_aloha_data.py \
|
|
263
|
+
--dataset_path /path/to/aloha_raw/task_name/ \
|
|
264
|
+
--out_base_dir /path/to/aloha_preprocessed/ \
|
|
265
|
+
--percent_val 0.05
|
|
266
|
+
```
|
|
267
|
+
|
|
268
|
+
**Step 2: Register RLDS dataset**
|
|
269
|
+
|
|
270
|
+
Add entries in:
|
|
271
|
+
- `prismatic/vla/datasets/rlds/oxe/configs.py`
|
|
272
|
+
- `prismatic/vla/datasets/rlds/oxe/transforms.py`
|
|
273
|
+
- `prismatic/vla/datasets/rlds/oxe/mixtures.py`
|
|
274
|
+
|
|
275
|
+
Set ALOHA constants in `prismatic/vla/constants.py`:
|
|
276
|
+
|
|
277
|
+
```python
|
|
278
|
+
# Expected defaults for ALOHA
|
|
279
|
+
NUM_ACTIONS_CHUNK = 25 # Match control frequency (25 Hz)
|
|
280
|
+
ACTION_DIM = 14 # 7 joints x 2 arms
|
|
281
|
+
PROPRIO_DIM = 14
|
|
282
|
+
ACTION_PROPRIO_NORMALIZATION_TYPE = "BOUNDS" # Absolute joint angles
|
|
283
|
+
```
|
|
284
|
+
|
|
285
|
+
**Step 3: Fine-tune OFT+**
|
|
286
|
+
|
|
287
|
+
```bash
|
|
288
|
+
torchrun --standalone --nnodes 1 --nproc-per-node 8 vla-scripts/finetune.py \
|
|
289
|
+
--vla_path openvla/openvla-7b \
|
|
290
|
+
--data_root_dir /PATH/TO/RLDS/DATASETS/ \
|
|
291
|
+
--dataset_name aloha_task_name \
|
|
292
|
+
--run_root_dir /YOUR/CHECKPOINTS/ \
|
|
293
|
+
--use_l1_regression True \
|
|
294
|
+
--use_diffusion False \
|
|
295
|
+
--use_film True \
|
|
296
|
+
--num_images_in_input 3 \
|
|
297
|
+
--use_proprio True \
|
|
298
|
+
--batch_size 4 \
|
|
299
|
+
--learning_rate 5e-4 \
|
|
300
|
+
--num_steps_before_decay 50000 \
|
|
301
|
+
--max_steps 100005 \
|
|
302
|
+
--use_val_set True \
|
|
303
|
+
--val_freq 10000 \
|
|
304
|
+
--save_freq 10000 \
|
|
305
|
+
--lora_rank 32
|
|
306
|
+
```
|
|
307
|
+
|
|
308
|
+
**Step 4: Start VLA server (GPU machine)**
|
|
309
|
+
|
|
310
|
+
```bash
|
|
311
|
+
python vla-scripts/deploy.py \
|
|
312
|
+
--pretrained_checkpoint /PATH/TO/FINETUNED/CHECKPOINT/ \
|
|
313
|
+
--use_l1_regression True \
|
|
314
|
+
--use_film True \
|
|
315
|
+
--num_images_in_input 3 \
|
|
316
|
+
--use_proprio True \
|
|
317
|
+
--center_crop True \
|
|
318
|
+
--unnorm_key aloha_task_name
|
|
319
|
+
```
|
|
320
|
+
|
|
321
|
+
Server listens on `http://<server-ip>:8777/act`.
|
|
322
|
+
|
|
323
|
+
**Step 5: Run client evaluation**
|
|
324
|
+
|
|
325
|
+
```bash
|
|
326
|
+
python experiments/robot/aloha/run_aloha_eval.py \
|
|
327
|
+
--center_crop True \
|
|
328
|
+
--num_open_loop_steps 25 \
|
|
329
|
+
--use_vla_server True \
|
|
330
|
+
--vla_server_url http://<SERVER_IP>:8777 \
|
|
331
|
+
--num_rollouts_planned 50 \
|
|
332
|
+
--max_steps 1500
|
|
333
|
+
```
|
|
334
|
+
|
|
335
|
+
---
|
|
336
|
+
|
|
337
|
+
## Critical invariants
|
|
338
|
+
|
|
339
|
+
These flags **must** be consistent between training and inference. Mismatches cause silent failures:
|
|
340
|
+
|
|
341
|
+
| Area | Required consistency | Failure if mismatched |
|
|
342
|
+
|------|---------------------|----------------------|
|
|
343
|
+
| Action head | `use_l1_regression` vs `use_diffusion` | Wrong head loading, invalid actions |
|
|
344
|
+
| FiLM | `use_film` across train/eval/deploy | Reduced language grounding |
|
|
345
|
+
| Image streams | `num_images_in_input` parity | Shape mismatch or performance drop |
|
|
346
|
+
| Proprio | `use_proprio` parity | State conditioning mismatch |
|
|
347
|
+
| LoRA rank | `lora_rank` parity | Adapter loading errors |
|
|
348
|
+
| Crop | `image_aug=True` in train → `center_crop=True` in eval | Significant success-rate drop |
|
|
349
|
+
| Action chunk | `num_open_loop_steps` ≈ `NUM_ACTIONS_CHUNK` | Latency/success tradeoff shifts |
|
|
350
|
+
| Unnorm key | `unnorm_key` present in checkpoint stats | Bad action scale |
|
|
351
|
+
|
|
352
|
+
Quick validation:
|
|
353
|
+
|
|
354
|
+
```python
|
|
355
|
+
# Verify config parity before long eval runs
|
|
356
|
+
train_flags = {"use_film": False, "num_images": 2, "use_proprio": True, "lora_rank": 32}
|
|
357
|
+
eval_flags = {"use_film": False, "num_images": 2, "use_proprio": True, "lora_rank": 32}
|
|
358
|
+
for k in train_flags:
|
|
359
|
+
assert train_flags[k] == eval_flags[k], f"Mismatch: {k}: {train_flags[k]} vs {eval_flags[k]}"
|
|
360
|
+
print("All flags consistent")
|
|
361
|
+
```
|
|
362
|
+
|
|
363
|
+
---
|
|
364
|
+
|
|
365
|
+
## Common issues
|
|
366
|
+
|
|
367
|
+
**Issue: Action quality drops after moving checkpoints across GPU types**
|
|
368
|
+
|
|
369
|
+
Fix: re-merge LoRA adapter on the downstream device:
|
|
370
|
+
|
|
371
|
+
```bash
|
|
372
|
+
python vla-scripts/merge_lora_weights_and_save.py \
|
|
373
|
+
--base_checkpoint openvla/openvla-7b \
|
|
374
|
+
--lora_finetuned_checkpoint_dir /PATH/TO/CHECKPOINT_DIR
|
|
375
|
+
```
|
|
376
|
+
|
|
377
|
+
**Issue: Wrong action scale or failed un-normalization**
|
|
378
|
+
|
|
379
|
+
Fix: check `--unnorm_key` matches dataset statistics in checkpoint:
|
|
380
|
+
|
|
381
|
+
```python
|
|
382
|
+
import torch
|
|
383
|
+
ckpt = torch.load("checkpoint/model.pt", map_location="cpu")
|
|
384
|
+
print("Available norm keys:", list(ckpt.get("norm_stats", {}).keys()))
|
|
385
|
+
```
|
|
386
|
+
|
|
387
|
+
**Issue: Eval success unexpectedly low**
|
|
388
|
+
|
|
389
|
+
Fix: verify all invariants in the table above. Most common culprit: missing `center_crop=True` when trained with `image_aug=True`.
|
|
390
|
+
|
|
391
|
+
**Issue: LIBERO eval crashes with `EOFError` asking for dataset path**
|
|
392
|
+
|
|
393
|
+
Fix: set `LIBERO_CONFIG_PATH` and write a non-interactive config before headless eval.
|
|
394
|
+
|
|
395
|
+
**Issue: ALOHA client ROS import fails with `libffi` symbol errors**
|
|
396
|
+
|
|
397
|
+
Fix: `conda install -c conda-forge libffi`
|
|
398
|
+
|
|
399
|
+
**Issue: `flash-attn` install fails**
|
|
400
|
+
|
|
401
|
+
Fix: export `TMPDIR` and `PIP_CACHE_DIR` to the same filesystem, retry with `--no-cache-dir`.
|
|
402
|
+
|
|
403
|
+
**Issue: EGL teardown logs show `EGL_NOT_INITIALIZED`**
|
|
404
|
+
|
|
405
|
+
Fix: treat as teardown noise unless exit code is non-zero. Set EGL env vars:
|
|
406
|
+
|
|
407
|
+
```bash
|
|
408
|
+
export MUJOCO_GL=egl PYOPENGL_PLATFORM=egl
|
|
409
|
+
export CUDA_VISIBLE_DEVICES=0 MUJOCO_EGL_DEVICE_ID=0
|
|
410
|
+
```
|
|
411
|
+
|
|
412
|
+
---
|
|
413
|
+
|
|
414
|
+
## For HPC/cluster users
|
|
415
|
+
|
|
416
|
+
On Slurm clusters, route caches to scratch to avoid filling `/home` quota:
|
|
417
|
+
|
|
418
|
+
```bash
|
|
419
|
+
export HF_HOME=/scratch/$USER/.cache/huggingface
|
|
420
|
+
export XDG_CACHE_HOME=/scratch/$USER/.cache
|
|
421
|
+
export PIP_CACHE_DIR=/scratch/$USER/.cache/pip
|
|
422
|
+
export TMPDIR=/scratch/$USER/tmp
|
|
423
|
+
```
|
|
424
|
+
|
|
425
|
+
Avoid stacking cluster Python modules when using conda. Typically `module load cuda` is sufficient.
|
|
426
|
+
|
|
427
|
+
---
|
|
428
|
+
|
|
429
|
+
## Advanced topics
|
|
430
|
+
|
|
431
|
+
**Paper summary and checkpoints**: See [references/paper-and-checkpoints.md](references/paper-and-checkpoints.md)
|
|
432
|
+
**Detailed LIBERO workflow**: See [references/libero-workflow.md](references/libero-workflow.md)
|
|
433
|
+
**Detailed ALOHA workflow**: See [references/aloha-workflow.md](references/aloha-workflow.md)
|
|
434
|
+
**Config map and troubleshooting matrix**: See [references/config-troubleshooting.md](references/config-troubleshooting.md)
|
|
435
|
+
|
|
436
|
+
## Resources
|
|
437
|
+
|
|
438
|
+
- Project website: https://openvla-oft.github.io/
|
|
439
|
+
- Paper: https://arxiv.org/abs/2502.19645
|
|
440
|
+
- Repository: https://github.com/moojink/openvla-oft
|
|
441
|
+
- RLDS builder: https://github.com/moojink/rlds_dataset_builder
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
<!-- vendored from orchestra-research/AI-research-SKILLs@773a52944ba4747a18bd4ae9ade53fff041adcbc 18-multimodal/openvla-oft/references/aloha-workflow.md; MIT (c) Orchestra Research -->
|
|
2
|
+
# ALOHA Workflow
|
|
3
|
+
|
|
4
|
+
## Scope
|
|
5
|
+
|
|
6
|
+
Use this guide for OpenVLA-OFT+ training and real-robot evaluation with the ALOHA stack.
|
|
7
|
+
|
|
8
|
+
The ALOHA path uses server-client inference:
|
|
9
|
+
- Server machine hosts the VLA model and exposes `/act`.
|
|
10
|
+
- Client machine controls robot env and requests actions from the server.
|
|
11
|
+
|
|
12
|
+
## 1) Prepare environments
|
|
13
|
+
|
|
14
|
+
Server-side environment:
|
|
15
|
+
|
|
16
|
+
```bash
|
|
17
|
+
conda create -n openvla-oft python=3.10 -y
|
|
18
|
+
conda activate openvla-oft
|
|
19
|
+
pip3 install torch torchvision torchaudio
|
|
20
|
+
pip install -e .
|
|
21
|
+
pip install uvicorn fastapi json-numpy
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
Client-side environment:
|
|
25
|
+
|
|
26
|
+
```bash
|
|
27
|
+
conda create -n openvla-oft-aloha python=3.10 -y
|
|
28
|
+
conda activate openvla-oft-aloha
|
|
29
|
+
pip3 install torch torchvision torchaudio
|
|
30
|
+
pip install -e .
|
|
31
|
+
pip install -r experiments/robot/aloha/requirements_aloha.txt
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
## 2) Preprocess and split raw demonstrations
|
|
35
|
+
|
|
36
|
+
```bash
|
|
37
|
+
python experiments/robot/aloha/preprocess_split_aloha_data.py \
|
|
38
|
+
--dataset_path /path/to/aloha_raw/task_name/ \
|
|
39
|
+
--out_base_dir /path/to/aloha_preprocessed/ \
|
|
40
|
+
--percent_val 0.05
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
Repeat preprocessing per object/task variant, then convert to unified RLDS dataset using the RLDS builder flow.
|
|
44
|
+
|
|
45
|
+
RLDS builder reference: https://github.com/moojink/rlds_dataset_builder
|
|
46
|
+
|
|
47
|
+
## 3) Register dataset and constants
|
|
48
|
+
|
|
49
|
+
Add dataset entries in:
|
|
50
|
+
- `prismatic/vla/datasets/rlds/oxe/configs.py`
|
|
51
|
+
- `prismatic/vla/datasets/rlds/oxe/transforms.py`
|
|
52
|
+
- `prismatic/vla/datasets/rlds/oxe/mixtures.py`
|
|
53
|
+
|
|
54
|
+
Set platform constants in `prismatic/vla/constants.py`:
|
|
55
|
+
- Set `NUM_ACTIONS_CHUNK` to match control frequency (often 25 for 25 Hz).
|
|
56
|
+
- Keep ALOHA normalization type for absolute joint-angle actions (`BOUNDS`).
|
|
57
|
+
- Avoid clipping normalization for absolute-angle output.
|
|
58
|
+
|
|
59
|
+
## 4) Launch OFT+ training
|
|
60
|
+
|
|
61
|
+
```bash
|
|
62
|
+
torchrun --standalone --nnodes 1 --nproc-per-node 8 vla-scripts/finetune.py \
|
|
63
|
+
--vla_path openvla/openvla-7b \
|
|
64
|
+
--data_root_dir /PATH/TO/RLDS/DATASETS/ \
|
|
65
|
+
--dataset_name aloha_task_name \
|
|
66
|
+
--run_root_dir /YOUR/CHECKPOINTS/ \
|
|
67
|
+
--use_l1_regression True \
|
|
68
|
+
--use_diffusion False \
|
|
69
|
+
--use_film True \
|
|
70
|
+
--num_images_in_input 3 \
|
|
71
|
+
--use_proprio True \
|
|
72
|
+
--batch_size 4 \
|
|
73
|
+
--learning_rate 5e-4 \
|
|
74
|
+
--num_steps_before_decay 50000 \
|
|
75
|
+
--max_steps 100005 \
|
|
76
|
+
--use_val_set True \
|
|
77
|
+
--val_freq 10000 \
|
|
78
|
+
--save_freq 10000 \
|
|
79
|
+
--save_latest_checkpoint_only False \
|
|
80
|
+
--image_aug True \
|
|
81
|
+
--lora_rank 32 \
|
|
82
|
+
--wandb_entity YOUR_WANDB_ENTITY \
|
|
83
|
+
--wandb_project YOUR_WANDB_PROJECT
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
High-impact knobs:
|
|
87
|
+
- `use_film=True` for language grounding in OFT+.
|
|
88
|
+
- `num_images_in_input=3` for high + left wrist + right wrist streams.
|
|
89
|
+
- LR decay timing relative to dataset size.
|
|
90
|
+
|
|
91
|
+
## 5) Deploy VLA server
|
|
92
|
+
|
|
93
|
+
On GPU server:
|
|
94
|
+
|
|
95
|
+
```bash
|
|
96
|
+
python vla-scripts/deploy.py \
|
|
97
|
+
--pretrained_checkpoint /PATH/TO/FINETUNED/CHECKPOINT/ \
|
|
98
|
+
--use_l1_regression True \
|
|
99
|
+
--use_film True \
|
|
100
|
+
--num_images_in_input 3 \
|
|
101
|
+
--use_proprio True \
|
|
102
|
+
--center_crop True \
|
|
103
|
+
--unnorm_key aloha_task_name
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
Notes:
|
|
107
|
+
- Default API endpoint: `http://<server-ip>:8777/act`
|
|
108
|
+
- Ensure client can resolve `vla_server_url`.
|
|
109
|
+
|
|
110
|
+
## 6) Run client-side robot evaluation
|
|
111
|
+
|
|
112
|
+
```bash
|
|
113
|
+
python experiments/robot/aloha/run_aloha_eval.py \
|
|
114
|
+
--center_crop True \
|
|
115
|
+
--num_open_loop_steps 25 \
|
|
116
|
+
--use_vla_server True \
|
|
117
|
+
--vla_server_url http://<SERVER_IP>:8777 \
|
|
118
|
+
--num_rollouts_planned 50 \
|
|
119
|
+
--max_steps 1500
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
During rollout:
|
|
123
|
+
- Script prompts operator to start.
|
|
124
|
+
- Script asks for success label (`y` or `n`) after each rollout.
|
|
125
|
+
- Logs and replay videos are saved locally.
|
|
126
|
+
|
|
127
|
+
## 7) Troubleshooting notes
|
|
128
|
+
|
|
129
|
+
ROS/libffi import issue on client:
|
|
130
|
+
|
|
131
|
+
```bash
|
|
132
|
+
conda install -c conda-forge libffi
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
Action quality issues:
|
|
136
|
+
- Check server and training config parity (`use_film`, `num_images_in_input`, `lora_rank`).
|
|
137
|
+
- Check `unnorm_key` against dataset stats.
|
|
138
|
+
- Keep `num_open_loop_steps` aligned with trained chunk size.
|
|
139
|
+
|
|
140
|
+
Cross-device performance drop:
|
|
141
|
+
- Merge LoRA on target hardware before final evaluation.
|