--- license: mit language: - en library_name: ghostlm pipeline_tag: text-generation tags: - ghostlm - from-scratch - generalist - cybersecurity - small-language-model --- # ghost-small-gen A small (~45M parameter) decoder-only language model **trained entirely from scratch** in PyTorch, no pretrained weights and no fine-tuning. It is the first generalist checkpoint in the [GhostLM](https://github.com/joemunene-by/GhostLM) project: a model that broadened from a cybersecurity-only corpus into a small generalist while keeping cybersecurity as its deepest specialty. - Parameters: ~45M (6 layers, d_model 512, RoPE + SwiGLU + RMSNorm) - Tokenizer: GPT-2 BPE (50,257) + 7 special tokens - Training: 30,000 steps on a Mac M4 (MPS), final val_loss 3.76 - Corpus: a decontaminated 258.9M-token multi-domain corpus that is only **8.6% cybersecurity** (general web, broad Wikipedia, code, math, instruction, and a cybersecurity layer), with 0.004% measured benchmark contamination - Recipe: intra-document attention masking + a multi-stage domain curriculum ## Evaluation (honest, full benchmark sets) Debiased multi-permutation text-scoring. `+` means the 95% bootstrap CI lower bound is above the 25% random baseline (significantly above chance). Peer numbers are published zero-shot references for the small-model class; harnesses differ, so treat them as context, not an exact comparison. | Benchmark | n | ghost-small-gen (45M) | 95% CI | vs random | Peer reference | |---|---:|---:|---:|:--:|---| | ARC-Easy | 2365 | 27.2% | 25.4-28.9 | + | Pythia-160M 43.5, 111M 34.8, 256M 37.6 | | ARC-Challenge | 1165 | 24.3% | 22.1-26.6 | ~ | Pythia-160M 18.8, SmolLM2-360M 36.6 | | OpenBookQA | 500 | 27.4% | 23.7-31.1 | ~ | 111M 27.8, 256M 25.4, LaMini-35M 26.2 | | SecQA (cyber) | 210 | 34.3% | 28.5-40.6 | + | retained specialty | | CTF eval (cyber) | 30 | 63.3% | 46.7-80.0 | + | retained specialty | What this says, calibrated for a 45M model trained from scratch on free compute: - The generalist pivot worked. Three of five benchmarks are statistically above the 25% random baseline, on a corpus only 8.6% cybersecurity. - Cybersecurity is fully retained and is the standout (SecQA 34.3%, CTF 63.3%). - It is competitive within its own size class: OpenBookQA beats the 256M and 35M survey peers, and ARC-Challenge beats Pythia-160M, a roughly 3.5x larger model. - It does not clear the 35-45% competitive band on ARC-Easy (27.2%): above chance, not state of the art there. This is a solid, defensible result for the size and the compute, not a "beats everything" claim. ## Intended use and limitations Research and education: a transparent, hand-written small model for studying from-scratch training, generalist corpus design, and cybersecurity-aware language modeling. It is a base model (not instruction-tuned), small, and will hallucinate. Do not use it for safety-critical decisions. The cybersecurity content is for defensive and educational understanding. ## How to load This is a custom architecture, not a `transformers` model. Load it with the GhostLM code: ```python import torch from safetensors.torch import load_model from ghostlm.config import GhostLMConfig from ghostlm.model import GhostLM from huggingface_hub import hf_hub_download import json repo = "Ghostgim/ghost-small-gen" cfg = GhostLMConfig(**{k: v for k, v in json.load(open(hf_hub_download(repo, "config.json"))).items() if k in GhostLMConfig().__dataclass_fields__}) model = GhostLM(cfg) load_model(model, hf_hub_download(repo, "model.safetensors")) model.eval() ``` See the [GhostLM repository](https://github.com/joemunene-by/GhostLM) for the model code, tokenizer, generation utilities, and the full scorecard. ## Training details - Base architecture: ghost-small-v0.5 (RoPE, SwiGLU, RMSNorm) - Context length: 512, batch 16, grad-accum 4, lr 3e-4, 2000-step warmup - Intra-document attention masking so packed documents do not attend across EOS boundaries - Multi-stage domain curriculum that shifts the data mixture across training (broad web early, code/math/knowledge upweighted later) - Corpus decontaminated against every evaluation benchmark before training ## License MIT. Built and trained by Joe Munene.