intel/auto-round

PTQ-Level Efficiency, QAT-Level Accuracy | 训练后量化的效率,量化感知训练的精度

AutoRound – LLMおよびVLMのためのトレーニング後量子化

概要 – AutoRoundは、大規模言語モデル(LLM)および視覚言語モデル(VLM)を、モデルのトレーニング後に、非常に低ビット形式(重み2〜4ビット、およびいくつかの混合精度オプション)に縮小できるPythonライブラリです。目標は、モデルの精度を元のモデルに近い(多くの場合数パーセント以内)状態に保ちながら、メモリフットプリントと推論レイテンシを劇的に削減することです。

重要性 – LLMをオンデバイスまたはより安価なハードウェア(CPU、Intel XPU、Gaudi HPU、またはコンシューマーグレードのGPU)で実行するには、通常、大量のRAM/VRAMが必要です。量子化は重みテンソルのサイズを削減し、以下を可能にします。

  • 同じハードウェアでのより高速な推論。
  • より安価なデバイスやエッジデバイスへの展開。
  • 多数の同時リクエストを処理するためのコスト削減。

主な機能

  • 複数の低ビットスキーム – 2ビット、3ビット、4ビット、5ビット、6ビット、7ビットの重みのみの量子化(WOQ)、および混合精度レシピ(AutoScheme)をサポートします。MXFP4、NVFP4、FP8、GGUFファミリーなどの特殊なdtypeも利用できます。
  • アルゴリズム – SignRoundV1/V2、AWQ、GPTQ、およびキャリブレーションフリー量子化のための新しいNeUQIグリッドサーチの組み込み実装を提供します。ユーザーはアルゴリズムをチェーンできます(例:awq,signround)。
  • エコシステム統合 – 🤗 トランスフォーマー、vLLM、SGLangと直接連携します。量子化モデルは、これらのランタイムで使用される形式(auto_round、auto_awq、auto_gptq、GGUFなど)にエクスポートできます。
  • ハードウェアサポート – Intel CPU/XPU、NVIDIA GPU(CUDA)、Habana Gaudi HPUで動作します。パッケージは各プラットフォーム用の個別のホイールを提供します。
  • 高速で手頃なチューニング – 7Bモデルは単一GPUで約10分で量子化できます。ライブラリは、速度と精度をトレードオフする「light」、「best」、および「opt-rtn」のプリセットレシピを提供します。
  • 視覚言語サポート – 10以上のVLMに対するすぐに使える量子化を提供し、テキストエンコーダーを超えた実験的なフルモデル量子化もサポートします。

使用方法

  1. インストール – pip install auto-round(またはナイトリービルド/HPU固有のホイール)。
  2. CLI – auto-round --model <repo>/<model> --scheme "W4A16" --format auto_round --output_dir ./qmodel を実行します。
    • プリセットレシピを選択します(auto-round-best、auto-round-light、auto-round-opt-rtn、auto-round-rtn)。
  3. Python API –
    from auto_round import AutoRound
    ar = AutoRound("Qwen/Qwen3-0.6B", scheme="W4A16", iters=200)
    ar.quantize_and_save("./qmodel", format="auto_round")
    
    • bits、group_size、iters、lr、データセットなどを調整して、精度と速度のバランスを制御します。
  4. 推論を実行 – vLLM、Transformers、またはエクスポートされた形式をサポートする任意のランタイムで量子化チェックポイントを読み込みます。

典型的なワークフロー

  • モデルとターゲットビット幅(例:4ビットの重みのみ)を選択します。
  • デフォルトのauto-roundレシピでAutoRoundを実行して迅速な結果を得るか、auto-round-bestを使用して最大精度(より多くのチューニング反復)を得ます。
  • 混合精度が必要な場合は、AutoScheme(--enable_alg_ext)を有効にして、レイヤーごとのビット幅プランを自動検索させます。
  • サービングスタックに必要な形式にエクスポートします(例:llama.cpp用GGUF、AWQベースのランタイム用auto_awq)。

対象ユーザー

  • カスタム量子化コードを書かずに超低ビットLLMを実験したい研究者。
  • コスト制約のあるサーバーやエッジデバイスにLLMを展開するエンジニア。
  • 人気の🤗 Transformers/vLLMエコシステムと統合されるドロップイン量子化ステップを必要とするすべての人。

リソース

  • ドキュメントとチュートリアル – docs/step_by_step.mdおよび中国語版step_by_step_CN.mdのステップバイステップガイド。
  • ベンチマーク – 2〜3ビットモデルの精度テーブル、GGUFリーダーボード、MoE高速化ノート。
  • 論文リンク – SignRoundV1(arXiv 2309.05516)およびSignRoundV2(arXiv 2512.04746)。
  • モデル动物园 – HuggingFaceのIntel組織でホストされている事前量子化チェックポイント。

結論 – AutoRoundは、大規模言語モデルおよび視覚言語モデルのトレーニング後量子化を、幅広いハードウェアで実用的にし、元のモデルのパフォーマンスのほとんどを維持する、本番対応のオープンソースツールキットです。

関連

  • Dispatch
  • プロジェクト
  • プロジェクト
  • Dispatch
  • プロジェクト