Ultralytics YOLOv5は、物体検出、インスタンスセグメンテーション、画像分類の学習とエクスポートに対応した、PyTorchベースのコンピュータービジョンツールキットです。
huggingface/optimum
Hugging FaceのTransformers、Diffusers、TIMM、Sentence-Transformersモデルを、特定のハードウェア向けに最適化してエクスポートし、推論や学習を実行するためのツールキット。
- スター
- 3,519
- フォーク
- 718
- 未解決の Issue
- 313
- 最終コミット
- 5 日前
これは何?
Optimumは、Hugging FaceのTransformers、Diffusers、TIMM、Sentence-Transformersライブラリを拡張し、対象ハードウェア上でモデルを効率よく実行・学習するためのツールを提供します。高水準APIはそのまま使えるため、これらのライブラリで読み込んだモデルを、いくつかの手順を追加するだけでエクスポートして最適化できます。
推論では、ONNXおよびONNX Runtime、Intel製ハードウェア向けのOpenVINO、モバイル・エッジデバイス向けのExecuTorch、AWS Inferentia、NVIDIA TensorRT-LLMなどを使ったエクスポートと実行に対応しています。エクスポートや最適化は、Pythonコードまたはコマンドラインから実行できます。PyTorchの量子化には、別のQuantoバックエンドも利用できます。
学習では、Intel GaudiアクセラレータやAWS Trainium向けに、Transformers Trainerをラップする機能を提供し、GPUではONNX Runtimeによる高速化にも対応しています。optimum-onnxやoptimum-intelなど、一部のバックエンドは独立した関連パッケージに移行しているため、インストール方法は対象のアクセラレータによって異なります。
主な機能
- 01Transformers、Diffusers、TIMM、Sentence-TransformersのモデルをONNX形式にエクスポートできます。
- 02ORTModelクラスを使って、エクスポートしたモデルをONNX Runtimeで実行できます。
- 03Intel製ハードウェア向けのOpenVINOおよびNNCFによる最適化に対応しています。
- 04Intel GaudiおよびAWS Trainiumでの学習に使えるTrainerラッパーを提供します。
- 05Quantoバックエンドを通じてPyTorchの量子化を利用できます。
ユースケース
- OpenVINOを使って、CPUまたはIntel製ハードウェア上にTransformersモデルをデプロイする。
- 本番環境での推論に向けて、Hugging FaceモデルをONNXにエクスポートする。
- Intel GaudiまたはAWS Trainiumのインスタンスでモデルをファインチューニングする。
- メモリ使用量を抑えて、量子化したPyTorchモデルを実行する。
クイックスタート
- 1
pipでOptimumをインストールする
python -m pip install optimum - 2
使用するハードウェアに対応した追加パッケージ(例: ONNX Runtime)をインストールする
pip install --upgrade --upgrade-strategy eager optimum[onnxruntime]
使う前に知っておきたいこと
- アクセラレータ機能を利用するには、バックエンド固有の追加インストールと対応ハードウェアが必要です。
- 一部のバックエンドは、optimum-onnxやoptimum-executorchなど、別パッケージに分離されています。
トピック
よくある質問
- optimum とは?
- Hugging FaceのTransformers、Diffusers、TIMM、Sentence-Transformersモデルを、特定のハードウェア向けに最適化してエクスポートし、推論や学習を実行するためのツールキット。 Optimumは、Hugging FaceのTransformers、Diffusers、TIMM、Sentence-Transformersライブラリを拡張し、対象ハードウェア上でモデルを効率よく実行・学習するためのツールを提供します。高水準APIはそのまま使えるため、これらのライブラリで読み込んだモデルを、いくつかの手順を追加するだけでエクスポートして最適化できます。
- optimum は無料で使えますか?ライセンスは?
- optimum は Apache-2.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- optimum は今もメンテナンスされていますか?
- 活発にメンテナンス中。optimum の最終コミットは 2026年11月2日 です。
- optimum は何に使えますか?
- OpenVINOを使って、CPUまたはIntel製ハードウェア上にTransformersモデルをデプロイする。 本番環境での推論に向けて、Hugging FaceモデルをONNXにエクスポートする。 Intel GaudiまたはAWS Trainiumのインスタンスでモデルをファインチューニングする。 メモリ使用量を抑えて、量子化したPyTorchモデルを実行する。
- optimum のインストール方法は?
- pipでOptimumをインストールする: python -m pip install optimum 使用するハードウェアに対応した追加パッケージ(例: ONNX Runtime)をインストールする: pip install --upgrade --upgrade-strategy eager optimum[onnxruntime]
- optimum はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/huggingface/optimum
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
ONNX形式にエクスポートしたMLモデルを実行するクロスプラットフォームのアクセラレーター。PyTorchスクリプトでの学習にも対応します。
実行時に新しい例やクラスを学習し、信頼度の較正と分布外検出にも対応するテキスト分類用Pythonライブラリ。
量子化、プルーニング、スパース化でニューラルネットワークを圧縮し、OpenVINO、PyTorch、ONNXでの推論を高速化するPythonフレームワーク。
量子化、枝刈り、蒸留、スパース化、投機的デコードによって深層学習モデルを圧縮し、推論を高速化するNVIDIAのオープンソースライブラリ。
Pythonなど複数のランタイムでPaddleOCRをONNXに変換したモデルを実行し、高速なオフライン文字認識を実現するオープンソースOCRツールキット。