Releases: angelhernandezm/NeuroForge
Release list
NeuroForge 1.0.1 - Bug Fixes
NeuroForge 1.0.1
🐛 Bug Fixes
Fixed Quick Start CNN configuration failures
Resolved several issues affecting the public Quick Start example and minimal ANN configurations.
Previously, optional configuration sections omitted from AnnBuilderConfig could be serialized as null, causing Python-side builder failures during model creation and training.
Examples of errors that could occur:
AttributeError: 'NoneType' object has no attribute 'get'
TypeError: '>' not supported between instances of 'NoneType' and 'int'
Improved Optional Configuration Handling
The Python runtime now safely handles omitted or null configuration values by applying appropriate defaults.
Notable fixes include:
- Safe handling of missing
paramsconfiguration - Safe handling of missing dataset
validation_split - Improved null handling for dataset and training configuration sections
- More resilient builder initialization when optional settings are omitted
Base Builder Hardening
Updated the builder initialization logic to normalize null configuration objects:
self.params = config.get("params") or {}
self.training = config.get("training") or {}
self.dataset = config.get("dataset") or {}This allows ANN builders to use default values correctly when optional configuration blocks are not supplied.
✅ Validation
The published Quick Start example has been revalidated and now successfully:
- Initializes the Python/TensorFlow runtime
- Loads the CIFAR-10 dataset
- Builds a CNN using default configuration values
- Trains successfully without requiring explicit parameter definitions
📦 Upgrade
dotnet add package NeuroForge --version 1.0.1Thank you to everyone trying NeuroForge during its early releases. This update improves first-run reliability and makes ANN configurations significantly more robust when working with minimal or partially specified settings.
v1.0.0 — First NuGet release
First public release of NeuroForge on NuGet.
dotnet add package NeuroForge
NeuroForge lets .NET developers build, train and export neural networks from strongly-typed C# configuration. It bootstraps and manages a Python/TensorFlow runtime for you, then hands back an ONNX model that runs anywhere — no Python or TensorFlow at inference time.
Highlights
Six ANN architectures
Configurable from a typed C# object or plain JSON, all through one unified API:
| Architecture | Best for |
|---|---|
| MLP | Tabular data, feature-based prediction, regression |
| CNN | Image classification, defect detection, computer vision |
| RNN / LSTM | Time series, forecasting, sequential sensor data |
| Autoencoder | Anomaly detection, compression, feature learning |
| GAN | Synthetic data generation, data augmentation |
| Transformer | Text classification, sentiment, sequence tasks |
The GAN builder implements a genuine alternating adversarial training loop — frozen-discriminator combined model with train_on_batch for both networks — rather than a templated approximation.
Managed Python runtime
InitializeAsync() downloads and configures Python 3.11 plus a locked, tested TensorFlow 2.15 dependency set. No manual venv wrangling, no dependency conflicts to resolve by hand.
Dataset loading
Image folders, CSV/Excel, NumPy arrays, and built-in datasets (CIFAR-10, MNIST, IMDB), with optional normalization.
Automatic ONNX export
Every trained model is exported to both .h5 and .onnx, ready for ML.NET, ONNX Runtime, Azure ML, edge or mobile.
Training controls
EarlyStopping and ReduceLROnPlateau callback support, plus a configurable random seed for reproducible training runs.
Package contents
lib/net10.0/NeuroForge.Factory.dllwith full XML documentation- Symbol package (
.snupkg) with Source Link for step-through debugging - No external NuGet dependencies — the Python resources are embedded in the assembly
Requirements
- .NET 10 or later
- Windows 10/11
- An elevated (Administrator) shell for first-time Python runtime setup, since the installer runs with
InstallAllUsers=1 - ~500 MB disk space for the Python environment
Known limitations
- Windows only. Linux and macOS support is planned but not yet built.
- The Python installer download has no checksum verification yet.
- There is no automatic elevation prompt — you must start the shell as Administrator yourself.
Links
- Documentation and guides: https://github.com/angelhernandezm/NeuroForge
- Background reading: NeuroForge: Compiling Neural Networks Inside .NET
Contributions are welcome — especially Linux/macOS support, installer checksum verification, additional architectures and dataset loaders.