Ikeraq

NVIDIA/Model-Optimizer

学習済みのAIモデルを小さく速くして、そのまま推論エンジンに渡す

Apache-2.0 · 商用可 Python ★ 5,358 (今日 +9) 今日 更新
GitHub で見る NVIDIA/Model-Optimizer
GitHub の説明(原文)
A unified library of SOTA model optimization techniques like quantization, distillation, pruning, neural architecture search, speculative decoding, etc. It compresses deep learning models for downstream deployment frameworks like TensorRT-LLM, TensorRT, vLLM, etc. to optimize inference speed.

どういうものか

作り終えたAIモデルを、動かす前に軽くするための Python ライブラリだ。NVIDIA が作っていて、ライセンスは Apache-2.0。略して ModelOpt と呼ばれ、2025年12月に「TensorRT Model Optimizer」から今の名前に変わった。入力として受け付けるのは Hugging Face・PyTorch・ONNX のモデル。

軽くする手法をひとまとめに持っているのが特徴だ。数値の桁を落としてモデルを縮める量子化、要らない重みを削る枝刈り、大きなモデルのふるまいを小さなモデルに教え込む蒸留、回答の先読みで生成を速める投機的デコーディングなどを、Python からの呼び出しで組み合わせられる。README の表では、学習し直さずに行う量子化だけで、モデルの大きさが2〜4倍小さくなるとしている。量子化で落ちた精度は、少しだけ学習し直して取り戻す手段も用意されている。

仕上がったモデルは、TensorRT-LLM・TensorRT・vLLM・SGLang といった推論エンジンでそのまま読める形で書き出せる。書き出しは文章生成の transformers 系モデルだけでなく、画像生成の diffusers 系モデルにも対応している。NVIDIA 自身がこれで軽くしたモデルを、Hugging Face で配っている。

作ったモデルを、軽く速くしてから渡す 学習済みモデル (Hugging Face・ PyTorch・ONNX) ModelOpt (量子化・枝刈り・蒸留 などを組み合わせる) 軽くしたモデル (そのまま読める形で 書き出す) 推論エンジン (TensorRT-LLM・vLLM・ SGLang など) 落ちた精度は、少し学習し直して取り戻す手段もある
軽くする手法を1か所に集め、仕上がりを推論エンジンがそのまま読める形で出すところまでを受け持つ。

どんなときに使うか

自社で動かすLLMの、GPU代や応答の遅さを減らしたいとき

同じモデルを小さくできれば、一般に必要な GPU のメモリが減る。書き出しは vLLM や SGLang で読める形にも対応している。

大きなモデルから、元より小さい派生モデルを作りたいとき

枝刈りと蒸留を組み合わせれば、元のモデルに近いふるまいのまま、パラメータ数を減らした版を作れる。README の事例紹介には、この方法で 355B のモデルを 260B に縮めた例や、33%小さく50%速くしながら品質の90%を保った 7B のモデルの例が載っている。

注意点

まだ 1.0 前で、機能がすぐ消えることがある。 README の方針では、廃止が決まった機能は警告を出しながら1リリース(約1か月)だけ使え、その後は削除される。0.x のあいだは小さな版上げでも互換性が壊れうる。

入れると、ほかのオープンソースも一緒に入る。 README は、追加で入るソフトのライセンスを使う前に確かめるよう書いている。NVIDIA のコンテナで使う場合も同じだ。

NVIDIA の製品群との組み合わせが前面に出ている。 README は NVIDIA の AI ソフト群との組み合わせを強く打ち出している。vLLM や SGLang にも書き出せるが、手順や事例は Megatron 系のものが目立つ。

速さや縮み方は、モデルと条件で変わる。 README のニュース欄に並ぶ「何倍速い」といった数字は、それぞれ特定のモデル・形式・比較対象での結果だ。自分のモデルでどうなるかは試すしかない。

開発の様子

2.5 年
公開してからの期間。2024-04-24 が最初のコミットです
50 回
リリースの回数です
92 人
開発に参加した人数です
0 日前
最後のコミットです
501 件
未解決の Issue とプルリクエストの合計です(GitHub はこの2つを同じ数に含めます)
X で共有 この記事がよかったら

この記事の更新日は 2026-09-26 です。 内容は公開されている README と GitHub のデータに基づいています。 数値は GitHub から取得したもの、警告は判定の基準にある条件での自動判定です。事実誤認を見つけた場合はお知らせください。