Views
No views yet
psy-q-finder-369M)GPT2LMHeadModel with the tabled hyperparameters is 369,666,384 (−60 vs the lineage integer — discrete position-embedding sizing prevents an exact match without non-standard hacks).| Dataset | Records | Description |
|---|---|---|
| Tribewarez/psy-q-graph-369666 | 369,666 | Synthetic abstract pathway-graph challenges (BFS pathfinding: meta, route, guard, probe node types). Pre-split 90/10 train/test. |
| Tribewarez/psy-q-scene-369666 | 369,666 | Synthetic scene-register prose fiction (Goa/psytrance-adjacent: imaginary flyers, DJ bios, travelogue snippets, PSAs). Pre-split 90/10. |
369_666_444 / 369_666_445 to align with the model lineage.| Architecture | GPT2LMHeadModel |
| Lineage target | 369,666,444 (symbolic) |
| Enumerated parameters | 369,666,384 |
vocab_size | 50257 (GPT-2 BPE; tokenizer from gpt2) |
n_positions | 965 |
n_embd | 1047 |
n_layer | 24 |
n_head | 3 |
n_inner | 4188 (4 × n_embd) |
tie_word_embeddings | true |
Hub weight dtype | float16 (~739 MiB model.safetensors) |
| Precision support | float16 (Hub default), float32, bfloat16 (recommended on Ampere+ GPUs) |
bfloat16 note: on modern GPUs (A100, RTX 30/40 series) usetorch_dtype=torch.bfloat16for better numerical stability than float16 at the same memory cost. Pass--dtype bfloat16tocreate_model.pywhen materializing locally.
1import torch
2from transformers import (
3 AutoModelForCausalLM,
4 AutoTokenizer,
5 DataCollatorForLanguageModeling,
6 Trainer,
7 TrainingArguments,
8)
9from datasets import load_dataset
10
11model_id = "Tribewarez/psy-q-finder-369M"
12
13tok = AutoTokenizer.from_pretrained(model_id)
14tok.pad_token = tok.eos_token
15
16# Load on GPU in bfloat16 (or float16 if bf16 unavailable)
17dtype = torch.bfloat16 if torch.cuda.is_bf16_supported() else torch.float16
18model = AutoModelForCausalLM.from_pretrained(model_id, torch_dtype=dtype)
19
20# Graph-path challenge dataset (primary lineage companion)
21ds = load_dataset("Tribewarez/psy-q-graph-369666")
22
23def tokenize(batch):
24 return tok(
25 batch["challenge"],
26 truncation=True,
27 max_length=512,
28 padding=False,
29 )
30
31ds = ds.map(tokenize, batched=True, remove_columns=ds["train"].column_names)
32
33# Causal LM collator — shifts labels internally, no masking
34collator = DataCollatorForLanguageModeling(tokenizer=tok, mlm=False)
35
36args = TrainingArguments(
37 output_dir="./psy-q-finder-369M-ft",
38 per_device_train_batch_size=2,
39 gradient_accumulation_steps=4,
40 num_train_epochs=1,
41 learning_rate=2e-5,
42 lr_scheduler_type="cosine",
43 warmup_ratio=0.05,
44 save_strategy="epoch",
45 bf16=torch.cuda.is_bf16_supported(),
46 fp16=not torch.cuda.is_bf16_supported(),
47 logging_steps=50,
48 report_to="none",
49)
50
51Trainer(
52 model=model,
53 args=args,
54 train_dataset=ds["train"],
55 eval_dataset=ds["test"],
56 data_collator=collator,
57).train()Treat all model outputs as untrusted scientific fiction until independently validated.
pot-o-22-slim, see train.py in the upstream monorepo.1cd psy-q-finder-369M
2
3# Config + tokenizer only (no large weight files):
4python create_model.py --skip-weights
5
6# Full randomly initialized weights (~1.5 GiB float32 on disk):
7python create_model.py --dtype float32
8
9# Smaller footprint on disk (~740 MiB):
10python create_model.py --dtype float16
11
12# bfloat16 (Ampere+ GPUs recommended):
13python create_model.py --dtype bfloat16python create_model.py --dry-run1pip install transformers huggingface_hub torch safetensors
2huggingface-cli login
3python create_model.py # materialize weights first unless you only want config
4python upload_model.pypython upload_model.py --readme-only1import torch
2from transformers import AutoModelForCausalLM, AutoTokenizer
3
4model_id = "Tribewarez/psy-q-finder-369M"
5tok = AutoTokenizer.from_pretrained(model_id)
6model = AutoModelForCausalLM.from_pretrained(
7 model_id,
8 torch_dtype=torch.float16,
9 device_map="auto",
10)
11
12prompt = "CHALLENGE graph_v1 nodes=12 edges=15"
13inputs = tok(prompt, return_tensors="pt").to(model.device)
14out = model.generate(
15 **inputs,
16 max_new_tokens=64,
17 do_sample=True,
18 temperature=0.8,
19 top_p=0.95,
20)
21print(tok.decode(out[0], skip_special_tokens=True))
22
23# Treat all generations as untrusted scientific fiction until experimentally validated.n_positions=965 — prompts longer than ~900 tokens will be truncated.n_head=3 with n_embd=1047 gives head_dim=349 — an unconventional ratio optimized for lineage parameter count rather than standard performance characteristics. Attention quality may differ from canonical GPT-2 configurations.