錬金術の道を始めるための乳母レベルの Stable Diffusion 導入チュートリアル | JD Cloud テクニカル チーム

ME1688463891876.jpg

市場には、DALL-E、Midjourney、NovelAI など、AI ペイントに使用できるアプリケーションが多数あります。それらのほとんどはクラウド サーバー上で実行され、一部のアプリケーションでは、描画のための追加クォータを購入するために会費を支払う必要があります。 。2022 年 8 月に、Stable Diffusion と呼ばれるアプリケーションが、アルゴリズムの反復を通じて AI ペイントの精細さを新たなレベルに引き上げ、数秒で出力を完了することができ、「コンシューマ グレード」のグラフィック カードを搭載したコンピュータで実行できます。

安定拡散により、アニメーション風、イラスト縦描き、水墨画、3Dモデリング、フォトリアルなイメージなど、さまざまなスタイルの作品を描くことができ、また、LoRaやControlNetなどの派生機能を活用することで、正確な表現も可能です。アートスタイル、キャラクターの詳細、ポーズ、アクション、構図などを制御します。さらに重要なのは、完全にオープンソースであるということです。つまり、プログラム全体を自分のコンピュータに展開でき、それを使って描画したり描画したりすることが完全に無料で無制限です。市場にある商用グレードの AI ペイント アプリケーションのほとんどは、SD に基づいて開発されています。

Stable Diffusion は非常に使いやすいものですが、描画のためのコンピューティング能力を提供するために十分強力な独立したグラフィックス カードを必要とする特定の構成要件がまだあります。実は、「よく走る」と「よく遊ぶ」は別の体験であり、演算能力の違いはAIが描画する際の効率に大きく影響します。コンピューターの緊急構成による深層拡散。ちょっと待ってください。JD Cloud をご存知ですか? JD Cloud GPU クラウド ホストは、GPU コンピューティング能力を提供するエラスティック コンピューティング サービスであり、スーパー並列コンピューティング機能を備えており、ディープ ラーニング、科学技術コンピューティング、グラフィックスと画像処理、ビデオ エンコードとデコードなどのシナリオで広く使用されています。コンピューティングのプレッシャーを効果的に軽減し、ビジネス効率を向上させ、異種コンピューティング アプリケーションを迅速に構築できるように柔軟に拡張できます。

一連の調査を経て、JD Cloud GPU クラウド ホストの助けを借りて、Stable Diffusion WebUI と関連ツールとプラグインをデプロイおよびインストールするための、ゼロベースの非常に使いやすいチュートリアルのセットをまとめました。確認してください。それはアウトです。

1. GPU ホスト インスタンスを作成する

1.1 GPU クラウド ホストの作成

JD Cloud GPU クラウド ホストの標準構成には、 Tesla P40 24G グラフィックス カード、12 コア 48G が含まれており、Stable Diffusion の実行エクスペリエンスは非常に優れています。推奨構成は次のとおりです。

構成 お勧め 説明する
システム Ubuntu 20.04 64 ビット
仕様 GPU 標準 pn - p.n1p40.3xlarge 12 コア 48G Nvidia Tesla P40 24G ビデオ メモリ
システムディスク 100グラム システムディスク推奨 100G
帯域幅 5M 5M推奨

1.2 セキュリティグループを作成してバインドする

まず、左側メニューの[セキュリティグループ]でセキュリティグループを作成し、[受信ルール]と[送信ルール]にそれぞれポート7860、7861、8080、8888を追加して開きます。このうち
画像.png
、インスタンスの詳細で[セキュリティグループ]-[セキュリティグループのバインド]をクリックし、新しく作成したセキュリティグループをバインドします。

2. 環境のインストール

2.1 GPUドライバーをインストールする

グラフィックス カードのモデル、オペレーティング システム、および CUDA に基づいて、NVIDIA 公式 Web サイトでドライバーのバージョンを確認してください。公式 Web サイトのクエリ リンクhttps://www.nvidia.com/Download/index.aspx?lang=en-us
ここで CUDA のバージョンに注意してください。CUDA がインストールされていない場合は、最初にバージョンを選択してから CUDA をインストールできます後で。
画像.png

「検索」をクリックします

画像.png
上の図に示すように、適切なバージョンは 510 であることがわかります。その後、apt を使用して対応するドライバー バージョンをインストールできます。apt を使用してインストールするとより便利です。

# 安装510版本驱动
apt install nvidia-driver-510
# 查看驱动信息
nvidia-smi

インストールが成功すると、次のプロンプト情報が表示されます。

画像.png

