見出し画像

簡単に画風LoRAが作れる『CoppyLora_webUI』Google colabノートブックとローカルビルド版(改)fanboxにて限定公開!

【はじめに】

簡単に言うと1枚のイラストを描くだけで、自分の絵柄でラフを線画化できる追加学習モデル(所謂Lora)が作れます。(カラーイラストやモノクロ陰影イラスト画風も学習できます)

ちなみに同じ手法でAI-Assistantのバケツ塗り、アニメ塗り、線画LoRAが作られていたりします(手動で微調整されていますが)
以下は以前同じ手法で学習させた絵柄の検証結果になります。

https://note.com/tori29umai/n/n75efe55cfebf

【アプリ制作の動機】

https://note.com/tori29umai/n/n9d80869570a7

先日、上記のようなアプリを公開したところ、多くの反響をいただきました。
絵を描く人たちの感想で一番多かったのが、自分の絵じゃないから実用できない、といったものでした。
この点に関しては私も同意で、生成AIがどうして悪用されるかを考えて、自分なりに「悪用しにくい、しかし自分の画風LoRAを作ることしかできない仕組みのアプリ」を作りました。
できることを制限し、わざと悪用しにくいような仕様にしましたが、『他人をだまして学習に使うイラストを描かせ』たりすることで悪用も可能です。
(そこまでする人がいるかはわかりませんが人の悪意は底知れないので)

そのため、今回はとても悩みましたが、ビルド版(ファイルをDLしてexeファイルをダブルクリックしたら使えるアプリ)は全体公開せず、fanbox会員限定にすることにしました。
アプリ自体のソースは公開しておくので、お金がない人は自分でビルドしたり設定ファイルを参照して自前で環境構築して下さい。
ご理解・ご協力よろしくお願い申し上げます。

正直、私以外のPCで動くかまだ未検証なので、これ目当てにfanbox加入はいったんお待ちくださいませ・・・!
デバック参戦してやんよ!って人のみ試してください~!

【2024/06/25】
普通にビルド失敗していました。デバック協力して下さった方々、このアプリに期待して下さった方々、本当にごめんなさい…。
代わりにGoogle Colabのノートブックをfanboxで配布します。

【2024/06/27】
ローカルビルド版のバグ修正終わりました。フォロワ三人の環境で動いたのでたぶん大丈夫だと思います・・・!


【公開場所】

【必要なもの】

・Googleのアカウント
・ネットがつながるPC、スマホ。
・↓の画像をベースに自分で描いた絵

例:

【規約】

ユーザーは、このソフトウェアを適切に利用し、法的な規制や他人の権利を侵害しないように注意する必要があります。ソフト開発者は、ユーザーがソフトウェアを適切に使用することに関して責任を負いません。
基本的には『手書きでやってはいけないことはAIでもやってはいけない』というルールで運用してください。

【ノートブック利用法】

①fanboxで公開しているCoogle colaboのURLを開く

②ランタイムのタイプをT4 GPUにする

ランタイム→ランタイムを変更
T4 GPU

③すべてのセルを実行を押して10分位待つ

④しばらく待ったら一番下のセルに
Running on public URL:http以下略
のようなURLが表示されるので、そこをクリックしてようやく起動です。
なおこのリンクは誰のPCからでもアクセスできるURLなので、念のため、公開しないよう気を付けて下さい

【ローカル版必要スペック】

簡単に言うと、ある程度高性能なグラフィックボードが搭載されたPCじゃないと動きません。
PCに詳しい方向けに言えば「CUDAに対応したRTX〇〇系GPUを積んだ環境推奨」となりますが、「PCにグラフィックボードが搭載されているかどうか分からない」「自分のPCで動くか自信がない」という方はこちらのアプリで判定してみてください。

ちなみにゲーミングノート
AMD Ryzen 7 5800HS 16GB 512GB RTX 3050 Laptop GPU・VRAM4GB
で1時間位でした!

【ローカルビルド版インストール方法】

①zipファイルをDLし適当な場所に解凍する

