Skip to content

Modular package: break train_gpt_cpu.py into pgolf/ modules #26

@tayeva

Description

@tayeva

Description

Refactor train_gpt_cpu.py into importable, testable modules:

  • pgolf/config.py — Hyperparameters dataclass
  • pgolf/data.py — TokenStream, data loading
  • pgolf/model.py — GPT, Block, Attention, MLP, RMSNorm, Rotary
  • pgolf/optim.py — Muon optimizer, LR scheduling
  • pgolf/quantize.py — int8 quantization + zlib
  • pgolf/eval.py — BPB evaluation, tokenizer LUTs
  • train_cpu.py — Thin CLI entrypoint

Acceptance Criteria

  • All modules independently importable
  • train_cpu.py reproduces exact same behavior as train_gpt_cpu.py
  • Unit tests for each module
  • ruff + mypy pass

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions