https://github.com/NVIDIA/Megatron-LMhttps://github.com/NVIDIA/Megatron-LM

目录

Megatron Overview

此存储库包含两个基本组件:Megatron-LM 和 Megatron-Core。Megatron-LM 是一个以研究为导向的框架,利用 Megatron-Core 进行大型语言模型 (LLM) 训练。另一方面,Megatron-Core 是一个 GPU 优化训练技术库,附带正式的产品支持,包括版本控制的 API 和常规版本。您可以将 Megatron-Core 与 Megatron-LM 或 Nvidia NeMo 框架一起使用,以实现端到端和云原生解决方案。或者,您可以将 Megatron-Core 的构建块集成到您首选的训练框架中。

Megatron-LM

Megatron(12 和 3)于 2019 年首次推出,在 AI 社区引发了一波创新浪潮,使研究人员和开发人员能够利用该库的基础来进一步推动 LLM 的进步。如今,许多最流行的 LLM 开发人员框架都受到开源 Megatron-LM 库的启发并直接利用开源 Megatron-LM 库构建,从而刺激了一波基础模型和 AI 初创公司。基于 Megatron-LM 构建的一些最流行的 LLM 框架包括 Colossal-AIHuggingFace Accelerate 和 NVIDIA NeMo 框架。可以直接使用 Megatron 的项目列表可以在这里找到。

Megatron-Core

Megatron-Core 是一个基于 PyTorch 的开源库,其中包含 GPU 优化技术和尖端的系统级优化。它将它们抽象为可组合的模块化 API,为开发人员和模型研究人员提供了充分的灵活性,可以在 NVIDIA 加速计算基础设施上大规模训练自定义转换器。此库与所有 NVIDIA Tensor Core GPU 兼容,包括对 NVIDIA Hopper 架构的 FP8 加速支持。

Megatron-Core 提供核心构建块,例如注意力机制、transformer 块和层、归一化层和嵌入技术。激活重新计算、分布式检查点等其他功能也内置于库中。构建块和功能都经过 GPU 优化,可以使用高级并行化策略构建,以实现 NVIDIA 加速计算基础设施上的最佳训练速度和稳定性。Megatron-Core 库的另一个关键组件包括高级模型并行技术(张量、序列、管道、上下文和 MoE 专家并行)。

Megatron-Core 可与企业级 AI 平台 NVIDIA NeMo 一起使用。或者,您可以在此处使用本机 PyTorch 训练循环探索 Megatron-Core。访问 Megatron-Core 文档以了解更多信息。

Training Speed and Scalability

Setup

Usage

安装后,有几种可能的工作流程。最全面的是:

  1. 数据预处理
  2. 预训练
  3. 微调(对于零镜头任务可选)
  4. 下游任务评估或文本生成

但是,步骤 1 和 2 可以用上面提到的预训练模型之一来代替。

我们在 examples 目录中提供了几个用于预训练 BERT 和 GPT 的脚本,以及用于零样本和微调下游任务的脚本,包括 MNLI、RACE、WikiText103 和 LAMBADA 评估。还有一个用于 GPT 交互式文本生成的脚本。

Training

BERT Pretraining

GPT Pretraining

T5 Pretraining

Distributed Pretraining

Activation Checkpointing and Recomputation

Distributed Optimizer

FlashAttention

GPT-3 Example

Retro and InstructRetro

Mamba-based Language Models

Mixture of Experts

Evaluation and Tasks

GPT Text Generation

GPT Evaluation

LAMBADA Cloze Accuracy

BERT Task Evaluation (BERT模型评估)

RACE Evaluation

MNLI Evaluation

Llama-2 Inference and Finetuning

Model Optimization and Deployment

Quantization and TensorRT-LLM Deployment

Datasets

Reproducibility

Checkpoint conversion

Model class conversion

Checkpoint format conversion

Projects Using Megatron

Below are some of the projects where we have directly used Megatron:

Logo

GitCode 天启AI是一款由 GitCode 团队打造的智能助手,基于先进的LLM(大语言模型)与多智能体 Agent 技术构建,致力于为用户提供高效、智能、多模态的创作与开发支持。它不仅支持自然语言对话,还具备处理文件、生成 PPT、撰写分析报告、开发 Web 应用等多项能力,真正做到“一句话,让 Al帮你完成复杂任务”。

更多推荐