Knonik Overview

This is the wheel-based guide for Knonik.

The pipeline is:

raw dataset ──(knonik ingest)──► episode dirs ── (process/visualize) ── (knonik pack)──► hlp_manifest.json ──► dataloader (training)
                                      │
                                      └─ config.json, written by ingest: describes the
                                         episodes for quality check and the dashboard

Ingest writes that dataset config at the end of every run, filling in everything it can establish from the data and leaving the judgement calls — which stream is the action, where each arm's channels are — as <FILL:...> values for you. Packing and training ignore it; quality check requires it. See Processing §6, and knonik config check <dataset_root> to see what a given dataset still needs.


1. Install

Use a virtual environment and install the wheel that matches your Python version (wheels are provided for CPython 3.8–3.13, Linux x86_64).

uv venv
source .venv/bin/activate
uv pip install /path/to/knonik-0.1.0-cp311-cp311-manylinux*.whl    # match your Python

Verify:

knonik --version
python -c "import knonik.ingest, knonik_multidataloader; print('OK')"

Optional extras, only if you need them: torch (for framework="torch" in the dataloader), aiobotocore (S3), tensorflow (RLDS/TFRecord ingest).

2. Log in

Log in once per product you use. The session is stored on the machine.

knonik login --product ingest
knonik login --product multidataloader
knonik login --product processing

On a headless machine without an OS keyring, add --allow-file-key-store. Check or clear sessions with knonik status --product <p> and knonik logout --product <p> (or knonik logout --all).