Blog
Notes on training models, building agents, and running it all on my own GPUs. Wins and losses both. RSS
-
Rebooting This Site
The old dustinmorgan.org was a three.js demo with a bio I wrote in one night. This is the replacement.
-
Training the Harness Instead of the Model
I fine-tuned dozens of models to make Agent Neo better at incidents, and none of them beat a better harness. So I started training the harness. It went from 5 to 10 out of 12 hard investigations.
-
Coming Soon: CIP and CTP
Two things I've been building in private: running big open-weight models across the machines you already have, and training on them too.
-
What I Got Wrong About SQ4
I published a 4-bit quantization format and called its quality indistinguishable from FP16. Once I measured it properly, standard 4-bit formats beat it. I've retired it.
-
SQ4 Is Live: Whitepaper + llama.cpp PR
We published the SQ4 whitepaper and opened a PR to bring percentile-calibrated 4-bit quantization to llama.cpp.
-
Agent Neo: An Incident Agent That Uses Your Existing Tools
Neo is an open-source Go agent that investigates infrastructure incidents with the CLIs you already have. It once filed 28 bug reports about its own ability to file duplicate bug reports.
-
v1.5.2: Fused Inference, FP16, and a Tokenizer That OOM'd a 64GB Machine
Inference +28%. Training +54% at dim≥1024. The tokenizer was O(n²) and nobody noticed until we fed it 48MB.
-
Benchmarks: I Owe PyTorch a Fair Fight
The 1.54x number has an asterisk. I ran PyTorch with default settings. Here's what I still owe.
-
Why I Wrote a GPU Training Engine in Go
I got tired of Python's toolchain for fine-tuning. So I wrote my own — and accidentally built something faster.