Repolode
NVIDIA

NVIDIA/apex

Extensiones de NVIDIA para PyTorch con utilidades de precisión mixta y entrenamiento distribuido, además de kernels CUDA y C++ fusionados opcionales.

Estrellas
9,001
Forks
1,532
Issues abiertos
777
Último commit
hace 5 días

¿Qué es?

Apex es un conjunto de utilidades mantenidas por NVIDIA que amplían PyTorch para trabajar con precisión mixta y entrenamiento distribuido. Su objetivo es ofrecer a los usuarios utilidades de entrenamiento actualizadas antes de que se incorporen a PyTorch.

El paquete incluye kernels fusionados para operaciones habituales como Adam, normalización de capas y softmax, además de un espacio de nombres contrib con módulos experimentales para áreas como sparsity, transducer loss, bloques bottleneck y optimizadores distribuidos. Muchos de estos componentes se compilan como extensiones opcionales de C++/CUDA, que se habilitan mediante variables de entorno durante la instalación.

También se admite una compilación solo con Python, aunque omite los kernels fusionados y hace que DistributedDataParallel, amp y SyncBatchNorm funcionen más lentamente. Los contenedores de PyTorch de NVIDIA en NGC incluyen todas las extensiones preinstaladas.

Funciones clave

  • 01Utilidades de entrenamiento con precisión mixta (apex.amp) para PyTorch.
  • 02Herramientas para entrenamiento distribuido, como DistributedDataParallel y SyncBatchNorm.
  • 03Optimizadores fusionados y kernels de normalización de capas compilados como extensiones CUDA.
  • 04Paquetes contrib modulares que se habilitan individualmente durante la instalación.
  • 05Opción de instalación solo con Python para entornos sin un conjunto de herramientas CUDA.

Casos de uso

  • Acelerar el entrenamiento de modelos grandes en GPU NVIDIA mediante precisión mixta.
  • Ejecutar entrenamiento de PyTorch en varias GPU o varios nodos con utilidades distribuidas fusionadas.
  • Probar optimizadores fusionados o capas de normalización en código de entrenamiento personalizado.

Inicio rápido

  1. 1

    Clona el repositorio

    git clone https://github.com/NVIDIA/apex
  2. 2

    Entra en el directorio del proyecto

    cd apex
  3. 3

    Compila e instala las extensiones principales de C++ y CUDA

    APEX_CPP_EXT=1 APEX_CUDA_EXT=1 pip install -v --no-build-isolation .

Antes de usarlo

  • Para compilar las extensiones de CUDA y C++ se necesita una configuración compatible de PyTorch y CUDA.
  • Algunos módulos de apex.contrib solo funcionan con versiones nightly de PyTorch, no con las versiones estables.
  • La instalación en Windows es experimental.

En colecciones

Temas

Preguntas frecuentes

¿Qué es apex?
Extensiones de NVIDIA para PyTorch con utilidades de precisión mixta y entrenamiento distribuido, además de kernels CUDA y C++ fusionados opcionales. Apex es un conjunto de utilidades mantenidas por NVIDIA que amplían PyTorch para trabajar con precisión mixta y entrenamiento distribuido. Su objetivo es ofrecer a los usuarios utilidades de entrenamiento actualizadas antes de que se incorporen a PyTorch.
¿apex es gratuito? ¿Qué licencia tiene?
apex es open source bajo la licencia BSD-3-Clause. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿apex sigue mantenido?
Mantenimiento activo. El último commit de apex fue el 2 nov 2026.
¿Para qué puedo usar apex?
Acelerar el entrenamiento de modelos grandes en GPU NVIDIA mediante precisión mixta. Ejecutar entrenamiento de PyTorch en varias GPU o varios nodos con utilidades distribuidas fusionadas. Probar optimizadores fusionados o capas de normalización en código de entrenamiento personalizado.
¿Cómo se instala apex?
Clona el repositorio: git clone https://github.com/NVIDIA/apex Entra en el directorio del proyecto: cd apex Compila e instala las extensiones principales de C++ y CUDA: APEX_CPP_EXT=1 APEX_CUDA_EXT=1 pip install -v --no-build-isolation .
¿Dónde consigo apex?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/NVIDIA/apex

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados