kevinqz's picture
privacy: scrub host chip/OS from model card
1b6e7ec verified
|
Raw
History Blame Contribute Delete
5.6 kB
---
license: apache-2.0
base_model: lerobot/diffusion_pusht
pipeline_tag: robotics
library_name: coreai
tags:
- coreai
- core-ai
- coreai-fabric
- aimodel
- coreml
- apple
- apple-silicon
- on-device
- robotics
- vla
- vision-language-action
- action
---
> **Canonical:** [`kevinqz/Diffusion-PushT-CoreAI`](https://huggingface.co/kevinqz/Diffusion-PushT-CoreAI) β€” source of truth.
# Diffusion Policy PushT (fabric)
> ⚠️ **Robot policy β€” needs a matching robot to actuate.** This is
> [lerobot/diffusion_pusht](https://huggingface.co/lerobot/diffusion_pusht) converted to an
> Apple Core AI `.aimodel`. Its output is a **normalized action chunk** for
> **pusht_planar_2dof_sim**. Run it on any other robot, or with mismatched calibration /
> normalization stats, and it emits floats that *look* valid but **actuate
> garbage** β€” the most dangerous silent-failure mode. It is a **base checkpoint**:
> fine-tune on your robot's data before expecting useful behavior.
An Apple Core AI conversion of
[lerobot/diffusion_pusht](https://huggingface.co/lerobot/diffusion_pusht) β€” a **robot policy**
that maps images + proprioceptive state (+ a language instruction, when the model
uses one) to a continuous action chunk (diffusion sampler). Produced by
[coreai-fabric](https://github.com/kevinqz/coreai-fabric/blob/main/recipes/diffusion-pusht.yaml) and indexed by
[coreai-catalog](https://github.com/kevinqz/coreai-catalog).
## Model facts
| Field | Value |
|---|---|
| Parameters | 262.9M |
| Architecture | diffusion |
| Capabilities | robotics |
| Embodiment | pusht_planar_2dof_sim |
| Sampling | diffusion (100-step) |
| Quantization / precision | none / float16 |
| On-disk size | 1002 MB |
| Asset kind | split-export policy (encode, denoise_step) + norm_stats |
| assetVersion | 2.0 |
## Use it β€” this needs host code you supply
A policy is **not** a chat model: there is no stock high-level Swift runtime for
it. The bundle is the split-export shape β€” an `encode` graph (run once per
observation) + a `denoise_step` graph (the host drives it `num_steps` times) +
`norm_stats.json` (un-normalization). **You supply the host loop** (the N-step
sampler + un-normalization) in Swift. Recommended integration: keep LeRobot's
Python `RobotClient` for the servos/cameras/calibration, and run inference
on-device β€” see the `io_contract` in the catalog for the exact tensors.
```bash
pip install coreai-catalog && coreai-catalog install diffusion-pusht
```
## Requirements
- **Deployment: macOS 27.0+ / iOS 27.0+, Xcode 27+.** The asset serializes with `minimum_os v27`,
so the on-device Swift runtime requires macOS/iOS 27+. A Mac on macOS 26 can
convert and inspect it but not run it on-device.
- Apple Silicon. A matching robot to actuate (see the banner).
## Verification (action parity)
- **Gate A (structure): passed** β€” the bundle's layout + metadata were
validated on real hardware; the graphs load.
- **Gate B β€” action_parity: 100.0% min chunk-cosine** vs the fp16 reference over 6 frames of `recorded episodes`, 100-step, fixed-noise (measured on Apple Silicon).
- This certifies the export is **numerically faithful to the source policy** β€” it
does **NOT** certify real-world task success, embodiment transfer, or
closed-loop stability. Closed-loop success-rate eval (LIBERO/ManiSkill):
**not_run** (a separate future gate). Reproduce with `coreai-fabric verify`.
## Provenance
| Field | Value |
|---|---|
| Base model | [lerobot/diffusion_pusht](https://huggingface.co/lerobot/diffusion_pusht) @ `84a7c23178445c6bbf7e1a884ff497017910f653` |
| Converted by | `models/diffusion/export.py` coreai_torch 0.4.1 + coremltools 9.0 |
| Recipe | [diffusion-pusht](https://github.com/kevinqz/coreai-fabric/blob/main/recipes/diffusion-pusht.yaml) (recipe_source: fabric) |
| Precision / quantization | float16 / none |
| Conversion date | 2026-07-04 |
Machine-readable, in this repo:
[`parity-report.json`](./parity-report.json) (gate results) Β·
[`reproduce-manifest.json`](./reproduce-manifest.json) Β· [`LICENSE`](./LICENSE)
(upstream terms).
## License and attribution
Weights licensed **apache-2.0** β€” see the bundled `LICENSE`. This artifact is a **converted derivative** of the base policy: its
weights were converted to Apple Core AI format. The conversion itself is
community work.
## Links
- **Base model:** [lerobot/diffusion_pusht](https://huggingface.co/lerobot/diffusion_pusht)
- **Reproduce:** [recipe `diffusion-pusht`](https://github.com/kevinqz/coreai-fabric/blob/main/recipes/diffusion-pusht.yaml)
- **Index:** [coreai-catalog](https://github.com/kevinqz/coreai-catalog) β€” the
neutral registry tying upstream ↔ this asset ↔ mirror together
- [HF Collection](https://huggingface.co/collections/kevinqz/coreai-apple-on-device-6a4879f21c7e1a87c99bcf5a)
## The on-device Core AI ecosystem
- [coreai-fabric](https://github.com/kevinqz/coreai-fabric) β€” the reproducible
recipe β†’ `.aimodel` pipeline that produced this asset.
- [coreai-catalog](https://github.com/kevinqz/coreai-catalog) β€” the index of Core
AI models across the community, with provenance and integration snippets.
- [apple/coreai-models](https://github.com/apple/coreai-models) β€” Apple's official
exporters and runtimes.
- [LeRobot](https://huggingface.co/lerobot) β€” the upstream robotics ecosystem.
## Not affiliated with Apple
Community conversion. Not produced, hosted, or endorsed by Apple. Apple and Core
AI are trademarks of Apple Inc., used here only to describe the target
runtime/format. This is an independent community conversion.