2.2 CUDAのインストール

NVIDIA 開発者 Web サイトにアクセスし、最初に CUDA バージョンを選択し (バージョンは 2.1 の GPU ドライバーでサポートされている CUDA バージョンに対応する必要があります)、次にオペレーティング システムに応じて対応する CUDA インストール コマンドを選択します。リンク https:// にアクセスしてください。開発者.nvidia.com/cuda-toolkit-archive

画像.png

上記のインストールに従って、選択したドライバーに対応する CUDA バージョンが 11.6 であることを確認し、インストール コマンドに従ってインストールします。次のコマンドは、Ubuntu 20.04 x86_64、GPU ドライバー バージョン 510 に適用されます。

wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-ubuntu2004.pin
sudo mv cuda-ubuntu2004.pin /etc/apt/preferences.d/cuda-repository-pin-600
wget https://developer.download.nvidia.com/compute/cuda/11.6.2/local_installers/cuda-repo-ubuntu2004-11-6-local_11.6.2-510.47.03-1_amd64.deb
sudo dpkg -i cuda-repo-ubuntu2004-11-6-local_11.6.2-510.47.03-1_amd64.deb
sudo apt-key add /var/cuda-repo-ubuntu2004-11-6-local/7fa2af80.pub
sudo apt-get update
sudo apt-get -y install cuda

2.3 Python 3.10のインストール

Stable Diffusion WebUI は現在、少なくとも Python 3.10 をサポートしているため、バージョン 3.10 を直接インストールし、次のコマンドをインストールします。

	apt install software-properties-common
	add-apt-repository ppa:deadsnakes/ppa
	apt update
	apt install python3.10
	python3.10 --verison

PIP は国内ソースを設定します。デフォルトのソースは海外であるため、インストール中にタイムアウトなどの問題が頻繁に発生する可能性があります。国内ソースを使用すると、パッケージのダウンロードがタイムアウトする状況を大幅に回避できます。次の内容をファイルにコピーします~/.pip/pip.conf。そのようなファイルがない場合は、最初に作成しますtouch ~/.pip/pip.conf

	[global] 
	index-url = https://pypi.tuna.tsinghua.edu.cn/simple
	[install]
	trusted-host = https://pypi.tuna.tsinghua.edu.cn  

2.4 アナコンダのインストール

アナコンダはかなりお勧めです。Anacondaはパッケージの取得や管理が容易で、Python環境のディストリビューション版を一元管理できます。インストールコマンドも簡単です。

	wget https://repo.anaconda.com/archive/Anaconda3-2023.03-1-Linux-x86_64.sh
	bash ./Anaconda3-2023.03-1-Linux-x86_64.sh

Python3.10.9環境を作成して利用する

	conda create -n python3.10.9 python==3.10.9
	conda activate python3.10.9

2.5 PyTorch のインストール

まず、PyTorch 公式 Web サイトで、Torch の対応する CUDA バージョンを確認します (例: 上記 2.2 章では、CUDA 11.6 には pytorch1.13.1 をインストールする必要があります)

# 使用conda安装,两种安装方式二选一
conda install pytorch==1.13.1 torchvision==0.14.1 torchaudio==0.13.1 pytorch-cuda=11.6 -c pytorch -c nvidia

# 使用pip安装,两种安装方式二选一
pip install torch==1.13.1+cu116 torchvision==0.14.1+cu116 torchaudio==0.13.1 --extra-index-url https://download.pytorch.org/whl/cu116

3. 安定した拡散 WebUI を導入する

3.1 安定した拡散ウェブUIをダウンロードする

Python3.10 環境が最初にアクティブ化されることに注意してください。

conda activate python3.10.9

次に、stable-diffusion-webuiをダウンロードします。

git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git

3.2 インストールの依存関係

cd で、stable-diffusion-webui ディレクトリに移動し、対応する依存関係をインストールします。ネットワークへのアクセスがタイムアウトしたり、失敗したりした場合は、2.3 章に従って国内ソースの設定に注意してください。再度失敗した場合は、数回再試行してください。インストールを完了します。

cd stable-diffusion-webui
pip install -r requirements_versions.txt
pip install -r requirements.txt

3.3 安定した拡散ウェブUIを開始する

インストールが完了したら、次の起動コマンドを実行します。

python launch.py --listen --enable-insecure-extension-access

このステップでは、一般的に使用されるモデルをいくつかダウンロードします。ダウンロードが失敗した場合は、エラー メッセージに従って、huggingface.co からモデルをダウンロードし、対応するディレクトリに置きます。たとえば、stable-diffusion-v1-5 モデルをダウンロードし、検索して、https://huggingface.co/runwayml/stable-diffusion-v1-5/tree/main を見つけます。
画像.png

