grammar-guided-preference-data — docs
Bundle OKF 0.2 · 4 conceitos · divyarthjain/grammar-guided-preference-data
Open source Repository Open in the app JSON README (API)
About
# grammar-guided-preference-data — docs
An [OKF](https://okf.dev) v0.2 documentation bundle. Start here regardless
of which part of the repo (`runtime/`, `training/`, or `simulation/`)
you're about to touch.
* [Architecture](architecture.md) — the Rust/Python split (plus
`simulation/`, a third MuJoCo-based component), why, and the open
question on model choice.
* [Grammar schema](grammar-schema.md) — the JSON schema every model
candidate must match.
* [Physical judge](physical-judge.md) — what the judge is, `MockJudge`
today, the swap-in point for a real judge later.
* [Glossary](glossary.md) — terms used throughout (VLM, GBNF, IK, Ruckig,
DPO, RLAIF, etc.).
See [log.md](log.md) for the dated history of this bundle, and
`../docs/superpowers/specs/2026-07-29-repo-scaffold-design.md` for the
full scaffold design spec this bundle was built from.
Details
- Kind
- OKF bundles
- Topic
- Developer tools
- Publisher
- divyarthjain
- Origin
- okf_github
- Category
- dados
- Version
- 0.2
- Last push
- 2026-07-30T09:45:47Z
- Repository state
- ativo
- Language
- Python
- License
- Apache-2.0
- Added
- 2026-09-08 16:02:35
- Updated
- 2026-09-08 16:02:35
- Origin id
divyarthjain/grammar-guided-preference-data:docs/index.md
README
# grammar-guided-preference-data
Grammar-guided synthetic preference data for cheap self-improvement in
robot perception. A VLM ("MiniCPM-V 4.6" — working assumption, grounding
unverified, see [`docs/architecture.md`](docs/architecture.md)) proposes
candidate scene descriptions for each camera frame, a grammar constrains
its output to a fixed JSON schema, and the robot's own control stack
(IK feasibility + Ruckig trajectory safety) automatically labels each
candidate CHOSEN/REJECTED — building a DPO preference dataset with zero
human labeling, used for periodic cheap "micro-anneal" fine-tunes.
Start at [`docs/index.md`](docs/index.md) for the full picture.
## Layout
- `runtime/` — Rust workspace: the on-device real-time loop (targets
Raspberry Pi, aarch64).
- `training/` — Python package: the offline DPO micro-anneal (dev
machine, not the Pi).
- `simulation/` — Python package: a MuJoCo-based training-time physical
judge with a live viewer, feeding `data/preference_pairs/*.jsonl`
alongside the Rust runtime's judge.
- `data/preference_pairs/` — shared JSONL, the interface between the
runtime and training/simulation components.
- `docs/` — documentation bundle, start here.
## Quick start
```
cd runtime && cargo test --workspace
cd training && uv run pytest
cd simulation && uv run pytest
```