File size: 2,289 Bytes
69f6fc2 6d8ff37 78ed83d 2f0087d 78ed83d 6d8ff37 69f6fc2 b6badad b88c59f 69f6fc2 e990e13 69f6fc2 78ed83d 6d8ff37 9478dd2 e990e13 9478dd2 e990e13 6d8ff37 69f6fc2 a032108 6d8ff37 e990e13 6d8ff37 a032108 e990e13 9478dd2 a032108 e990e13 a032108 e990e13 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 |
#!/usr/bin/env python3
from diffusers import StableDiffusionPipeline, KDPM2DiscreteScheduler, StableDiffusionImg2ImgPipeline, HeunDiscreteScheduler, KDPM2AncestralDiscreteScheduler, DDIMScheduler
import time
import os
from huggingface_hub import HfApi
# from compel import Compel
import torch
import sys
from pathlib import Path
import requests
from PIL import Image
from io import BytesIO
path = sys.argv[1]
# path = "ptx0/pseudo-journey-v2"
api = HfApi()
start_time = time.time()
pipe = StableDiffusionPipeline.from_pretrained(path, torch_dtype=torch.float16)
pipe.enable_xformers_memory_efficient_attention()
# pipe.unet = torch.compile(pipe.unet)
# pipe = StableDiffusionImg2ImgPipeline.from_pretrained(path, torch_dtype=torch.float16, safety_checker=None)
# compel = Compel(tokenizer=pipe.tokenizer, text_encoder=pipe.text_encoder)
pipe = pipe.to("cuda")
prompt = "A lion in galaxies, spirals, nebulae, stars, smoke, iridescent, intricate detail, octane render, 8k"
# rompts = ["a cat playing with a ball++ in the forest", "a cat playing with a ball++ in the forest", "a cat playing with a ball-- in the forest"]
# prompt_embeds = torch.cat([compel.build_conditioning_tensor(prompt) for prompt in prompts])
# generator = [torch.Generator(device="cuda").manual_seed(0) for _ in range(prompt_embeds.shape[0])]
#
# url = "https://raw.githubusercontent.com/CompVis/stable-diffusion/main/assets/stable-samples/img2img/sketch-mountains-input.jpg"
# response = requests.get(url)
# image = Image.open(BytesIO(response.content)).convert("RGB")
# image.thumbnail((768, 768))
generator = torch.Generator(device="cpu").manual_seed(0)
# images = pipe(prompt=prompt, image=image, generator=generator, num_images_per_prompt=4, num_inference_steps=25).images
images = pipe(prompt=prompt, generator=generator, num_images_per_prompt=1, num_inference_steps=50).images
for i, image in enumerate(images):
file_name = f"bb_1_{i}"
path = os.path.join(Path.home(), "images", f"{file_name}.png")
image.save(path)
api.upload_file(
path_or_fileobj=path,
path_in_repo=path.split("/")[-1],
repo_id="patrickvonplaten/images",
repo_type="dataset",
)
print(f"https://huggingface.co/datasets/patrickvonplaten/images/blob/main/{file_name}.png")
|