図のダウンロード ボタンをクリックして、v1-5-pruned-emaonly.safetensors をsteady-diffusion-webui/models/Stable-diffusion ディレクトリにダウンロードします。他のモデルについても同様です。

モデルのダウンロードが完了したら、startup コマンドを再度実行すると、ポート 7860 への接続が開始されたことが示され、IP+7860 ポート経由でアクセスできるようになります。
画像.png

パブリック ネットワークのアクセス パスワードを設定し、次のコマンドの username:password をユーザー名とパスワードに置き換えることをお勧めします。

python launch.py --listen --enable-insecure-extension-access --gradio-auth username:password

上記のコマンドはバックグラウンドでは実行されません。バックグラウンドで実行する必要がある場合は、nohup、tmux などのメソッドを使用して実現できます。

3.4 安定拡散を使用した画像の生成

モデルを /stable-diffusion-webui/models/Stable-diffusion ディレクトリにダウンロードします。モデルはhttps://civitai.com/ にあり、下の図で使用されている majicMIX 現実的モデルですダウンロードが完了したら、左上隅にある更新ボタンをクリックし、ダウンロードしたモデルを選択し、プロモートとパラメータを入力して画像を生成します。

画像.png

図で使用されているプロモートとパラメータをアタッチします

促す

1 girl a 24 y o woman, blonde, dark theme, soothing tones, muted colors, high contrast, look at at viewer, contrasty , vibrant , intense, stunning, captured in the late afternoon sunlight, using a Canon EOS R6 and a 16-35mm to capture every detail and angle, with emphasis on the lighting and shadows, late afternoon sunlight, 8K

否定的なプロンプト

(deformed, distorted, disfigured, doll:1.3), poorly drawn, bad anatomy, wrong anatomy, extra limb, missing limb, floating limbs, (mutated hands and fingers:1.4), disconnected limbs, mutation, mutated, ugly, disgusting, blurry, amputation, 3d, illustration, cartoon, flat , dull , soft, (deformed, distorted, disfigured:1.3), poorly drawn, bad anatomy, wrong anatomy, extra limb, missing limb, floating limbs,

その他のパラメータ

画像.png

4. よく使用される関連ツールとプラグイン

4.1 LoRa プラグインのインストール 追加のネットワーク

Lora の必須プラグインを使用すると、追加ネットワークを使用してチェックポイント + LoRa または複数の LoRa モデルを制御し、混合スタイルの画像を生成したり、LoRa モデルのウェイトを設定したりできます。インストール方法は次のとおりです。

Stable-diffusion-webui を開き、[拡張機能] - [URL からインストール] をクリックし、https://ghproxy.com/https ://github.com/kohya-ss/sd-webui-Additional-networks.git を入力します。

次に、[Install] をクリックし、[Installed] にインストールが表示されるまで待ち、コマンドを使用して (webui のリロードではなく) 直接安定したディフュージョン Webui を再起動します。すべてのプラグインがインストールされた後、多くの手間を省くことができます。

最後に、[設定]-[追加ネットワーク]をクリックして、LoRa フォルダーの絶対パス (/root/stable-diffusion-webui/models/Lora など) を入力し (たとえば、システム パスを入力してください)、[再読み込み] UI] を選択し、再起動が完了するまで待ちます。

画像.png

次に、[txt2img] または [img2img] で Lora モデルを選択し、使用するウェイトを設定します。

画像.png

4.2 ControlNetのインストール

Stable Diffusion に必須のプラグインである ControlNet を使用すると、ユーザーは生成された画像を細かく制御して、より優れた視覚効果を得ることができ、AI ペイントの制御性が質的に変化し、AGIC が本番環境で使用できるようになります。

Stable-diffusion-webui を開き、[拡張機能] - [URL からインストール] をクリックし、https://ghproxy.com/https
://github.com/Mikubill/sd-webui-controlnet.git と入力して [インストール] をクリックします。 [Installed] に表示されるまでインストールを待ち、コマンドを使用して直接 stack-diffusion-webui を再起動します (webui をリロードするのではありません)。

controlNetは多くのモデルを使用しているため、再起動時にデフォルトでダウンロードされますが、ダウンロードに失敗したりタイムアウトになった場合は、手動でcontrolnetディレクトリにダウンロードする必要があります。

huggingface.co にアクセスして、controlnet のアドレスを確認してください: https://huggingface.co/lllyasviel/ControlNet-v1-1/tree/main

