diffusers/tools
1128
1#!/usr/bin/env python32from diffusers import StableDiffusionPipeline, KDPM2DiscreteScheduler, StableDiffusionImg2ImgPipeline, HeunDiscreteScheduler, KDPM2AncestralDiscreteScheduler, DDIMScheduler, DPMSolverMultistepScheduler3import time4import os5from huggingface_hub import HfApi6# from compel import Compel7import torch8import sys9from pathlib import Path10import requests11from PIL import Image12from io import BytesIO13 14# path = sys.argv[1]15path = "gsdf/Counterfeit-V2.5"16# path = "stabilityai/stable-diffusion-2-1"17 18api = HfApi()19start_time = time.time()20pipe = StableDiffusionPipeline.from_pretrained(path, torch_dtype=torch.float16)21pipe.scheduler = DPMSolverMultistepScheduler.from_config(22 pipe.scheduler.config, use_karras_sigmas=True23)24pipe = pipe.to("cuda")25 26pipe.load_lora_weights(".", weight_name="light_and_shadow.safetensors")27 28prompt = "masterpiece, best quality, 1girl, at dusk"29negative_prompt = ("(low quality, worst quality:1.4), (bad anatomy), (inaccurate limb:1.2), "30 "bad composition, inaccurate eyes, extra digit, fewer digits, (extra arms:1.2), large breasts")31 32pipe.enable_xformers_memory_efficient_attention()33images = pipe(prompt=prompt, 34 negative_prompt=negative_prompt, 35 width=512, 36 height=768, 37 num_inference_steps=15, 38 num_images_per_prompt=4,39 cross_attention_kwargs={"scale": 0.5},40 generator=torch.manual_seed(0)41).images42 43 44for i, image in enumerate(images):45 file_name = f"aa_{i}"46 path = os.path.join(Path.home(), "images", f"{file_name}.png")47 image.save(path)48 49 api.upload_file(50 path_or_fileobj=path,51 path_in_repo=path.split("/")[-1],52 repo_id="patrickvonplaten/images",53 repo_type="dataset",54 )55 print(f"https://huggingface.co/datasets/patrickvonplaten/images/blob/main/{file_name}.png")56 