Skip to main content

ML Forge

PyPI Downloads

A visual PyTorch pipeline editor. Build, train and run image classification models without writing code. ML Forge screenshot

MLForge v1.0.4

Additions:

  • Patched segfault error on Mac during template loading
  • Added logo to splash loading widnow
  • Added hints to node pallete when hovering over certain nodes.

What it does

  • Visual pipeline - drag nodes onto a canvas, connect them with wires, and ML Forge generates and runs the training code for you
  • Three-tab workflow - Data Prep -> Model -> Training
  • Live training - watch loss curves update in real time, save checkpoints, run inference on your trained model
  • Export - export projects into clean PyTorch

Tutorial

Watch the MLForge tutorial video here: MLForge Tutorial


Requirements

IMPORTANT: PyTorch must be preinstalled for training, it is not installed as a dependency.

  • Python 3.10 or newer
  • PyTorch 2.0 or newer
  • torchvision
pip install torch torchvision

GPU training is automatic if CUDA is available. CPU and Apple MPS are also supported.


Quick Start

To install MLForge, enter the following in your command prompt

pip install zaina-ml-forge

Then

ml-forge

Cloning

git clone https://github.com/zaina-ml/ml-forge
python -m ml_forge

Building your first model

1. Data Prep tab

  • Add a Dataset node (MNIST, CIFAR10, CIFAR100, FashionMNIST, or ImageFolder)
  • Chain transforms: ToTensor is required, add Normalize for best results
  • End with a DataLoader (train) node
  • For proper validation, add a second chain (same dataset with train=False) ending with DataLoader (val)

2. Model tab

  • Start with an Input node - shape is auto-filled from your dataset
  • Add layers: Linear, Conv2D, ReLU, BatchNorm2D, Flatten, Dropout, etc.
  • End with an Output node - num classes is auto-filled from your dataset
  • Connect nodes by dragging from an output pin to an input pin
  • in_features and in_channels auto-fill when you connect layers
  • After a Flatten node, the next Linear's in_features is calculated automatically

3. Training tab

Add these four nodes from the palette and wire them up:

DataLoaderBlock.images  ->  ModelBlock.images
ModelBlock.predictions  ->  Loss.pred
DataLoaderBlock.labels  ->  Loss.target
Loss.loss               ->  Optimizer.params

Configure epochs, device, checkpointing and early stopping in the right panel, then press RUN.


Keyboard shortcuts

Key Action
Del / Ctrl-Backspace Delete selected nodes
Ctrl+S Save project
Ctrl+Z Undo
Ctrl+Y Redo
Middle-drag Pan the canvas

Supported datasets

Dataset Classes Input shape
MNIST 10 1 × 28 × 28
FashionMNIST 10 1 × 28 × 28
CIFAR-10 10 3 × 32 × 32
CIFAR-100 100 3 × 32 × 32
ImageFolder custom 3 × 224 × 224

Inference

After training, open Run -> Inference, browse to your checkpoint (.pth), and click Run Inference to sample from the test set and see top-k predictions.


Metrics

Click the METRICS button to see a summary of your training run: final loss, best validation accuracy, fit diagnosis, and loss/accuracy curves, you may also see the curves on the right training panel.


Saving and loading

Projects are saved as .mlf files (JSON). Use File -> Save / Save As or Ctrl+S.


Exporting code

File -> Export -> Python -> PyTorch generates a standalone train.py that reproduces your pipeline. No ML Forge required to run it.


Future Plans

  • Orient to a more beginner-friendly approach
  • Add custom block functionality

License

MIT

Metadata

Release files for zaina-ml-forge 1.0.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for zaina-ml-forge 1.0.4
File Size Uploaded Provenance Actions
zaina_ml_forge-1.0.4.tar.gz 60.2 kB Without provenance Details for zaina_ml_forge-1.0.4.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for zaina-ml-forge 1.0.4
File Interpreter ABI Platform Actions
zaina_ml_forge-1.0.4-py3-none-any.whl Python 3 none any Details for zaina_ml_forge-1.0.4-py3-none-any.whl

Total release size: 132.0 kB

Release files / zaina_ml_forge-1.0.4.tar.gz

Download URL zaina_ml_forge-1.0.4.tar.gz
Size 60.2 kB
Tags Source
SHA-256 checksum
How to use checksums
39aa61a6742f92c177d0519149fcdfb8c9be1e42109d68b62b719223569bfe21
BLAKE2b-256 checksum
How to use checksums
a250084ce3438f1a58719c404ac4596033591203cd7a70719dfd2bf73b81287c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.15

Release files / zaina_ml_forge-1.0.4-py3-none-any.whl

Download URL zaina_ml_forge-1.0.4-py3-none-any.whl
Size 71.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
252ad3601a3aadb25554fa1e6a9473be884b2b6615afa8173ae26255a31e9b65
BLAKE2b-256 checksum
How to use checksums
83e2fef016ff72db05e50bf0f1e8f3db2d0fa79561396e67f8187b3a3932b826
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.15

Security for zaina-ml-forge 1.0.4

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page