Stable Diffusion の実行環境を用意する (GUI / Stability Matrix, 2024年12月)
概要
Stable Diffusion は、オープンソースの画像生成 AI (AI モデル) です。個人の PC 上に画像生成するための環境を用意できます。
Stable Diffusion は Python(のライブラリ) で実装されているため、直接利用する場合は Python の知識も必要となります。
Stability Matrix は、Stable Diffusion をはじめとする生成AIツールを簡単に管理・実行するための マルチプラットフォーム対応パッケージマネージャーです。このツールによって Python のコードを直接記述せず GUI や Web UI 経由で画像生成を行うための環境が用意できます。
Stability Matrix を用いることで、Stable Diffusion を使う上での複雑なセットアップを大幅に簡略化できます。
Stable Diffusion とは
Stable Diffusion は、Stability AI 社が公開した画像生成 AI モデルです。
Stable AI 社のページ
https://ja.stability.ai/
Stable Diffusion GitHub
https://github.com/CompVis/stable-diffusion
Stable Diffusion の仕組み
Stable Diffusion は、拡散モデル (Diffusion Model) と呼ばれるタイプの生成モデルを使用しています。この仕組みは、ノイズの多いデータから少しずつノイズを除去していき、最終的に鮮明な画像を生成するプロセスを基礎にしています。
特徴としては、以下などがあげられます。
- オープンソース
他の商用画像生成モデル(例:DALL-E 2)と異なり、Stable Diffusion は完全なオープンソースとして公開されています。これにより、ユーザーはモデルの内部構造を調査したり、改善・カスタマイズしたりすることが可能です。 - ローカル環境での実行
Stable Diffusion は、比較的少ないハードウェアリソースでも動作します。NVIDIA GPU を搭載したPCがあれば、ローカル環境で実行可能です。これにより、プライバシーを保ちながら独自の画像生成が行えます。
オンラインサービスでも Stable Diffusion のモデルが利用できるように実装されたものがありますが、ローカル環境で 料金などを気にせず、手元で好きように生成できるという利点は大きいと思います。
Stability Matrix とは
Stability Matrix は、Stable Diffusion などの生成AIツールを簡単に管理・実行するための マルチプラットフォーム対応パッケージマネージャー です。
Stability Matrix の公式サイト (GitHub)
https://github.com/LykosAI/StabilityMatrix
Stability Matrix の特徴
ワンクリックインストール・更新
- Stable Diffusion Web UI などのパッケージやモデルのインストール・アップデートがワンクリックで実行可能。
- Python 環境や依存ライブラリの管理を簡略化(PythonやGitをグローバルにインストールする必要なし)。
- ポータブルモードでもインストールも可能。Stability Matrix のデータディレクトリを別のドライブやPCに移動しても動作可能。
対応している主なパッケージ
Stability Matrix は、以下の主要な Stable Diffusion 関連の Web UI やツールに対応しています。
- Stable Diffusion WebUI (AUTOMATIC1111 版)
- Stable Diffusion WebUI (Forge 版)
- ComfyUI
など
モデル管理
- モデルブラウザ機能:
- CivitAI や HuggingFace からモデルを直接インポート可能。
- モデルタイプに応じて適切なフォルダに自動配置。
- メタデータやプレビュー画像の自動ダウンロード。
- ローカルモデルの管理:
- モデルをドラッグ&ドロップでインポート可能。
- CivitAI メタデータやプレビューサムネイルを既存モデルに紐付ける機能。
拡張機能の管理
- プラグインや拡張機能:
- Stable Diffusion WebUI (AUTOMATIC1111 版)、ComfyUI などの拡張機能やプラグインを簡単にインストール・管理。
- Pythonライブラリの管理:
- 各パッケージごとに Python 依存関係を自動でインストール・更新。
統合インターフェース
- Inference 機能:
- Stability Matrix に組み込まれた画像生成用インターフェース。
- 自動補完機能や構文ハイライトを備えたプロンプトエディタ。
- 作業スペースをタブ形式で管理し、プロジェクトファイル(
.smproj
) として保存・読み込み可能。 - 生成画像にはプロジェクトメタデータを埋め込み、再現性を向上。
- ギャラリー画像やファイルをドラッグ&ドロップでノードやステートをロード可能。
ライセンス
Stability Matrix のソースコードは、GNU Affero General Public License (AGPL-3.0) の下で公開されています。バイナリや実行可能リリースは、エンドユーザーライセンス契約(EULA)の下で提供されます。
Windows 用 Stability Matrix のインストール
システム要件
ハードウェア要件
Stable Diffusion をローカル環境で動かすには、基本的には GPU が必要ですが、Stable AI 社のページや Stable Diffusion の GitHub、あるいは Stability Matrix の GitHub では ハードウェア要件について明記されているドキュメントは見つけられませんでした。
検索すると様々な情報が出てきます。まとめると以下のような感じでしょうか
- GPU:NVIDIA製 GPU (CUDA 対応)、VRAM 8GB 以上 とされている情報が多いですが、最低 2GB や 4GB といった情報も散見されます。
- CPU : できるだけ新しい Intel または AMD プロセッサ
- メモリ: 8GB (16GB以上推奨 となっている情報が多いです。)
- ストレージ:数十GB 以上の空き容量 (ローカルに保持しておくモデルやパッケージによっては 20GB では足りないかもしれません。)
この記事では、別で紹介した以下の環境で、どの程度動くかについて確認しています。
私がテストした環境
OS | Windows11 Pro 64bit |
CPU | Intel Core i5-9500 3.00GHz |
メモリ | 40 GB |
ストレージ | 1 TB (M.2 NVMe SSD) |
GPU | NVIDIA GeForce RTX 3050 (VRAM : 6GB / LowProfile 版) |
必要なソフトウェアの準備
OS 以外は 不要。
Stability Matrix は、Python や Git といった外部ツールを別途インストールする必要がありません。
Stability Matrix よる環境準備
画像生成に必要なもの
Stable Diffusion + Stability Matrix で画像を生成する際に最低限必要なものは以下です。
- パッケージ
- いわゆる Web UI や GUI に関連します。
- Stability Matrix のナビゲーション – [パッケージ] – 下にある [+パッケージの追加] から可能です。インストールはワンクリックで進行し、必要な Python ライブラリや依存関係も自動でセットアップされます。
Stability Matrix 上の Inference を利用する場合は ComfyUI をインストールしておく必要があります。
- モデル (Checkpoint / チェックポイント)
- Stable Diffusion 利用するモデルです。
- Stability Matrix のナビゲーション – [Model Browser] からダウンロードできます。
- 別途ブラウザでダウンロードしておき、それを Stability Matrix の UI にドラックアンドドロップ、あるいは C:\StabilityMatrix\Data\Models\StableDiffusion に手動で配置する形でも利用可能です。
Stability Matrix のダウンロードとインストール
1. Stability Matrix の公式 GitHub リポジトリ にアクセスします。
2. スクロールダウンして、Stability Matrix 画像下の [Windows 10, 11] のボタンをクリックし、ZIP ファイルをダウンロードします。
3. この後は Portable モードでインストールするため、Stability Matrix をインストールしたいフォルダを作成します。(例: C:\StabilityMatrix)
このフォルダやパスには日本語などのマルチバイトの文字列が含まれないようにしたほうがトラブルが少ないです。
用意したフォルダに、ダウンロードした ZIP ファイルを解凍し、ZIP 内の StabilityMatrix.exe を用意したフォルダに配置します。
4. StabilityMatrix.exe を実行します。
5. ウィザードに従って進めます。
ここでは Portable モードでのインストールとしています。
Portable モードでは、すべてのデータと設定はアプリケーションと同じフォルダに保存されます。アプリケーションと、その「Data」フォルダを一緒に移動させることで、別のフォルダや別のコンピュータに移すことができます。
統計情報の送付について同意するかどうか選択します。同意する場合は [Share Analytics] をクリック。
ここでは インストール時に Stable Diffusion WebUI (AUTOMATIC1111 版) のパッケージもインストールしておきます。
(スキップしてあとからもインストールできます。)
推奨モデルのインストールの画面では、何も選択せずに [閉じる] としておきます。
ダウンロードおよびインストールが行われるので待ちます。
インストール完了
6. Stability Matrix と Stable Diffusion WebUI (AUTOMATIC1111 版) のパッケージ のインストールは完了しましたが、このままでは画像生成できないので、次はモデル(Checkpoint) をインストールします。
Stability Matrix のナビゲーション – [Model Browser] – yayoi で検索し、表示された [yayoi_mix] をクリックして、[インポート] をクリックします。
チェックポイントファイルは、ライセンスが設定されているので、利用する際は確認してください。
詳細は、チェックポイントを右クリックして [CivitAI で開く] をクリックし、ブラウザで開いた先の画面の右下にあります。
yayoi_mix は、『CreativeML Open RAIL-M』の範囲でライセンスされる となっています。
7. Inference をいずれ使おうと思うので、ComfyUI もインストールしておきます。
Stability Matrix のナビゲーション – [パッケージ] – 下のほうの [+パッケージの追加] – ComfyUI を探してクリック – インストール
(参考までに、ここまでのインストールで 13.5 GB 程度のディスク容量を使いました。)
試しに画像を生成してみる
細かいところは別途記載したいと思いますが、とりあえず、Stable Diffusion WebUI (AUTOMATIC1111 版) で画像を生成してみます。
(1) Stability Matrix ナビゲーション – パッケージ – [Stable Diffusion WebUI] – [Launch] ボタンをクリックします。ブラウザで WebUI が起動します。
(2) 左上の [Stable Diffusion checkpoint] で、yahoiMix_v25.safetensors を選択します。
(3) [txt2img] のタブの Prompt に “a girl
" と入力します。
(4) 他はデフォルトのままで、[Generate] をクリックします。私の環境だと 10秒かからず画像が生成されました。
(5) もう少しプロンプトを工夫してみます。
その前に、比較のため Seed は固定しておきます。生成された画像の下にその画像を生成した際のパラメータなどが表示されているので、Seed の数字をコピーして、左側の Seed 欄にペーストします。
(6) プロンプトを以下のように変更して生成します。
Prompt : a girl, high resolution, professional photography quality
Negative Prompt : low quality, cartoonish, painting, digital art, illustration, anime, 2D art, sketch, watercolor, flat colors, stylized, low quality, blurry focus on the subject, deformed, disfigured, grainy, overexposed, abstract
生成された画像は以下です。より写真っぽくなりました。
まとめ
Stability Matrix は、Stable Diffusion による画像生成 AI の実行環境の用意、管理を簡単に行える強力なツールです。
モデルやプロンプトを変えた場合などについては、別の記事で記載したいと思います。
参考となれば幸いです
▼ 関連記事