Views
No views yet
ai-model-by-me/
├── model.py # GPT architecture (multi-head attention, transformer blocks)
├── tokenizer.py # BPE tokenizer (GPT-2/tiktoken) + char-level fallback
├── train.py # Training script (Apple M1/MPS optimized, checkpoint resume)
├── data_loader.py # Dataset loaders (Shakespeare, Alpaca, OpenWebText, custom)
├── generate.py # CLI text generation
├── app.py # Flask streaming chat interface
└── upload_to_hf.py # Upload to Hugging Face Hub1conda create -n slm-env python=3.11
2conda activate slm-env
3pip install torch numpy flask tiktoken datasets huggingface_hub1python train.py --datasets shakespeare,alpaca,openwebtext \
2 --max_iters 15000 --batch_size 16 --n_layer 6 --n_head 6 --n_embd 3841python train.py --datasets shakespeare,alpaca,openwebtext \
2 --max_iters 15000 --lr 1e-4 --resumecheckpoints/best_model.pt.python generate.py --prompt "To be or not to be" --max_new_tokens 300python generate.py --instruction "Write a poem about the sea"python app.py| Parameter | Value |
|---|---|
| Type | GPT (decoder-only transformer) |
| Tokenizer | BPE — GPT-2 encoding (50,257 vocab) |
| Layers | 6 transformer blocks |
| Attention heads | 6 |
| Embedding dim | 384 |
| Context length | 256 tokens |
| Parameters | ~30M |
| Training data | Shakespeare + Alpaca 52K + OpenWebText sample |
| Best val loss | 3.4163 |
1export HF_TOKEN=your_token_here
2python upload_to_hf.py --username YOUR_HF_USERNAME --repo_name my-gpt-from-scratch