Coreweave Core Workflow B
jeremylongshore/tons-of-skills-marketplace
Run distributed GPU training jobs on CoreWeave with multi-node PyTorch.
Agent skill
by Orchestra-Research in Orchestra-Research/AI-Research-SKILLs
Fine-tunes and serves Physical Intelligence's pi0, pi0-fast and pi0.5 robot policies with JAX or PyTorch, including checkpoint conversion and policy servers.
$ npx skills add Orchestra-Research/AI-Research-SKILLs --skill fine-tuning-serving-openpi -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install Orchestra-Research/AI-Research-SKILLs fine-tuning-serving-openpi --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/Orchestra-Research/AI-Research-SKILLs.git skills-src && mkdir -p .claude/skills && cp -r skills-src/18-multimodal/openpi .claude/skills/fine-tuning-serving-openpi && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "fine-tuning-serving-openpi" agent skill from https://github.com/Orchestra-Research/AI-Research-SKILLs/tree/main/18-multimodal/openpi into .claude/skills/fine-tuning-serving-openpi/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "fine-tuning-serving-openpi", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/Orchestra-Research/AI-Research-SKILLs/tree/main/18-multimodal/openpiType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add Orchestra-Research/AI-Research-SKILLs --skill fine-tuning-serving-openpi -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install Orchestra-Research/AI-Research-SKILLs fine-tuning-serving-openpi --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Orchestra-Research/AI-Research-SKILLs.git skills-src && mkdir -p .agents/skills && cp -r skills-src/18-multimodal/openpi .agents/skills/fine-tuning-serving-openpi && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "fine-tuning-serving-openpi" agent skill from https://github.com/Orchestra-Research/AI-Research-SKILLs/tree/main/18-multimodal/openpi into .agents/skills/fine-tuning-serving-openpi/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "fine-tuning-serving-openpi", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add Orchestra-Research/AI-Research-SKILLs --skill fine-tuning-serving-openpi -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install Orchestra-Research/AI-Research-SKILLs fine-tuning-serving-openpi --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Orchestra-Research/AI-Research-SKILLs.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/18-multimodal/openpi .cursor/skills/fine-tuning-serving-openpi && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "fine-tuning-serving-openpi" agent skill from https://github.com/Orchestra-Research/AI-Research-SKILLs/tree/main/18-multimodal/openpi into .cursor/skills/fine-tuning-serving-openpi/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "fine-tuning-serving-openpi", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/Orchestra-Research/AI-Research-SKILLs.git --path 18-multimodal/openpi--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add Orchestra-Research/AI-Research-SKILLs --skill fine-tuning-serving-openpi -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install Orchestra-Research/AI-Research-SKILLs fine-tuning-serving-openpi --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Orchestra-Research/AI-Research-SKILLs.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/18-multimodal/openpi .gemini/skills/fine-tuning-serving-openpi && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "fine-tuning-serving-openpi" agent skill from https://github.com/Orchestra-Research/AI-Research-SKILLs/tree/main/18-multimodal/openpi into .gemini/skills/fine-tuning-serving-openpi/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "fine-tuning-serving-openpi", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install Orchestra-Research/AI-Research-SKILLs fine-tuning-serving-openpiInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add Orchestra-Research/AI-Research-SKILLs --skill fine-tuning-serving-openpi -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/Orchestra-Research/AI-Research-SKILLs.git skills-src && mkdir -p .github/skills && cp -r skills-src/18-multimodal/openpi .github/skills/fine-tuning-serving-openpi && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "fine-tuning-serving-openpi" agent skill from https://github.com/Orchestra-Research/AI-Research-SKILLs/tree/main/18-multimodal/openpi into .github/skills/fine-tuning-serving-openpi/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "fine-tuning-serving-openpi", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add Orchestra-Research/AI-Research-SKILLs --skill fine-tuning-serving-openpi -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install Orchestra-Research/AI-Research-SKILLs fine-tuning-serving-openpi --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Orchestra-Research/AI-Research-SKILLs.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/18-multimodal/openpi .opencode/skills/fine-tuning-serving-openpi && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "fine-tuning-serving-openpi" agent skill from https://github.com/Orchestra-Research/AI-Research-SKILLs/tree/main/18-multimodal/openpi into .opencode/skills/fine-tuning-serving-openpi/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "fine-tuning-serving-openpi", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
fine-tuning-serving-openpiFine-tunes and serves Physical Intelligence's pi0, pi0-fast and pi0.5 robot policies with JAX or PyTorch, including checkpoint conversion and policy servers.
This covers the whole loop for the public `openpi` repo: cloning with submodules, syncing the workspace with `uv`, computing normalization statistics, training in JAX (the primary, official backend) or PyTorch (community), converting JAX checkpoints to PyTorch, and serving a policy over a WebSocket API that a client reaches through `openpi_client`. Training and serving settings live in `src/openpi/training/config.py`, and every config needs normalization stats before training.
After any config or dataset change the cycle repeats: compute norm stats, train, serve the checkpoint, validate inference. The skill distinguishes pi0 (flow matching), pi0-fast (autoregressive action tokens, 2-5x faster) and pi0.5 (improved vision encoder), and gives memory guidance such as about 24 GB for serving pi0.5 and about 60 GB for JAX fine-tuning on an 80GB A100. Reference files cover checkpoints and environments for ALOHA, DROID and LIBERO, config recipes, PyTorch gotchas, a remote client pattern and training debugging.
Read from SKILL.md and the folder at commit 773a529. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
uvgitpipgsutilFrom the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
github.comAlso links to:
physicalintelligence.companyhuggingface.coFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
OpenPI Fine-Tuning and Serving loads about 3.6k tokens when it runs, and up to ~5.6k if it reads all its reference files. Until then it costs about 94 tokens; SKILL.md has 821 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from Orchestra-Research/AI-Research-SKILLs at commit 773a529, republished under its MIT licence (© Orchestra-Research). 821 words, ~3,559 tokens.
.claude/skills/fine-tuning-serving-openpi/SKILL.md (or your agent's skills folder). This skill also uses 5 other files; get the full folder from GitHub.End-to-end workflows for fine-tuning and serving Physical Intelligence's OpenPI models (pi0, pi0-fast, pi0.5) on robot manipulation tasks from the public openpi repository. Covers blank-machine setup, JAX training, PyTorch training, checkpoint conversion, and policy inference serving.
Clone the public repo, install the workspace, then serve a pretrained policy:
git clone --recurse-submodules https://github.com/Physical-Intelligence/openpi.git
cd openpi
GIT_LFS_SKIP_SMUDGE=1 uv sync
GIT_LFS_SKIP_SMUDGE=1 uv pip install -e .
uv run scripts/serve_policy.py --env DROIDfrom openpi_client import websocket_client_policy
client = websocket_client_policy.WebsocketClientPolicy(host="localhost", port=8000)
result = client.infer(observation)
actions = result["actions"] # numpy array of shape (chunk_size, action_dim)Model family: OpenPI implements three model variants from Physical Intelligence:
| Model | Architecture | Speed | Quality | Typical use |
|---|---|---|---|---|
| pi0 | Flow-matching VLA | Baseline | Highest | Research, complex tasks |
| pi0-fast | Autoregressive action tokens | 2-5x faster | Good | Real-time control |
| pi0.5 | pi0 + improved vision encoder | Baseline | Best | Latest default |
Key design choices:
src/openpi/training/config.pyTraining loop invariant: After every config or dataset change, always re-run this cycle:
| Task | GPU | VRAM | Notes |
|---|---|---|---|
| Serve pi0.5 (inference) | 1x A100/H100 | ~24 GB | Single GPU sufficient |
| Fine-tune pi0.5 (JAX) | 1x A100 80GB | ~60 GB | Use fsdp_devices for multi-GPU |
| Fine-tune pi0 (JAX) | 1x A100 80GB | ~40 GB | Smaller model footprint |
| Fine-tune (PyTorch DDP) | 1-8x A100 | ~40 GB/GPU | torchrun launcher |
| Compute norm stats | CPU or 1x GPU | ~8 GB | Fast, can run on login node |
Copy this checklist and track progress:
Setup Progress:
- [ ] Step 1: Clone the public openpi repo with submodules
- [ ] Step 2: Install uv and sync the workspace
- [ ] Step 3: Install the editable package
- [ ] Step 4: Verify core imports and serving entrypointStep 1: Clone repo
git clone --recurse-submodules https://github.com/Physical-Intelligence/openpi.git
cd openpiIf you already cloned without submodules:
git submodule update --init --recursiveStep 2: Sync dependencies
GIT_LFS_SKIP_SMUDGE=1 uv syncStep 3: Install editable package
GIT_LFS_SKIP_SMUDGE=1 uv pip install -e .Step 4: Verify installation
uv run python -c "from openpi.training import config as _config; print(_config.get_config('pi05_droid').name)"
uv run scripts/serve_policy.py --helpUse this skill when:
Use fine-tuning-openvla-oft instead when:
Use evaluating-cosmos-policy instead when:
Copy this checklist and track progress:
JAX Fine-Tuning Progress:
- [ ] Step 1: Select and copy closest training config
- [ ] Step 2: Update dataset mapping and base checkpoint
- [ ] Step 3: Compute normalization statistics
- [ ] Step 4: Launch JAX training
- [ ] Step 5: Serve checkpoint and run inference sanity checkStep 1: Select config
Copy the closest config from src/openpi/training/config.py:
| Config | Use case |
|---|---|
pi05_libero | pi0.5 LIBERO fine-tuning |
pi0_libero | pi0 full fine-tuning on LIBERO |
pi0_fast_libero | pi0-fast on LIBERO |
pi0_aloha_pen_uncap | ALOHA custom data |
pi05_droid_finetune | Small custom DROID dataset (LeRobot format) |
pi05_full_droid_finetune | Full DROID RLDS large-scale training |
Step 2: Update dataset and transforms
# In src/openpi/training/config.py, modify your config:
TrainConfig(
name="my_custom_config",
model_type="pi05",
data=LeRobotDataConfig(
repo_id="your-org/your-dataset",
# Adjust transforms to match your data format
),
weight_loader=Pi05WeightLoader(), # Match model type
)Set repo_id for your dataset and ensure weight_loader matches the model type (pi0 vs pi0.5).
Step 3: Compute normalization statistics
uv run scripts/compute_norm_stats.py --config-name <config_name>This must run before every training launch when config, dataset, or transforms change.
Step 4: Launch JAX training
XLA_PYTHON_CLIENT_MEM_FRACTION=0.9 uv run scripts/train.py <config_name> \
--exp-name=<run_name> \
--overwriteFor full DROID RLDS training, add the rlds dependency group:
uv run --group rlds scripts/compute_norm_stats.py \
--config-name pi05_full_droid_finetune \
--max-frames 10000000
XLA_PYTHON_CLIENT_MEM_FRACTION=0.9 uv run --group rlds scripts/train.py \
pi05_full_droid_finetune \
--exp-name=<run_name> --overwriteStep 5: Serve and validate
uv run scripts/serve_policy.py policy:checkpoint \
--policy.config=<config_name> \
--policy.dir=checkpoints/<config_name>/<run_name>/<step>Verify with a test client:
from openpi_client import websocket_client_policy
client = websocket_client_policy.WebsocketClientPolicy(host="localhost", port=8000)
# Build observation matching your config's expected keys
obs = {"image": img_array, "state": state_array, "prompt": "pick up the cup"}
result = client.infer(obs)
print(f"Action shape: {result['actions'].shape}") # (chunk_size, action_dim)Copy this checklist and track progress:
PyTorch Setup Progress:
- [ ] Step 1: Sync dependencies and verify transformer version
- [ ] Step 2: Apply OpenPI transformer patches
- [ ] Step 3: Convert JAX checkpoint to PyTorch format
- [ ] Step 4: Launch PyTorch training or serve converted checkpointStep 1: Sync dependencies
uv sync
uv pip show transformersStep 2: Apply required patches
OpenPI PyTorch requires custom modifications to the installed transformers package:
cp -r ./src/openpi/models_pytorch/transformers_replace/* \
.venv/lib/python3.11/site-packages/transformers/Step 3: Convert JAX checkpoint
uv run examples/convert_jax_model_to_pytorch.py \
--checkpoint_dir <jax_checkpoint_dir> \
--config_name <config_name> \
--output_path <pytorch_checkpoint_dir>Step 4: Train or serve
Single GPU training:
uv run scripts/train_pytorch.py <config_name> --exp_name <run_name>Multi-GPU distributed training:
uv run torchrun --standalone --nnodes=1 --nproc_per_node=<num_gpus> \
scripts/train_pytorch.py <config_name> --exp_name <run_name>Programmatic inference with converted checkpoint:
from openpi.training import config as _config
from openpi.policies import policy_config
config = _config.get_config("pi05_droid")
policy = policy_config.create_trained_policy(config, "<pytorch_checkpoint_dir>")
result = policy.infer(example)
actions = result["actions"] # numpy arrayCheckpoints follow the convention: checkpoints/<config_name>/<exp_name>/<step>/.
Copy this checklist and track progress:
Inference Server Progress:
- [ ] Step 1: Choose target environment and checkpoint
- [ ] Step 2: Start policy server
- [ ] Step 3: Confirm server is reachable
- [ ] Step 4: Integrate client into robot or simulation codeStep 1: Choose environment
Default environment presets:
| Environment | Config | Default checkpoint |
|---|---|---|
ALOHA | pi05_aloha | gs://openpi-assets/checkpoints/pi05_base |
ALOHA_SIM | pi0_aloha_sim | gs://openpi-assets/checkpoints/pi0_aloha_sim |
DROID | pi05_droid | gs://openpi-assets/checkpoints/pi05_droid |
LIBERO | pi05_libero | gs://openpi-assets/checkpoints/pi05_libero |
Step 2: Start server
Default mode (uses preset checkpoint):
uv run scripts/serve_policy.py --env ALOHAExplicit checkpoint mode (custom or local model):
uv run scripts/serve_policy.py policy:checkpoint \
--policy.config=pi05_libero \
--policy.dir=checkpoints/pi05_libero/my_run/20000Add --default_prompt "task description" when runtime observations omit a prompt.
Step 3: Verify connectivity
uv run examples/simple_client/main.py --env DROIDStep 4: Embed remote client in robot code
Install the lightweight client in your robot environment:
pip install "openpi-client @ git+https://github.com/Physical-Intelligence/openpi.git#subdirectory=packages/openpi-client"Full integration example:
from openpi_client import websocket_client_policy
import numpy as np
# Connect to remote policy server
client = websocket_client_policy.WebsocketClientPolicy(
host="gpu-server.local", port=8000
)
# Build observation (keys must match policy transforms)
observation = {
"image": np.random.rand(224, 224, 3), # RGB image
"state": np.zeros(7), # Joint positions
"prompt": "pick up the red block",
}
# Get actions
result = client.infer(observation)
actions = result["actions"] # shape: (action_chunk_size, action_dim)
# Execute first action on robot
robot.step(actions[0])Issue: Missing norm stats error
Fix: run scripts/compute_norm_stats.py --config-name <config_name> before training.
Issue: Out of memory during JAX training
Fix: set XLA_PYTHON_CLIENT_MEM_FRACTION=0.9, lower batch size, or configure fsdp_devices:
# In config: use model-parallel sharding
TrainConfig(
...
fsdp_devices=4, # Shard across 4 GPUs
)Issue: OOM while loading PyTorch checkpoints
Fix: export PYTORCH_CUDA_ALLOC_CONF=expandable_segments:True
Issue: Config not found
Fix: ensure config name exists in src/openpi/training/config.py (exact match from _CONFIGS dict).
Issue: PyTorch training diverges after library changes
Fix: reapply the transformer patch. Run uv cache clean transformers to reset, then reapply.
Issue: serve_policy.py crashes with ModuleNotFoundError
Fix: resync the public workspace first:
GIT_LFS_SKIP_SMUDGE=1 uv sync
GIT_LFS_SKIP_SMUDGE=1 uv pip install -e .If the missing module is simulator-related, install the extra runtime dependencies called for by that example:
uv pip install pytest robosuite==1.4.0 gym bddl easydict matplotlibIssue: uv sync fails with rerun-sdk wheel mismatch
Fix:
uv sync --no-dev
# or
uv sync --no-dev --no-install-package rerun-sdkIssue: Checkpoint download times out
Fix: install gsutil and prefetch manually:
pip install gsutil
gsutil -m cp -r gs://openpi-assets/checkpoints/pi05_libero /local/cache/Remove stale .lock files if a previous download was interrupted.
Issue: Policy server exits with code 137
Fix: OOM kill. Set JAX memory variables:
export XLA_PYTHON_CLIENT_PREALLOCATE=false
export XLA_PYTHON_CLIENT_ALLOCATOR=platformOn Slurm-managed clusters, wrap commands with resource allocation:
srun --partition=gpu --gpus-per-node=1 --mem=64G --cpus-per-task=8 --pty bashRoute caches to scratch to avoid filling /home:
export HF_HOME=/scratch/$USER/.cache/huggingface
export XDG_CACHE_HOME=/scratch/$USER/.cache
export PIP_CACHE_DIR=/scratch/$USER/.cache/pip
export UV_CACHE_DIR=/scratch/$USER/.cache/uvAvoid stacking cluster Python modules when using uv-managed environments. Typically module load cuda is sufficient.
Config recipes and baselines: See references/config-recipes.md Training debugging guide: See references/training-debugging.md Checkpoint and environment mapping: See references/checkpoints-and-env-map.md Remote client integration: See references/remote-client-pattern.md PyTorch precision and patching gotchas: See references/pytorch-gotchas.md
© Orchestra-Research, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 5 other files (references) in 18-multimodal/openpi of Orchestra-Research/AI-Research-SKILLs.
Open the folder on GitHubat commit 773a529
OpenPI Fine-Tuning and Serving next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| OpenPI Fine-Tuning and Serving this skillOrchestra-Research/AI-Research-SKILLs | 13k | — | ~3.6k | Automated safety check: Pass | MIT | |
| Coreweave Core Workflow Bjeremylongshore/tons-of-skills-marketplace | 2.8k | — | ~1.2k | Automated safety check: Pass | MIT | |
| MUSA GPU Training Optimizeropen-infra-skills/infra-skills | 141 | — | ~1.7k | Automated safety check: Pass | Apache-2.0 | |
| PyTorch Lightning Training Setupdavila7/claude-code-templates | 33k | 11 repos | ~1.7k | Automated safety check: Pass | MIT | |
| Model ScaffoldAperivue/medsci-skills | 333 | — | ~3.1k | Automated safety check: Pass | MIT | |
| GPU OptimizerMathews-Tom/armory | 329 | — | ~3.5k | Automated safety check: Notes | MIT |
jeremylongshore/tons-of-skills-marketplace
Run distributed GPU training jobs on CoreWeave with multi-node PyTorch.
open-infra-skills/infra-skills
Profiles, benchmarks and tunes AI training workloads on Moore Threads MUSA GPUs with a measurement-first process that keeps model behavior unchanged.
davila7/claude-code-templates
Organizes PyTorch training code into LightningModules, DataModules and Trainers, with multi-GPU strategies, callbacks and logging configured.
Aperivue/medsci-skills
A skill your agent uses when you need a runnable PyTorch training repo for a medical-imaging task (segmentation, classification, detection, synthesis, self-supervised, or fine-tuning a pretrained…
Mathews-Tom/armory
GPU optimization for consumer NVIDIA GPUs (8-24GB VRAM) covering mixed precision, gradient checkpointing, XGBoost GPU, CuPy/cuDF migration, and torch.compile.
pytorch/pytorch
Choose 32-bit vs 64-bit index math in PyTorch CUDA kernels. An agent skill from pytorch/pytorch.
Orchestra-Research/AI-Research-SKILLs
Generates music from text descriptions with MusicGen and sound effects with AudioGen, using Meta's AudioCraft PyTorch library with melody and style conditioning.
Orchestra-Research/AI-Research-SKILLs
Runs lm-evaluation-harness to benchmark language models on academic suites such as MMLU, GSM8K and HumanEval, compare models and track training checkpoints.
Orchestra-Research/AI-Research-SKILLs
Guide to using Meta's Segment Anything Model for zero-shot image segmentation with point, box or mask prompts, or automatic mask generation.
Orchestra-Research/AI-Research-SKILLs
Shows how to store documents and embeddings in Chroma, query them by similarity with metadata filters, and persist them to disk for RAG and semantic search projects.
Orchestra-Research/AI-Research-SKILLs
Explains OpenAI's CLIP model for zero-shot image classification, image-text similarity, semantic image search and content moderation, with install steps and code patterns.
Orchestra-Research/AI-Research-SKILLs
Transcribes audio with OpenAI's Whisper: 99 languages, translation to English, language detection, six model sizes and word-level timestamps, from Python or the CLI.
Works with
Categories
Fine-tunes and serves Physical Intelligence's pi0, pi0-fast and pi0.5 robot policies with JAX or PyTorch, including checkpoint conversion and policy servers. This covers the whole loop for the public `openpi` repo: cloning with submodules, syncing the workspace with `uv`, computing normalization statistics, training in JAX (the primary, official backend) or PyTorch (community), converting JAX checkpoints to PyTorch, and serving a policy over a WebSocket API that a client reaches through `openpi_client`.py`, and every config needs normalization stats before training.
OpenPI Fine-Tuning and Serving fits situations like: adapting a pi0 model to a custom robot dataset; converting JAX checkpoints to PyTorch for deployment; running a policy inference server for ALOHA, DROID or LIBERO; debugging norm stats errors or GPU memory problems.
Run `npx skills add Orchestra-Research/AI-Research-SKILLs --skill fine-tuning-serving-openpi -a claude-code`. Or copy the skill folder (18-multimodal/openpi in Orchestra-Research/AI-Research-SKILLs) into .claude/skills/fine-tuning-serving-openpi in your project. Claude Code loads it when a task matches its description.
Run `npx skills add Orchestra-Research/AI-Research-SKILLs --skill fine-tuning-serving-openpi -a codex`. Or copy the skill folder (18-multimodal/openpi in Orchestra-Research/AI-Research-SKILLs) into .agents/skills/fine-tuning-serving-openpi in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add Orchestra-Research/AI-Research-SKILLs --skill fine-tuning-serving-openpi -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/fine-tuning-serving-openpi, .gemini/skills/fine-tuning-serving-openpi, .github/skills/fine-tuning-serving-openpi and .opencode/skills/fine-tuning-serving-openpi in your project.
Going by SKILL.md and its folder, OpenPI Fine-Tuning and Serving needs the command-line tools its instructions call (uv, git, pip and gsutil). Our summary lists: A GPU such as an A100 or H100; `uv` and the public `openpi` repository.
SKILL.md names 3 domains. In commands or code: github.com; the agent is likely to contact it when it follows the instructions. As links in the text: physicalintelligence.company and huggingface.co. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
OpenPI Fine-Tuning and Serving is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.6k tokens (SKILL.md is roughly 14k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 2.1k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with OpenPI Fine-Tuning and Serving: Coreweave Core Workflow B (jeremylongshore/tons-of-skills-marketplace, 2.8k stars), MUSA GPU Training Optimizer (open-infra-skills/infra-skills, 141 stars), PyTorch Lightning Training Setup (davila7/claude-code-templates, 33k stars) and Model Scaffold (Aperivue/medsci-skills, 333 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
Orchestra-Research (a GitHub organization) maintains it in Orchestra-Research/AI-Research-SKILLs, which has 13,405 GitHub stars. The repository holds 96 skills in this directory. The repository was last updated on June 16, 2026.
Source: Orchestra-Research/AI-Research-SKILLs on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.