🦥Aider Polyglot 上の Unsloth Dynamic GGUF

Aider Polyglot ベンチマークにおける Unsloth Dynamic GGUF の性能

Unsloth Dynamic GGUFがどのようにして、のようなLLMを量子化できるかを紹介できることを嬉しく思います。 DeepSeek-V3.1 (671B)をわずか 1ビット または 3ビットにまで縮小し、それでもGPT-4.5やGPT-4.1のような最先端モデルを上回ることができることを示します。 GPT-4.5、GPT-4.1 (2025年4月)および Claude-4-Opus (2025年5月)。

以前に、 私たちは実証しました Unsloth Dynamic GGUFが、5ショットのMMLUやKLダイバージェンスで他の量子化手法を上回る方法を。今回は、独立した第三者評価での性能を、ベンチマークを用いて紹介します。 Aider Polyglot ベンチマーク。

Thinking Aider ベンチマーク
No Thinking Aider ベンチマーク

主な結果

  • (チャンクが少ない) 1ビット Unsloth Dynamic GGUFは DeepSeek-V3.1 を次のように縮小します: 671GB → 192GB(サイズ -75%) そしてノーシンキングモードは、GPT-4.1(2025年4月)、GPT-4.5、および DeepSeek-V3-0324 を大幅に上回ります。

  • 3ビット Unsloth DeepSeek-V3.1(Thinking)GGUF:Claude-4-Opus-20250514(Thinking)を上回ります。

  • 5ビット Unsloth DeepSeek-V3.1(非Thinking)GGUF:Claude-4-Opus-20250514(非Thinking)と同等の性能を示します。

  • Unsloth Dynamic GGUFは、他の非Unsloth Dynamicのimatrix GGUFよりも一貫して高い性能を発揮します

  • 他の非Unslothの1ビットおよび2ビットのDeepSeek-V3.1量子化や、選択的レイヤー量子化を伴わない標準的な1ビット量子化は、読み込みに失敗したり、意味不明でループする出力を生成したりしました。これは、Unsloth Dynamic GGUFが精度を大きく維持できる一方で、他の手法はそもそも機能しないことを強調しています。

なぜこの Aider Polyglotarrow-up-right ベンチマークなのか? Aiderは、LLMが文章を書く、コードを書く、指示に従う、そして人間の介入なしに変更を適用する能力を総合的に測る、最も包括的な指標の一つであり、実世界での利用にとって最も難しく価値の高いベンチマークの一つです。

circle-check

🦥Unsloth Dynamic 量子化

circle-check

2024年11月に、私たちの 4ビット Dynamicarrow-up-right 量子化は、QLoRAファインチューニングとモデル精度を選択的なレイヤー量子化によって大部分復元できることを示しました。 レイヤーを選択的に量子化するだけで。その後、私たちは DeepSeek-R1のアーキテクチャを研究し、同様の手法を適用しました。いくつかのレイヤーを1ビットまで下げ、重要なレイヤーをより高いビット(6、8ビット)に量子化しました。このアプローチは急速に人気を集め、特にMoEモデルに対して非常に有効であり、MoE量子化の事実上の標準となっています。

私たちのDynamic GGUFは、私たちの imatrix キャリブレーションデータセットと組み合わせるとさらに効果的です。これはチャットとコーディングの性能を目的に設計されています。これらすべてにより、品質を壊滅的に失うことなく極端なLLM圧縮が可能になりました。

例えばQwen2-VL-2B-Instructでは、すべてのレイヤーを単純に4ビットに量子化すると、下の画像を理解できなくなります。これは列車であって海岸の風景ではありません!

私たちはまた動的ベンチマークを以下で示しました: https://docs.unsloth.ai/basics/unsloth-dynamic-2.0-ggufsarrow-up-right Gemma 3とLlama 4 Scoutに関して、我々の手法がいかに効果的かを示しています:

⚙️ベンチマーク設定

DeepSeek-V3.1の実験では、異なるビット数の Unsloth Dynamic GGUF を次と比較しました:

  • フルプレシジョンの非量子化LLM (GPT 4.5、4.1、Claude-4-Opus、DeepSeek-V3-0324などを含む)

  • 他の ダイナミック imatrix V3.1 GGUF

  • セミ-ダイナミック (一部の選択的レイヤー量子化を含む)imatrix V3.1 GGUF をアブレーション目的で 使用しました。.

ベンチマーク実験は主に David Sluysarrow-up-right (neolithic5452、 Aider Discord にて)arrow-up-rightによって行われました。彼はAiderのPolyglot評価に信頼されるコミュニティ貢献者です。テストは約3回実行して中央値を平均し、慣例としてPass-2精度を報告しています。AiderのDiscordには再現可能なベンチマークコードスニペットがいくつかあります。

chevron-right推論モデルのAiderベンチマークを展開するhashtag
モデル
精度

GPT-5

86.7

Gemini 2.5 Pro(6月)

83.1

o3

76.9

DeepSeek V3.1

76.1

(3ビット)DeepSeek V3.1 Unsloth

75.6

Claude-4-Opus(5月)

72

o4-mini(High)

72

DeepSeek R1 0528

71.4

(2ビット)DeepSeek V3.1 Unsloth

