Задачи:
— Владеть стеком обучения и архитектурой моделей для семейства Mellum LLM.
— Делать обучение быстрее, дешевле и стабильнее в больших масштабах.
— Профилировать, проектировать и внедрять изменения в pipeline обучения, включая архитектуру и кастомные GPU ядра.
— Улучшать производительность end-to-end для multi-node LLM pre-training и post-training pipeline.
— Профилировать узкие места (Nsight Systems/Compute, NVTX) и устранять их с помощью overlap вычислений и коммуникаций, fusion ядер, планирования и др.
— Проектировать и оценивать архитектурные решения (глубина/ширина, варианты внимания, RoPE scaling/NTK, MoE маршрутизация и балансировка нагрузки).
— Реализовывать кастомные операции (Triton и/или CUDA C++), интегрировать через PyTorch extensions и по возможности вносить upstream.
— Оптимизировать память и производительность: FSDP/ZeRO, активационное чекпоинтинг, FP8/TE, параллелизм тензоров/пайплайнов/последовательностей/экспертов, настройка NCCL.
— Обеспечивать устойчивость больших запусков: elastic и fault-tolerant training, надежный чекпоинтинг, воспроизводимость, устойчивость к прерыванию.
— Поддерживать высокую скорость обработки данных с помощью стриминговых и шардированных загрузчиков данных и токенизаторов, улучшать пропускную способность и эффективность кэша.
— Определять метрики, строить дашборды и обеспечивать постоянные улучшения.
— Эффективно запускать pre-training и post-training (включая SFT, RLHF, GRPO) на больших кластерах.
Требования:
— Опыт работы с PyTorch и PyTorch Distributed, запуск multi-node задач с десятками и сотнями GPU.
— Практический опыт с Megatron-LM/Megatron-Core/NeMo, DeepSpeed или глубокие знания FSDP/ZeRO.
— Опыт профилирования (Nsight Systems/Compute, nvprof) и работы с NVTX-инструментированными workflow.
— Навыки программирования GPU с Triton и/или CUDA, умение писать, тестировать и отлаживать ядра.
— Хорошее понимание NCCL collectives, топологии и эффектов fabric (IB/RoCE) и их проявлений в трассах.
Желательные навыки:
— Опыт с FlashAttention-2 и 3, CUTLASS и CuTe, TransformerEngine и FP8, Inductor, AOTAutograd, torch.compile.
— Опыт работы с MoE в масштабе (экспертный параллелизм, потери маршрутизатора, управление емкостью) и трюки для длинного контекста (ALiBi/YaRN/NTK scaling).
— Опыт работы с Kubernetes или SLURM в масштабе, настройка размещения и affinity, а также с GPU кластерами AWS, GCP и Azure.
— Опыт с web-scale data plumbing (стриминг датасетов, Parquet и TFRecord, производительность токенизаторов), eval harnesses и benchmarking.
— Знания методов безопасности и пост-тренировки, таких как DPO, ORPO, GRPO и reward models.
— Опыт с экосистемами инференса, такими как vLLM и paged KV.
Контакты работодателя доступны по кнопке «Откликнуться» после входа.