前回の記事
今回は、IP-Adapter のスケールは未設定で行きます。つまり InstantStyle ではなく、通常の IP-Adapter ということになります。
まずは結果から
スクリプトは前回とほぼ一緒なので、後述に省略します。
ウサギが若干ネコに寄った感じがしますね
スクリプト全体
(折りたたみ)
各種インストール
!pip install git+https://github.com/huggingface/diffusers !pip install -U transformers accelerate peft
diffusers v0.27.2 には実装されていない機能を使うので main branch をインストールします!間違えないように!
各種モデルをロードする
import torch from diffusers import AutoPipelineForText2Image # ベースモデルをロードする pipe = AutoPipelineForText2Image.from_pretrained( "stabilityai/stable-diffusion-xl-base-1.0", torch_dtype=torch.float16 ).to("cuda") # IP-Adapter をロードする pipe.load_ip_adapter( "h94/IP-Adapter", subfolder="sdxl_models", weight_name="ip-adapter_sdxl.bin" )
IP-Adapter のスケールを設定する
# IP-Adapter のスケールを設定する # pipe.set_ip_adapter_scale(scale)
今回は未設定です。つまりデフォルト値が適用されると思います!
IP-Adapter に使用する画像をロードする
from diffusers.utils import load_image # IP-Adapter に使用する画像をロードする ip_adapter_image_url = "https://huggingface.co/datasets/huggingface/documentation-images/resolve/0052a70beed5bf71b92610a43a52df6d286cd5f3/diffusers/rabbit.jpg" ip_adapter_image = load_image(ip_adapter_image_url)
パイプラインを実行する
import torch # シードを設定する generator = torch.Generator(device="cpu").manual_seed(26) # パイプラインを実行する # 猫、傑作、最高品質、高品質 prompt = "a cat, masterpiece, best quality, high quality" negative_prompt = "text, watermark, lowres, low quality, worst quality, deformed, glitch, low contrast, noisy, saturation, blurry" images = pipe( prompt, negative_prompt=negative_prompt, ip_adapter_image=ip_adapter_image, guidance_scale=5, num_inference_steps=30, num_images_per_prompt=1, generator=generator, ).images
画像プロンプト

テキストプロンプト
a cat, masterpiece, best quality, high quality
実行結果を保存する
from datetime import datetime from zoneinfo import ZoneInfo # Asia/Tokyo タイムゾーンの現在時刻を YYYYMMDDhhmmss 形式で得る formattedNow = datetime.now(tz=ZoneInfo("Asia/Tokyo")).strftime("%Y%m%d%H%M%S") for idx, image in enumerate(images): # 実行結果 image.save(f"image_{formattedNow}_{idx}_{generator.initial_seed()}.png")
まとめ
スタイルレイヤー(up) も レイアウトレイヤー(down) も指定しない場合を試してみました。
ほぼ画像プロンプトの見た目で、ネコが適用された感じがします。
スタイルレイヤー(up) では、完全にネコになり、
レイアウトレイヤー(down) では、服装も残りました。