66.7

Claude-3.7-Sonnet(2月)

64.9

(1ビット)DeepSeek V3.1 Unsloth

57.8

DeepSeek R1

56.9

chevron-right非推論モデルのAiderベンチマークを展開するhashtag
モデル
精度

DeepSeek V3.1

71.6

Claude-4-Opus(5月)

70.7

(5ビット)DeepSeek V3.1 Unsloth

70.7

(4ビット)DeepSeek V3.1 Unsloth

69.7

(3ビット)DeepSeek V3.1 Unsloth

68.4

(2ビット)DeepSeek V3.1 Unsloth

65.8

Qwen3 235B A22B

59.6

Kimi K2

59.1

(1ビット)DeepSeek V3.1 Unsloth

55.7

DeepSeek V3-0324

55.1

GPT-4.1(2025年4月)

52.4

ChatGPT 4o(2025年3月)

45.3

GPT-4.5

44.9

DeepSeek V3.1 には推論モードと非推論モードの両方があり、両方をテストしています。非推論モードでは、我々のダイナミック量子化の性能傾向が明確に見られます。ダイナミック5ビットはAider Pass-2で70.7%を達成し、一方ダイナミック1ビットは55.7%を達成します。サイズと精度の観点では、3ビットと4ビットが非常に強力です!

🎇他の量子化との比較

コミュニティの他のダイナミック imatrix GGUFに対してもAider Polyglotベンチマークを実行し、我々のものと比較しました。公平な 比較を行うために次のことを行います:

  1. Unslothの各量子化と類似のファイルサイズおよびビットタイプを選択します。

  2. 我々の 修正済みチャットテンプレート を使用します。コミュニティの量子化がベンチマークを実行できない場合に備えてです。我々は一部のコミュニティ量子化が {"code":500,"message":"split method must have between 1 and 1 positional arguments and between 0 and 0 keyword arguments at row 3, column 1908"}というエラーを出すことを見つけ、それは我々の修正済みチャットテンプレートを使うことで修正されます。

同じモデルサイズと量子化タイプで比較すると、Unslothのダイナミック量子化はコミュニティの他の量子化と比べて著しく優れているのが見られます!

chevron-right他の量子化との生の数値データ比較を展開するhashtag
量子化
量子化サイズ(GB)
Unsloth 精度 %
比較対象 精度 %

IQ2_XXS

164

43.6

TQ1_0

170

50.7

IQ1_M

206

55.7

IQ2_M

215

56.6

IQ2_XXS

225

61.2

IQ2_M

235

64.3

Q2_K_L

239

64.0

Q2_K_XL

255

65.8

IQ3_XXS

268

65.6

65.6

IQ3_XXS

279

66.8

Q3_K_S

293

65.2

Q3_K_XL

300

68.4

IQ4_XS

357

69.2

IQ4_XS

360

66.3

Q4_K_XL

387

69.7

Q4_K_M

405

69.7

Q4_K_M

409

67.7

Q5_K_M

478

68.9

Q5_K_XL

484

70.7

🍰ダイナミック量子化のアブレーション

我々は、キャリブレーションデータセットとダイナミック量子化の手法が実際に機能するかを確認するためにいくつかのアブレーションも行いました。Unslothのダイナミック手法のコツは、 重要なレイヤーをより高いビットに量子化すること (例えば8ビット)であり、一方で 重要でないレイヤーはより低いビット(例えば2ビット)に残すことです。.

我々の手法をテストするために、特定のテンソルを4ビットなどの低精度にしておく場合と高精度にしておく場合を比較します。例えば以下では、 attn_k_b テンソルを4ビット(セミダイナミック)対8ビット(現在のUnsloth)にしており、量子化サイズをわずか約100MB(<0.1%)増やすだけで、精度が劇的に向上します!

circle-check

🐛チャットテンプレートのバグ修正

DeepSeek-V3.1量子化のテスト中に、いくつかの低ビット量子化が適切に <think> </think> を囲んでおらず、奇妙なフォーマットをしているのを発見しました。これにより一部のコミュニティ量子化は低ビットで動作せず、不公平な比較を引き起こしました。llama.cppがminja(jinjaの簡易版)を使用していることにより、 .split に位置引数を受け入れないことが分かりました。そのため以下を変更する必要がありました:

を次のように:

詳細については ここarrow-up-right これが我々の修正済みチャットテンプレート用、または ここarrow-up-right 生のjinjaファイル用です。

📊パスレート1

Aiderは主にパスレート2で報告されます。私たちは同じサイズのコミュニティ量子化と比較するためにパスレート1も報告します。特に2ビット未満や4ビットより大きい場合において、我々のダイナミック量子化は同等のサイズの他のコミュニティ量子化よりもはるかに良い結果を示します。3ビットと4ビットは同様に良好に機能します。

💻DeepSeek V3.1 ダイナミック量子化を実行する

当社の DeepSeek V3.1 ガイド にアクセスするか、ダイナミック2ビット版を素早く入手するには、次を実行してください:

そして直接重みをダウンロードするには、次を使用します: llama.cpp 最適な推奨パラメータ(温度、チャットテンプレートなど)も既に設定しています:

最終更新

役に立ちましたか?