Commit Graph

19 Commits

Author SHA1 Message Date
Vijay Janapa Reddi
ef487937bd Standardize all module introductions and fix agent structure
Module Standardization:
- Applied consistent introduction format to all 17 modules
- Every module now has: Welcome, Learning Goals, Build→Use→Reflect, What You'll Achieve, Systems Reality Check
- Focused on systems thinking, performance, and production relevance
- Consistent 5 learning goals with systems/performance/scaling emphasis

Agent Structure Fixes:
- Recreated missing documentation-publisher.md agent
- Clear separation: Documentation Publisher (content) vs Educational ML Docs Architect (structure)
- All 10 agents now present and properly defined
- No overlapping responsibilities between agents

Improvements:
- Consistent Build→Use→Reflect pattern (not Understand or Analyze)
- What You'll Achieve section (not What You'll Learn)
- Systems Reality Check in every module
- Production context and performance insights emphasized
2025-09-18 14:16:58 -04:00
Vijay Janapa Reddi
0c24d77a86 Fix module structure ordering across all modules
Standardize module structure to ensure correct section ordering:
- if __name__ block → ML Systems Thinking → Module Summary (always last)

Fixed 10 modules with incorrect ordering:
• 02_tensor, 04_layers, 05_dense, 06_spatial
• 08_dataloader, 09_autograd, 10_optimizers, 11_training
• 12_compression (consolidated 3 scattered if blocks)
• 15_mlops (consolidated 6 scattered if blocks)

All 17 modules now follow consistent structure:
1. Content and implementations
2. Main execution block (if __name__)
3. ML Systems Thinking Questions
4. Module Summary (always last section)

Updated CLAUDE.md with explicit ordering requirements to prevent future issues.
2025-09-17 17:33:09 -04:00
Vijay Janapa Reddi
e08dcacc5c Fix spatial module section ordering
- Move ML Systems Thinking sections before Module Summary
- Ensure Module Summary is final section for consistency
- Complete standardization of all module structures

All modules now follow correct pattern:
[Content] → ML Systems Thinking → Module Summary
2025-09-17 14:56:18 -04:00
Vijay Janapa Reddi
d04d66a716 Implement interactive ML Systems questions and standardize module structure
Major Educational Framework Enhancements:
• Deploy interactive NBGrader text response questions across ALL modules
• Replace passive question lists with active 150-300 word student responses
• Enable comprehensive ML Systems learning assessment and grading

TinyGPT Integration (Module 16):
• Complete TinyGPT implementation showing 70% component reuse from TinyTorch
• Demonstrates vision-to-language framework generalization principles
• Full transformer architecture with attention, tokenization, and generation
• Shakespeare demo showing autoregressive text generation capabilities

Module Structure Standardization:
• Fix section ordering across all modules: Tests → Questions → Summary
• Ensure Module Summary is always the final section for consistency
• Standardize comprehensive testing patterns before educational content

Interactive Question Implementation:
• 3 focused questions per module replacing 10-15 passive questions
• NBGrader integration with manual grading workflow for text responses
• Questions target ML Systems thinking: scaling, deployment, optimization
• Cumulative knowledge building across the 16-module progression

Technical Infrastructure:
• TPM agent for coordinated multi-agent development workflows
• Enhanced documentation with pedagogical design principles
• Updated book structure to include TinyGPT as capstone demonstration
• Comprehensive QA validation of all module structures

Framework Design Insights:
• Mathematical unity: Dense layers power both vision and language models
• Attention as key innovation for sequential relationship modeling
• Production-ready patterns: training loops, optimization, evaluation
• System-level thinking: memory, performance, scaling considerations

Educational Impact:
• Transform passive learning to active engagement through written responses
• Enable instructors to assess deep ML Systems understanding
• Provide clear progression from foundations to complete language models
• Demonstrate real-world framework design principles and trade-offs
2025-09-17 14:42:24 -04:00
Vijay Janapa Reddi
719507bb8f Standardize NBGrader formatting and fix test execution patterns across all modules
This comprehensive update ensures all TinyTorch modules follow consistent NBGrader
formatting guidelines and proper Python module structure:

- Fix test execution patterns: All test calls now wrapped in if __name__ == "__main__" blocks
- Add ML Systems Thinking Questions to modules missing them
- Standardize NBGrader formatting (BEGIN/END SOLUTION blocks, STEP-BY-STEP, etc.)
- Remove unused imports across all modules
- Fix syntax errors (apostrophes, special characters)
- Ensure modules can be imported without running tests

