🚀 Nemotron-Mini-4B-Instruct
Nemotron-Mini-4B-Instruct 是一個用於角色扮演、檢索增強生成和函數調用的模型。它是一個小型語言模型,經過蒸餾、剪枝和量化優化,以實現更快的速度和設備端部署。
🚀 快速開始
你可以在 build.nvidia.com 上嘗試這個模型。若想了解該模型如何用於 NVIDIA ACE,請參考 這篇博客文章 和 這個演示視頻,它們展示瞭如何將模型集成到視頻遊戲中。你可以從 這裡 下載適用於 NVIDIA AI 推理管理器 (AIM) SDK 的模型檢查點。
✨ 主要特性
- 多功能用途:可用於角色扮演、檢索增強生成和函數調用。
- 優化部署:通過蒸餾、剪枝和量化進行優化,適合設備端部署。
- 上下文長度支持:支持 4096 個標記的上下文長度。
- 商業可用:該模型可用於商業用途。
📦 安裝指南
此部分文檔未提供具體安裝步驟,故跳過。
💻 使用示例
基礎用法
from transformers import AutoTokenizer, AutoModelForCausalLM
tokenizer = AutoTokenizer.from_pretrained("nvidia/Nemotron-Mini-4B-Instruct")
model = AutoModelForCausalLM.from_pretrained("nvidia/Nemotron-Mini-4B-Instruct")
messages = [
{
"role": "system",
"content": "You are a friendly chatbot who always responds in the style of a pirate",
},
{"role": "user", "content": "How many helicopters can a human eat in one sitting?"},
]
tokenized_chat = tokenizer.apply_chat_template(messages, tokenize=True, add_generation_prompt=True, return_tensors="pt")
outputs = model.generate(tokenized_chat, max_new_tokens=128)
print(tokenizer.decode(outputs[0]))
高級用法
from transformers import AutoTokenizer
from transformers import pipeline
tokenizer = AutoTokenizer.from_pretrained("nvidia/Nemotron-Mini-4B-Instruct")
messages = [
{"role": "user", "content": "Who are you?"},
]
pipe = pipeline("text-generation", model="nvidia/Nemotron-Mini-4B-Instruct")
pipe.tokenizer = tokenizer
pipe(messages)
📚 詳細文檔
模型概述
Nemotron-Mini-4B-Instruct 是一個小型語言模型(SLM),通過蒸餾、剪枝和量化進行優化,以實現速度和設備端部署。它是 nvidia/Minitron-4B-Base 的微調版本,而 nvidia/Minitron-4B-Base 是使用 我們的大語言模型壓縮技術 從 Nemotron-4 15B 中剪枝和蒸餾而來。這個指令模型針對英語中的角色扮演、檢索增強生成(RAG)問答和函數調用進行了優化,支持 4096 個標記的上下文長度,並且可用於商業用途。
模型開發者
NVIDIA
模型日期
Nemotron-Mini-4B-Instruct 於 2024 年 2 月至 2024 年 8 月期間進行訓練。
許可證
NVIDIA 社區模型許可證
模型架構
- 架構類型:Transformer 解碼器(自迴歸語言模型)
- 網絡架構:Nemotron-4
- 模型參數:使用 3072 的模型嵌入大小、32 個注意力頭和 9216 的多層感知機(MLP)中間維度。還使用了分組查詢注意力(GQA)和旋轉位置嵌入(RoPE)。
提示格式
建議使用以下提示模板,該模板用於微調模型。如果不使用該模板,模型可能無法達到最佳性能。
單輪對話
<extra_id_0>System
{system prompt}
<extra_id_1>User
{prompt}
<extra_id_1>Assistant\n
工具使用
<extra_id_0>System
{system prompt}
<tool> ... </tool>
<context> ... </context>
<extra_id_1>User
{prompt}
<extra_id_1>Assistant
<toolcall> ... </toolcall>
<extra_id_1>Tool
{tool response}
<extra_id_1>Assistant\n
🔧 技術細節
人工智能安全措施
Nemotron-Mini-4B-Instruct 模型經過了人工智能安全評估,包括通過三種不同方法進行的對抗性測試:
- Garak:一種自動化的大語言模型漏洞掃描器,用於探測常見弱點,包括提示注入和數據洩露。
- AEGIS:一個內容安全評估數據集和基於大語言模型的內容安全分類器模型,遵循人類與大語言模型交互中 13 類關鍵風險的廣泛分類法。
- 人工內容紅隊:利用人類對模型響應的交互和評估。
侷限性
該模型在最初從互聯網抓取的包含有毒語言和社會偏見的數據上進行訓練。因此,模型可能會放大這些偏見並返回有毒響應,特別是當使用有毒提示時。即使提示本身不包含任何明確的冒犯性內容,模型也可能生成不準確的答案、遺漏關鍵信息或包含無關或冗餘的文本,從而產生社會不可接受或不良的文本。如果不使用推薦的提示模板,這個問題可能會更加嚴重。
倫理考量
NVIDIA 認為可信人工智能是一項共同責任,我們已經制定了政策和實踐,以支持廣泛的人工智能應用開發。當按照我們的服務條款下載或使用該模型時,開發者應與內部模型團隊合作,確保該模型滿足相關行業和用例的要求,並解決不可預見的產品濫用問題。有關該模型倫理考量的更多詳細信息,請參閱 模型卡片++。請 在此 報告安全漏洞或 NVIDIA 人工智能相關問題。
📄 許可證
該模型使用 NVIDIA 社區模型許可證。
信息表格
屬性 |
詳情 |
模型類型 |
Transformer 解碼器(自迴歸語言模型) |
訓練數據 |
最初從互聯網抓取的數據,包含有毒語言和社會偏見 |
模型開發者 |
NVIDIA |
模型日期 |
2024 年 2 月至 2024 年 8 月 |
許可證 |
NVIDIA 社區模型許可證 |
常用提示信息
⚠️ 重要提示
該模型在包含有毒語言和社會偏見的數據上進行訓練,可能會放大這些偏見並返回有毒響應,特別是當使用有毒提示時。建議使用推薦的提示模板,以避免產生不準確或不良的文本。
💡 使用建議
在使用該模型時,請與內部模型團隊合作,確保模型滿足相關行業和用例的要求,並解決不可預見的產品濫用問題。同時,請遵循 NVIDIA 的服務條款和倫理考量。