Deleted vaswani_shakespeare.py and get_shakespeare() from data_manager:
- 45-60 minute training time (too slow for educational demos)
- Required external download from Karpathy's char-rnn repo
- Replaced by faster TinyTalks ChatGPT milestone (3-5 min training)
Primary transformer milestone is now vaswani_chatgpt.py:
- Uses TinyTalks Q&A dataset (already in repo)
- Fast training with clear learning signal (Q&A format)
- Better pedagogical value (students see transformer learn to chat)
- Add get_shakespeare() method to download tiny-shakespeare.txt
- Downloads from Karpathy's char-rnn repository (1MB corpus)
- Returns raw text for character-level language modeling
- Follows same pattern as MNIST/CIFAR-10 downloads
- Includes test in main() function
Major changes to module structure:
1. Updated module-developer.md with clear components-only rule
2. Removed Sequential container from Module 03 (layers)
3. Converted to manual layer composition for transparency
Philosophy:
- Modules build ATOMIC COMPONENTS (Tensor, Linear, ReLU, etc.)
- Milestones/Examples show EXPLICIT COMPOSITION
- Students SEE how their components connect
- No hidden abstractions or black boxes
Module 03 changes:
- REMOVED: Sequential class and tests (~200 lines)
- KEPT: Linear and Dropout as individual components
- UPDATED: Integration demos use manual composition
- Result: Students see explicit layer1.forward(x) calls
Module 07 changes:
- Simplified model classes to minimal test fixtures
- Removed complex neural network teaching examples
- Focus purely on training infrastructure
Impact:
- Clearer learning progression
- Students understand each component's role
- Milestones become showcases of student work
- No magic containers hiding the data flow