Research
NanoVLA is a 7.73M parameter vision-language-action policy. It averages 91.5% across three LIBERO suites and runs in 6.1 ms on a laptop CPU.
1 August 2026
One LIBERO-Spatial episode. Overhead view left, wrist camera right. The green border is the simulator's success verdict.
Vision-language-action models inherit their competence from web-scale pretraining and their cost along with it. The open baselines run at billions of parameters and expect an accelerator at inference, which is affordable in a lab and is a line item in a cell that has to beat an hourly wage.
We trained NanoVLA from scratch to test how far down that cost can be pushed. It takes camera images and a written instruction (e.g. "pick up the black bowl and place it on the plate") and emits the next chunk of eight actions, at 7.73 million parameters, roughly 900 times smaller than OpenVLA.
We evaluated on 500 rollouts per suite under the OpenVLA protocol. Our rows were measured on a single laptop. Every other row is that model's published figure.
NanoVLA exceeds OpenVLA on all three measured suites at roughly three orders of magnitude fewer parameters. On Goal it reaches 94.4% against OpenVLA's 79.2% and CT-VAM's 78.4%, and on Object 95.0% against 88.4% and 94.6%. OpenVLA-OFT, at 7.5B parameters, remains ahead on all three.
The fourth suite, Long, is still running. The 91.5% figure is the mean of the three suites above and is not a four-suite result.
ONNX Runtime, CPU only, trained weights, on an Intel Core Ultra 9 285H. LIBERO's control rate is 20 Hz, so the four-thread figure is 30× real time with the CPU fully contended.
| Threads | Idle | Under evaluation load | Control rate |
|---|---|---|---|
| 1 | 15.6 ms | 26.5 ms | 301 to 513 Hz |
| 4 | 6.1 ms | 13.1 ms | 610 to 1318 Hz |
One LIBERO-Spatial task scores 28% against 90 to 100 for its neighbours. Weak language grounding is the expected failure mode at this parameter count, so we tested it directly: we held images and proprioception fixed, swapped only the instruction, and compared the predicted action chunks.
| Similarity | Instruction given | Behaves as if given |
|---|---|---|
| 0.73 | the black bowl on the cookie box | the black bowl next to the cookie box |
| 0.71 | next to the plate | between the plate and the ramekin |
| 0.66 | next to the ramekin | on the ramekin |
Every worst-scoring pair is the same distinction, on X against next to X, which locates the cause upstream of capacity. We condition the vision trunk on a single mean-pooled sentence vector, and averaging a 21-token sentence suppresses a two-token difference: the two sentences sit at cosine 0.995. The task costs about 6.4 points on Spatial, and the other nine average 91.6%.
Every number here is measured in simulation. The next result is the real bin: the same policy transferred onto hardware on a plant floor, at the reliability a shift is scheduled around. That is the work directly ahead.
Two threads run in parallel. The Long suite is evaluating now and will be reported when it completes. The conditioning fault behind the 28% task has a candidate fix that keeps the parameter count, building the conditioning vector by attending over the words rather than averaging them, evaluated against the same protocol.