モデル概要
モデル特徴
モデル能力
使用事例
🚀 Nera_Noctis-12BのLlamacpp imatrix量子化
このプロジェクトでは、llama.cppのリリース b4404 を使用して、Nera_Noctis-12Bモデルの量子化を行っています。量子化に使用するデータセットはこちらから取得し、すべての量子化モデルはimatrixオプションを使用して作成されています。これらのモデルはLM Studioで実行できます。
元のモデル
- 元のモデルはこちらから確認できます。
✨ 主な機能
- 量子化: llama.cppを使用した高精度の量子化処理。
- 互換性: LM Studioでの実行が可能。
- 多様な量子化形式: 様々な量子化形式のモデルが用意されています。
📦 インストール
huggingface-cliを使用したダウンロード
まず、huggingface-cliがインストールされていることを確認してください。以下のコマンドでインストールできます。
pip install -U "huggingface_hub[cli]"
特定のファイルをダウンロードするには、以下のコマンドを使用します。
huggingface-cli download bartowski/Nera_Noctis-12B-GGUF --include "Nera_Noctis-12B-Q4_K_M.gguf" --local-dir ./
モデルが50GBを超える場合は、複数のファイルに分割されています。すべてのファイルをローカルフォルダにダウンロードするには、以下のコマンドを使用します。
huggingface-cli download bartowski/Nera_Noctis-12B-GGUF --include "Nera_Noctis-12B-Q8_0/*" --local-dir ./
新しいローカルディレクトリ(Nera_Noctis-12B-Q8_0)を指定するか、すべてのファイルを現在のディレクトリ(./)にダウンロードすることができます。
💻 使用例
プロンプトフォーマット
<|im_start|>system
{system_prompt}<|im_end|>
<|im_start|>user
{prompt}<|im_end|>
<|im_start|>assistant
📚 ドキュメント
ファイルのダウンロード
以下の表からファイル(ブランチ全体ではなく)をダウンロードできます。
ファイル名 | 量子化タイプ | ファイルサイズ | 分割 | 説明 |
---|---|---|---|---|
Nera_Noctis-12B-f16.gguf | f16 | 24.50GB | false | 完全なF16ウェイト。 |
Nera_Noctis-12B-Q8_0.gguf | Q8_0 | 13.02GB | false | 非常に高品質で、一般的には必要ありませんが、利用可能な最大の量子化。 |
Nera_Noctis-12B-Q6_K_L.gguf | Q6_K_L | 10.38GB | false | 埋め込みと出力ウェイトにQ8_0を使用。非常に高品質で、ほぼ完璧で、おすすめ。 |
Nera_Noctis-12B-Q6_K.gguf | Q6_K | 10.06GB | false | 非常に高品質で、ほぼ完璧で、おすすめ。 |
Nera_Noctis-12B-Q5_K_L.gguf | Q5_K_L | 9.14GB | false | 埋め込みと出力ウェイトにQ8_0を使用。高品質で、おすすめ。 |
Nera_Noctis-12B-Q5_K_M.gguf | Q5_K_M | 8.73GB | false | 高品質で、おすすめ。 |
Nera_Noctis-12B-Q5_K_S.gguf | Q5_K_S | 8.52GB | false | 高品質で、おすすめ。 |
Nera_Noctis-12B-Q4_K_L.gguf | Q4_K_L | 7.98GB | false | 埋め込みと出力ウェイトにQ8_0を使用。良い品質で、おすすめ。 |
Nera_Noctis-12B-Q4_1.gguf | Q4_1 | 7.80GB | false | レガシー形式で、Q4_K_Sと同様のパフォーマンスですが、Appleシリコンでのトークン/ワットが向上しています。 |
Nera_Noctis-12B-Q4_K_M.gguf | Q4_K_M | 7.48GB | false | 良い品質で、ほとんどのユースケースでのデフォルトサイズ、おすすめ。 |
Nera_Noctis-12B-Q3_K_XL.gguf | Q3_K_XL | 7.15GB | false | 埋め込みと出力ウェイトにQ8_0を使用。品質は低いですが使用可能で、低RAM環境に適しています。 |
Nera_Noctis-12B-Q4_K_S.gguf | Q4_K_S | 7.12GB | false | 品質がわずかに低いですが、より多くのスペースを節約でき、おすすめ。 |
Nera_Noctis-12B-IQ4_NL.gguf | IQ4_NL | 7.10GB | false | IQ4_XSに似ていますが、少し大きいです。ARM CPU推論用のオンライン再パッキングを提供します。 |
Nera_Noctis-12B-Q4_0.gguf | Q4_0 | 7.09GB | false | レガシー形式で、ARMおよびAVX CPU推論用のオンライン再パッキングを提供します。 |
Nera_Noctis-12B-IQ4_XS.gguf | IQ4_XS | 6.74GB | false | 適度な品質で、Q4_K_Sよりも小さく、同様のパフォーマンスで、おすすめ。 |
Nera_Noctis-12B-Q3_K_L.gguf | Q3_K_L | 6.56GB | false | 品質は低いですが使用可能で、低RAM環境に適しています。 |
Nera_Noctis-12B-Q3_K_M.gguf | Q3_K_M | 6.08GB | false | 低品質。 |
Nera_Noctis-12B-IQ3_M.gguf | IQ3_M | 5.72GB | false | 中低品質で、Q3_K_Mに匹敵する適度なパフォーマンスを持つ新しい方法。 |
Nera_Noctis-12B-Q3_K_S.gguf | Q3_K_S | 5.53GB | false | 低品質で、おすすめしません。 |
Nera_Noctis-12B-Q2_K_L.gguf | Q2_K_L | 5.45GB | false | 埋め込みと出力ウェイトにQ8_0を使用。非常に低品質ですが、意外と使用可能です。 |
Nera_Noctis-12B-IQ3_XS.gguf | IQ3_XS | 5.31GB | false | 低品質で、適度なパフォーマンスを持つ新しい方法で、Q3_K_Sよりも少し良いです。 |
Nera_Noctis-12B-Q2_K.gguf | Q2_K | 4.79GB | false | 非常に低品質ですが、意外と使用可能です。 |
Nera_Noctis-12B-IQ2_M.gguf | IQ2_M | 4.44GB | false | 比較的低品質ですが、SOTA技術を使用して意外と使用可能です。 |
Nera_Noctis-12B-IQ2_S.gguf | IQ2_S | 4.14GB | false | 低品質ですが、SOTA技術を使用して使用可能です。 |
Nera_Noctis-12B-IQ2_XS.gguf | IQ2_XS | 3.92GB | false | 低品質ですが、SOTA技術を使用して使用可能です。 |
埋め込み/出力ウェイト
一部の量子化(Q3_K_XL、Q4_K_Lなど)は、標準的な量子化方法で、埋め込みと出力ウェイトが通常のデフォルトではなくQ8_0に量子化されています。
ARM/AVX情報
以前は、Q4_0_4_4/4_8/8_8をダウンロードし、メモリ内でウェイトをインターリーブすることで、ARMおよびAVXマシンでのパフォーマンスを向上させていました。
しかし、現在では、ウェイトの「オンライン再パッキング」と呼ばれる機能があります。詳細はこのPRを参照してください。Q4_0を使用し、ハードウェアがウェイトの再パッキングによって恩恵を受ける場合、自動的に実行されます。
llama.cppビルド b4282 以降では、Q4_0_X_Xファイルを実行できなくなり、代わりにQ4_0を使用する必要があります。
さらに、このPRにより、ARM用にウェイトを再パッキングするIQ4_NLを使用することで、少し品質を向上させることができます。ただし、現在は4_4のみです。読み込み時間は長くなる可能性がありますが、全体的な速度が向上します。
どのファイルを選べばいいですか?
まず、実行できるモデルのサイズを決定する必要があります。これには、使用可能なRAMおよび/またはVRAMの量を確認する必要があります。
モデルをできるだけ高速に実行したい場合は、モデル全体をGPUのVRAMに収めることを目指してください。GPUの総VRAMよりも1 - 2GB小さいファイルサイズの量子化を選択してください。
最高の品質を求める場合は、システムRAMとGPUのVRAMを合計し、その合計よりも1 - 2GB小さいファイルサイズの量子化を選択してください。
次に、「I-quant」または「K-quant」を使用するかを決定する必要があります。
あまり考えたくない場合は、K-quantのいずれかを選択してください。これらは「QX_K_X」形式で、Q5_K_Mのようなものです。
もっと詳細に調べたい場合は、この非常に便利な機能チャートを確認できます。 llama.cpp feature matrix
基本的に、Q4以下を目指し、cuBLAS(Nvidia)またはrocBLAS(AMD)を使用している場合は、I-quantを検討する必要があります。これらはIQX_X形式で、IQ3_Mのようなものです。これらは新しく、サイズに対してより良いパフォーマンスを提供します。
これらのI-quantはCPUおよびApple Metalでも使用できますが、同等のK-quantよりも遅くなります。したがって、速度とパフォーマンスのトレードオフを決定する必要があります。
I-quantはVulcan(AMD)と互換性がありません。したがって、AMDカードを使用している場合は、rocBLASビルドまたはVulcanビルドを使用しているかを確認してください。この記事の執筆時点では、LM StudioにはROCmサポートのプレビューがあり、他の推論エンジンにはROCm用の特定のビルドがあります。
🔧 技術詳細
Q4_0_X_X情報(非推奨)
このセクションは、オンライン再パッキングを使用したQ4_0の潜在的な理論的なパフォーマンス向上を示すために残しています。
AVX2システム(EPYC7702)でのベンチマーク
モデル | サイズ | パラメータ | バックエンド | スレッド | テスト | トークン/秒 | % (vs 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は、プロンプト処理に大きな改善をもたらし、テキスト生成にも小幅な改善をもたらします。
📄 ライセンス
このプロジェクトのライセンスは「other」です。
クレジット
imatrixキャリブレーションデータセットの作成に協力してくれたkalomazeとDampfに感謝します。
埋め込み/出力の実験のインスピレーションを与えてくれたZeroWwに感謝します。
私の仕事をサポートしたい場合は、こちらのko-fiページを訪問してください:https://ko-fi.com/bartowski



