agentleFS
allenaiallenai/open-instruct/.claude/skills/tpu/SKILL.md

tpu

Skill3.9k starsChanged 3 days agoApache-2.0View on GitHub

Run or debug post-training (SFT) on Ai2's TPU v4 cluster gke-tpu-v4 with MaxText + Tunix. Use before launching, resuming, watching, exporting or deleting anything on the TPUs, or when choosing a slice, queue, image or mesh for a TPU run.

We split this skill into the rules it gives an agent

1 rule. About 0 are common, 0 are distinctive, and 1 is very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈0

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 1

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    When the run answers a research question, the experiment ledger's rules apply too (olmo-post-training-ledger, ledger and storage skills).

    line 44

≈ “Common” is an estimate: at least 1 in 5 of the 308,232 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

TPU post-training

The runbook is docs/algorithms/tpu_sft_guide.md; read it before acting. Scripts, overlays and images are in scripts/tpu/maxtext/, and the cluster's own rules are in allenai/olmo-gcp-infra's README.

Rules an agent follows:

  • Queue post-training only. Hero owns the quota and preempts us. Never submit to hero or dev, and never hold a slice in a way that delays hero.
  • Delete nothing on GCS (gs://ai2-olmo-dev): checkpoints, data and exports belong to the run's owner. Deleting your own failed JobSet object is fine; save its pod logs first.
  • Read loss from LOSS-PARTS lines only. Per-pod completed step … loss: lines differ across pods. Compare ce=, never Tunix's loss.
  • Resume only on the restore-fix image (maxtext-posttrain:51f8cc4b-p907d86f3-rfb46e215e), never from step 0.
  • Use a 4x4x8 (guide: What the cluster is). Since 2026-10-21 the cluster is seven 4x4x8s and three 8x8x16s; the 8x8x8 is gone. The 8x8x16s are hero's, borrowed only. Check the live layout before planning (command in the guide); it changes when the cluster is resliced.
  • For ici_context_parallelism > 1, set context_parallel_load_balance=False and require step-1 LOSS-PARTS CE to match an HF forward of the same batch within 1e-3 before training. With load balancing on, dense Olmo 3 7B's CE was off by +0.39 (cp4) and +1.98 (cp8); with it off, cp4 matched (guide: Traps).
  • Stop a run by deactivating its Kueue workload (spec.active=false, command in the guide). Suspending the JobSet does nothing while it is admitted.
  • Pick the mesh from the guide's measured table (Changing the recipe). None of them has been tuned. A new slice or mesh needs an xprof of one TPU step first (in-loop all-gathers cost 140x once), and its own same-slice control.
  • Stream REQUIRED_RBF from JAX process 0 from step 1 (kubectl logs -f on that pod) when a rule needs every step. Polling kubectl logs loses steps at kubelet's log rotation, and the agent account cannot read Cloud Logging.
  • Mount only the folders a job reads, never one that holds checkpoints. gcsfuse's metadata prefetch lists everything under only-dir on every host at every pod start, so a mount of post-training/ lists every run's checkpoints each time. Mount post-training/data and post-training/tokenizers separately at their old paths (k8s/narrow_mounts.py); read and write checkpoints over gs://. Jobs launched with a wide mount keep it until relaunched.
  • Stagger big-slice launches. Two slices loading at once hit the GCS egress quota.
  • Keep one slice shape per experiment. The data order depends on the host count, so arms and their control share a shape.
  • Set CLOUDSDK_CORE_ACCOUNT to the agent service account in every process that calls kubectl or gcloud, background watchers included. The user login lapses daily and kubectl then fails silently.
  • Kill processes by PID, not pkill -f, inside bash -c.

When the run answers a research question, the experiment ledger's rules apply too (olmo-post-training-ledger, ledger and storage skills).

Download now (ZIP)

Trending

More talk lately.about the whole repository

Dec 2025: 0 mentionsJan 2026: 1 mentionFeb 2026: 4 mentionsMar 2026: 0 mentionsApr 2026: 1 mentionMay 2026: 2 mentionsJun 2026: 0 mentionsJul 2026: 1 mentionAug 2026: 1 mentionSep 2026: 1 mentionOct 2026: 5 mentionsNov 2026: 0 mentions
Dec 2025Jun 2026Nov 2026
Mentions a month of the allenai/open-instruct repository that our weekly crawl found. There is no adoption data for this file yet.

Who's talking about allenai/open-instruct

The biggest 5 of 57 mentions linking to the repository that our crawl found. Each line is their own headline.

See all 57

Talked about on GitHub, Bluesky and Hacker News (57 times).

On GitHub · 50

45 more on GitHub

On Bluesky · 6

1 more on Bluesky

On Hacker News · 1

  • Other versions1 project uses a version of this.

    Word for word · 0

    None found.

    Edited · 0

    None found.

    Wrote their own version · 1

    1. pytorch/helion★ 977same name

    How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.

  • In this repository6 other files it gives its agents.

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.