Sobre o projeto

ML.NET é um framework de machine learning multiplataforma e de código aberto construído para o ecossistema .NET. Seu valor central é permitir que desenvolvedores .NET criem, treinem, implantem e consumam modelos de machine learning personalizados dentro de seus aplicativos sem exigir experiência prévia em ML ou fluência em outras linguagens como Python ou R. O framework agrupa todo o pipeline: carregamento de dados de arquivos e bancos de dados, transformações de dados e uma biblioteca de algoritmos de ML integrados. Ele suporta uma variedade de cenários comuns, incluindo classificação, previsão e detecção de anomalias. Além de seus treinadores nativos, o ML.NET também pode consumir modelos TensorFlow e ONNX, o que amplia o conjunto de cenários suportados e torna o framework mais extensível. O suporte de plataforma é amplo. O ML.NET roda em Windows, Linux e macOS via .NET Core, e em Windows via .NET Framework. Ele também roda em ARM64, Apple M1 e Blazor WebAssembly, com algumas limitações de plataforma documentadas. O suporte de 64 bits está disponível em todas as plataformas; o suporte de 32 bits está disponível no Windows, exceto para funcionalidades relacionadas a TensorFlow e LightGBM. A distribuição é feita via NuGet. O pacote principal é o Microsoft.ML, instalável via CLI do .NET Core (`dotnet add package Microsoft.ML`), o Gerenciador de Pacotes NuGet (`Install-Package Microsoft.ML`), o gerenciador de pacotes do Visual Studio ou Paket. Builds diários também são publicados em um feed do Azure DevOps. O projeto requer .NET Core 2.1 ou posterior, ou .NET Framework 4.6.1 ou posterior (4.7.2+ recomendado). Um fluxo de trabalho típico é mostrado no README: criar um MLContext, carregar um CSV com um carregador de texto, construir um pipeline de aprendizado que transforma texto em recursos e anexa um treinador de classificação binária (FastTree), ajustar o modelo e, em seguida, criar um mecanismo de previsão para pontuar novas entradas. O README aponta para um repositório separado de exemplos (dotnet/machinelearning-samples) para exemplos completos, além de documentação, referência de API, tutoriais e uma playlist no YouTube. O ritmo de lançamento está vinculado ao ciclo de lançamento do .NET: grandes versões do ML.NET são lançadas uma vez por ano junto com grandes versões do .NET (ML.NET 1.7 com .NET 6 em novembro de 2021, ML.NET 2.0 com .NET 7 e assim por diante), com branches de lançamento mantidas para manutenção. A cobertura de CI abrange CentOS, Ubuntu, macOS, Windows x64, Windows Full Framework, Windows x86 e Windows .NET Core 3.1, com configurações Debug e Release. O ML.NET é licenciado sob a licença MIT, gratuito para uso comercial, e é um projeto da .NET Foundation. O projeto aceita contribuições e tem uma comunidade ativa no Discord e um Community Standup recorrente de Machine Learning .NET.