クソデカファイルです。
『パスが長すぎて解凍できません』的なエラーが出るときはWindows標準の解凍機能ではなく7-zipというアプリを使って解凍してください
CoppyLora_webUI_V1\CoppyLora_webUIのようにファイルが展開されるので
CoppyLora_webUIフォルダを適当な場所に配置してください。

②セキュリティーソフトの設定で、フォルダと実行ファイル名を除外リストに追加する

例:Windows Defenderの場合、Windows セキュリティ→ウイルスと脅威の防止→ウイルスと脅威の防止の設定→設定の管理→除外
CoppyLora_webUI.exe(プロセス)
E:\Documents\Freesoft\CoppyLora_webUI(フォルダ)
のように指定する。

③各種モデルDL

CoppyLora_webUI.exeを実行の前にに『CoppyLora_webUI_DL.cmd』を右クリックして管理者権限で実行して下さい。必要なモデルがDLされます。

失敗する場合はブラウザから以下を手動でDLして下さい。
models\animagine-xl-3.1.safetensors

models\copi-ki-base-b.safetensors
models\copi-ki-base-bnl.safetensors
models\copi-ki-base-c.safetensors
models\copi-ki-base-cnl.safetensors
models\copi-ki-kari.safetensors
models\merge_lora.safetensors
models\base_c_1024.png

④CoppyLora_webUI.exeを実行

exeファイルをそのままダブルクリックで起動できます。

【使い方】

①Base Image(今は変更不可、男の子バージョンも作る予定)
ギャップを学習させるベースとなる画像。
学習者はこの画像の女の子を模したイラストを描いてください。
(トラブルの原因になるので、許諾なしに他者に上記の女の子のイラストを描かせて勝手に学習させないで下さい)

②Input Image
学習させたい画風のイラスト。
線画、グレスケ(線画あり)、グレスケ(線画なし)、カラー(線画あり)、カラー(線画なし)
が入力できます。

③LoRa Name
学習させるファイルの名前になります。

④Mode

"Lineart"、"Grayscale"、"Grayscale_noline"、"Color"、"Color_nolineから選べます

⑤Train
学習を開始させるボタン。RTX3090で25分位かかります

⑥Download Output File
学習されたモデルをDLできます。学習されたモデルはoutputディレクトリに出力されます。

Google無料枠の場合、1時間ほど放置したらDownload Output Fileにファイルが表示されるのでそこからDLしてください。
おつかれさまでした!

【学習設定】

copi-ki_SDXL.toml

pretrained_model_name_or_path = "D:/Stable-diffusion/SDXL/animagine-xl-3.1.safetensors"
network_module = "networks.lora"
xformers = true
gradient_checkpointing = true
persistent_data_loader_workers = true
max_data_loader_n_workers = 12
enable_bucket = true
save_model_as = "safetensors"
lr_scheduler_num_cycles = 4
learning_rate =  1e-4
resolution =  "1024,1024"
train_batch_size = 2
network_dim = 16
network_alpha = 16
optimizer_type = "AdamW8bit"
mixed_precision = "fp16"
save_precision = "fp16"
lr_scheduler =  "constant"
bucket_no_upscale = true
min_bucket_reso = 64
max_bucket_reso = 1024
caption_extension = ".txt"
seed = 42
network_train_unet_only = true
no_half_vae = true
cache_latents = true
cache_latents_to_disk = true
cache_text_encoder_outputs = true
cache_text_encoder_outputs_to_disk = true

【ファイル構成】
画像を1024*1024、768*768、512*512にリサイズして、4000という名前のフォルダにいれる

accelerate launch ^
  --num_cpu_threads_per_process 12 ^
  sdxl_train_network.py ^
  --config_file="C:\sd-scripts\user_config\shadow03\copi-ki_SDXL.toml" ^
  --train_data_dir="C:\sd-scripts\user_config\shadow03\1girl_baketu" ^
  --output_dir=D:\Stable-diffusion\trainLoRa ^
  --output_name=copi-ki-baketu ^
  --max_train_steps 1000

【学習させたLoraの使い方】

AI-Assistant\models\Loraにファイルを保存して、
拡張UIモードでLoraを読み込んでください。(AI_Assistant_exUI.bat)で起動。

【ソース】


この記事が気に入ったらサポートをしてみませんか?