apple-aiml-research/ml-stable-diffusion

Stable Diffusion with Core ML on Apple Silicon

何を解決するか

このプロジェクトは、Apple Siliconデバイス(Mac、iPad、iPhone)上でStable Diffusion画像生成モデルを実行することを可能にします。大規模で計算コストの高い拡散モデルをモバイルおよびデスクトップハードウェア上で実行する課題に対処し、AppleのCore MLフレームワークに特化したモデル変換および最適化ツールを提供します。

動作方法

このプロジェクトは、以下の2つの主要なコンポーネントを提供します:

  1. Pythonパッケージ(python_coreml_stable_diffusion:Hugging Face diffusersを介してPyTorchモデルをCore ML形式に変換するためのもの。重みの圧縮および最適化ツールを含み、トレーニング後のパレット化(post-training palettization)やMixed-Bit Palettization(MBP)といった技術により、モデルサイズとメモリ使用量を削減します。
  2. Swiftパッケージ(StableDiffusion:Xcodeプロジェクトに統合可能な開発者向けライブラリ。変換されたCore MLモデルを読み込み、デバイス上で直接画像生成を実行できます。

対象ユーザー

  • アプリ開発者:iOS、iPadOS、macOSアプリに高パフォーマンスなテキストから画像への生成機能を統合したい人。
  • MLエンジニア:Appleハードウェア上でエッジデプロイ用にStable Diffusionモデルを最適化したい研究者や開発者。

主な特徴

  • ハードウェアアクセラレーション:Apple Neural Engine(ANE)、GPU、CPUに最適化されています。
  • 高度な圧縮:データフリーなトレーニング後のパレット化(最大8ビット)およびMixed-Bit Palettization(MBP)をサポートし、品質の大幅な低下なしに極端なサイズ削減を実現します。
  • メモリ管理reduceMemoryオプションにより、モデルをオンデマンドで読み込み・解放できるため、メモリが限られたデバイス(例:iPhone 12 Mini)でも実行可能です。
  • 広範な互換性:SD 2.1やSDXLを含む複数のStable Diffusionバージョンをサポートしています。

関連

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