Views
No views yet






1from diffusers import FluxKontextPipeline
2from diffusers.utils import load_image, peft_utils
3import torch
4
5try: # A temp hack for some version diffusers lora loading problem
6 from diffusers.utils.peft_utils import _derive_exclude_modules
7
8 def new_derive_exclude_modules(*args, **kwargs):
9 exclude_modules = _derive_exclude_modules(*args, **kwargs)
10 if exclude_modules is not None:
11 exclude_modules = [n for n in exclude_modules if "proj_out" not in n]
12 return exclude_modules
13 peft_utils._derive_exclude_modules = new_derive_exclude_modules
14except:
15 pass
16
17pipe = FluxKontextPipeline.from_pretrained("HighCWu/FLUX.1-Kontext-dev-bnb-hqq-4bit", torch_dtype=torch.bfloat16)
18pipe.load_lora_weights("HighCWu/Jojo_lora_4bit_training_v2", weight_name="flux_kontext_jojo_style_lora_v2.safetensors", adapter_name="jojo")
19pipe.set_adapters(["jojo"], [1.0])
20pipe.to("cuda")
21
22# Load a source image (you can use any image)
23image = load_image("https://huggingface.co/datasets/black-forest-labs/kontext-bench/resolve/main/test/images/0003.jpg").resize((1024, 1024))
24
25# Prepare the prompt
26# The style_name is used in the prompt and for the output filename.
27style_name = "JojoV2"
28prompt = f"Turn this image into the style of JoJo's Bizarre Adventure. "
29
30# Run inference
31result_image = pipe(
32 image=image,
33 prompt=prompt,
34 height=1024,
35 width=1024,
36 guidance_scale=4.0,
37 num_inference_steps=28,
38).images[0]
39
40# Save the result
41output_filename = f"{style_name.replace(' ', '_')}.png"
42result_image.save(output_filename)
43
44print(f"Image saved as {output_filename}")