22
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

ElixirAdvent Calendar 2022

Day 6

Stable Diffusion(画像生成AI)をローカルインストールしてみた

Last updated at Posted at 2022-11-11

初めてNxバックエンド勉強会で発表したのでその内容をまとめる。

Stable Diffusion(画像生成AI)をローカルインストールして実行してみた

実行した環境は

  • windows11 pro
    Intel(R) Core(TM) i9-12900
    GPU なし
  • mac book pro
    2019 model intel core i9
    GPU なし
  • ubuntu20.04
    GPU Nvidia GeForce RTX 3070

以上の三つの環境でStable Diffusionを動かした。

用いたgithub

こちらのgithubを使って実行した。詳しい説明はしないが、README.mdの通りにやっていきながらエラーが出たらpipやcondaでインストールをしていきながら進むと実行できる。
私の環境だと、windowsとmacはpipでインストールをしてubuntuではcondaでやっていくとうまくいった。
またubuntuでGPUを使うときはcudaをインストールして実行する。

実行結果

image.png
image.png
image.png

実行したコマンドは忘れてしまったがだいたいイメージとあった画像が出てきてくれている!
精度良い画像をだしたかったので以下のサイトを使った。

ここで気になったのが実行スピードだ。

実行結果比較

  • windows11 pro Intel(R) Core(TM) i9-12900
    2分45秒

  • mac book pro 2019 model intel core i9
    7分30秒

  • ubuntu20.04 GPU Nvidia GeForce RTX 3070
    20秒

この結果を見るとGPUの凄さがわかる。

なぜNx勉強会に参加したか

このStable Diffusionをelixirで実行してみようとしているからだ。
Axonを使ってみたところ出来そうだと感じた。
image.png
このようにモデルを簡単に可視化できるのでとても便利だ。

model =
  input
  |> Axon.dense(128, activation: :relu)
  |> Axon.batch_norm()
  |> Axon.dropout(rate: 0.8)
  |> Axon.dense(64)
  |> Axon.tanh()
  |> Axon.dense(10)
  |> Axon.activation(:softmax)

またこのようにmodelをパイプラインで繋ぐことができるのでとても気持ちがいい。
そしてAxonOnnxというライブラリがあり、onnxの学習済みデータがあるので実行してみたいという発表で終わった。

22
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
22
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?