| Crates.io | aliyah |
| lib.rs | aliyah |
| version | 0.1.1 |
| created_at | 2025-03-24 00:49:00.672976+00 |
| updated_at | 2025-04-10 15:03:04.157232+00 |
| description | Terminal based machine learning training monitor |
| homepage | |
| repository | https://github.com/lovechants/Aliyah |
| max_upload_size | |
| id | 1603251 |
| size | 219,036 |
Aliyah is a functional training suite for machine learning in the terminal that allows you to interact with and visualize your model as it trains!
You can find the associated wrapper/hook library in \python.
aliyah <script.py>
**KWARG in the associated functions.cargo install aliyah # Rust
pip install aliyah # Python
curl -sSL https://raw.githubusercontent.com/lovechants/Aliyah/main/install.sh | bash
python -m pip install aliyah
python -c "$(curl -sSL https://raw.githubusercontent.com/lovechants/Aliyah/main/install.py)"
git clone https://github.com/lovechants/Aliyah
cd Aliyah
cargo build --release
pip install -e python/
If you're building from source, note that the data folder is only needed for the example scripts.
After installation, you can easily add monitoring to your code:
# Inside your training code
with trainingmonitor() as monitor:
for epoch in range(epochs):
for batch_idx, (data, target) in enumerate(train_loader):
# Your training code
loss = ...
accuracy = ...
# Log metrics
monitor.log_batch(batch_idx, loss, accuracy)
# Check if user paused/stopped
if not monitor.check_control():
break
# Log epoch metrics
monitor.log_epoch(epoch, val_loss, val_accuracy)
Visualize and track more data depending on what should be sent and monitored.
The examples in examples show in-depth metric tracking and visualization control.
Full documentation for each function will eventually be provided.
For now, please view the source code in the /python directory.
| Framework | Supported? |
|---|---|
| PyTorch | ✅ |
| JAX | 🚧 |
| TensorFlow/Keras | 🚧 |
| Scikit-Learn | 🚧 |
| TinyGrad | 🚧 |
Contributions to framework hooks and behaviors are appreciated, along with any suggestions.
Check out the examples to make the most of Aliyah's features:
simpleNet.py: A simple nerual network that demonstrates training on MNIST data, active visualizations, and metric logging.example_vae.py: An example autoencoder adapted from PyTorch, showing custom metrics, active visualizations, and a custom prediction panel.error_test.py: A simple test to show how the error log and errors are recorded in the TUI.There are a variety of other scripts present for testing purposes. Feel free to look at them if you are using another framework besides PyTorch.
Visualization hooks differ from framework to framework.

Thank you for considering contributing to Aliyah! Here's how you can help:
git clone https://github.com/your-username/your-forkgit checkout -b your-feature-branchgit commit -m "Add feature-that-you-added"git push origin your-feature-branchThere are no strict coding conventions in place, but please thoroughly test all code.
Set up your development environment:
# Clone your fork
git clone https://github.com/your-username/your-fork
cd Aliyah
# Build the Rust binary
cargo build
# Install the Python package in development mode
pip install -e python/