OpenAI互換APIで大規模言語モデルを実行・提供する、高速でメモリ効率に優れたライブラリ兼サーバー。
pytorch/ao
学習と推論サービングの両方を対象に、量子化、スパース化、float8学習を提供するPyTorchネイティブのライブラリ。
- スター
- 3,013
- フォーク
- 655
- 未解決の Issue
- 819
- 最終コミット
- 一昨日
これは何?
TorchAOは、PyTorch上に直接構築された量子化・モデル最適化ライブラリです。weight-only量子化や動的量子化(int4、int8、float8を含む)、量子化対応学習(QAT)、float8およびMXFP8の学習レシピ、スパース化、オプティマイザのメモリ使用量を削減する量子化オプティマイザを提供します。
torch.compileおよびFSDP2との連携を想定して設計されており、Hugging Faceの大半のPyTorchモデルで利用できます。量子化モデルはquantize_ APIやtransformers、diffusersとの統合を通じて作成でき、vLLMやSGLangなどのバックエンドでサービングしたり、ExecuTorch経由でエッジデバイスにデプロイしたりできます。
TorchTitanではfloat8の事前学習に、TorchTuneではQLoRAやQATのレシピに、UnslothとAxolotlではQATによるファインチューニングに利用されています。
主な機能
- 01推論向けに、重みと活性化をint4、int8、float8で量子化できます。
- 02量子化後に失われた精度を回復するための量子化対応学習(QAT)レシピを提供します。
- 03torch.compileおよびFSDP2と連携するfloat8、MXFP8学習をサポートします。
- 048-bit、4-bit、fp8 AdamWなどの量子化オプティマイザと、メモリ使用量を削減する単一GPUでのCPUオフロードを提供します。
- 05Hugging Face transformers、diffusers、vLLM、SGLang、ExecuTorchと連携します。
ユースケース
- int4またはfloat8の重みを使って大規模言語モデルをサービングし、GPUメモリ使用量とレイテンシを削減する。
- QATで量子化モデルをファインチューニングし、低ビット推論による精度低下を抑える。
- マルチGPUクラスターで大規模なTransformerモデルのfloat8事前学習を実行する。
- ExecuTorchを使って量子化モデルをモバイル端末やエッジデバイスにデプロイする。
クイックスタート
- 1
PyPIから最新の安定版TorchAOをインストールします
pip install torchao - 2
quantize_を使ってモデルの重みをint4に量子化します(modelをPyTorchモデルに置き換えてください)
quantize_(model, Int4WeightOnlyConfig(group_size=32, int4_packing_format="tile_packed_to_4d", int4_choose_qparams_algorithm="hqq"))
使う前に知っておきたいこと
- 一部のオプションカーネルや学習機能には、追加パッケージと特定のCUDAビルドが必要です。
- Float8とMoEの学習機能は、特定のGPUハードウェアに依存します。
トピック
よくある質問
- ao とは?
- 学習と推論サービングの両方を対象に、量子化、スパース化、float8学習を提供するPyTorchネイティブのライブラリ。 TorchAOは、PyTorch上に直接構築された量子化・モデル最適化ライブラリです。weight-only量子化や動的量子化(int4、int8、float8を含む)、量子化対応学習(QAT)、float8およびMXFP8の学習レシピ、スパース化、オプティマイザのメモリ使用量を削減する量子化オプティマイザを提供します。
- ao は無料で使えますか?ライセンスは?
- ao は Other ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- ao は今もメンテナンスされていますか?
- 活発にメンテナンス中。ao の最終コミットは 2026年10月19日 です。
- ao は何に使えますか?
- int4またはfloat8の重みを使って大規模言語モデルをサービングし、GPUメモリ使用量とレイテンシを削減する。 QATで量子化モデルをファインチューニングし、低ビット推論による精度低下を抑える。 マルチGPUクラスターで大規模なTransformerモデルのfloat8事前学習を実行する。 ExecuTorchを使って量子化モデルをモバイル端末やエッジデバイスにデプロイする。
- ao のインストール方法は?
- PyPIから最新の安定版TorchAOをインストールします: pip install torchao quantize_を使ってモデルの重みをint4に量子化します(modelをPyTorchモデルに置き換えてください): quantize_(model, Int4WeightOnlyConfig(group_size=32, int4_packing_format="tile_packed_to_4d", int4_choose_qparams_algorithm="hqq"))
- ao はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/pytorch/ao
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
量子化なしで、レイヤー単位に大規模言語モデルを実行し、70Bクラスのモデルを4GB GPU 1枚で推論できるPythonライブラリ。
OpenAIおよびAnthropic互換APIを提供するRust製LLM推論エンジン。量子化、マルチモーダルモデル、エージェント向けツールに対応。
Diffusersを基盤に、キャッシュ、並列化、量子化、CPUオフロードを追加するDiffusion Transformer(DiT)向けPyTorch推論エンジン。
量子化、プルーニング、スパース化でニューラルネットワークを圧縮し、OpenVINO、PyTorch、ONNXでの推論を高速化するPythonフレームワーク。
大規模言語モデルやマルチモーダルモデルの学習、ファインチューニング、推論実行に役立つ手法、スクリプト、手順をまとめたオープンな書籍。