can i use this with guff weights i tried with but the output is blur

#1
by 7iFiNalBoSS - opened
from diffusers import WanImageToVideoPipeline, UniPCMultistepScheduler, GGUFQuantizationConfig, WanTransformer3DModel
from huggingface_hub import hf_hub_download
from PIL import Image
import requests
from io import BytesIO
from diffusers.utils import export_to_video

# ==============================
# GGUF Model Paths
# ==============================
REPO_ID = "QuantStack/Wan2.2-I2V-A14B-GGUF"
HIGH_NOISE_GGUF = "HighNoise/Wan2.2-I2V-A14B-HighNoise-Q2_K.gguf"
LOW_NOISE_GGUF = "LowNoise/Wan2.2-I2V-A14B-LowNoise-Q2_K.gguf"

high_noise_path = hf_hub_download(repo_id=REPO_ID, filename=HIGH_NOISE_GGUF)
low_noise_path  = hf_hub_download(repo_id=REPO_ID, filename=LOW_NOISE_GGUF)

print("Loading quantized transformers...")
transformer_high_noise = WanTransformer3DModel.from_single_file(
    high_noise_path,
    quantization_config=GGUFQuantizationConfig(compute_dtype=torch.bfloat16),
    config="FastDM/Wan2.2-I2V-A14B-Merge-Lightning-V1.0-Diffusers",
    subfolder="transformer",
    torch_dtype=torch.bfloat16,
)

transformer_low_noise = WanTransformer3DModel.from_single_file(
    low_noise_path,
    quantization_config=GGUFQuantizationConfig(compute_dtype=torch.bfloat16),
    config="FastDM/Wan2.2-I2V-A14B-Merge-Lightning-V1.0-Diffusers",
    subfolder="transformer_2",
    torch_dtype=torch.bfloat16,
)

print("Creating sharded pipeline...")
pipe = WanImageToVideoPipeline.from_pretrained(
    "Wan-AI/Wan2.2-I2V-A14B-Diffusers",
    transformer=transformer_high_noise,   # High noise
    transformer_2=transformer_low_noise,  # Low noise
    torch_dtype=torch.bfloat16,
)

# Replace scheduler
pipe.scheduler = UniPCMultistepScheduler.from_config(pipe.scheduler.config, flow_shift=8.0)

# ==============================
# Shard across multiple GPUs
# ==============================
device_map = {
    "transformer": "cuda:0",     # put high-noise transformer on GPU 0
    "transformer_2": "cuda:1",   # put low-noise transformer on GPU 1
    "vae": "cuda:0",             # keep VAE with transformer on GPU 0
    "text_encoder": "cuda:0",    # relatively small, put with GPU 0
    "scheduler": "cpu"           # scheduler is lightweight, keep on CPU
}

pipe = pipe.to(device_map)

print("Loading input image...")
image_url = "https://cloud.inference.sh/u/4mg21r6ta37mpaz6ktzwtt8krr/01k1g7k73eebnrmzmc6h0bghq6.png"
img = Image.open(BytesIO(requests.get(image_url).content)).convert("RGB")

print("Generating video...")
frames = pipe(img, "animate", num_inference_steps=40, guidance_scale=3.5).frames[0]

export_to_video(frames, "wan2.2_sharded.mp4", fps=8)
print("βœ… Video saved: wan2.2_sharded.mp4")```





FastDM-Models org
from diffusers import WanImageToVideoPipeline, UniPCMultistepScheduler, GGUFQuantizationConfig, WanTransformer3DModel
from huggingface_hub import hf_hub_download
from PIL import Image
import requests
from io import BytesIO
from diffusers.utils import export_to_video

# ==============================
# GGUF Model Paths
# ==============================
REPO_ID = "QuantStack/Wan2.2-I2V-A14B-GGUF"
HIGH_NOISE_GGUF = "HighNoise/Wan2.2-I2V-A14B-HighNoise-Q2_K.gguf"
LOW_NOISE_GGUF = "LowNoise/Wan2.2-I2V-A14B-LowNoise-Q2_K.gguf"

high_noise_path = hf_hub_download(repo_id=REPO_ID, filename=HIGH_NOISE_GGUF)
low_noise_path  = hf_hub_download(repo_id=REPO_ID, filename=LOW_NOISE_GGUF)

print("Loading quantized transformers...")
transformer_high_noise = WanTransformer3DModel.from_single_file(
    high_noise_path,
    quantization_config=GGUFQuantizationConfig(compute_dtype=torch.bfloat16),
    config="FastDM/Wan2.2-I2V-A14B-Merge-Lightning-V1.0-Diffusers",
    subfolder="transformer",
    torch_dtype=torch.bfloat16,
)

transformer_low_noise = WanTransformer3DModel.from_single_file(
    low_noise_path,
    quantization_config=GGUFQuantizationConfig(compute_dtype=torch.bfloat16),
    config="FastDM/Wan2.2-I2V-A14B-Merge-Lightning-V1.0-Diffusers",
    subfolder="transformer_2",
    torch_dtype=torch.bfloat16,
)

print("Creating sharded pipeline...")
pipe = WanImageToVideoPipeline.from_pretrained(
    "Wan-AI/Wan2.2-I2V-A14B-Diffusers",
    transformer=transformer_high_noise,   # High noise
    transformer_2=transformer_low_noise,  # Low noise
    torch_dtype=torch.bfloat16,
)

# Replace scheduler
pipe.scheduler = UniPCMultistepScheduler.from_config(pipe.scheduler.config, flow_shift=8.0)

# ==============================
# Shard across multiple GPUs
# ==============================
device_map = {
    "transformer": "cuda:0",     # put high-noise transformer on GPU 0
    "transformer_2": "cuda:1",   # put low-noise transformer on GPU 1
    "vae": "cuda:0",             # keep VAE with transformer on GPU 0
    "text_encoder": "cuda:0",    # relatively small, put with GPU 0
    "scheduler": "cpu"           # scheduler is lightweight, keep on CPU
}

pipe = pipe.to(device_map)

print("Loading input image...")
image_url = "https://cloud.inference.sh/u/4mg21r6ta37mpaz6ktzwtt8krr/01k1g7k73eebnrmzmc6h0bghq6.png"
img = Image.open(BytesIO(requests.get(image_url).content)).convert("RGB")

print("Generating video...")
frames = pipe(img, "animate", num_inference_steps=40, guidance_scale=3.5).frames[0]

export_to_video(frames, "wan2.2_sharded.mp4", fps=8)
print("βœ… Video saved: wan2.2_sharded.mp4")```

Please try to set guidance_scale=1.0 and num_inference_steps=4,

Sign up or log in to comment