🚀 🐱 Pixart-α モデルカード
Pixart-αは、テキストプロンプトから直接1024pxの画像を生成できる潜在拡散モデルです。Transformerブロックを用いた革新的なアーキテクチャにより、高品質な画像生成が可能です。
🚀 クイックスタート
必要なライブラリのインストール
まずは、必要なライブラリをインストールしましょう。
pip install -U diffusers --upgrade
加えて、transformers
、safetensors
、sentencepiece
、accelerate
をインストールします。
pip install transformers accelerate safetensors sentencepiece
モデルの使用例
ベースモデルを使用するには、以下のコードを実行します。
from diffusers import PixArtAlphaPipeline
import torch
pipe = PixArtAlphaPipeline.from_pretrained("PixArt-alpha/PixArt-XL-2-1024-MS", torch_dtype=torch.float16)
pipe = pipe.to("cuda")
prompt = "An astronaut riding a green horse"
images = pipe(prompt=prompt).images[0]
torch >= 2.0
を使用する場合、torch.compile
を用いることで推論速度を20-30%向上させることができます。パイプラインを実行する前に、unet
をtorch.compile
でラップします。
pipe.transformer = torch.compile(pipe.transformer, mode="reduce-overhead", fullgraph=True)
GPU VRAMに制限がある場合は、.to("cuda")
の代わりにpipe.enable_model_cpu_offload
を呼び出してcpu offloadingを有効にすることができます。
- pipe.to("cuda")
+ pipe.enable_model_cpu_offload()
diffusers
でPixart-αを使用する方法の詳細については、Pixart-αのドキュメントを参照してください。
無料のGoogle Colabでの利用
Google Colabを使って、無料でPixArt-αから画像を生成することができます。ここをクリックして試してみてください。
✨ 主な機能
高効率な学習
PixArt-αは、Stable Diffusion v1.5の学習時間のわずか10.8%(675対6,250 A100 GPU days)で学習でき、約30万ドル(26,000対320,000ドル)を節約し、CO2排出量を90%削減します。さらに、より大規模なSOTAモデルであるRAPHAELと比較すると、学習コストはわずか1%です。

手法 |
タイプ |
パラメータ数 |
画像数 |
A100 GPU days |
DALL·E |
Diff |
12.0B |
1.54B |
|
GLIDE |
Diff |
5.0B |
5.94B |
|
LDM |
Diff |
1.4B |
0.27B |
|
DALL·E 2 |
Diff |
6.5B |
5.63B |
41,66 |
SDv1.5 |
Diff |
0.9B |
3.16B |
6,250 |
GigaGAN |
GAN |
0.9B |
0.98B |
4,783 |
Imagen |
Diff |
3.0B |
15.36B |
7,132 |
RAPHAEL |
Diff |
3.0B |
5.0B |
60,000 |
PixArt-α |
Diff |
0.6B |
0.025B |
675 |
高品質な画像生成
上のグラフは、Pixart-αとSDXL 0.9、Stable Diffusion 2、DALLE-2、DeepFloydに対するユーザーの好みを評価しています。Pixart-αのベースモデルは、既存の最先端モデルと同等またはそれ以上の性能を発揮します。
📦 インストール
必要なライブラリのインストール
pip install -U diffusers --upgrade
加えて、transformers
、safetensors
、sentencepiece
、accelerate
をインストールします。
pip install transformers accelerate safetensors sentencepiece
💻 使用例
基本的な使用法
from diffusers import PixArtAlphaPipeline
import torch
pipe = PixArtAlphaPipeline.from_pretrained("PixArt-alpha/PixArt-XL-2-1024-MS", torch_dtype=torch.float16)
pipe = pipe.to("cuda")
prompt = "An astronaut riding a green horse"
images = pipe(prompt=prompt).images[0]
高度な使用法
torch >= 2.0
を使用する場合、torch.compile
を用いることで推論速度を20-30%向上させることができます。
pipe.transformer = torch.compile(pipe.transformer, mode="reduce-overhead", fullgraph=True)
GPU VRAMに制限がある場合は、.to("cuda")
の代わりにpipe.enable_model_cpu_offload
を呼び出してcpu offloadingを有効にすることができます。
- pipe.to("cuda")
+ pipe.enable_model_cpu_offload()
📚 ドキュメント
モデルの説明
モデルのソース
研究目的では、generative-models
のGitHubリポジトリ(https://github.com/PixArt-alpha/PixArt-alpha)をおすすめします。これはトレーニングと推論の両方に適しており、SA-Solverのような最新の拡散サンプラーが随時追加されます。
Hugging Faceは、無料のPixart-α推論を提供しています。
- リポジトリ: https://github.com/PixArt-alpha/PixArt-alpha
- デモ: https://huggingface.co/spaces/PixArt-alpha/PixArt-alpha
使用用途
直接使用
このモデルは研究目的のみを想定しています。可能な研究分野やタスクは以下の通りです。
- アートワークの生成とデザインやその他のアートプロセスでの使用。
- 教育または創造的なツールでの応用。
- 生成モデルに関する研究。
- 有害なコンテンツを生成する可能性のあるモデルの安全な展開。
- 生成モデルの制限とバイアスの調査と理解。
以下に記載されている使用法は除外されます。
想定外の使用
このモデルは、人やイベントの事実的または真実の表現を生成するように訓練されていないため、そのようなコンテンツを生成するためにモデルを使用することは、このモデルの能力範囲外です。
🔧 技術詳細
Pixart-αは、潜在拡散のための純粋なTransformerブロックで構成されています。単一のサンプリングプロセス内で、テキストプロンプトから直接1024pxの画像を生成することができます。
ソースコードは、https://github.com/PixArt-alpha/PixArt-alpha で入手できます。
📄 ライセンス
このモデルは、CreativeML Open RAIL++-M Licenseの下で提供されています。