About this project

ML.NET is a cross-platform, open-source machine learning framework built for the .NET ecosystem. Its core value is letting .NET developers build, train, deploy, and consume custom machine learning models inside their applications without requiring prior ML expertise or fluency in other languages such as Python or R. The framework bundles the full pipeline: data loading from files and databases, data transformations, and a library of built-in ML algorithms. It supports a range of common scenarios including classification, forecasting, and anomaly detection. Beyond its native trainers, ML.NET can also consume TensorFlow and ONNX models, which broadens the set of supported scenarios and makes the framework more extensible. Platform support is broad. ML.NET runs on Windows, Linux, and macOS via .NET Core, and on Windows via .NET Framework. It also runs on ARM64, Apple M1, and Blazor WebAssembly, with some documented platform limitations. 64-bit is supported on all platforms; 32-bit is supported on Windows except for TensorFlow and LightGBM-related functionality. Distribution is through NuGet. The primary package is Microsoft.ML, installable via the .NET Core CLI (`dotnet add package Microsoft.ML`), the NuGet Package Manager (`Install-Package Microsoft.ML`), Visual Studio's package manager, or Paket. Daily builds are also published to an Azure DevOps feed. The project requires .NET Core 2.1 or later, or .NET Framework 4.6.1 or later (4.7.2+ recommended). A typical workflow is shown in the README: create an MLContext, load a CSV with a text loader, build a learning pipeline that featurizes text and appends a binary classification trainer (FastTree), fit the model, then create a prediction engine to score new inputs. The README points to a separate samples repository (dotnet/machinelearning-samples) for complete examples, plus documentation, API reference, tutorials, and a YouTube playlist. Release cadence is tied to the .NET release train: major ML.NET releases ship once a year alongside major .NET releases (ML.NET 1.7 with .NET 6 in November 2021, ML.NET 2.0 with .NET 7, and so on), with release branches maintained for servicing. CI coverage spans CentOS, Ubuntu, macOS, Windows x64, Windows Full Framework, Windows x86, and Windows .NET Core 3.1, with both Debug and Release configurations. ML.NET is licensed under the MIT license, free to use commercially, and is a project of the .NET Foundation. The project welcomes contributions and has an active community presence on Discord and a recurring .NET Machine Learning Community Standup.