模型简介
模型特点
模型能力
使用案例
🚀 Llama-3.1-Nemotron-Nano-8B-v1 GGUF模型
Llama-3.1-Nemotron-Nano-8B-v1是一款大语言模型,它基于Meta Llama-3.1-8B-Instruct进行了优化,在推理能力、对话交互等方面表现出色,适用于多种自然语言处理任务,同时在不同硬件条件下都有较好的适配性。
🚀 快速开始
你可以通过预览API试用该模型,点击此链接:Llama-3.1-Nemotron-Nano-8B-v1。
使用Hugging Face Transformers库时,推理模式(开启/关闭)通过系统提示控制。以下是使用示例,我们的代码要求transformers包版本为4.44.2
或更高。
示例:“推理开启”
import torch
import transformers
model_id = "nvidia/Llama-3.1-Nemotron-Nano-8B-v1"
model_kwargs = {"torch_dtype": torch.bfloat16, "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 = "开启"
print(pipeline([{"role": "系统", "content": f"详细推理 {thinking}"}, {"role": "用户", "content": "求解 x*(sin(x)+2)=0"}]))
示例:“推理关闭”
import torch
import transformers
model_id = "nvidia/Llama-3.1-Nemotron-Nano-8B-v1"
model_kwargs = {"torch_dtype": torch.bfloat16, "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 = "关闭"
print(pipeline([{"role": "系统", "content": f"详细推理 {thinking}"}, {"role": "用户", "content": "求解 x*(sin(x)+2)=0"}]))
示例:防止推理
import torch
import transformers
model_id = "nvidia/Llama-3.1-Nemotron-Nano-8B-v1"
model_kwargs = {"torch_dtype": torch.bfloat16, "device_map": "auto"}
tokenizer = transformers.AutoTokenizer.from_pretrained(model_id)
tokenizer.pad_token_id = tokenizer.eos_token_id
# 推理可以是 "开启" 或 "关闭"
thinking = "关闭"
pipeline = transformers.pipeline(
"text-generation",
model=model_id,
tokenizer=tokenizer,
max_new_tokens=32768,
do_sample=False,
**model_kwargs
)
print(pipeline([{"role": "系统", "content": f"详细推理 {thinking}"}, {"role": "用户", "content": "求解 x*(sin(x)+2)=0"}, {"role":"助手", "content":"<思考>\n</思考>"}]))
✨ 主要特性
- 多阶段训练:经过多阶段的后训练过程,增强了推理和非推理能力,包括监督微调阶段和多次强化学习阶段。
- 量化优势:采用最新的量化方法,在超低比特模型(1 - 2比特)中引入了精度自适应量化,在保持极端内存效率的同时保留了准确性。
- 多语言支持:支持英语和多种编码语言,同时也支持其他非英语语言,如德语、法语、意大利语、葡萄牙语、印地语、西班牙语和泰语。
- 灵活推理模式:推理模式(开启/关闭)可通过系统提示控制,满足不同场景需求。
- 高兼容性:适用于多种硬件,如NVIDIA Hopper、NVIDIA Ampere架构的GPU,并且在不同量化格式下能适配不同内存和性能要求的设备。
📦 安装指南
文档未提及具体安装步骤,可参考相关依赖库(如transformers)的官方安装说明进行安装。
💻 使用示例
基础用法
import torch
import transformers
model_id = "nvidia/Llama-3.1-Nemotron-Nano-8B-v1"
model_kwargs = {"torch_dtype": torch.bfloat16, "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 = "开启"
print(pipeline([{"role": "系统", "content": f"详细推理 {thinking}"}, {"role": "用户", "content": "求解 x*(sin(x)+2)=0"}]))
高级用法
# 可以根据不同的推理模式和任务需求,调整参数和输入格式
# 例如,在推理关闭模式下使用贪心解码
import torch
import transformers
model_id = "nvidia/Llama-3.1-Nemotron-Nano-8B-v1"
model_kwargs = {"torch_dtype": torch.bfloat16, "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 = "关闭"
print(pipeline([{"role": "系统", "content": f"详细推理 {thinking}"}, {"role": "用户", "content": "求解 x*(sin(x)+2)=0"}]))
📚 详细文档
模型生成细节
该模型使用 llama.cpp 在提交版本 19e899c
时生成。
超低比特量化
我们最新的量化方法为超低比特模型(1 - 2比特)引入了精度自适应量化,并在 Llama-3-8B 上通过基准测试证明了其改进效果。这种方法采用特定层策略,在保持极端内存效率的同时保留了准确性。
基准测试环境
所有测试均在 Llama-3-8B-Instruct 上进行,使用标准困惑度评估管道、2048 令牌上下文窗口,并在所有量化中使用相同的提示集。
方法
- 动态精度分配:
- 前/后 25% 的层 → IQ4_XS(选定层)
- 中间 50% → IQ2_XXS/IQ3_S(提高效率)
- 关键组件保护:
- 嵌入层/输出层使用 Q5_K
- 与标准 1 - 2 比特量化相比,误差传播降低 38%
量化性能比较(Llama-3-8B)
量化方式 | 标准困惑度 | DynamicGate 困惑度 | 困惑度变化 | 标准大小 | DG 大小 | 大小变化 | 标准速度 | DG 速度 |
---|---|---|---|---|---|---|---|---|
IQ2_XXS | 11.30 | 9.84 | -12.9% | 2.5G | 2.6G | +0.1G | 234s | 246s |
IQ2_XS | 11.72 | 11.63 | -0.8% | 2.7G | 2.8G | +0.1G | 242s | 246s |
IQ2_S | 14.31 | 9.02 | -36.9% | 2.7G | 2.9G | +0.2G | 238s | 244s |
IQ1_M | 27.46 | 15.41 | -43.9% | 2.2G | 2.5G | +0.3G | 206s | 212s |
IQ1_S | 53.07 | 32.00 | -39.7% | 2.1G | 2.4G | +0.3G | 184s | 209s |
选择正确的模型格式
选择正确的模型格式取决于你的硬件能力和内存限制。
BF16(Brain Float 16)
- 适用于有 BF16 加速支持的硬件,是一种 16 位浮点格式,设计用于在保持良好精度的同时实现更快的计算。
- 与 FP32 具有相似的动态范围,但内存使用更低。
- 推荐用于需要高性能推理且希望减少内存占用的场景。
F16(Float 16)
- 比 BF16 更广泛支持,是一种 16 位浮点格式,精度较高,但取值范围小于 BF16。
- 适用于大多数支持 FP16 加速的设备,包括许多 GPU 和一些 CPU。
- 数值精度略低于 BF16,但通常足以用于推理。
量化模型(Q4_K, Q6_K, Q8 等)
- 量化可以在尽可能保持准确性的同时减小模型大小和内存使用。
- 低比特模型(如 Q4_K)适用于最小内存使用场景,但可能精度较低。
- 高比特模型(如 Q6_K, Q8_0)提供更好的准确性,但需要更多内存。
极低比特量化(IQ3_XS, IQ3_S, IQ3_M, Q4_K, Q4_0)
- 这些模型针对极端内存效率进行了优化,适用于低功耗设备或大规模部署场景,其中内存是关键限制因素。
模型格式选择总结表
模型格式 | 精度 | 内存使用 | 设备要求 | 最佳用例 |
---|---|---|---|---|
BF16 | 最高 | 高 | 支持 BF16 的 GPU/CPU | 高速推理且减少内存使用 |
F16 | 高 | 高 | 支持 FP16 的设备 | 当 BF16 不可用时的 GPU 推理 |
Q4_K | 中低 | 低 | CPU 或低 VRAM 设备 | 内存受限环境的最佳选择 |
Q6_K | 中 | 适中 | 内存较多的 CPU | 量化模型中准确性较好的选择 |
Q8_0 | 高 | 适中 | 有足够 VRAM 的 CPU 或 GPU | 量化模型中最佳准确性 |
IQ3_XS | 非常低 | 非常低 | 超低内存设备 | 极端内存效率和低准确性 |
Q4_0 | 低 | 低 | ARM 或低内存设备 | llama.cpp 可针对 ARM 设备进行优化 |
包含文件及详情
Llama-3.1-Nemotron-Nano-8B-v1-bf16.gguf
:模型权重保存为 BF16 格式,适用于需要重新量化模型的场景,以及支持 BF16 加速的设备。Llama-3.1-Nemotron-Nano-8B-v1-f16.gguf
:模型权重存储为 F16 格式,适用于支持 FP16 的设备,特别是当 BF16 不可用时。Llama-3.1-Nemotron-Nano-8B-v1-bf16-q8_0.gguf
:输出和嵌入层保持为 BF16 格式,其他层量化为 Q8_0,适用于支持 BF16 且需要量化版本的设备。Llama-3.1-Nemotron-Nano-8B-v1-f16-q8_0.gguf
:输出和嵌入层保持为 F16 格式,其他层量化为 Q8_0。Llama-3.1-Nemotron-Nano-8B-v1-q4_k.gguf
:输出和嵌入层量化为 Q8_0,其他层量化为 Q4_K,适用于内存有限的 CPU 推理。Llama-3.1-Nemotron-Nano-8B-v1-q4_k_s.gguf
:最小的 Q4_K 变体,以牺牲准确性为代价减少内存使用,适用于极低内存设置。Llama-3.1-Nemotron-Nano-8B-v1-q6_k.gguf
:输出和嵌入层量化为 Q8_0,其他层量化为 Q6_K。Llama-3.1-Nemotron-Nano-8B-v1-q8_0.gguf
:完全 Q8 量化的模型,提供更好的准确性,但需要更多内存。Llama-3.1-Nemotron-Nano-8B-v1-iq3_xs.gguf
:IQ3_XS 量化,针对极端内存效率进行优化,适用于超低内存设备。Llama-3.1-Nemotron-Nano-8B-v1-iq3_m.gguf
:IQ3_M 量化,提供中等块大小以提高准确性,适用于低内存设备。Llama-3.1-Nemotron-Nano-8B-v1-q4_0.gguf
:纯 Q4_0 量化,针对 ARM 设备进行优化,适用于低内存环境,建议使用 IQ4_NL 以获得更好的准确性。
测试相关
如果你觉得这些模型有用,请点击“点赞”!帮助测试 AI 网络监控助手,进行量子就绪安全检查。
测试方法
选择一种 AI 助手类型:
TurboLLM
(GPT-4o-mini)HugLLM
(Huggingface 开源)TestLLM
(仅支持 CPU 的实验性模型)
测试内容
推动小型开源模型在 AI 网络监控中的极限,具体包括:
- 针对实时网络服务的函数调用
- 模型在处理自动化 Nmap 扫描、量子就绪检查和网络监控任务时的最小规模
不同助手特点
- TestLLM:当前实验性模型(llama.cpp 在 2 个 CPU 线程上运行),零配置设置,加载时间 30 秒(推理慢但无 API 成本),寻求边缘设备 AI 方面的合作。
- TurboLLM:使用 gpt-4o-mini 进行自定义命令处理器创建、实时网络诊断和监控、安全审计和渗透测试等任务,可通过登录或下载集成 AI 助手的免费网络监控代理获取更多令牌。
- HugLLM:基于最新的开源模型,运行在 Hugging Face 推理 API 上。
测试命令示例
"提供我的网站 SSL 证书信息"
"检查我的服务器是否使用量子安全加密进行通信"
"对我的服务器进行全面安全审计"
"创建一个命令处理器来...(你想要的任何内容)"
注意:需要安装免费网络监控代理才能运行 .net 代码,这是一个非常灵活和强大的功能,请谨慎使用!
🔧 技术细节
模型架构
- 架构类型:密集解码器仅 Transformer 模型
- 网络架构:Llama 3.1 8B Instruct
输入输出
- 输入:文本,格式为字符串,一维输入,上下文长度可达 131,072 令牌。
- 输出:文本,格式为字符串,一维输出,上下文长度可达 131,072 令牌。
软件集成
- 运行时引擎:NeMo 24.12
- 推荐硬件微架构兼容性:NVIDIA Hopper、NVIDIA Ampere
训练数据集
使用了多种训练数据进行后训练管道,包括手动标注数据和合成数据。多阶段后训练阶段的数据是 SFT 和 RL 数据的汇编,支持提高原始 Llama 指令模型的数学、代码、一般推理和指令跟随能力。提示来自公共开放语料库或合成生成,响应由多种模型合成生成,部分提示包含推理开启和关闭模式的响应,以训练模型区分两种模式。
评估数据集
使用了多种数据集对模型进行评估,数据收集方式为混合(人工/合成),数据标注方式为混合(人工/合成/自动)。
评估结果
评估结果包含“推理开启”和“推理关闭”两种模式,建议在“推理开启”模式下使用温度 = 0.6
,top_p = 0.95
,在“推理关闭”模式下使用贪心解码。所有评估均使用 32k 序列长度,运行基准测试最多 16 次并取平均分数以提高准确性。
MT-Bench
推理模式 | 分数 |
---|---|
推理关闭 | 7.9 |
推理开启 | 8.1 |
MATH500
推理模式 | 通过率@1 |
---|---|
推理关闭 | 36.6% |
推理开启 | 95.4% |
用户提示模板:
"以下是一个数学问题。我希望你逐步推理,然后给出最终答案。最终答案应放在 \boxed{} 中。\n问题: {问题}"
AIME25
推理模式 | 通过率@1 |
---|---|
推理关闭 | 0% |
推理开启 | 47.1% |
用户提示模板:
"以下是一个数学问题。我希望你逐步推理,然后给出最终答案。最终答案应放在 \boxed{} 中。\n问题: {问题}"
GPQA-D
推理模式 | 通过率@1 |
---|---|
推理关闭 | 39.4% |
推理开启 | 54.1% |
用户提示模板:
"这个问题的正确答案是什么: {问题}\n选项:\nA. {选项 A}\nB. {选项 B}\nC. {选项 C}\nD. {选项 D}\n让我们逐步思考,并将最终答案(应为单个字母 A、B、C 或 D)放在 \boxed{} 中"
IFEval 平均
推理模式 | 严格:提示 | 严格:指令 |
---|---|---|
推理关闭 | 74.7% | 82.1% |
推理开启 | 71.9% | 79.3% |
BFCL v2 Live
推理模式 | 分数 |
---|---|
推理关闭 | 63.9% |
推理开启 | 63.6% |
用户提示模板:
<可用工具>{函数}</可用工具>
{用户提示}
MBPP 0-shot
推理模式 | 通过率@1 |
---|---|
推理关闭 | 66.1% |
推理开启 | 84.6% |
用户提示模板:
你是一个非常智能的编码助手,始终能准确可靠地响应用户指令。
@@ 指令
以下是给定的问题和测试示例:
{提示}
请使用 Python 编程语言解决此问题。
请确保你的代码包含测试样本中的函数,并且这些函数的输入和输出格式与测试样本匹配。
请将所有完成的代码放在一个代码块中。
此代码块应采用以下格式:
```python
# 你的代码在此处
## 📄 许可证
本模型受 [NVIDIA 开放模型许可证](https://www.nvidia.com/en-us/agreements/enterprise-software/nvidia-open-model-license/) 约束,更多信息请参考 [Llama 3.1 社区许可协议](https://www.llama.com/llama3_1/license/)。
## 引用
@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 Galinkin and Michael Evans and Katherine Luna and Leon Derczynski and Nikki Pope and Eileen Long and Seth Schneider and Guillermo Siman and Tomasz Grzegorzek and Pablo Ribalta and Monika Katariya and Joey Conway and Trisha Saar and Ann Guan and Krzysztof Pawelec and Shyamala Prayaga and Oleksii Kuchaiev and Boris Ginsburg and Oluwatobi Olabiyi and Kari Briski and Jonathan Cohen and Bryan Catanzaro and Jonah Alben and Yonatan Geifman and Eric Chung and Chris Alexiuk}, year={2025}, eprint={2505.00949}, archivePrefix={arXiv}, primaryClass={cs.CL}, url={https://arxiv.org/abs/2505.00949}, }
## 伦理考量
NVIDIA 认为可信 AI 是一项共同责任,并制定了相关政策和实践,以支持各种 AI 应用的开发。开发者在下载或使用该模型时,应与内部模型团队合作,确保该模型满足相关行业和用例的要求,并解决意外的产品滥用问题。有关该模型伦理考量的更多详细信息,请参阅模型卡片++的 [可解释性](explainability.md)、[偏差](bias.md)、[安全与保障](safety.md) 和 [隐私](privacy.md) 子卡片。请在此 [报告安全漏洞或 NVIDIA AI 相关问题](https://www.nvidia.com/en-us/support/submit-security-vulnerability/)。



