模型简介
模型特点
模型能力
使用案例
库名称:transformers
许可证:其他
许可证名称:NVIDIA开放模型许可证
许可证链接:https://www.nvidia.com/en-us/agreements/enterprise-software/nvidia-open-model-license/
任务类型:文本生成
支持语言:
- 英语
标签: - NVIDIA
- llama-3
- pytorch
Llama-3.1-Nemotron-Ultra-253B-v1
模型概述
Llama-3.1-Nemotron-Ultra-253B-v1 是一个基于 Meta Llama-3.1-405B-Instruct(即参考模型)衍生的大型语言模型(LLM)。该模型经过后训练,专注于推理能力、人类对话偏好以及任务执行(如RAG和工具调用),支持128K tokens的上下文长度,可在单台8xH100节点上进行推理。
本模型在准确率与效率之间实现了卓越平衡。通过创新的神经架构搜索(NAS)方法,我们显著降低了模型的内存占用,从而支持更大规模的工作负载,并减少了数据中心运行所需的GPU数量。这种NAS方法允许在准确率-效率权衡中选择理想的操作点。此外,通过垂直压缩模型的新方法(详见此处),模型在延迟方面也有显著改善。
模型经过多阶段后训练以增强其推理和非推理能力,包括针对数学、代码、推理、对话和工具调用的监督微调阶段,以及使用组相对策略优化(GRPO)算法进行的多轮强化学习(RL)阶段,涵盖推理、对话和指令遵循。
本模型已准备好投入商业使用。
本模型属于Llama Nemotron系列,其他家族成员包括:
许可证/使用条款
约束条款:本模型的使用受NVIDIA开放模型许可证约束。附加信息:Llama 3.1社区许可证协议。基于Llama构建。
模型开发者:NVIDIA
训练时间:2024年11月至2025年4月
数据时效性:预训练数据截止至2023年(与Llama-3.1-405B-Instruct一致)
适用场景:
适用于开发AI智能体系统、聊天机器人、RAG系统及其他AI驱动应用,也适合常规指令遵循任务。
发布日期:
2025年4月7日
参考文献
- [2505.00949] Llama-Nemotron: 高效推理模型
- [2502.00203] 奖励感知偏好优化:模型对齐的统一数学框架
- [2411.19146] Puzzle: 基于蒸馏的NAS实现推理优化LLM
- [2503.18908] FFN融合:重新思考大语言模型中的序列计算
模型架构
架构类型:稠密仅解码器Transformer
网络架构:基于Llama-3.1-405B-Instruct,通过神经架构搜索(NAS)定制
本模型基于Llama-3.1-405B-Instruct开发
参数量:2530亿
通过NAS算法生成的模块具有非标准和非重复特性,包括:
- 跳跃注意力:部分模块完全跳过注意力层或用单线性层替代
- 可变FFN:不同模块的FFN层扩展/压缩比不同
- FFN融合:当连续跳过多个注意力层时,将多个FFN序列融合为更少但更宽的FFN层
为每个参考模块创建多个变体以平衡质量与计算复杂度,通过搜索组合满足吞吐量和内存要求的同时最小化质量损失。为恢复性能,模型先经过650亿token的知识蒸馏(KD),再进行880亿token的持续预训练(CPT)。
预期用途
Llama-3.1-Nemotron-Ultra-253B-v1 是通用推理和对话模型,主要支持英语和编程语言,也支持其他非英语语言(德语、法语、意大利语、葡萄牙语、印地语、西班牙语和泰语)。
输入
- 输入类型:文本
- 输入格式:字符串
- 输入参数:一维(1D)
- 其他输入属性:支持最长131,072 tokens的上下文
输出
- 输出类型:文本
- 输出格式:字符串
- 输出参数:一维(1D)
- 其他输出属性:支持最长131,072 tokens的上下文
软件集成
- 运行时引擎:Transformers
- 推荐硬件架构兼容性:
- NVIDIA Hopper
- NVIDIA Ampere
- 首选操作系统:Linux
模型版本
1.0(2025年4月7日)
快速入门与使用建议
- 推理模式(开/关)通过系统提示控制,如下例所示。所有指令应包含在用户提示中
- 推理开启时建议设置温度
0.6
和Top P0.95
- 推理关闭时建议使用贪婪解码(温度0)
- 除控制提示外不建议添加额外系统提示,所有指令应置于用户查询中
- 我们为每个需要特定模板的基准测试提供了提示列表
- 在推理开启模式下,若无需推理,模型会返回
<think></think>
,此为预期行为
可通过预览API试用本模型:Llama-3_1-Nemotron-Ultra-253B-v1。
配合Transformers使用
以下代码片段展示与Hugging Face Transformers库的集成。推理模式通过系统提示控制,示例如下:
推荐使用transformers库版本4.48.3。
推理开启示例:
import torch
import transformers
model_id = "nvidia/Llama-3_1-Nemotron-Ultra-253B-v1"
model_kwargs = {"torch_dtype": torch.bfloat16, "trust_remote_code": True, "device_map": "auto"}
tokenizer = transformers.AutoTokenizer.from_pretrained(model_id)
tokenizer.pad_token_id = tokenizer.eos_token_id
pipeline = transformers.pipeline(
"text-generation",
model=model_id,
tokenizer=tokenizer,
max_new_tokens=32768,
temperature=0.6,
top_p=0.95,
**model_kwargs
)
thinking = "on"
print(pipeline([{"role": "system", "content": f"detailed thinking {thinking}"},{"role": "user", "content": "Solve x*(sin(x)+2)=0"}]))
推理关闭示例:
import torch
import transformers
model_id = "nvidia/Llama-3_1-Nemotron-ULtra-253B-v1"
model_kwargs = {"torch_dtype": torch.bfloat16, "trust_remote_code": True, "device_map": "auto"}
tokenizer = transformers.AutoTokenizer.from_pretrained(model_id)
tokenizer.pad_token_id = tokenizer.eos_token_id
pipeline = transformers.pipeline(
"text-generation",
model=model_id,
tokenizer=tokenizer,
max_new_tokens=32768,
do_sample=False,
**model_kwargs
)
thinking = "off"
print(pipeline([{"role": "system", "content": f"detailed thinking {thinking}"},{"role": "user", "content": "Solve x*(sin(x)+2)=0"}]))
配合vLLM使用
pip install vllm==0.8.3
服务启动示例:
python3 -m vllm.entrypoints.openai.api_server \
--model "nvidia/Llama-3_1-Nemotron-Ultra-253B-v1" \
--trust-remote-code \
--seed=1 \
--host="0.0.0.0" \
--port=5000 \
--served-model-name "nvidia/Llama-3_1-Nemotron-Ultra-253B-v1" \
--tensor-parallel-size=8 \
--max-model-len=32768 \
--gpu-memory-utilization 0.95 \
--enforce-eager
推理
引擎:
- Transformers
测试硬件:
- BF16:
- 8x NVIDIA H100-80GB
- 4x NVIDIA B100
- FP8:
- 4x NVIDIA H100-80GB
训练与评估数据集
训练数据集
知识蒸馏阶段使用了多种训练数据,包括FineWeb、Buzz-V1.2和Dolma等。后训练阶段的多轮数据包含SFT和RL数据,用于提升原始Llama指导模型在数学、代码、通用推理和指令遵循方面的能力。
提示词来源于公开语料库或合成生成,响应由多种模型合成生成,部分提示包含推理开启和关闭两种模式的响应以训练模型区分模式。本模型通过Qwen进行了改进。
我们发布了Llama-Nemotron-Post-Training-Dataset以促进模型开发的开放性和透明度。
训练数据收集方式:
- 混合:自动化、人工、合成
训练数据标注方式:
- 混合:自动化、人工、合成
评估数据集
我们使用以下列出的数据集评估Llama-3.1-Nemotron-Ultra-253B-v1。
评估数据收集方式:
- 混合:人工/合成
评估数据标注方式:
- 混合:人工/合成/自动
评估结果
结果包含推理开启和关闭模式。推理开启建议温度=0.6
、top_p=0.95
,推理关闭建议贪婪解码。所有评估使用32k序列长度,基准测试运行最多16次取平均值以提高准确性。
注意:适用时提供提示模板。完成基准测试时,请确保按给定提示解析正确输出格式以复现下方结果。
GPQA
推理模式 | pass@1 |
---|---|
关闭 | 56.60 |
开启 | 76.01 |
用户提示模板:
"问题正确答案是什么:{question}\n选项:\nA. {option_A}\nB. {option_B}\nC. {option_C}\nD. {option_D}\n逐步思考,最终答案(单个字母A/B/C/D)放入\boxed{}"
AIME25
推理模式 | pass@1 |
---|---|
关闭 | 16.67 |
开启 | 72.50 |
用户提示模板:
"以下是数学问题。请逐步推理并给出最终答案,答案放入\boxed{}。\n问题:{question}"
BFCL V2 Live
推理模式 | 得分 |
---|---|
关闭 | 73.62 |
开启 | 74.10 |
用户提示模板:
你是函数组合专家。给定问题和一组可能函数,根据问题需调用一个或多个函数/工具达成目的。若无适用函数需指出,若问题缺少函数所需参数也需指出。响应应仅包含工具调用部分。
若决定调用函数,必须使用格式:
<TOOLCALL>[func_name1(params_name1=params_value1, params_name2=params_value2...), func_name2(params)]</TOOLCALL>
响应中不应包含其他文本。
以下是可用函数列表(JSON格式):
<AVAILABLE_TOOLS>{functions}</AVAILABLE_TOOLS>
{user_prompt}
LiveCodeBench (20240801-20250201)
推理模式 | pass@1 |
---|---|
关闭 | 29.03 |
开启 | 66.31 |
用户提示模板(无初始代码):
"给定问题(需求说明),生成符合规范并通过所有测试的正确Python程序。
问题:{prompt}
从stdin读取输入,解决问题后将答案写入stdout(不要直接测试样例输入)。用以下分隔符包裹代码:
```python
# 你的代码 here
```
用户提示模板(含初始代码):
给定问题(需求说明),生成符合规范并通过所有测试的正确Python程序。
问题:{prompt}
使用以下初始代码编写解决方案,并用分隔符包裹:
```python
{starter_code}
```
IFEval
推理模式 | 严格指令遵循率 |
---|---|
关闭 | 88.85 |
开启 | 89.45 |
MATH500
推理模式 | pass@1 |
---|---|
关闭 | 80.40 |
开启 | 97.00 |
用户提示模板:
"以下是数学问题。请逐步推理并给出最终答案,答案放入\boxed{}。\n问题:{question}"
JudgeBench
推理模式 | 知识得分 | 推理得分 | 数学得分 | 编码得分 | 综合得分 |
---|---|---|---|---|---|
开启 | 70.13 | 81.63 | 89.29 | 92.86 | 79.14 |
伦理考量
NVIDIA认为可信AI是共同责任,我们已建立政策和实践以支持广泛AI应用开发。开发者下载或使用本模型时,应与其内部模型团队合作确保满足相关行业和用例要求,并防范意外产品滥用。
更详细的伦理考量请参阅Model Card++子卡:可解释性、偏见、安全与保障和隐私。
安全问题或NVIDIA AI相关疑虑请在此提交。
引用
@misc{bercovich2025llamanemotronefficientreasoningmodels,
title={Llama-Nemotron: Efficient Reasoning Models},
author={Akhiad Bercovich and Itay Levy and Izik Golan and Mohammad Dabbah and Ran El-Yaniv and Omri Puny and Ido Galil and Zach Moshe and Tomer Ronen and Najeeb Nabwani and Ido Shahaf and Oren Tropp and Ehud Karpas and Ran Zilberstein and Jiaqi Zeng and Soumye Singhal and Alexander Bukharin and Yian Zhang and Tugrul Konuk and Gerald Shen and Ameya Sunil Mahabaleshwarkar and Bilal Kartal and Yoshi Suhara and Olivier Delalleau and Zijia Chen and Zhilin Wang and David Mosallanezhad and Adi Renduchintala and Haifeng Qian and Dima Rekesh and Fei Jia and Somshubra Majumdar and Vahid Noroozi and Wasi Uddin Ahmad and Sean Narenthiran and Aleksander Ficek and Mehrzad Samadi and Jocelyn Huang and Siddhartha Jain and Igor Gitman and Ivan Moshkov and Wei Du and Shubham Toshniwal and George Armstrong and Branislav Kisacanin and Matvei Novikov and Daria Gitman and Evelina Bakhturina and Jane Polak Scowcroft and John Kamalu and Dan Su and Kezhi Kong and Markus Kliegl and Rabeeh Karimi and Ying Lin and Sanjeev Satheesh and Jupinder Parmar and Pritam Gundecha and Brandon Norick and Joseph Jennings and Shrimai Prabhumoye and Syeda Nahida Akter and Mostofa Patwary and Abhinav Khattar and Deepak Narayanan and Roger Waleffe and Jimmy Zhang and Bor-Yiing Su and Guyue Huang and Terry Kong and Parth Chadha and Sahil Jain and Christine Harvey and Elad Segal and Jining Huang and Sergey Kashirsky and Robert McQueen and Izzy Putterman and George Lam and Arun Venkatesan and Sherry Wu and Vinh Nguyen and Manoj Kilaru and Andrew Wang and Anna Warno and Abhilash Somasamudramath and Sandip Bhaskar and Maka Dong and Nave Assaf and Shahar Mor and Omer Ullman Argov and Scot Junkin and Oleksandr Romanenko and Pedro Larroy and Monika Katariya and Marco Rovinelli and Viji Balas and Nicholas Edelman and Anahita Bhiwandiwalla and Muthu Subramaniam and Smita Ithape and Karthik Ramamoorthy and Yuting Wu and Suguna Varshini Velury and Omri Almog and Joyjit Daw and Denys Fridman and Erick Galink


