dotnet / dotnet/machinelearning
Cross-Platform ML.NET Model Builder Extension for Visual Studio Code
- Dominant language
- C#
- Stars
- 9.4k
- Forks
- 2k
- Avg merge
- 2d 20h
- Merged PRs (30d)
- 11
Description
## 🚀 Feature Proposal: Cross-Platform ML.NET Model Builder Extension for Visual Studio Code
### **Is your feature request related to a problem? Please describe.**
Currently, **ML.NET Model Builder** exists only as a Visual Studio for Windows component.
Developers who use **VS Code, macOS, Linux**, or **GitHub Codespaces** have no accessible, GUI-based way to build or train ML.NET models.
This leaves a large part of the .NET developer ecosystem — especially those on non-Windows environments — without first-class tooling for ML.NET.
---
### **Describe the solution you'd like**
Develop or officially support a **VS Code extension (“ML.NET Model Builder for VS Code”)** that provides a modern, lightweight, and cross-platform workflow powered by the **ML.NET CLI**.
#### 🔧 Core Capabilities
- Integration with `dotnet ml` CLI (ML.NET 3.x+).
- Scenario wizard: classification, regression, recommendation, anomaly detection.
- Dataset selection (CSV, TSV, Parquet).
- Label & feature selection, ignore columns, training time configuration.
- Live training progress and evaluation metrics in VS Code WebView.
- Export models to ONNX or TorchSharp formats.
- Optional GPU training (CUDA / OneAPI).
- Integration with `.NET Interactive` notebooks for visualization.
#### 🧠 Developer Experience
- Works on **Windows, macOS, Linux, and Codespaces**.
- Uses **modern VS Code APIs** (WebView2, ES modules).
- Built with `esbuild` or `vite` for fast packaging.
- Published to **Visual Studio Marketplace** and **OpenVSX**.
- Potential starting point: [franzsilva/MLBuilderVSCode-Source](https://github.com/franzsilva/MLBuilderVSCode-Source) (early prototype).
---
### **Describe alternatives you've considered**
- Using ML.NET CLI directly (functional but non-visual).
- Running Visual Studio Model Builder in Windows VMs or containers (heavy and impractical).
- Using Jupyter notebooks with ML.NET (not native to .NET developers’ workflow).
---
### **Additional context**
A **cross-platform Model Builder** aligns with the **.NET Everywhere** strategy and lowers the entry barrier for ML.NET adoption.
It would make ML.NET approachable for students, researchers, and engineers working in containerized or non-Windows environments.
It could also serve as a bridge to AutoML.NET and ONNX Runtime for inference workloads.
**Example roadmap:**
1. Migrate legacy codebase to modern VS Code API.
2. Integrate ML.NET CLI 3.x+.
3. Build a visual training wizard (dataset → train → evaluate → export).
4. Add ONNX / TorchSharp export & inference playground.
5. Publish and maintain cross-platform builds.
---
### 🏷 Suggested Labels
`enhancement`, `cross-platform`, `ModelBuilder`, `AutoML.NET`, `VSCode`, `dotnet-tools`
Contributor guide
Assessment
This issue has not been assessed yet.