1 unstable release
new 0.1.0 | Mar 24, 2025 |
---|
#563 in Machine learning
115KB
2.5K
SLoC
Aliyah
Work in progress
Being able to see to see my model train and interact with it in the terminal is important to me
Wrapper libary in /python
Keyboard Controls
q/ESC : Quit
p/SPACE: Pause/Resume training
s : Stop training
e : Toggle error log
↑/↓ : Scroll error log | Scroll training log
c : Clear error log
h : Show this help
tab/n : Show node information
click : Switch training and node panel
o : Output panel
Pre-Alpha Release
git clone https://github.com/lovechants/Aliyah.git
cargo build
pip install -e .
cargo run -- <script.py>
data folder is for example scripts only
Current TODO
- Fix mouse input cature bug when you exit (if clicked)
- Fix help render bug
- Fix prediction timer bug
- Fix logging crash
- Fix prediction screen text
- Make plotting more robust
- Make visualization better for networks
- Make classic machine learning visualizations (not just networks)
- Update examples (Make more robust examples with the new features and remove the original test examples)
- MNIST neural net
- MNIST VAE
- Deep network
- Shallow network
- Transformer
- Algorithmic Pipeline -> PSO -> PNN (no boltzmann) adapted from this paper
- Either show each algorithm / model indepent of each other move to the next
- Or show all of them at the same time running async?
- Test custom metrics
- Fix output match statements to be more robust
- Make framework hooks for visualizations
- PyTorch
- JAX
- Keras
- TF
- TinyGrad
- SciKit Learn
- Custom
- Default
- User Config
- Publish Packages for pip, uv, and cargo
- Add other GPU monitoring
- Test Metal
- Test NVIDIA
- Test AMD
- Fix memory bug || check if its just local browser issues
Roadmap to 1.0 alpha
1. Core Infrastructure
- Install and set up ZMQ dependencies (Rust and Python)
- Create ZMQ context and socket management
- Implement basic message patterns
- Command channel (REQ-REP)
- Metrics channel (PUB-SUB)
- Control flow channel
2. Python Monitor Library
- Update monitor class for ZMQ
- Command handling
- Metric sending
- Control flow checks
- Context manager implementation
- Error handling and recovery
- Basic metric formatting
- Safe cleanup on exit
3. Rust UI Updates
- ZMQ socket integration
- Command sending system
- Metric receiving and parsing
- Update existing UI components for new data flow
- Error handling and connection management
4. Core Features for 0.1a
- Training control (pause/resume/stop)
- Basic metric display
- Loss
- Accuracy
- Epoch progress
- Simple network visualization
- Resource monitoring
- Basic GPU stats
- Memory usage
- CPU usage
5. Testing and Validation
- Basic integration tests
- Cross-platform testing
- Error recovery testing
- Example scripts
6. Documentation
- Usage guide
- Example implementations
- Installation instructions
- Clean up codebase (again)
Future Features (Post 1.0a)
- User configuration
- Layer-specific visualization
- Advanced GPU monitoring
- Custom metric tracking
- Interactive parameter adjustment
- Extended framework support
- Advanced network visualization
- Custom algorithm support
Dependencies
~16–30MB
~477K SLoC