{−1, +1}) or ternary (weights in {−1, 0, +1} ).
The practical consequence: the 1-bit Bonsai 27B model fits in 3.9GB versus 54GB for a full-precision model and the 1-bit Bonsai 8B model fits in 1.16 GB versus 16GB for the same architecture in FP16. That is a 14x reduction, which is what lets Bonsai run on hardware that could never load a full-precision model of the same class.
Bonsai (1-bit)
Weights packed to a single bit each
{−1, +1}. The smallest and fastest family.Ternary-Bonsai (1.58-bit)
Weights take one of three values
{−1, 0, +1}. Roughly 50% more the size of 1-bit and measurably higher quality.Why low-bit models
- They run where full-precision models can’t. 1-bit Bonsai 27B needs only 3.9GB. It loads and runs on an iPhone 17 Pro, while leaving some memory for KV Cache. A 16-bit 27B model needs 54GB for the weights alone.
- They generate faster. Token generation is memory-bandwidth-bound. Moving 1-1.58 bits per weight instead of 16 means each token requires a fraction of the memory traffic, so decode speed scales up accordingly on the same hardware.
- They use less energy. Measured at roughly 4 to 5x better energy per token than 16-bit counterparts (0.068 mWh/tok for 1-bit 8B on an iPhone 17 Pro Max versus 0.132 mWh/tok for 4-bit 8B model).
- They keep data local. Inference runs entirely on your machine. Nothing leaves it.
The lineup
Five models, each under Apache-2.0:
Bonsai 27B is the flagship and adds multimodal vision input. See the model overview for how to choose.
Where to go next
Quickstart
Clone the demo repo and chat with Bonsai locally in one command.
Try it without installing
Hosted GPU demo, in-browser WebGPU, Colab, and iOS apps.
Pick a model
Sizes, families, benchmarks, and what fits your hardware.
How the quantization works
What 1-bit and 1.58-bit actually mean, layer by layer.
Run locally
llama.cpp, MLX, the OpenAI-compatible server, and Open WebUI.