🚀 Mistral-NeMo-Minitron-8B-Base
Mistral-NeMo-Minitron-8B-Base是一个基础的文本生成模型,可用于多种自然语言生成任务。它通过对Mistral-NeMo 12B进行剪枝和蒸馏得到,能有效处理各类文本任务,为自然语言处理提供强大支持。
🚀 快速开始
对该模型的支持将在即将发布的transformers
版本中添加。在此期间,请从源代码安装该库:
pip install git+https://github.com/huggingface/transformers
现在我们可以对这个模型进行推理:
import torch
from transformers import AutoTokenizer, AutoModelForCausalLM
model_path = "nvidia/Mistral-NeMo-Minitron-8B-Base"
tokenizer = AutoTokenizer.from_pretrained(model_path)
device = 'cuda'
dtype = torch.bfloat16
model = AutoModelForCausalLM.from_pretrained(model_path, torch_dtype=dtype, device_map=device)
prompt = 'Complete the paragraph: our solar system is'
inputs = tokenizer.encode(prompt, return_tensors='pt').to(model.device)
outputs = model.generate(inputs, max_length=20)
output_text = tokenizer.decode(outputs[0])
print(output_text)
✨ 主要特性
- 模型来源:通过对Mistral-NeMo 12B进行剪枝和蒸馏得到。
- 训练方式:剪枝后使用3800亿个标记进行蒸馏式持续训练。
- 适用任务:适用于多种自然语言生成任务。
📦 安装指南
对该模型的支持将在即将发布的transformers
版本中添加。在此期间,请从源代码安装该库:
pip install git+https://github.com/huggingface/transformers
💻 使用示例
基础用法
import torch
from transformers import AutoTokenizer, AutoModelForCausalLM
model_path = "nvidia/Mistral-NeMo-Minitron-8B-Base"
tokenizer = AutoTokenizer.from_pretrained(model_path)
device = 'cuda'
dtype = torch.bfloat16
model = AutoModelForCausalLM.from_pretrained(model_path, torch_dtype=dtype, device_map=device)
prompt = 'Complete the paragraph: our solar system is'
inputs = tokenizer.encode(prompt, return_tensors='pt').to(model.device)
outputs = model.generate(inputs, max_length=20)
output_text = tokenizer.decode(outputs[0])
print(output_text)
📚 详细文档
模型概述
Mistral-NeMo-Minitron-8B-Base是一个基础的文本到文本模型,可用于各种自然语言生成任务。它是一个大语言模型(LLM),通过对Mistral-NeMo 12B进行剪枝和蒸馏得到;具体来说,我们对模型中的嵌入维度和MLP中间维度进行了剪枝。剪枝后,我们使用3800亿个标记进行蒸馏式持续训练,以得到最终模型;为此,我们使用了Nemotron-4 15B中使用的连续预训练数据语料库。更多详细信息请参考我们的技术报告。
模型开发者:NVIDIA
模型日期:Mistral-NeMo-Minitron-8B-Base于2024年7月24日至2024年8月10日进行训练。
模型架构
Mistral-NeMo-Minitron-8B-Base使用的模型嵌入大小为4096,有32个注意力头,MLP中间维度为11520,总共40层。此外,它使用了分组查询注意力(GQA)和旋转位置嵌入(RoPE)。
属性 |
详情 |
架构类型 |
Transformer解码器(自回归语言模型) |
网络架构 |
Mistral-NeMo |
输入类型 |
文本 |
输入格式 |
字符串 |
输入参数 |
一维(1D) |
其他输入相关属性 |
在8000个字符以内效果良好 |
输出类型 |
文本 |
输出格式 |
字符串 |
输出参数 |
1D |
其他输出相关属性 |
无 |
软件集成
运行时引擎:
支持的硬件微架构兼容性:
- NVIDIA Ampere
- NVIDIA Blackwell
- NVIDIA Hopper
- NVIDIA Lovelace
操作系统:
数据集与训练
按数据集划分的数据收集方法:自动化
按数据集划分的标注方法:不适用
特性:
Mistral-NeMo-Minitron-8B-Base的训练语料库由英语和多语言文本以及代码组成。我们的数据源涵盖了各种文档类型,如网页、对话、文章和其他书面材料。语料库涵盖的领域包括法律、数学、科学、金融等。在我们的持续训练集中,我们引入了一小部分问答和对齐风格的数据,以提高模型性能。
数据时效性:
训练于2024年进行,预训练数据的截止日期为2023年6月。
评估结果
5次射击性能。使用大规模多任务语言理解评估语言理解能力:
零次射击性能。使用LM评估工具中的选定数据集进行评估,并添加了额外数据:
HellaSwag |
Winogrande |
GSM8K |
ARC挑战 |
XLSum |
83.0 |
80.4 |
58.5 |
64.4 |
32.0 |
代码生成性能。使用MBPP进行评估:
推理
引擎:TensorRT-LLM
测试硬件:NVIDIA A100
数据类型:BFloat16
局限性
该模型在包含有毒语言、不安全内容和社会偏见的数据上进行训练,这些数据最初是从互联网上爬取的。因此,该模型可能会放大这些偏见,并在受到有毒提示时返回有毒响应。即使提示本身不包含任何明确的冒犯性内容,该模型也可能生成不准确的答案,遗漏关键信息,或者包含无关或冗余的文本,从而产生社会不可接受或不受欢迎的文本。
伦理考虑
NVIDIA认为可信AI是一项共同责任,我们已经制定了政策和实践,以支持广泛的AI应用开发。当按照我们的服务条款下载或使用时,开发者应与他们的内部模型团队合作,确保该模型满足相关行业和用例的要求,并解决不可预见的产品滥用问题。
请在此报告安全漏洞或NVIDIA AI相关问题。
参考文献
📄 许可证
该模型根据NVIDIA开放模型许可协议发布。