Microsoft ha puesto orden —y velocidad— en la inferencia de IA local sobre Windows 11 con Windows Machine Learning (Windows ML). La propuesta: ofrecer a desarrolladores de C#, C++ y Python un runtime único del sistema basado en ONNX Runtime, capaz de detectar el hardware disponible (CPU, GPU y NPU) y descargar dinámicamente los execution providers (EPs) más adecuados sin que cada app tenga que empaquetarlos ni mantenerlos.
La idea resuelve varios dolores de cabeza clásicos. Hasta ahora, quien quería que su aplicación corriera “bien” en distintas gráficas o aceleradores debía multiplicar builds, arrastrar librerías pesadas y ocuparse de actualizaciones. Con Windows ML, el sistema operativo mantiene una copia compartida de ONNX Runtime y gestiona la distribución y actualización de los EPs de cada fabricante como paquetes independientes del propio Windows, de modo que las apps se instalan más ligero y heredan mejoras de rendimiento sin tocar su binario.

Qué gana el desarrollador (y el usuario)
- Menos peso y complejidad en la app: no hay que empaquetar ONNX Runtime ni los EPs específicos.
- Compatibilidad amplia: funciona en Windows 11 24H2 (build 26100) o superior, en x64 y ARM64, y soporta cualquier PC con CPU, GPU integrada/discreta o NPU.
- Detección y orquestación automáticas: el runtime escoge y descarga el EP óptimo para el hardware presente, particiona el grafo y ejecuta los operadores donde rinde más.
- Rendimiento “a metal”: la versión más reciente trabaja directamente con EPs dedicados de GPU y NPU, con prestaciones que Microsoft sitúa a la altura de SDKs especializados del pasado (como TensorRT en RTX, AI Engine Direct o extensiones específicas de Intel), pero manteniendo el beneficio de “escribir una vez, ejecutar en cualquier sitio Windows”.
Cómo encaja ONNX (y cómo llegar desde PyTorch o TensorFlow)
Windows ML se apoya en ONNX Runtime, por lo que se alimentará de modelos ONNX. Si el proyecto parte en PyTorch, TensorFlow/Keras, TFLite, scikit-learn u otros frameworks, se pueden convertir modelos a ONNX con el AI Toolkit para VS Code y las guías de ONNX Runtime. El objetivo es claro: estandarizar el formato y dejar al runtime escoger el motor y kernels adecuados para cada dispositivo presente.
Qué hace exactamente un execution provider (EP)
Un EP es el puente entre el grafo ONNX y un backend de cómputo concreto (CPU, GPU, NPU, u otros aceleradores). Cada EP ofrece:
- Kernels optimizados para operadores soportados;
- Particionado del grafo para enviar a ese backend solo lo que acelera de verdad;
- Interfaz unificada para que la app no sepa de marcas ni drivers.
Windows ML descarga y registra estos EPs bajo demanda, manteniéndolos actualizados sin obligar a rehacer la app.
Flujo de inicialización típico
- Instalación de la app ? el bootstrapper del Windows App SDK inicializa Windows ML.
- Detección de hardware ? el runtime censa CPU, GPU y NPU disponibles.
- Descarga de EPs ? obtiene los EPs óptimos para ese equipo.
- Listo para correr ? la app puede cargar el modelo ONNX e inferir inmediatamente.
Qué NO hace Windows ML (y sigue siendo tu trabajo)
Windows ML no optimiza tu modelo por ti. El desarrollador sigue siendo responsable de:
- Cuantización, podado, fusión de capas y demás técnicas de optimización;
- Elegir precisiones (FP16, INT8) y rutas que mejor aprovechen GPU o NPU;
- Medir latencias y throughput objetivo con las tutoriales de ONNX Runtime y herramientas del AI Toolkit.
Rendimiento sin romper la portabilidad
La gran novedad es que el runtime de Windows ML habla directamente con EPs dedicados (GPU/NPU), evitando overheads de capas genéricas (como la etapa únicamente basada en DirectML de antaño) cuando el hardware soporta aceleración nativa. En la práctica, esto permite exprimir la NPU de los PCs Copilot+ y las GPUs discretas sin sacrificar la compatibilidad con equipos que solo tengan CPU o integradas. La promesa: “mejor de los dos mundos” —desempeño cercano a SDKs de vendedor y portabilidad Windows-wide.
Base de la plataforma Windows AI
Windows ML no vive aislado: es la capa fundacional de la plataforma Windows AI.
- Windows AI APIs: tareas comunes con modelos integrados.
- Foundry Local: modelos listos para usar en el dispositivo.
- Modelos a medida: acceso directo a la API de Windows ML para escenarios avanzados.
Para debug y sugerencias, Microsoft redirige a GitHub (Windows App SDK) y a la documentación de ONNX Runtime.
Requisitos mínimos y soporte
- Sistema: Windows 11 24H2 (build 26100) o posterior.
- Arquitectura: x64 o ARM64.
- Hardware: cualquier configuración (desde solo CPU hasta GPU discreta + NPU).
La lista de EPs soportados por Windows ML es pública y se mantiene actualizada en la documentación oficial.
Casos de uso y recomendaciones rápidas
- Apps de escritorio que quieran IA local sin dependencias externas, con instaladores livianos.
- Productos OEM que deban escalar entre gamas con y sin NPU sin mantener builds distintos.
- Herramientas profesionales (edición, CAD, visión, audio) que busquen latencia predecible y aceleración transparente.
Consejos prácticos:
- Empieza por exportar a ONNX y validar equivalencia numérica.
- Perfila con CPU primero; luego activa EPs de GPU/NPU y compara p50/p95.
- Cuantiza si la NPU lo soporta y tu caso tolera la pérdida mínima de precisión.
- Mantén telemetría de fallbacks (qué nodos quedan en CPU) para priorizar optimizaciones.
vía: learn.microsoft.com