最新技術『StreamDiffusion』の使い方を紹介!画像生成を高速化しよう! | romptn Magazine

最新技術『StreamDiffusion』の使い方を紹介!画像生成を高速化しよう!

Stable Diffusion

今話題の「StreamDiffusion」。

「よく耳にするけどよくわからない。」「使い方もよくわからない。」

そういったお悩みを抱えている方が多いと思います!

この記事では、「StreamDiffusion」について、基礎について分かりやすく解説していきます。

従来の技術を凌駕する「StreamDiffusion」の魅力と、その効果的な活用方法について、詳しくご紹介します。

それでは、一緒に学んでいきましょう!

スポンサーリンク

StreamDiffusionとは?

「StreamDiffusion」は、2023年に登場したAI画像生成技術で、特にNVIDIAのGeForce RTX 4090を使うことで100fpsを超える高速画像生成が可能です。

また「StreamDiffusion」は、Stable Diffusionモデルの高速化に貢献しています。

従来の技術「TensorRT」や「LCM LoRA」も高速化を実現していましたが、「StreamDiffusion」はこれらを上回る性能を持ち、特にRTX 4090で顕著な高速化を実現しています。

Stable Diffusionの画像生成を最速で学びたいあなたへ!
  • Stable Diffusionの基礎を2時間でマスター!
  • 高スペックPCがない方向けに徹底解説。
  • ControlNetなど、必須級の拡張機能も網羅。
  • 今話題のSDXL、AI動画生成も。
  • 特典として、大人気「おすすめ拡張機能・モデル解説」「プロンプト大全」つき!
\このボタン限定!70%オフキャンペーン実施中!/
70%オフキャンペーン実施中!/

StreamDiffusionの導入方法

今回は、Google Colabを使用して、「StreamDiffusion」を簡単にセットアップし、利用する方法を紹介します。

以下の手順に従い、実際に使ってみてください。

ステップ0:Google Colabの設定

  1. Google Colabを開く。
  2. 新規ノートブックの作成。
  3. 「ランタイム」「ランタイムのタイプの変更」→ハートウェアアクセラレータの中から「GPU」を選択する。

ステップ1:NVIDIAのGPUを確認

まず、Google ColabがNVIDIAのGPUを使用していることを確認します。以下のコマンドを実行してください。

!nvidia-smi

ステップ2:必要なパッケージのインストール

次に、必要なパッケージをインストールします。以下のコマンドを実行してください。

!nvcc -V
!pip install torch==2.1.0 torchvision==0.16.0 xformers --index-url https://download.pytorch.org/whl/cu121
!pip install git+https://github.com/cumulo-autumn/StreamDiffusion.git@main#egg=streamdiffusion[tensorrt]

パッケージのインストール後、ランタイムを再起動する必要があります。表示される「RESTART SESSION」ボタンをクリックしてください。

ステップ3:TensorRTのインストール

ランタイムを再起動した後、TensorRTをインストールします。以下のコマンドを実行してください。

!python -m streamdiffusion.tools.install-tensorrt

ステップ4:TensorRTの確認

TensorRTが正しくインストールされたかを確認するために、以下のコマンドを実行してください。

!pip freeze | grep -i tensorrt

ステップ5:StreamDiffusionのセットアップ

以下のコマンドを実行して、「StreamDiffusion」をセットアップします。

!git clone https://github.com/cumulo-autumn/StreamDiffusion.git
%cd StreamDiffusion
import torch
from diffusers import AutoencoderTiny, StableDiffusionPipeline
from streamdiffusion import StreamDiffusion
from streamdiffusion.image_utils import postprocess_image

ステップ6:パイプラインの構築

次に、StableDiffusionパイプラインを構築します。以下のコードを実行してください。

pipe = StableDiffusionPipeline.from_pretrained("KBlueLeaf/kohaku-v2.1").to(
    device=torch.device("cuda"),
    dtype=torch.float16,
)

以上で導入が完了です。

プロンプトジェネレーターで画像生成プロンプトの参考に!
  • Stable Diffusionのプロンプトの見本が知りたい
  • 画像生成が思ったようにできない
  • 色々なプロンプトを探したい
など、画像生成AIのプロンプトに関する疑問が解決するかもしれません。

StreamDiffusionの使い方

ここからは、画像を生成してみましょう。

ステップ7:StreamDiffusionの初期化

「StreamDiffusion」を初期化し、必要な設定を行います。

stream = StreamDiffusion(
    pipe,
    t_index_list=[0, 16, 32, 45],
    torch_dtype=torch.float16,
    cfg_type="none",
)
stream.load_lcm_lora()
stream.fuse_lora()
stream.vae = AutoencoderTiny.from_pretrained("madebyollin/taesd").to(device=pipe.device, dtype=pipe.dtype)
pipe.enable_xformers_memory_efficient_attention()

ステップ8:プロンプトの設定と画像生成

最後に、生成したい画像の説明(プロンプト)を設定し、画像を生成します。

prompt = "a woman, curly black short hair, white t-shirt"
stream.prepare(prompt)

from IPython.display import display

for _ in range(4):
    stream()

while True:
    x_output = stream.txt2img()
    display(postprocess_image(x_output, output_type="pil")[0])

実際に自分で使用するときは、prompt = “a woman, curly black short hair, white t-shirt“の箇所を変更して使用ましょう

画像が生成された画面

画像生成のコツ:プロンプトはシンプルな方が品質のよい画像が生成されます。

まとめ

いかがでしたでしょうか?

『StreamDiffusion』の導入・使い方にについて解説してきました。

今回のポイントをまとめると、以下のようになります。

  • 「StreamDiffusion」は、AI画像生成技術であり、高速画像生成が可能。
  • 「StreamDiffusion」は、Gooogle Colab上で使うことが可能。
  • 「StreamDiffusion」は、画像生成速度が圧倒的に速い。

この記事を通じて、「StreamDiffusion」魅力と活用方法をご紹介しました。

今回の内容が「StreamDiffusion」についての理解を深め、実際の使用に役立つことを願っています。

さらに知識を深めたい方は、当サイトの他の関連記事もぜひご覧ください。新たな発見があるかもしれません!

それでは、次回の記事でお会いしましょう。

プロンプトジェネレーターで画像生成プロンプトの参考に!
  • Stable Diffusionのプロンプトの見本が知りたい
  • 画像生成が思ったようにできない
  • 色々なプロンプトを探したい
など、画像生成AIのプロンプトに関する疑問が解決するかもしれません。