Affected modules: All 17 development modules (00-16)
Agent workflow: Module Developer → QA Agent → Package Manager coordination
Testing: Comprehensive QA validation completed
2025-09-16 19:48:54 -04:00
Vijay Janapa Reddi
6349c218d2 Standardize all modules to follow NBGrader style guide
- Updated 7 non-compliant modules for consistency
- Module 01_setup: Added EXAMPLE USAGE sections with code examples
- Module 02_tensor: Added STEP-BY-STEP IMPLEMENTATION and LEARNING CONNECTIONS
- Module 05_dense: Added LEARNING CONNECTIONS to all functions
- Module 06_spatial: Added STEP-BY-STEP and LEARNING CONNECTIONS
- Module 08_dataloader: Added LEARNING CONNECTIONS sections
- Module 11_training: Added STEP-BY-STEP and LEARNING CONNECTIONS
- Module 14_benchmarking: Added STEP-BY-STEP and LEARNING CONNECTIONS
- All modules now follow consistent format per NBGRADER_STYLE_GUIDE.md
- Preserved all existing solution blocks and functionality
2025-09-16 16:48:14 -04:00
Vijay Janapa Reddi
34a59e2064 Fix module test execution issues
- Fixed test functions to only run when modules executed directly
- Added proper __name__ == '__main__' guards to all test calls
- Fixed syntax errors from incorrect replacements in Module 13 and 15
- Modules now import properly without executing tests
- ProductionBenchmarkingProfiler (Module 14) and ProductionMLSystemProfiler (Module 16) fully working
- Other profiler classes present but require full numpy environment to test completely
2025-09-16 00:17:32 -04:00
Vijay Janapa Reddi
f6a944349f Add missing markdown documentation to 06_spatial module
- Add documentation for test_unit_convolution_operation function
- Add documentation for test_unit_conv2d_layer function
- Add documentation for test_unit_flatten_function function
- Ensures every code function has preceding explanatory markdown cell
- Maintains educational clarity and structure
2025-07-20 17:47:39 -04:00
Vijay Janapa Reddi
9ae1292e9d Removes development headers
Removes development headers from several files.

These headers were used during the development process and are no longer needed.
2025-07-20 17:41:57 -04:00
Vijay Janapa Reddi
91f7ecac62 Add section organization to 06_spatial module: Add DEVELOPMENT section header
- Insert ## 🔧 DEVELOPMENT header before first test function
- Organizes module according to educational structure guidelines
- Maintains all existing functionality and test execution
- Improves readability and navigation for educational use
2025-07-20 14:03:50 -04:00
Vijay Janapa Reddi
cc9cdee97d Deprecate AUTO TESTING: Remove run_module_tests_auto from all _dev.py modules. Standardize on full-module test execution for reliable, context-aware testing. 2025-07-20 13:28:10 -04:00
Vijay Janapa Reddi
f4c628782d Fix test function calls in spatial and dataloader modules - move test calls outside __main__ blocks 2025-07-20 12:54:15 -04:00
Vijay Janapa Reddi
ede665e2dc Simplify plot handling - remove _should_show_plots functions and plot guards 2025-07-20 12:47:14 -04:00
Vijay Janapa Reddi
98a7228bf5 Removes development headers from notebooks
Removes redundant "DEVELOPMENT" headers from several notebook files.

These headers are no longer necessary and declutter the notebook content, improving readability and focus on the core content and testing sections.
2025-07-20 12:39:21 -04:00
Vijay Janapa Reddi
dc58bc2f41 Standardize section headers for 06_spatial module 2025-07-20 12:27:56 -04:00
Vijay Janapa Reddi
b9c3d3312c 🧪 Add missing test function calls in 06_spatial module
- Added test_unit_convolution_operation() call after function definition
- Added test_unit_conv2d_layer() call after function definition
- Added test_unit_flatten_function() call after function definition

Ensures all test functions are executed when cells run, providing immediate feedback to students.
2025-07-20 10:26:11 -04:00
Vijay Janapa Reddi
6c48010c13 Add structural organization headers to 06_spatial module
- Added ## 🔧 DEVELOPMENT section before Step 1 where development begins
- Added ## 🤖 AUTO TESTING section before auto testing block
- Updated to ## 🎯 MODULE SUMMARY: Convolutional Networks

Improves notebook organization without changing any code logic or content.
2025-07-20 09:59:37 -04:00
Vijay Janapa Reddi
dfad756278 🧠 Core ML: Standardize test naming in neural network building blocks
- Activations: test_integration_* → test_module_* (module dependency tests)
- Layers: test_matrix_multiplication → test_unit_matrix_multiplication
- Layers: test_dense_layer → test_unit_dense_layer
- Layers: test_layer_activation → test_unit_layer_activation
- Dense: test_integration_* → test_module_* (module dependency tests)
- Spatial: test_integration_* → test_module_* (module dependency tests)
- Attention: test_integration_* → test_module_* (module dependency tests)
- Establishes unit vs module test distinction for neural network components
2025-07-20 08:39:00 -04:00
Vijay Janapa Reddi
442e860d5f Fix module file naming and tensor assignment issues
- Updated module.yaml files for 05_dense and 06_spatial to reference correct dev file names
- Fixed #| default_exp directives in dense_dev.py and spatial_dev.py to export to correct module names
- Fixed tensor assignment issues in 12_compression module by creating new Tensor objects instead of trying to assign to .data property
- Removed missing function imports from autograd integration test
- All individual module tests now pass (01_setup through 14_benchmarking)
- Generated correct module files: dense.py, spatial.py, attention.py
2025-07-18 01:56:07 -04:00