CoolFace
Modelpublic

ichangzii/pit2022-gpt2-124m

sourceHugging Faceotherupdated 1mo agoView on Hugging Face
0likes180downloads
Model Card

PIT-GPT-2-124M — a point-in-time (≤2022) language model

GPT-2 (124 M) trained from scratch on only ≤2022 data, giving a certified lookahead-free knowledge cutoff. Built for reliable time-sensitive evaluation (e.g. trading backtests) where the model must not know the future — the cutoff is clean by construction (never trained on post-2022 text), not by unlearning or suppression.

Cutoff certification (causal-completion probe)

mean p(answer)
POST-2022 (Threads, Sora, Gemini, DeepSeek, Bard, Grok, Llama, Mistral — should NOT know)0.001
≤2022 (COVID 0.82, Ukraine 0.24, Brexit — should know)0.136

The model has ~zero knowledge of unforeseen 2023+ entities. (Probe caveat: entities that existed or were speculated pre-2022 — e.g. GPT-4, Credit Suisse — leak via legitimate ≤2022 knowledge, not lookahead; those are excluded.)

Quality

  • —WikiText-2 perplexity: 43.1 (random-init ≈ 50 000; fully-trained GPT-2-124 M ≈ 30–37)
  • —Coherent, grammatical generation. 4.2 B tokens seen (past Chinchilla-optimal for 124 M; undertrained vs GPT-2's ~10 B → ppl ~43 not ~30).
  • —loss_curve.csv and ppl_by_checkpoint.json included.

Training

  • —Data: ichangzii/pit2022-10b (foundation) + ichangzii/pit2022-news (date-tagged), all ≤2022.
  • —GPT-2 tokenizer, AdamW (β2 .95, wd .1, lr 6e-4, ~0.5 M batch), non-overlapping shuffled sampling, bf16, torch.compile. RTX 5090.

Usage

python
from transformers import AutoModelForCausalLM, AutoTokenizer
m = AutoModelForCausalLM.from_pretrained("ichangzii/pit2022-gpt2-124m")
tok = AutoTokenizer.from_pretrained("gpt2")

Limitations

  • —Undertrained (4.2 B tokens) — a longer run (~10 B) would lower perplexity and strengthen ≤2022 knowledge.
  • —Time-conditioning did not emerge — prepending Date: YYYY-MM-DD has no effect (date-tagged news was only ~4% of training). This is a single clean cutoff, not a queryable as-of-date model.