deepseek-ai/EPLB

Балансировщик нагрузки экспертного параллелизма

Инструменты⭐ 1 436Python
Открыть на GitHub ↗

Что это за инструмент

EPLB — это алгоритм балансировки нагрузки для экспертного параллелизма (Expert Parallelism) в MoE-моделях, который распределяет дубликаты экспертов по GPU для предотвращения перегрузки.

Зачем нужен

Инструмент решает проблему неравномерной нагрузки на GPU при использовании экспертного параллелизма, где разные эксперты обрабатывают разный объем данных. Он автоматически вычисляет план репликации и размещения экспертов, минимизируя дисбаланс вычислений и снижая межузловой трафик за счет групповой маршрутизации.

Что можно реализовать

  • Оптимизация работы MoE-моделей (например, DeepSeek-V3) на кластерах с большим количеством GPU
  • Балансировка нагрузки на этапе преформирования (prefilling) с использованием иерархического подхода
  • Распределение экспертов на этапе декодирования (decoding) с глобальной балансировкой
  • Снижение задержек за счет размещения экспертов одной группы на одном узле

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

  • Два режима балансировки: иерархический (для prefilling) и глобальный (для decoding)
  • Учет групповой маршрутизации экспертов (group-limited expert routing) для оптимизации сетевого трафика
  • Стратегия дублирования экспертов с высокой нагрузкой (redundant experts strategy)
  • Простой интерфейс через функцию rebalance_experts, принимающую веса и параметры кластера
  • MIT License, позволяющая свободное использование и модификацию кода

👤 Кому подойдёт: разработчики LLM, ML-инженеры, исследователи, работающие с распределенным обучением и инференсом MoE-моделей

Релизы

Релизы ещё не отслежены — появятся после ближайшего опроса.