Stable Diffusion を PC にローカルにインストールする こともできますが、一般的なプロセスでは、インストールして使用するためにコマンド ラインを使用した多くの作業が必要になります。私たちにとって幸運なことに、Stable Diffusion コミュニティがその問題を解決してくれました。グラフィカル ユーザー インターフェイスを使用してローカルで実行されるバージョンの Stable Diffusion をインストールする方法は次のとおりです。
安定拡散とは何ですか?
Stable Diffusion は、 MidJourney や DALL-E 2 と同様に、テキスト プロンプトから画像を生成したり、テキスト プロンプトで既存の画像を変更したりできる AI モデルです。これは、2022 年 8 月に Stability.ai によって初めてリリースされました。 何千もの異なる単語を理解し、想像力が思い描くほぼすべてのイメージをほぼすべてのスタイルで作成するために使用できます。
ただし、Stable Diffusion を他の人気のある AI アート ジェネレーターのほとんどと区別する重要な違いが 2 つあります。
- PC上でローカルに実行 できます
- オープンソースプロジェクトです
最後の点がここで本当に重要な問題です。従来、 Stable Diffusion はコマンドライン インターフェイスを介してインストールされ、実行されます 。それは機能しますが、扱いにくく、直感的ではない可能性があり、興味を持っている人にとっては大きな参入障壁になります。しかし、これはオープンソース プロジェクトであるため、コミュニティはすぐに複数のユーザー インターフェイスを作成し、ビデオ RAM ( VRAM ) の使用量を最小限に抑えたり、アップスケーリングやマスキングを組み込んだりするための最適化など、独自の拡張機能を追加し始めました。
このバージョンの Stable Diffusion を実行するには何が必要ですか?
Stability.ai によって作成および維持されるメイン リポジトリ (リポジトリ) の Stable Diffusion の 2 つの異なるフォーク (派生) について説明します。どちらも グラフィカル ユーザー インターフェイス (GUI) を備えており、 コマンドライン インターフェイス のみを備えた通常の Stable Diffusion よりも使いやすくなっており、セットアップのほとんどを自動的に処理するインストーラーも備えています。どちらも同じ基本機能を提供しますが、ユーザー エクスペリエンスはまったく異なります。 AUTOMATIC1111 の WebUI は非常に直感的で、学習と使用が最も簡単ですが、ComfyUI は、パワー ユーザーや複数のモデルを連結したい人にとって魅力的な、興味深く強力なノードベースのユーザー インターフェイスを提供します。
いつものように、GitHub で見つけたソフトウェアのサードパーティ フォークには注意してください。私たちはこれらをしばらくの間問題なく使用しており、他の何千ものものも同様に使用しているため、安全であると言えます。幸いなことに、ここでのコードと変更は、オープンソース プロジェクトのいくつかのフォークに比べて小さいです。
これらのフォークには、RAM の少ない PC 上での実行を可能にするさまざまな最適化、GFPGAN、ESRGAN、RealESRGAN、CodeFormer を使用した組み込みのアップスケーリング機能とフェイシャル機能、およびマスキングも含まれています。マスキングは非常に重要です。これにより、他の部分を歪めることなく、画像の特定の部分に AI 画像生成を選択的に適用できます。このプロセスは通常、修復と呼ばれます。
-
ハードドライブに少なくとも 10 GB の空き領域がある
- ComfyUI と AUTOMATIC1111 の WebUI の両方を使用する場合は、同じ Python 環境とチェックポイントを再利用してスペースを節約できます。
- それらを個別にインストールすることもできますが、その方がはるかに簡単です。
-
6 GB の RAM を搭載した NVIDIA GPU (ただし、4 GB でも動作する可能
性が
あります)
- SDXL では、より大きな画像を生成するにはさらに多くの RAM が必要になります。
- AMD GPU を動作させることはできますが、工夫が必要です
- Windows 11、Windows 10、Windows 8.1、または Windows 8 を実行している PC
-
の一つ:
- AUTOMATIC1111 による WebUI GitHub リポジトリ
- 快適なUI
- Python 3.10.6 (互換性の問題がないことを確認するには、このバージョンを使用してください)
- Stable Diffusion の公式チェックポイント (新しいバージョンに注目してください!)
- 必要な 追加モデル 。必要な数だけ使用することも、少なく使用することもできます。
GUI を使用して Stable Diffusion をインストールする方法
インストール プロセスは大幅に合理化されましたが、インストーラーを使用する前に手動で実行する必要がある手順がまだいくつかあります。
最初に Python をインストールする
最初に行う必要があるのは、リポジトリの作成者が推奨する Python のバージョン 3.10.6 をインストールする ことです。そのリンクに移動し、ページの一番下に向かってスクロールして、「 Windows インストーラー (64 ビット) 」をクリックします。
ダウンロードした 実行可能ファイルをクリックし、プロンプトに進みます。すでに Python がインストールされている場合 (そしておそらくインストールされているはずです)、「アップグレード」をクリックするだけです。それ以外の場合は、推奨されるプロンプトに従ってください。
Python 3.10.6 のオプションがある場合は、必ず PATH に追加してください。
Git をインストールし、GitHub リポジトリをダウンロードする
Stable Diffusion インストーラーを実行する前に 、Windows に Git をダウンロードしてインストールする 必要があります。特別な意図がない限り、 64 ビット Git 実行可能ファイル をダウンロードして実行し、推奨設定を使用するだけです。
次に、GitHub から AUTOMATIC1111 の WebUI 、 ComfyUI 、またはその両方のファイルをダウンロードする必要があります。
AUTOMATIC1111 の WebUI を使用する場合は、緑色の「コード」ボタンをクリックし、メニューの下部にある「ZIP をダウンロード」をクリックします。
ComfyUI を試してみたい場合は、「 インストール 」セクションまで下にスクロールし、「ダウンロードへの直接リンク」をクリックします。
ファイル エクスプローラーまたは好みの ファイル アーカイブ プログラム でアーカイブ ファイルを開き、内容を任意の場所に抽出します。 Stable Diffusion を実行するにはこのフォルダーに移動する必要があることに注意してください。この例では、ファイルを C:\ ディレクトリに抽出しましたが、これは必須ではありません。
「stable-diffusion-webui-master」または「ComfyUI_windows_portable」を誤って空のスペースではなく別のフォルダーにドラッグしないように注意してください。ドラッグすると、意図した親フォルダーではなく、そのフォルダーにドロップされます。
すべてのチェックポイントをダウンロード
これが機能するために必要なチェックポイントがいくつかあります。最初の最も重要なものは 、安定拡散チェックポイント です。この記事の執筆時点では、AUTOMATIC1111 の WebUI はバージョン 1.5 のチェックポイントを自動的に取得します。 SDXL チェックポイントを使用する場合は、 手動でダウンロードする 必要があります。 ComfyUI はチェックポイントを自動的に取得しません。 絞り込みチェックポイントも取得 するとよいでしょう。厳密には必須ではありませんが、SDXL から得られる結果を向上させることができ、オンとオフを簡単に切り替えることができます。
チェックポイントのダウンロードは数ギガバイトです。それがすぐに完了することを期待しないでください。
チェックポイントをダウンロードしたら、正しいフォルダーに配置する必要があります。私たちが行ったことを正確に実行している場合、そのパスは AUTOMATIC1111 の WebUI の場合は「C:\stable-diffusion-webui\models\Stable-diffusion」、または AUTOMATIC1111 の WebUI の場合は「C:\ComfyUI_windows_portable\ComfyUI\models\checkpoints」になります。快適なUI。
これで選択肢が増えました。追加の機能を追加するモデル ( ESRGAN 、 Loras など) を追加できます。単純にアップスケーリングの品質を高めるものもあれば、アニメ、風景写真、写実的なポートレート、特定のアーティスト、その他想像できるほぼすべてのものなど、特定の種類の画像に対してより良い結果を与えるように設計されたものもあります。 ComfyUI と AUTOMATIC1111 の WebUI はどちらも、追加モデル用に適切な名前のフォルダーを作成します。ドラッグ アンド ドロップするだけで完了です。
あとは、ComfyUI または AUTOMATIC1111 の WebUI のバッチ ファイルを実行するだけです。そのインターフェースを使用する場合は、AUTOMATIC1111 のメイン WebUI フォルダーを開いて「webui-user.bat」をダブルクリックするか、ComfyUI フォルダーを開いて「run_nvidia_gpu.bat」をクリックして ComfyUI を実行します。
これを初めて実行するときは、少なくとも数分かかることが予想されます。インターネットから大量のものをダウンロードする必要があります。 1 つのステップで不当に長時間ハングしているように見える場合は、コンソール ウィンドウを選択して Enter キーを押してみてください。
二人ともそんな感じになるよ。
完了すると、コンソールに次のように表示されます。
ローカル URL で実行: http:// :7860 パブリック リンクを作成するには、`launch()` で `share=True` を設定します。
ComfyUI はローカルでホストされる Web インターフェイスであるため、同じ IP アドレスで実行されますが、7860 ではなく 8188 ポートで実行されます。
AUTOMATIC1111 の WebUI で安定拡散を使用して画像を生成する方法
これで、Stable Diffusion の WebUI バリアントがインストールされました。コンソールには、それが「ローカル URL: http://127.0.0.1:7860 で実行中」であることが表示されます。
それはいったい何を意味するのでしょうか、何が起こっているのでしょうか? 127.0.0.1 はローカルホスト アドレス 、つまりコンピュータ自体に与えられる IP アドレスです。このバージョンの Stable Diffusion は、ローカル PC 上に独自の IP アドレス経由でアクセスできるサーバーを作成しますが、これは正しい ポート 7860 経由で接続した場合に限られます。
ブラウザを開き、アドレスバーに「127.0.0.1:7860」または「localhost:7860」と入力し、Enter キーを押します。これは txt2img タブに表示されます。
以前に安定拡散を使用したことがある場合は、これらの設定に馴染みがあると思いますが、最も重要なオプションの意味を簡単に説明します。
- プロンプト: 作成したいものの説明。
- 画家のパレット ボタン: プロンプトにランダムな芸術的なスタイルを適用します。
- サンプリング ステップ: 出力を受け取る前に画像が調整される回数。一般的には多ければ多いほど良いのですが、利益は減少します。
- サンプリング方法: サンプリングの処理方法を決定する基礎となる数学。これらはいずれも使用できますが、euler_a と PLMS が最も一般的なオプションのようです。 PLMS の詳細については、この文書を参照してください。
- 顔を復元: GFPGAN を使用して、不気味な顔や歪んだ顔を修正しようとします。
- バッチ数: 生成される画像の数。
- バッチ サイズ: 「バッチ」の数。大量の VRAM がない限り、これを 1 に保ってください。
- CFG スケール: 安定した拡散が、プロンプトにどの程度注意深く従うか。数値が大きいほど、非常に慎重に従うことを意味し、数値が小さいほど、より創造的な自由が与えられます。
- 幅: 生成する画像の幅。
- 高さ: 生成する画像の幅。
- シード: 乱数発生器の初期入力を提供する数値。新しいシードをランダムに生成するには、-1 のままにしておきます。
「魔法の森の中のハイランド牛、35mm フィルム写真、鮮明」というプロンプトに基づいて 5 つの画像を生成し、オイラー サンプラー、40 サンプリング ステップ、および 5 の CFG スケールを使用して何が得られるかを見てみましょう。
ジョブに時間がかかりすぎる場合は、いつでも「中断」ボタンを押して生成を停止できます。
出力ウィンドウは次のようになります。
あなたのイメージは異なるでしょう。
左下の画像は、後でマスク処理を試すために使用する画像です。個人的な好み以外に、この特定の選択の理由はありません。好きな画像を取得します。
それを選択し、[Inpaint に送信] をクリックします。
インペイントのために作成したイメージをマスクする方法
インペインティングは素晴らしい機能です。通常、安定拡散はプロンプトからイメージ全体を作成するために使用されますが、修復を使用すると、イメージの一部を選択的に生成 (または再生成) できます。ここには 2 つの重要なオプションがあります: マスクされた修復、マスクされていない修復。
マスクされた修復はプロンプトを使用してハイライトした領域内に画像を生成しますが、マスクされていない修復はまったく逆のことを行い、マスクした領域のみが保持されます。
最初にマスクされた Inpaint について少し説明します。左クリックしたまま画像上でマウスをドラッグすると、画像の上に白いレイヤーが表示されることがわかります。置き換えたい部分の形を描き、必ず全体を塗りつぶしてください。領域を囲むのではなく、領域全体をマスクします。
既存の画像に何かを追加するだけの場合は、マスクされた領域を、作成しようとしているおおよその形状と一致させるようにすると役立つ場合があります。たとえば、円を描きたいときに三角形をマスクするのは逆効果です。
ハイランド牛の例を挙げて、彼にシェフの帽子を与えてみましょう。シェフの帽子の形に近い領域をマスクし、「バッチ サイズ」を 1 より大きく設定してください。理想的な (ような) 結果を得るには、おそらく複数が必要になります。
さらに、「Fill」、「Original」、または「Latent Nothing」ではなく、「Latent Noise」を選択する必要があります。シーン内にまったく新しいオブジェクトを生成する場合、最良の結果が得られる傾向があります。
わかりました。おそらく、シェフの帽子はハイランド牛にとって適切な選択ではないでしょう。あなたのハイランドカウは 20 世紀初頭の雰囲気にぴったりなので、山高帽をあげましょう。
なんてポジティブに小粋なんだろう。
もちろん、Inpaint Not Masked を使用してまったく逆のことを行うこともできます。概念的には似ていますが、定義する領域が逆になります。変更したい領域をマークアウトするのではなく、保持したい領域をマークアウトします。小さなオブジェクトを別の背景に移動したい場合に便利です。
ComfyUI で安定した拡散を使用する方法
ComfyUI は AUTOMATIC1111 の WebUI とは大きく異なりますが、結果を実際にカスタマイズしたい場合にはおそらくより便利です。 ComfyUI はノード上で実行されます。ノードベースのシステムがどのように機能するかよくわからない場合は、役立つかもしれない例えを次に示します。
ComfyUI が画像を生成するファクトリーであると想像してください。自動車を生産する工場に複数の機械があるのと同じように、工場内には、全体像を作成するためにさまざまな作業を行うさまざまな機械があります。 ComfyUI と Stable Diffusion の場合、いくつかの異なる「マシン」、つまりノードがあります。次のようになります。
実際より悪く見えます。各ノードの動作は次のとおりです。
- チェックポイントのロード: トレーニングされたモデルをロードします。
- クリップ テキスト エンコード: プロンプトを入力する場所。 2 つあるのは、Stable Diffusion に何を望むかを伝える肯定的なプロンプトと、何を避けるべきかを伝える否定的なプロンプトの両方があるためです。
- 空の潜在イメージ: 空白の (ノイズのある) イメージを作成します。
- KSampler: サンプラーを格納するノード。サンプラーは、ランダムなノイズを認識可能な「もの」に変換するプログラムの一部です。
- VAE デコード: 最終イメージを作成します。
- 画像を保存: イメージをハードドライブに書き込みます。
各ノードにはさまざまな接続ポイントがあり、工場内のさまざまな機械を接続するベルトコンベアと同じように、各ポイントに何を「差し込む」必要があるかを示します。したがって、「魔法の森の中のハイランド牛、35mm フィルム写真、シャープ」というプロンプトが必要な場合は、サンプラー ノードの「ポジティブ」位置に接続されているボックスに入力します。
スクリーンショット用に乱雑な部分を整理するために潜在イメージ ノードとモデル ノードを切断しましたが、安定した拡散が機能するには接続する 必要があります 。
「 Windows 上の GUI を使用して安定した拡散をローカルで実行する方法」に関するベスト動画選定!
次に、サンプラーで使用する設定を選択する必要があります。ここでは、選択した内容に応じて、大きく異なる結果が得られる可能性があります。
- シード: 画像内の元のノイズを生成するために使用される乱数。
- CFG: 安定拡散がプロンプトにどれだけ強く従うか。値が大きいほど、安定した拡散はより注意深くプロンプトに従います。
- ステップ: 画像を生成するためにサンプラーがノイズをサンプリングする回数。
- Sampler_name: ノイズのサンプリングに使用するサンプラー。通常、これらは異なる結果を生成するため、複数をテストしてください。
- Denoise: 修復とimg2imgに関連します。出力画像が入力画像にどの程度似ているかに関係します。値が大きいほど、類似性は高くなります。
「Empty Latent Image」ノードの高さと幅の値を調整して、出力イメージのサイズを変更します。 GPU のメモリが少ない場合は、512×512 から始めてください。ただし、12 GB (またはそれ以上) の VRAM がある場合は、問題なく 1024×1024 の画像を生成できるはずです。バッチ サイズを変更して、イメージ生成を開始するときに各プロンプトの複数のバリエーションを生成することもできます。
これで完了です。 「プロンプトをキュー」をクリックして、イメージの生成を開始します。アクティブな間、各ノードが点灯するのがわかります。
これが私たちが入手した画像の 1 つです。
ComfyUI は強力であり、 非常に 柔軟です。画像に対して追加の操作を実行する場合は、右クリックしてノードの追加を開始します。
モデル ノードと変更ノードは必要なだけ追加できますが、プロセスの各ステップ、追加するノードごとに計算時間が増加することに注意してください。 Stable Diffusion コミュニティは、結果を微調整できるようにするための、事前に構築されたノード配置 (通常はワークフローと呼ばれます) を大量に作成しました。いくつかの方法をテストしたところ、多くの場合、結果が大幅に改善されることがわかりました。いつものように、コミュニティ リソースのダウンロードと使用には注意してください。Stable Diffusion コミュニティはかなり安全ですが、注意しすぎることはありません。
AUTOMATIC1111 の WebUI で「CUDA メモリ不足」エラーを修正する方法
作成する画像が大きくなるほど、より多くのビデオ メモリが必要になります。最初に試してみる必要があるのは、より小さい画像を生成することです。安定した拡散により、256×256 で良好な画像が生成されます (かなり異なりますが)。
512×512 の画像に問題がないコンピュータでより大きな画像を作成したくてうずうずしている場合、またはさまざまな「メモリ不足」エラーが発生している場合は、構成にいくつかの変更を加えると役に立つでしょう。
メモ帳、またはその他のプレーン テキスト エディターで「webui-user.bat」を開きます
。 「webui-user.bat」を右クリックし、「編集」をクリックして、「メモ帳」を選択するだけです。
set COMMANDLINE_ARGS=
という行を特定します。ここに、Stable Diffusion の実行方法を最適化するコマンドを配置します。
巨大な画像を作成したいだけの場合、または GTX 10XX シリーズ GPU の RAM が不足している場合は、最初に
--opt-split-attention
を試してください。次のようになります。
次に、「ファイル」>「保存」をクリックします。または、キーボードで Ctrl+S を押すこともできます。
それでもメモリ エラーが発生する場合は、コマンド ライン引数 (COMMANDLINE_ARGS) のリストに
--medvram
を追加してみてください。
前のコマンドが役に立たなかった場合は、
--always-batch-cond-uncond
を追加して、追加のメモリ問題の修正を試みることができます。 VRAM の使用量をさらに削減できる
--medvram
の代替手段である
--lowvram
もありますが、それが実際に機能するかどうかは保証できません。
ユーザー インターフェイスの追加は、この種の AI 駆動ツールを誰でも利用できるようにするための重要な前進です。可能性はほぼ無限で、 AI アートに特化したオンライン コミュニティ をざっと見ただけでも、初期段階にあるテクノロジーがいかに強力であるかがわかります。もちろん、ゲーム用コンピューターを持っていない場合、またはセットアップについて心配したくない場合は、いつでも オンライン AI アート ジェネレーターのいずれかを 使用できます。エントリが非公開であると想定することはできないことに注意してください。





