模型概述
模型特點
模型能力
使用案例
🚀 AceMath-RL-Nemotron-7B GGUF 模型
AceMath-RL-Nemotron-7B 是一個完全通過強化學習(RL)訓練的數學推理模型,基於 Deepseek-R1-Distilled-Qwen-7B 進行訓練。該模型在多個數學推理任務中表現出色,同時在編碼任務上也有一定的泛化能力。
🚀 快速開始
你可以按照以下代碼示例使用該模型:
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer
model_name = 'nvidia/AceMath-RL-Nemotron-7B'
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(model_name, torch_dtype="auto", device_map="auto")
prompt = "Jen enters a lottery by picking $4$ distinct numbers from $S=\\{1,2,3,\\cdots,9,10\\}.$ $4$ numbers are randomly chosen from $S.$ She wins a prize if at least two of her numbers were $2$ of the randomly chosen numbers, and wins the grand prize if all four of her numbers were the randomly chosen numbers. The probability of her winning the grand prize given that she won a prize is $\\tfrac{m}{n}$ where $m$ and $n$ are relatively prime positive integers. Find $m+n$."
messages = [{"role": "user", "content": prompt}]
text = tokenizer.apply_chat_template(
messages,
tokenize=False,
add_generation_prompt=True
)
model_inputs = tokenizer([text], return_tensors="pt").to("cuda")
generated_ids = model.generate(
**model_inputs,
max_new_tokens=32768,
temperature=0.6,
top_p=0.95
)
generated_ids = [
output_ids[len(input_ids):] for input_ids, output_ids in zip(model_inputs.input_ids, generated_ids)
]
response = tokenizer.batch_decode(generated_ids, skip_special_tokens=True)[0]
✨ 主要特性
- 強化學習訓練:完全通過強化學習訓練,在數學推理任務中表現出色。
- 泛化能力強:在數學推理訓練的同時,提高了模型在編碼任務上的準確性。
- 多種量化格式:提供多種量化格式,以適應不同的硬件和內存需求。
📚 詳細文檔
模型生成細節
該模型使用 llama.cpp 在提交版本 19e899c
下生成。
超低比特量化(1 - 2 比特)
我們最新的量化方法為超低比特模型(1 - 2 比特)引入了精度自適應量化,在 Llama-3-8B 上的基準測試中證明了其有效性。該方法採用特定層策略,在保持極高內存效率的同時保留了準確性。
基準測試環境
所有測試均在 Llama-3-8B-Instruct 上進行,使用以下配置:
- 標準困惑度評估管道
- 2048 令牌上下文窗口
- 所有量化方法使用相同的提示集
方法
- 動態精度分配:
- 前 25% 和後 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 |
關鍵指標說明:
- PPL = 困惑度(越低越好)
- Δ PPL = 從標準量化到 DynamicGate 量化的困惑度變化百分比
- 速度 = 推理時間(CPU avx2,2048 令牌上下文)
- 大小差異反映了混合量化的開銷
主要改進:
- IQ1_M:困惑度大幅降低 43.9%(從 27.46 降至 15.41)
- IQ2_S:困惑度降低 36.9%,同時僅增加 0.2GB 大小
- IQ1_S:儘管是 1 比特量化,但準確性提高了 39.7%
權衡:
- 所有變體的大小增加適中(0.1 - 0.3GB)
- 推理速度相近(差異小於 5%)
使用場景
- 適配 GPU VRAM
- 內存受限的部署
- 可容忍 1 - 2 比特誤差的 CPU 和邊緣設備
- 超低比特量化研究
選擇合適的模型格式
選擇正確的模型格式取決於你的硬件能力和內存限制。
BF16(Brain Float 16) - 若支持 BF16 加速則使用
- 一種 16 位浮點格式,專為更快的計算而設計,同時保留了良好的精度。
- 提供與 FP32 相似的動態範圍,但內存使用更低。
- 若你的硬件支持 BF16 加速(檢查設備規格),建議使用。
- 與 FP32 相比,適用於高性能推理且內存佔用減少的場景。
適用情況:
- 你的硬件具有原生 BF16 支持(如較新的 GPU、TPU)。
- 你希望在節省內存的同時獲得更高的精度。
- 你計劃將模型重新量化為其他格式。
避免情況:
- 你的硬件不支持 BF16(可能會回退到 FP32 並運行較慢)。
- 你需要與缺乏 BF16 優化的舊設備兼容。
F16(Float 16) - 比 BF16 更廣泛支持
- 一種 16 位浮點格式,精度較高,但動態範圍小於 BF16。
- 適用於大多數支持 FP16 加速的設備(包括許多 GPU 和一些 CPU)。
- 數值精度略低於 BF16,但通常足以進行推理。
適用情況:
- 你的硬件支持 FP16 但不支持 BF16。
- 你需要在速度、內存使用和準確性之間取得平衡。
- 你在 GPU 或其他針對 FP16 計算優化的設備上運行。
避免情況:
- 你的設備缺乏原生 FP16 支持(可能運行比預期慢)。
- 你有內存限制。
量化模型(Q4_K、Q6_K、Q8 等) - 用於 CPU 和低 VRAM 推理
量化可以在儘可能保持準確性的同時減小模型大小和內存使用。
- 低比特模型(Q4_K):內存使用最小,但精度可能較低。
- 高比特模型(Q6_K、Q8_0):準確性更高,但需要更多內存。
適用情況:
- 你在 CPU 上進行推理,需要優化的模型。
- 你的設備 VRAM 較低,無法加載全精度模型。
- 你希望在保持合理準確性的同時減少內存佔用。
避免情況:
- 你需要最高的準確性(全精度模型更適合)。
- 你的硬件有足夠的 VRAM 用於更高精度的格式(BF16/F16)。
極低比特量化(IQ3_XS、IQ3_S、IQ3_M、Q4_K、Q4_0)
這些模型針對極致內存效率進行了優化,適用於低功耗設備或內存是關鍵限制因素的大規模部署。
- IQ3_XS:超低比特量化(3 比特),具有極致的內存效率。
- 使用場景:最適合超低內存設備,即使 Q4_K 也太大的情況。
- 權衡:與高比特量化相比,準確性較低。
- IQ3_S:小塊大小,以實現最大內存效率。
- 使用場景:最適合低內存設備,當 IQ3_XS 過於激進時。
- IQ3_M:中等塊大小,比 IQ3_S 具有更好的準確性。
- 使用場景:適用於低內存設備,當 IQ3_S 限制較大時。
- Q4_K:4 比特量化,具有塊級優化以提高準確性。
- 使用場景:最適合低內存設備,當 Q6_K 太大時。
- Q4_0:純 4 比特量化,針對 ARM 設備進行了優化。
- 使用場景:最適合基於 ARM 的設備或低內存環境。
模型格式選擇總結表
模型格式 | 精度 | 內存使用 | 設備要求 | 最佳使用場景 |
---|---|---|---|---|
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 設備進行優化 |
包含的文件及詳情
AceMath-RL-Nemotron-7B-bf16.gguf
- 模型權重保存為 BF16 格式。
- 如果你想將模型重新量化為其他格式,可使用此文件。
- 若你的設備支持 BF16 加速,此文件最佳。
AceMath-RL-Nemotron-7B-f16.gguf
- 模型權重存儲為 F16 格式。
- 若你的設備支持 FP16,尤其是 BF16 不可用時,可使用此文件。
AceMath-RL-Nemotron-7B-bf16-q8_0.gguf
- 輸出和嵌入層保持為 BF16 格式。
- 其他所有層量化為 Q8_0 格式。
- 若你的設備支持 BF16 且你需要量化版本,可使用此文件。
AceMath-RL-Nemotron-7B-f16-q8_0.gguf
- 輸出和嵌入層保持為 F16 格式。
- 其他所有層量化為 Q8_0 格式。
AceMath-RL-Nemotron-7B-q4_k.gguf
- 輸出和嵌入層量化為 Q8_0 格式。
- 其他所有層量化為 Q4_K 格式。
- 適用於內存有限的 CPU 推理。
AceMath-RL-Nemotron-7B-q4_k_s.gguf
- 最小的 Q4_K 變體,以犧牲準確性為代價減少內存使用。
- 最適合極低內存的設置。
AceMath-RL-Nemotron-7B-q6_k.gguf
- 輸出和嵌入層量化為 Q8_0 格式。
- 其他所有層量化為 Q6_K 格式。
AceMath-RL-Nemotron-7B-q8_0.gguf
- 完全 Q8 量化的模型,以獲得更好的準確性。
- 需要更多內存,但提供更高的精度。
AceMath-RL-Nemotron-7B-iq3_xs.gguf
- IQ3_XS 量化,針對極致內存效率進行了優化。
- 最適合超低內存設備。
AceMath-RL-Nemotron-7B-iq3_m.gguf
- IQ3_M 量化,提供中等塊大小以提高準確性。
- 適用於低內存設備。
AceMath-RL-Nemotron-7B-q4_0.gguf
- 純 Q4_0 量化,針對 ARM 設備進行了優化。
- 最適合低內存環境。
- 若需要更高準確性,建議使用 IQ4_NL。
測試模型
如果你發現這些模型有用,請點擊“點贊”!同時,幫助我們測試具有量子就緒安全檢查功能的 AI 網絡監控助手: 免費網絡監控
測試方法
選擇一種 AI 助手類型:
TurboLLM
(GPT-4o-mini)HugLLM
(Hugginface 開源模型)TestLLM
(僅支持 CPU 的實驗性模型)
測試內容
我們正在挑戰用於 AI 網絡監控的小型開源模型的極限,具體包括:
- 針對即時網絡服務的函數調用
- 模型規模最小化的同時仍能處理:
- 自動化 Nmap 掃描
- 量子就緒檢查
- 網絡監控任務
TestLLM - 當前實驗性模型(llama.cpp 在 2 個 CPU 線程上運行)
- 零配置設置
- 加載時間約 30 秒(推理速度慢,但無 API 成本)
- 尋求幫助! 如果你對邊緣設備 AI 感興趣,讓我們一起合作!
其他助手
- TurboLLM - 使用 gpt-4o-mini 進行:
- 在免費網絡監控代理上創建自定義 cmd 處理器以運行 .net 代碼
- 即時網絡診斷和監控
- 安全審計
- 滲透測試(Nmap/Metasploit)
- 通過登錄或下載集成 AI 助手的免費網絡監控代理獲取更多令牌
- HugLLM - 最新的開源模型:
- 在 Hugging Face 推理 API 上運行
示例測試命令
"Give me info on my websites SSL certificate"
"Check if my server is using quantum safe encyption for communication"
"Run a comprehensive security audit on my server"
- '"Create a cmd processor to .. (what ever you want)" 注意:你需要安裝免費網絡監控代理才能運行 .net 代碼。這是一個非常靈活和強大的功能,請謹慎使用!
結果
我們在 AIME 2024、AIME 2025 和 GPQA 上對我們的模型與同等規模的競爭推理模型進行了評估。
模型 | AIME 2024 (AVG@64) |
AIME 2025 (AVG@64) |
GPQA-Diamond (AVG@8) |
---|---|---|---|
DeepSeek-R1-Distill-Qwen-7B | 55.5 | 39.2 | 49.1 |
Light-R1-7B-DS | 59.1 | 44.3 | 49.4 |
AReaL-boba-RL-7B | 61.9 | 48.3 | 47.6 |
Llama-Nemotron-Nano-v1 (8B) | 63.8 | 47.1 | 54.1 |
Skywork-OR1-Math-7B-Preview | 69.8 | 52.3 | - |
AceMath-RL-Nemotron-7B | 69.0 | 53.6 | 52.1 |
此外,我們還在其他數學基準測試和 LiveCodeBench 上對我們的模型進行了更全面的評估。
模型 | GSM8K (AVG@1) |
MATH500 (AVG@4) |
Minerva Math (AVG@1) |
GaoKao2023En (AVG@1) |
Olympiad Bench (AVG@1) |
College Math (AVG@1) |
ACM23 (AVG@5) |
LiveCodeBench (AVG@8) |
---|---|---|---|---|---|---|---|---|
DeepSeek-R1-Distill-Qwen-7B | 92.7 | 92.8 | 57.4 | 82.3 | 58.2 | 56.7 | 89.0 | 37.6 |
AceMath-RL-Nemotron-7B | 93.3 | 94.1 | 56.6 | 85.5 | 66.7 | 59.8 | 94.0 | 44.4 |
💡 使用建議
- 不要包含系統提示,而是將所有指令直接放在用戶提示中。
- 我們建議對數學問題使用以下提示格式:
<開始句子><用戶>{數學問題}\n請逐步推理,並將最終答案放在 \boxed{} 內。<助手><思考>\n
🔧 技術細節
該模型基於 Deepseek-R1-Distilled-Qwen-7B 進行強化學習訓練。在訓練過程中,我們使用了特定的量化方法和策略,以提高模型的性能和效率。具體的訓練配方、訓練日誌和數據整理細節可在我們的 博客 中查看。
📄 許可證
你對該模型的使用受 NVIDIA 開放模型許可證 約束。
引用
@article{acemath2024,
title={AceMath: Advancing Frontier Math Reasoning with Post-Training and Reward Modeling},
author={Liu, Zihan and Chen, Yang and Shoeybi, Mohammad and Catanzaro, Bryan and Ping, Wei},
journal={arXiv preprint},
year={2024}
}
聯繫方式
- Yang Chen (yachen@nvidia.com)
- Zihan Liu (zihanl@nvidia.com)
- Chankyu Lee (chankyul@nvidia.com)
- Wei Ping (wping@nvidia.com)