画像.png

上記のモデル ファイルをsteady-diffusion-webui/extensions/sd-webui-controlnet/models ディレクトリに手動でダウンロードし、ダウンロードされた controlnet モデルを表示します。

画像.png

ダウンロード完了後、[txt2img] または [img2img] で使用するために、stable-diffusion-webui を再起動します。

画像.png

4.3 ジュピターノートブック

Jupyter Notebook は、Python コードを編集および実行し、結果を視覚化するために使用できる Web ベースの対話型環境です。同時に、基本的なファイルツリー操作機能も提供されます。

Anaconda が第 2.4 章でインストールされている場合は、次のコマンドを使用してノートブックを直接実行します。

jupyter notebook --allow-root --NotebookApp.token='设置你的token'

IP+8888 ポートにアクセスすると、ノートブックの使用を開始できます。

画像.png

4.4 モデル学習ツール Kohya_ss

Kohya_ss は、特に Windows プラットフォームで、安定拡散モデルのトレーニングに推奨されるビジュアル ツールとして認識されています。Linux 上で直接使用しようとすると、さまざまな環境問題が発生します。これらの問題を回避するには、docker を使用することを強くお勧めします。インストール。

まず、公式の docker ドキュメントに従って docker をインストールします。Ubuntu は docker ドキュメントをインストールします: https://docs.docker.com/engine/install/ubuntu/
GPU リソースは docker コンテナで使用する必要があるため、最初にインストールする必要がありますNVIDIA Container Toolkit

sudo apt-get update \
    && sudo apt-get install -y nvidia-container-toolkit-base

# 查看是否安装成功
nvidia-ctk --version

次に、kohya_ss をダウンロードします。

git clone https://github.com/bmaltais/kohya_ss.git

以下の図に示すように、kohya_ss/docker-compose.yaml ファイルのポートを次のように変更します0.0.0.0:7861:7860(7860 は Stable Diffusion WebUI によって占有されるため、kohya_ss のポート 7860 をホストのポート 7861 にマップします)。

起動パラメータは に設定されています"--username xxxx --password xxxx --headless"。xxxx を設定する必要があるアカウントのパスワードに置き換えることに注意してください。

画像.png

それから実行します

docker compose build # 首次执行需要build

docker compose run --service-ports kohya-ss-gui

プロセス中に、モデル ファイルはhuggingface.co からダウンロードされます。ダウンロードが失敗した場合は、ディレクトリ kohya_ss/.cache/user/huggingface/hub/models--openai--clip-vit に手動でダウンロードしてみてください。 -large-patch14/snapshots/8d052a0f05efbaefbc9e8786ba291cfdf93e5bff, 最終的なハッシュ値を対応するバージョンに変更することに注意してください。

ダウンロード アドレスhttps://huggingface.co/openai/clip-vit-large-patch14/tree/main、すべてのファイルをダウンロードすることに注意してください

画像.png

ダウンロードが完了したら、ポート +7861 にアクセスすると、Kohya_ss を使用してモデルのトレーニングを開始できます。

画像.png

V. まとめ

Stable Diffusion と上記の推奨プラグインをインストールすると、Stable Diffusion はすでに優れた生産性を備えています。今後も引き続き調査を続け、より多くの経験を皆さんと共有していきますので、この連載記事の次回のエピソードを楽しみにしていてください。JD Cloud GPU クラウド ホスト
を購入する新規ユーザーは、7 日間割引の 99 元 (1 時間あたり 0.59 元) のトライアル価格を利用して、すぐに錬金術の旅を始めることができます。

ME1688521750020.png
ME1688520180384.png

著者:京東科技王磊

出典: JD Cloud 開発者コミュニティ

人民大学の卒業生らが全学生の情報を盗んで美人採点サイトを構築、刑事拘束された NTアーキテクチャをベースにしたWindows版QQが正式リリース 米国は中国の利用を制限トレーニング AI モデルを提供する Amazon、Microsoft などのクラウド サービスの オープンソース プロジェクトが機能開発を停止すると発表 2023 年に最も高給の技術職であるLeaferJS がリリース: オープンソースの強力な 2D グラフィックス ライブラリである Visual Studio Code 1.80 が サポート端末画像機能 . スレッド登録数3,000万突破 「変化」 deepin、7月のApple M1データベースランキングに合わせてAsahi Linux採用 :Oracle急上昇、再びスコア拡大
{{名前}}
{{名前}}

おすすめ

転載: my.oschina.net/u/4090830/blog/10086984