Repolode
huggingface

huggingface/optimum-quanto

Hugging Face Optimum向けのPyTorch量子化バックエンド。モデルの重みと活性化をint2からfloat8まで量子化できます。

スター
1,056
フォーク
100
未解決の Issue
5
最終コミット
12 日前

これは何?

Optimum Quantoは、Hugging Face Optimumエコシステムの一部として提供されるPyTorch量子化バックエンドです。浮動小数点モデルをビット幅の小さいモデルに変換し、重みはint2、int4、int8、float8、活性化はint8、float8に対応しています。これにより、デバイスメモリの使用量をビット幅にほぼ比例して削減できます。

このライブラリはeager modeで動作するため、トレースできないモデルも扱えます。また、量子化モデルはCUDA、MPSなどのデバイスで実行できます。Hugging FaceのLLMやdiffusersのパイプラインコンポーネントを量子化して保存するためのヘルパークラスに加え、通常のPyTorchモデル向けに、量子化、キャリブレーション、量子化を考慮した調整、凍結、safetensorsによるシリアライズを行う低レベルAPIも提供します。

このプロジェクトはメンテナンスモードにあり、受け付けているのは軽微な修正とドキュメントの変更のみです。READMEでは、本番環境を重視した量子化や活発に開発されている量子化ライブラリとして、bitsandbytesとtorchAOを案内しています。Torch compiler(dynamo)との互換性は、未実装とされています。

主な機能

  • 01重みはint2、int4、int8、float8、活性化はint8、float8に対応しています。
  • 02eager modeで動作するため、トレースできないモデルもサポートします。
  • 03量子化モデルをCUDA、MPSなどのデバイスで実行できます。
  • 04Hugging FaceのLLMやdiffusersのコンポーネントを量子化し、保存・再読み込みするためのヘルパークラスを提供します。
  • 05pytorch weight_only形式およびsafetensorsでシリアライズできます。

ユースケース

  • 大規模なHugging FaceのLLMを量子化し、限られたGPUメモリに収める。
  • PixArtなどのdiffusersのトランスフォーマーコンポーネントを量子化し、メモリ使用量を抑えて画像を生成する。
  • 低レベルAPIを使って、通常のPyTorchモデルに量子化を考慮した学習を適用する。

収録されている特集

トピック

よくある質問

optimum-quanto とは?
Hugging Face Optimum向けのPyTorch量子化バックエンド。モデルの重みと活性化をint2からfloat8まで量子化できます。 Optimum Quantoは、Hugging Face Optimumエコシステムの一部として提供されるPyTorch量子化バックエンドです。浮動小数点モデルをビット幅の小さいモデルに変換し、重みはint2、int4、int8、float8、活性化はint8、float8に対応しています。これにより、デバイスメモリの使用量をビット幅にほぼ比例して削減できます。
optimum-quanto は無料で使えますか?ライセンスは?
optimum-quanto は Apache-2.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
optimum-quanto は今もメンテナンスされていますか?
活発にメンテナンス中。optimum-quanto の最終コミットは 2026年10月26日 です。
optimum-quanto は何に使えますか?
大規模なHugging FaceのLLMを量子化し、限られたGPUメモリに収める。 PixArtなどのdiffusersのトランスフォーマーコンポーネントを量子化し、メモリ使用量を抑えて画像を生成する。 低レベルAPIを使って、通常のPyTorchモデルに量子化を考慮した学習を適用する。
optimum-quanto はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/huggingface/optimum-quanto

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト