重要提示

您正在查看 NeMo 2.0 文档。此版本对 API 和新的库 NeMo Run 进行了重大更改。我们目前正在将 NeMo 1.0 的所有功能移植到 2.0。有关先前版本或 2.0 中尚不可用的功能的文档,请参阅 NeMo 24.07 文档

部署 NeMo 大型语言模型#

NeMo 框架提供脚本和 API,用于将 NeMo LLM 部署到 NVIDIA Triton 推理服务器。您可以选择将 NeMo LLM 导出到 TensorRT-LLM 或 vLLM 以进行优化的推理,然后再部署到推理服务器。请注意,此优化的部署路径仅支持选定的 LLM 模型。

您可以在下面找到有关如何部署推理优化模型和 PyTorch 级别模型(框架内)、如何应用量化以及如何向已部署模型发送查询的详细信息。

支持的 NeMo 检查点格式#

NeMo 框架将模型保存为 nemo 文件,其中包括与模型相关的数据,例如权重和配置文件。这些 .nemo 文件的格式随时间演变。该框架支持使用分布式检查点格式部署基于 Megatron Core 的 NeMo 模型。如果您使用最新的 NeMo 框架容器之一保存了模型,则不应遇到任何问题。否则,您可能会收到有关 .nemo 文件格式的错误消息。

NeMo 检查点可以是 nemoqnemo 类型。部署支持这两种文件类型。

.nemo 检查点包含具有默认精度的模型权重。它由 YAML 配置文件、模型权重文件夹和分词器(如果在线不可用)组成。模型以这种格式训练和存储,权重值为 FP16 或 BF16 精度。此外,对于使用 NVIDIA Transformer Engine 以 FP8 精度训练的 .nemo 模型,可以直接将其导出到支持 FP8 的推理框架。此类模型已经带有用于低精度 GEMM 的缩放因子,并且不需要任何额外的校准。

qnemo 检查点包含量化的权重和缩放因子。它遵循 TensorRT-LLM 检查点格式 <https://nvidia.github.io/TensorRT-LLM/architecture/checkpoint.html>`_ 并添加了分词器。它源自相应的 nemo 模型。有关如何生成 qnemo 检查点的详细信息,请参阅 量化 手册。

支持的 GPU#

TensorRT-LLM 支持基于 NVIDIA Hopper、Ada Lovelace、Ampere、Turing 和 Volta 架构的 NVIDIA DGX H100 和 NVIDIA H100 GPU。某些专门的部署路径(例如 FP8 量化模型)需要具有 FP8 数据类型支持的硬件,例如 NVIDIA H100 GPU。

下载 Nemotron NeMo 检查点#

Nemotron LLM 是一个具有 80 亿参数的基础模型。它支持自定义,包括参数高效微调和用于领域自适应 LLM 的持续预训练。所有 LLM 部署示例都将使用 Nemotron LLM。请按照以下步骤下载 Nemotron NeMo 检查点。

  1. 从以下链接下载 nemotron-3-8b-base-4k 模型

    http://hugging-face.cn/nvidia/nemotron-3-8b-base-4k

    请在文件和版本选项卡上找到 Nemotron-3-8B-Base-4k.nemo 文件。或者,您可以使用以下链接,

    https://developer.nvidia.com/nemotron-3-8b

  2. 如果您使用第二个链接,请填写申请表以获取模型的访问权限。

    批准电子邮件将发送给您,并附带说明。

  3. 按照说明从 NVIDIA GPU Cloud (NGC) 注册表下载 Nemotron 检查点文件。