Intel AutoRound: LLM と VLM のための高度なウェイトオンリー量子化

低ビット幅での優れた精度

AutoRound は低ビットシナリオ、特に 2 ビット精度において、顕著な性能向上を示します。提供されたデータによると、INT2 で相対精度が最大 2.1 倍までベースラインを上回ることができます。また、Low-Bit Open LLM Leaderboard における実績から、4 ビット精度でも競争力を維持しています。

技術的な機能と柔軟性

AutoRound は、さまざまなモデルアーキテクチャとハードウェアバックエンドに対して、効率性と広範な互換性を持つよう設計されています。

モデルとデバイスのサポート

  • LLMs: LLaMA、Qwen、DeepSeek など、ほとんどの主要アーキテクチャをサポートします。
  • VLMs: Gemma3 や Mistral-Small-3.1 など、10 以上のビジョン・ランゲージモデルをサポートします。サポートされていないモデルに対しては、--iters 0 を使用して RTN 手法を適用できますが、精度低下が予想されます。
  • Hardware: CPU、Intel GPU、CUDA と互換性があります。

量子化設定とフォーマット

AutoRound は、INT2、INT3、INT4、INT8、混合ビットチューニングなど、さまざまなウェイトオンリー設定をサポートします。ツールは、相互運用性を確保するために、以下のフォーマットでモデルをエクスポートできます:

  • AutoRound
  • GPTQ
  • AWQ
  • 選択された GGUF フォーマット

量子化の効率とパフォーマンス

AutoRound は、わずか 200 ステップのチューニングと、最小 128 サンプルの小規模キャリブレーションデータセットのみで高精度を実現します。これにより、他の INT2 手法に比べて大幅に高速かつリソース消費が少なくなります。

量子化速度ベンチマーク

「ライトモード」では、AutoRound は NVIDIA A100 GPU 上で 72B パラメータモデルを 37 分で量子化できます。以下の表は、さまざまなツールと設定における量子化時間を比較しています。

モデル AutoAWQ (128 サンプル) AutoAWQ (512 サンプル) GPTQ (Transformers) AutoRound Light (128 サンプル) AutoRound (128 サンプル) AutoRound (512 サンプル)
Qwen2.5 3B 7min 17min 13min 3min 8min 9min
Llama3.1-8B 13min 27min 22min 6min 13min 17min
Qwen2.5 72B 105min 230min OOM 37min 120min 149min

チューニングレシピ

AutoRound は、精度と速度のバランスを取るために 3 つの異なるレシピを提供します:

  1. auto-round-best: 最大精度を目指して最適化されており、2 ビット量子化に推奨されます。
  2. auto-round (デフォルト): 精度とチューニングコストのバランスが取れた設定です。
  3. auto-round-light: 最大速度を目指して最適化されています。

実装と使用方法

AutoRound は pip (pip install auto-round) でインストールでき、コマンドラインと API の両方のワークフローをサポートします。

コマンドラインインターフェース

ユーザーはモデル、ビット幅、グループサイズ、希望するエクスポートフォーマットを指定できます。例:

auto-round --model Qwen/Qwen3-0.6B --bits 4 --group_size 128 --format "auto_round,auto_awq,auto_gptq" --output_dir ./tmp_autoround

API 統合

AutoRound は transformers ライブラリと統合されており、ユーザーはモデルとトークナイザーをロードし、AutoRound クラスを初期化して quantize_and_save で量子化モデルを保存できます。また、既存の GPTQ や AWQ モデルを AutoRound フォーマットに変換し、Intel デバイスとの互換性を向上させることもサポートしています。

Sources