diff --git a/tinytorch/site/_toc.yml b/tinytorch/site/_toc.yml index c356735bd..4c15a4176 100644 --- a/tinytorch/site/_toc.yml +++ b/tinytorch/site/_toc.yml @@ -93,15 +93,19 @@ parts: title: "Progress & Data" - file: tito/troubleshooting title: "Troubleshooting" + +# Reference - Collapsible section +- caption: 📚 Reference + chapters: - file: datasets title: "Datasets Guide" + - file: resources + title: "Learning Resources" # Community - Collapsible section - caption: 🤝 Community chapters: - file: community title: "Ecosystem" - - file: resources - title: "Learning Resources" - file: credits title: "Credits & Acknowledgments" diff --git a/tinytorch/site/_toc_pdf.yml b/tinytorch/site/_toc_pdf.yml index 0bdc4c125..2854d3506 100644 --- a/tinytorch/site/_toc_pdf.yml +++ b/tinytorch/site/_toc_pdf.yml @@ -97,6 +97,21 @@ parts: - file: milestones/06_mlperf_ABOUT title: "2018: MLPerf" +# TITO CLI Reference +- caption: TITO CLI Reference + numbered: false + chapters: + - file: tito/overview + title: "Command Overview" + - file: tito/modules + title: "Module Workflow" + - file: tito/milestones + title: "Milestone System" + - file: tito/data + title: "Progress & Data" + - file: tito/troubleshooting + title: "Troubleshooting" + # Conclusion - caption: Conclusion numbered: false diff --git a/tinytorch/site/datasets.md b/tinytorch/site/datasets.md index 9a6de6486..9791fd54a 100644 --- a/tinytorch/site/datasets.md +++ b/tinytorch/site/datasets.md @@ -46,7 +46,7 @@ TinyTorch uses a two-tier dataset approach: ### TinyDigits - Handwritten Digit Recognition -
+
**Location**: `datasets/tinydigits/` **Size**: ~310 KB @@ -79,7 +79,7 @@ X_train, y_train, X_test, y_test = load_tinydigits() ### TinyTalks - Conversational Q&A Dataset -
+
**Location**: `datasets/tinytalks/` **Size**: ~40 KB @@ -127,7 +127,7 @@ These standard benchmarks download automatically when you run relevant milestone ### MNIST - Handwritten Digit Classification -
+
**Downloads to**: `milestones/datasets/mnist/` **Size**: ~10 MB (compressed) @@ -153,7 +153,7 @@ These standard benchmarks download automatically when you run relevant milestone ### CIFAR-10 - Natural Image Classification -
+
**Downloads to**: `milestones/datasets/cifar-10/` **Size**: ~170 MB (compressed) diff --git a/tinytorch/site/tito/troubleshooting.md b/tinytorch/site/tito/troubleshooting.md index 8e552ecdb..f8d2466d2 100644 --- a/tinytorch/site/tito/troubleshooting.md +++ b/tinytorch/site/tito/troubleshooting.md @@ -136,6 +136,177 @@ which pip # Should show TinyTorch/venv/bin/pip
+## System Updates + +### Problem: "How do I update TinyTorch?" + +
+ +**Check for updates**: +```bash +tito system update --check +``` + +**Install updates**: +```bash +tito system update +``` + +**What gets updated**: +- ✅ TinyTorch framework code (`tinytorch/` package) +- ✅ TITO CLI commands and tools +- ✅ Bug fixes and improvements +- ✅ New features + +**What stays safe**: +- ✅ Your module implementations (`modules/` folder) +- ✅ Your progress tracking (`.tito/` folder) +- ✅ Your exported code +- ✅ All your work is preserved + +**The update process**: +1. Checks current version +2. Queries GitHub for latest release +3. Shows what will be updated +4. Asks for confirmation +5. Downloads and installs update +6. Preserves all your work + +**Manual update** (if needed): +```bash +curl -fsSL mlsysbook.ai/tinytorch/install.sh | bash +``` + +
+ +### Problem: "Will updating delete my code?" + +
+ +**Answer**: No! Your code is completely safe. + +**What's protected during updates**: +- Your implementations in `modules/XX_name/` notebooks +- Your progress data in `.tito/` +- Your completion history +- Any custom modifications you've made + +**How updates work**: +1. Only the TinyTorch framework code gets updated +2. The installer script preserves your `modules/` directory +3. Your `.tito/` progress folder stays intact +4. Student work is never touched + +**Best practice**: +```bash +# Before updating, verify your work is saved +tito module status # Check completion status +git status # If using version control + +# Then update safely +tito system update +``` + +**If something goes wrong**: +- Your code is in `modules/` - always safe +- Framework is in `tinytorch/` - gets replaced +- Re-export your modules if needed: `tito module complete XX` + +
+ +### Problem: "Update failed or interrupted" + +
+ +**Symptom**: Update command failed or was interrupted + +**Solution**: + +**Step 1: Check environment**: +```bash +source activate.sh +tito system health +``` + +**Step 2: Try manual install**: +```bash +curl -fsSL mlsysbook.ai/tinytorch/install.sh | bash +``` + +**Step 3: Verify installation**: +```bash +tito --version +tito system health +``` + +**Step 4: Re-export modules if needed**: +```bash +# If imports fail, re-export your completed modules +tito module complete 01 +tito module complete 02 +# ... etc for each completed module +``` + +**Common causes**: +- Network interruption during download +- Permission issues +- Conflicting Python packages + +**Prevention**: Ensure stable internet and proper permissions before updating + +
+ +### Problem: "After update, imports are broken" + +
+ +**Symptom**: +```python +>>> from tinytorch import Tensor +ImportError: cannot import name 'Tensor' +``` + +**Cause**: Update replaced framework files, need to re-export completed modules + +**Solution**: + +**Step 1: Check what you've completed**: +```bash +tito module status +``` + +**Step 2: Re-export completed modules**: +```bash +# For each module showing as completed +tito module complete 01 +tito module complete 02 +# etc... +``` + +**Step 3: Test imports**: +```python +python -c "from tinytorch import Tensor; print('Success!')" +``` + +**Why this happens**: +- Updates may change internal framework structure +- Your implementations in `modules/` are safe +- Just need to re-export to `tinytorch/` package + +**Quick fix for all modules**: +```bash +# Check your progress +cat .tito/progress.json + +# Re-export each completed module +for i in 01 02 03 04 05; do + tito module complete $i +done +``` + +
+ + ## Module Issues ### Problem: "Module export fails"