VQ-BeT-PushT-CoreAI / README.md
kevinqz's picture
privacy: scrub host chip/OS from model card
72f1e59 verified
|
Raw
History Blame Contribute Delete
5.5 kB
---
license: apache-2.0
base_model: lerobot/vqbet_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/VQ-BeT-PushT-CoreAI`](https://huggingface.co/kevinqz/VQ-BeT-PushT-CoreAI) β€” source of truth.
# VQ-BeT PushT greedy (fabric)
> ⚠️ **Robot policy β€” needs a matching robot to actuate.** This is
> [lerobot/vqbet_pusht](https://huggingface.co/lerobot/vqbet_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/vqbet_pusht](https://huggingface.co/lerobot/vqbet_pusht) β€” a **robot policy**
that maps images + proprioceptive state (+ a language instruction, when the model
uses one) to a continuous action chunk (vqbet sampler). Produced by
[coreai-fabric](https://github.com/kevinqz/coreai-fabric/blob/main/recipes/vqbet-pusht.yaml) and indexed by
[coreai-catalog](https://github.com/kevinqz/coreai-catalog).
## Model facts
| Field | Value |
|---|---|
| Parameters | 26.0M |
| Architecture | transformer |
| Capabilities | robotics |
| Embodiment | pusht_planar_2dof_sim |
| Sampling | vqbet |
| Quantization / precision | none / float16 |
| On-disk size | 142 MB |
| Asset kind | single-graph policy + norm_stats sidecar |
| 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 vqbet-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 8 frames of `recorded episodes`, N-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/vqbet_pusht](https://huggingface.co/lerobot/vqbet_pusht) @ `15c2d0af889c401c7e5db7a07499d3b498afc276` |
| Converted by | `models/vqbet/export.py` coreai_torch 0.4.1 + coremltools 9.0 |
| Recipe | [vqbet-pusht](https://github.com/kevinqz/coreai-fabric/blob/main/recipes/vqbet-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/vqbet_pusht](https://huggingface.co/lerobot/vqbet_pusht)
- **Reproduce:** [recipe `vqbet-pusht`](https://github.com/kevinqz/coreai-fabric/blob/main/recipes/vqbet-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.