モデル概要
モデル特徴
モデル能力
使用事例
🚀 NVIDIA AceReason - Nemotron - 1.1 - 7Bの量子化モデル
本プロジェクトは、NVIDIAのAceReason - Nemotron - 1.1 - 7Bモデルを量子化処理することで、様々なハードウェアでのモデルの実行効率を最適化し、一定の性能と品質を維持することを目的としています。
🚀 クイックスタート
実行環境
プロンプト形式
<|im_start|>system
{system_prompt}<|im_end|>
<|im_start|>user
{prompt}<|im_end|>
<|im_start|>assistant
✨ 主な機能
- 複数の量子化タイプ:bf16、Q8_0、Q6_K_Lなど、様々な量子化タイプを提供し、さまざまな性能と品質の要件を満たします。
- オンライン再パッケージ化:一部の量子化タイプはオンライン再パッケージ化機能をサポートし、自動的にハードウェア性能を最適化できます。
- 性能向上:量子化処理により、一定の品質を維持しながら、モデルファイルのサイズを大幅に削減し、実行効率を向上させます。
📦 インストール
huggingface - cliのインストール
pip install -U "huggingface_hub[cli]"
指定ファイルのダウンロード
huggingface-cli download bartowski/nvidia_AceReason-Nemotron-1.1-7B-GGUF --include "nvidia_AceReason-Nemotron-1.1-7B-Q4_K_M.gguf" --local-dir ./
分割ファイルのダウンロード
モデルが50GBを超える場合、複数のファイルに分割されています。以下のコマンドを使用してローカルフォルダにダウンロードできます。
huggingface-cli download bartowski/nvidia_AceReason-Nemotron-1.1-7B-GGUF --include "nvidia_AceReason-Nemotron-1.1-7B-Q8_0/*" --local-dir ./
💻 使用例
適切な量子化ファイルの選択
自身のハードウェア構成と要件に応じて、適切な量子化ファイルを選択してダウンロードし、使用してください。具体的な選択の提案は以下の通りです。
詳細を表示するにはクリック
まず、実行できるモデルのサイズを決定します。これには、所有しているRAMと/またはVRAMの容量を把握する必要があります。
- 最高速度を追求する場合:モデルをできるだけ高速に実行する場合は、GPUの総VRAMよりも1 - 2GB小さいサイズの量子化ファイルを選択し、モデル全体をGPUのVRAMに格納します。
- 最高品質を追求する場合:絶対的な最高品質を追求する場合は、システムRAMとGPUのVRAMを合計し、その合計よりも1 - 2GB小さいサイズの量子化ファイルを選択します。
次に、'I - 量子化' または 'K - 量子化' を使用するかを決定する必要があります。
- あまり考えたくない場合:K - 量子化を選択します。形式は 'QX_K_X' で、例えばQ5_K_Mです。
- 詳細に調べる場合:[llama.cpp 機能マトリックス](https://github.com/ggerganov/llama.cpp/wiki/Feature - matrix) を参照できます。一般的に、目標の量子化レベルがQ4未満で、cuBLAS(NVIDIA)またはrocBLAS(AMD)を使用する場合は、I - 量子化を検討します。形式はIQX_Xで、例えばIQ3_Mです。I - 量子化は比較的新しく、同じサイズでは性能が優れていますが、CPUでの実行はK - 量子化よりも遅く、速度と性能のトレードオフが必要です。
📚 ドキュメント
量子化情報
属性 | 詳細 |
---|---|
量子化ツール | llama.cpp のリリースバージョン b5674 を使用して量子化しました。 |
オリジナルモデル | nvidia/AceReason - Nemotron - 1.1 - 7B |
キャリブレーションデータセット | すべての量子化には、imatrixオプションと ここ のデータセットを使用しました。 |
ダウンロードファイルリスト
ファイル名 | 量子化タイプ | ファイルサイズ | 分割状況 | 説明 |
---|---|---|---|---|
AceReason - Nemotron - 1.1 - 7B - bf16.gguf | bf16 | 15.24GB | false | 完全なBF16ウェイト。 |
AceReason - Nemotron - 1.1 - 7B - Q8_0.gguf | Q8_0 | 8.10GB | false | 非常に高品質で、通常は必要ありませんが、最大利用可能な量子化です。 |
AceReason - Nemotron - 1.1 - 7B - Q6_K_L.gguf | Q6_K_L | 6.52GB | false | 埋め込みと出力ウェイトにQ8_0を使用します。非常に高品質で、ほぼ完璧で、おすすめ。 |
AceReason - Nemotron - 1.1 - 7B - Q6_K.gguf | Q6_K | 6.25GB | false | 非常に高品質で、ほぼ完璧で、おすすめ。 |
AceReason - Nemotron - 1.1 - 7B - Q5_K_L.gguf | Q5_K_L | 5.78GB | false | 埋め込みと出力ウェイトにQ8_0を使用します。高品質で、おすすめ。 |
AceReason - Nemotron - 1.1 - 7B - Q5_K_M.gguf | Q5_K_M | 5.44GB | false | 高品質で、おすすめ。 |
AceReason - Nemotron - 1.1 - 7B - Q5_K_S.gguf | Q5_K_S | 5.32GB | false | 高品質で、おすすめ。 |
AceReason - Nemotron - 1.1 - 7B - Q4_K_L.gguf | Q4_K_L | 5.09GB | false | 埋め込みと出力ウェイトにQ8_0を使用します。良好な品質で、おすすめ。 |
AceReason - Nemotron - 1.1 - 7B - Q4_1.gguf | Q4_1 | 4.87GB | false | 旧形式で、Q4_K_Sと同様の性能ですが、Apple siliconでは1ワットあたりのトークン処理量が向上しています。 |
AceReason - Nemotron - 1.1 - 7B - Q4_K_M.gguf | Q4_K_M | 4.68GB | false | 良好な品質で、ほとんどのユースケースのデフォルトサイズで、おすすめ。 |
AceReason - Nemotron - 1.1 - 7B - Q3_K_XL.gguf | Q3_K_XL | 4.57GB | false | 埋め込みと出力ウェイトにQ8_0を使用します。品質は低いですが使用可能で、低RAMの場合に適しています。 |
AceReason - Nemotron - 1.1 - 7B - Q4_K_S.gguf | Q4_K_S | 4.46GB | false | 品質は少し低いですが、スペースを節約し、おすすめ。 |
AceReason - Nemotron - 1.1 - 7B - Q4_0.gguf | Q4_0 | 4.44GB | false | 旧形式で、ARMおよびAVX CPU推論のためのオンライン再パッケージ化をサポートしています。 |
AceReason - Nemotron - 1.1 - 7B - IQ4_NL.gguf | IQ4_NL | 4.44GB | false | IQ4_XSに似ていますが、少し大きいです。ARM CPU推論のためのオンライン再パッケージ化をサポートしています。 |
AceReason - Nemotron - 1.1 - 7B - IQ4_XS.gguf | IQ4_XS | 4.22GB | false | 品質は良好で、Q4_K_Sよりも小さく、性能は同様で、おすすめ。 |
AceReason - Nemotron - 1.1 - 7B - Q3_K_L.gguf | Q3_K_L | 4.09GB | false | 品質は低いですが使用可能で、低RAMの場合に適しています。 |
AceReason - Nemotron - 1.1 - 7B - Q3_K_M.gguf | Q3_K_M | 3.81GB | false | 低品質です。 |
AceReason - Nemotron - 1.1 - 7B - IQ3_M.gguf | IQ3_M | 3.57GB | false | 中低品質で、新しい方法で、Q3_K_Mと同等の性能です。 |
AceReason - Nemotron - 1.1 - 7B - Q2_K_L.gguf | Q2_K_L | 3.55GB | false | 埋め込みと出力ウェイトにQ8_0を使用します。品質は非常に低いですが、意外と使用可能です。 |
AceReason - Nemotron - 1.1 - 7B - Q3_K_S.gguf | Q3_K_S | 3.49GB | false | 低品質で、おすすめしません。 |
AceReason - Nemotron - 1.1 - 7B - IQ3_XS.gguf | IQ3_XS | 3.35GB | false | 品質は低いですが、新しい方法で、性能は良好で、Q3_K_Sよりも少し優れています。 |
AceReason - Nemotron - 1.1 - 7B - IQ3_XXS.gguf | IQ3_XXS | 3.11GB | false | 品質は低いですが、新しい方法で、性能は良好で、Q3量子化と同等です。 |
AceReason - Nemotron - 1.1 - 7B - Q2_K.gguf | Q2_K | 3.02GB | false | 品質は非常に低いですが、意外と使用可能です。 |
AceReason - Nemotron - 1.1 - 7B - IQ2_M.gguf | IQ2_M | 2.78GB | false | 品質は比較的低いですが、最先端の技術を使用しており、意外と使用可能です。 |
埋め込み/出力ウェイト
一部の量子化タイプ(Q3_K_XL、Q4_K_Lなど)は、標準的な量子化方法を採用し、埋め込みと出力ウェイトをデフォルト値ではなくQ8_0に量子化しています。
ARM/AVX情報
以前は、ARMおよびAVXマシンの性能を向上させるために、メモリ内でウェイトが交差配置されたQ4_0_4_4/4_8/8_8ファイルをダウンロードする必要がありました。現在は、「オンライン再パッケージ化」機能があり、詳細は このPR を参照してください。Q4_0を使用し、ハードウェアがウェイトの再パッケージ化から恩恵を受ける場合、自動的にリアルタイムで再パッケージ化されます。
llama.cppのビルドバージョン b4282 以降は、Q4_0_X_Xファイルを実行できなくなり、Q4_0を使用する必要があります。また、少し高い品質を得たい場合は、IQ4_NLを使用できます。詳細は このPR を参照してください。これもARM用にウェイトを再パッケージ化し、現在は4_4の場合のみサポートされています。ロード時間は長くなる可能性がありますが、全体的な速度は向上します。
(非推奨)Q4_0_X_X情報を表示するにはクリック
このセクションは、オンライン再パッケージ化をサポートするQ4_0を使用した場合の理論上の性能向上を示すために残されています。
AVX2システム(EPYC7702)でのベンチマークを表示するにはクリック
モデル | サイズ | パラメータ | バックエンド | スレッド数 | テストタイプ | 1秒あたりのトークン数 | Q4_0に対する相対パーセント |
---|---|---|---|---|---|---|---|
qwen2 3B Q4_0 | 1.70 GiB | 3.09 B | CPU | 64 | pp512 | 204.03 ± 1.03 | 100% |
qwen2 3B Q4_0 | 1.70 GiB | 3.09 B | CPU | 64 | pp1024 | 282.92 ± 0.19 | 100% |
qwen2 3B Q4_0 | 1.70 GiB | 3.09 B | CPU | 64 | pp2048 | 259.49 ± 0.44 | 100% |
qwen2 3B Q4_0 | 1.70 GiB | 3.09 B | CPU | 64 | tg128 | 39.12 ± 0.27 | 100% |
qwen2 3B Q4_0 | 1.70 GiB | 3.09 B | CPU | 64 | tg256 | 39.31 ± 0.69 | 100% |
qwen2 3B Q4_0 | 1.70 GiB | 3.09 B | CPU | 64 | tg512 | 40.52 ± 0.03 | 100% |
qwen2 3B Q4_K_M | 1.79 GiB | 3.09 B | CPU | 64 | pp512 | 301.02 ± 1.74 | 147% |
qwen2 3B Q4_K_M | 1.79 GiB | 3.09 B | CPU | 64 | pp1024 | 287.23 ± 0.20 | 101% |
qwen2 3B Q4_K_M | 1.79 GiB | 3.09 B | CPU | 64 | pp2048 | 262.77 ± 1.81 | 101% |
qwen2 3B Q4_K_M | 1.79 GiB | 3.09 B | CPU | 64 | tg128 | 18.80 ± 0.99 | 48% |
qwen2 3B Q4_K_M | 1.79 GiB | 3.09 B | CPU | 64 | tg256 | 24.46 ± 3.04 | 83% |
qwen2 3B Q4_K_M | 1.79 GiB | 3.09 B | CPU | 64 | tg512 | 36.32 ± 3.59 | 90% |
qwen2 3B Q4_0_8_8 | 1.69 GiB | 3.09 B | CPU | 64 | pp512 | 271.71 ± 3.53 | 133% |
qwen2 3B Q4_0_8_8 | 1.69 GiB | 3.09 B | CPU | 64 | pp1024 | 279.86 ± 45.63 | 100% |
qwen2 3B Q4_0_8_8 | 1.69 GiB | 3.09 B | CPU | 64 | pp2048 | 320.77 ± 5.00 | 124% |
qwen2 3B Q4_0_8_8 | 1.69 GiB | 3.09 B | CPU | 64 | tg128 | 43.51 ± 0.05 | 111% |
qwen2 3B Q4_0_8_8 | 1.69 GiB | 3.09 B | CPU | 64 | tg256 | 43.35 ± 0.09 | 110% |
qwen2 3B Q4_0_8_8 | 1.69 GiB | 3.09 B | CPU | 64 | tg512 | 42.60 ± 0.31 | 105% |
Q4_0_8_8は、プロンプト処理において大幅な向上が見られ、テキスト生成においても小幅な向上が見られます。
🔧 技術詳細
本プロジェクトでは、llama.cppの特定のバージョン(b5674)を使用して量子化処理を行い、imatrixオプションと指定されたキャリブレーションデータセットを利用することで、量子化の正確性と有効性を確保しています。また、オンライン再パッケージ化技術を導入することで、ARMおよびAVXマシン上の性能を最適化しています。
📄 ライセンス
本プロジェクトは [NVIDIA オープンモデルライセンス](https://www.nvidia.com/en - us/agreements/enterprise - software/nvidia - open - model - license/) を使用しています。
謝辞
kalomazeとDampfがimatrixキャリブレーションデータセットの作成に協力してくれたことに感謝します。 ZeroWwが埋め込み/出力実験にインスピレーションを与えてくれたことに感謝します。 LM Studioが本プロジェクトを支援してくれたことに感謝します。
あなたが私の仕事をサポートしたい場合は、私のko - fiページにアクセスしてください:[https://ko - fi.com/bartowski](https://ko - fi.com/bartowski)



