Repolode
NVIDIA

NVIDIA/apex

Расширение NVIDIA для PyTorch с утилитами смешанной точности и распределённого обучения, а также опциональными fusion-ядрами CUDA и C++.

Звёзды
9,001
Форки
1,532
Открытые issues
777
Последний коммит
5 дней назад

Что это?

Apex — набор утилит от NVIDIA для расширения PyTorch средствами обучения со смешанной точностью и распределённого обучения. Он призван предоставлять пользователям актуальные инструменты для обучения до того, как они войдут в основную кодовую базу PyTorch.

В пакет входят fusion-ядра для распространённых операций, таких как Adam, нормализация слоёв и softmax, а также пространство имён contrib с экспериментальными модулями для разреженных моделей, функции потерь transducer, блоков bottleneck и распределённых оптимизаторов. Многие из этих компонентов собираются как опциональные расширения C++/CUDA, которые можно включить с помощью переменных окружения во время установки.

Также поддерживается сборка только на Python, но в ней нет fusion-ядер, а DistributedDataParallel, amp и SyncBatchNorm работают медленнее. Контейнеры NVIDIA для PyTorch на NGC поставляются со всеми расширениями, установленными заранее.

Ключевые возможности

  • 01Утилиты для обучения со смешанной точностью в PyTorch (apex.amp).
  • 02Инструменты для распределённого обучения, включая DistributedDataParallel и SyncBatchNorm.
  • 03Fusion-оптимизаторы и ядра нормализации слоёв, собранные как расширения CUDA.
  • 04Модульные пакеты contrib, которые можно включать по отдельности во время установки.
  • 05Вариант установки только на Python для сред без инструментов разработки CUDA.

Сценарии использования

  • Ускорение обучения больших моделей на GPU NVIDIA с использованием смешанной точности.
  • Запуск обучения PyTorch на нескольких GPU или узлах с помощью fusion-утилит для распределённых вычислений.
  • Эксперименты с fusion-оптимизаторами и слоями нормализации в собственном коде обучения.

Быстрый старт

  1. 1

    Клонируйте репозиторий

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

    Перейдите в каталог проекта

    cd apex
  3. 3

    Соберите и установите основные расширения C++ и CUDA

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

Что важно знать

  • Для сборки расширений CUDA и C++ требуется совместимая конфигурация PyTorch и CUDA.
  • Некоторые модули apex.contrib работают только с nightly-сборками PyTorch, а не со стабильными версиями.
  • Установка в Windows носит экспериментальный характер.

В подборках

Темы

Частые вопросы

Что такое apex?
Расширение NVIDIA для PyTorch с утилитами смешанной точности и распределённого обучения, а также опциональными fusion-ядрами CUDA и C++. Apex — набор утилит от NVIDIA для расширения PyTorch средствами обучения со смешанной точностью и распределённого обучения. Он призван предоставлять пользователям актуальные инструменты для обучения до того, как они войдут в основную кодовую базу PyTorch.
apex можно использовать бесплатно? Какая у него лицензия?
apex распространяется с открытым исходным кодом под лицензией BSD-3-Clause. Перед использованием в коммерческих продуктах проверьте условия лицензии.
apex всё ещё поддерживается?
Активно поддерживается. Последний коммит в apex — 2 нояб. 2026 г..
Для чего можно использовать apex?
Ускорение обучения больших моделей на GPU NVIDIA с использованием смешанной точности. Запуск обучения PyTorch на нескольких GPU или узлах с помощью fusion-утилит для распределённых вычислений. Эксперименты с fusion-оптимизаторами и слоями нормализации в собственном коде обучения.
Как установить apex?
Клонируйте репозиторий: git clone https://github.com/NVIDIA/apex Перейдите в каталог проекта: cd apex Соберите и установите основные расширения C++ и CUDA: APEX_CPP_EXT=1 APEX_CUDA_EXT=1 pip install -v --no-build-isolation .
Где скачать apex?
Исходный код и инструкции по установке — на GitHub: https://github.com/NVIDIA/apex

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты

Система на базе PyTorch для распределённого обучения и инференса крупных AI-моделей с поддержкой параллелизма, оптимизации памяти и гетерогенного обучения.

41,4 тыс.4,5 тыс.PythonApache-2.0Обновлён позавчера

Фреймворк для глубокого обучения на PyTorch: автоматизирует циклы обучения, масштабирование на несколько GPU и типовую инженерную работу, сохраняя полный контроль над кодом модели.

31,4 тыс.+12 за неделю3,8 тыс.PythonApache-2.0Обновлён 9 дней назад