**A ~187M-parameter conversational language model built entirely from scratch** —
custom architecture (**AX1**), custom tokenizer (**AX0Tok**), and a hand-written
autodiff lineage. **No PyTorch/TensorFlow, no pretrained weights, nothing pulled
from another model, safe to say it's relatively sovereign.** It was pretrained on public-domain books and fine-tuned into
a small, friendly chat persona named **Pip**.
TL;DR
Params: 187.3M (187,272,960)
Architecture: AX1 "phasor retention" (a proprietary attention-free sequence mixer)
none (position is implicit in token-shift + phasor decay)
Precision
trained bf16/fp32 (MLX); released as fp32 NumPy
Language
English
License
GPL-3.0
The AX1 architecture (in brief)
AX1 replaces softmax attention with a per-head complex decay ("phasor")
retention: each head weights past tokens by (q·k/√d) · r^(t−s) · cos(θ·(t−s)).
Heads with θ=0 act as smooth memory channels; heads with θ>0 are
resonators that track periodic structure. Combined with a learnable per-channel
token-shift (blending each token with the previous one) and a swish-gated
output, this gives an attention-free mixer with an O(1)-state recurrent form for
streaming inference and unbounded context at generation time. There are no
positional embeddings.
Tokenizer (AX0Tok)
A custom byte-level BPE tokenizer (8,192 merges) with a small private chat protocol
built on three control tokens: <user>, <pip>, <end>. A turn is encoded as
<user> {message} <pip> {reply} <end>.
Intended: a research/educational demonstration of a genuinely from-scratch small
language model, and a lightweight local chatbot for casual conversation on CPU.
Out of scope: factual question answering, arithmetic, code beyond trivial
snippets, multi-step reasoning, and any production or safety-critical use.
Limitations:
At 187M params it hallucinates facts and is weak at math and reasoning.
Short 256-token context and limited multi-turn coherence.
English only.
Pretraining used pre-1929 public-domain texts, so it can produce archaic or
dated/biased phrasing.
Best sampled at low temperature (~0.3–0.4).
How to use
This is not a 🤗 Transformers checkpoint — it uses a custom NumPy runtime and
the AX0Tok tokenizer, so it will not load via AutoModelForCausalLM. Inference
is done with the included (pure-Python + NumPy) runtime.
bash
1pip install -r requirements.txt # just numpy2python run.py # terminal chat with pip5.npz3python run.py --temp 0.3# steadier replies
Fine-tune (persona): a chat + book-replay mix (~38% synthetic chat dialogues,
including targeted capability/follow-up packs; rest is book replay to avoid
catastrophic forgetting). Final chat-corpus val ≈ 0.073.
Setup: custom AX1 model in Apple MLX (M5 GPU); AdamW, cosine LR schedule,
block 256, batch 32. The MLX weights are converted to a portable NumPy format for
CPU-only inference (logits match to ~5e-4).
Evaluation
Evaluated by held-out cross-entropy (no standard NLP benchmarks — the model is
deliberately tiny and uses a custom tokenizer, so public leaderboards aren't
meaningful). Qualitatively: reliable on greetings, identity, jokes, light emotional
support, and simple Python; unreliable on facts, math, and long reasoning. Relative
to Pip4.2 (139M), Pip5 is noticeably more coherent on multi-turn, contextual
follow-ups.
Bias, risks, and limitations
Trained on old public-domain literature plus synthetic dialogue; outputs may be
factually wrong, archaic, or reflect biases in 19th/early-20th-century texts. Do not
rely on its outputs for factual, medical, legal, financial, or safety-critical
decisions.
Author's Note
The name 'AX0' & 'AX1' were purely named after my username, ax0rz0, because it sounded cool 😇
License
Released under the GNU General Public License v3.0. Derivative works must remain
GPL-3.0.
Support
If Pip is useful to you, you can help cover training compute for future versions on the cloud:
1@misc{ax1pip2026,
2 title = {AX1-Pip: a from-scratch small language model with phasor-retention},
3 author = {Pip project},
4 year = {2026},
5 note = {Custom AX1 architecture and AX0Tok tokenizer; trained from scratch, no pretrained weights.}
6}