UltraLabs is a solo AI lab. Not prompt engineering, not fine-tuning someone else's checkpoint — every parameter in these models started as static and got there through a tokenizer, a data pipeline, and a training run I wrote myself. 21 of them are public on Hugging Face. Some run entirely offline on a phone.
A 707-million-parameter language model trained from scratch for less than the price of a phone — then taught to reason and to call tools. It fits in 805 MB and runs fully offline on an Android device.
Custom tokenizer, custom data mix, 22.36 B pretraining tokens, then ~2 B tokens of instruction tuning. Shipped with a full eval suite, raw transcripts, and the failures written down instead of hidden.
From a 100-thousand-parameter character model up to a billion. Each one is a complete pipeline — tokenizer, corpus, training loop, evaluation, quantization — not a checkpoint someone handed me.
Training small models on a budget forces you to actually ask why the standard recipe is the standard recipe. These are the open questions I'm running experiments against.
Instead of training a big model from step one, start with a tiny weight-tied seed and grow it during training — an exact function-preserving untie / widen / zero-glue step. Almost every token gets consumed while the model is still cheap.
Open source · PythonA non-transformer architecture built around a loop — perceive, remember, reason, speak. Knowledge and voice get absorbed from outside; only a tiny reasoning core is trained. The bet: own the algorithm, rent the facts.
In progressA small model physically cannot know everything — roughly 2 bits per parameter. But it can still learn anything. So stop optimizing recall and start optimizing for a small universal learner plus a big external library.
ThesisTraining a model is half of it. The other half is getting it to run somewhere real — usually a phone, usually offline, usually with no PC in the loop.
An on-device GGUF quantizer and Hugging Face → GGUF converter for Android. Convert and quantize a model on your phone. No PC, no Python.
C++ · AndroidA mobile coding-agent client that runs a real CLI on Android inside a self-contained proot + Alpine sandbox. Unofficial, and it works.
KotlinA pocket demoscene — 10 gesture-driven generative effects with real FFT mic reactivity. Pure software rendering, zero dependencies.
Kotlin · GraphicsRootless Android tooling — a Shizuku core plus a modular JSON "shizule" system. The one other people actually starred.
Kotlin · ★12A Unity mech battler for Android, written entirely as generated code and compile-verified offline. Because not everything has to be AI.
C# · UnityIcon packs, Flipper Zero apps, Xposed modules, emulator experiments. The full pile is on GitHub.
BrowseNo starting from a released checkpoint. Random init, my tokenizer, my corpus, my training loop. If it can't be built from noise, it doesn't ship here.
Laptop CPUs, free-tier GPUs, and whatever compute costs under $200. Scarcity is a better teacher than a cluster — you can't hide a bad idea behind more FLOPs.
Every serious model gets quantized to GGUF and put on an actual phone, running offline. A model that only exists in a notebook isn't finished.
Eval suites, raw transcripts, and the things that broke go up with the weights. A benchmark number without the failure cases is marketing, not evidence.
Data, architecture, training, evaluation, quantization, and the Android app it lands in. Solo — which is the whole point.