Ghibli Stable-Diffusion-2.1 Base finetuning Quantization FP8

Version 1.0.0 License MIT Python 3.8+ PyTorch 2.0+ Diffusers 0.20+ OpenVINO 2023.0+

Quantizate from Base Model

Install Dependencies

pip install -q "optimum-intel[openvino,diffusers]" torch transformers diffusers openvino nncf optimum-quanto

Import Libraries

from diffusers import StableDiffusionPipeline, AutoencoderKL, UNet2DConditionModel, PNDMScheduler
from transformers import AutoTokenizer, CLIPTextModel, CLIPTokenizer
from optimum.intel import OVStableDiffusionPipeline
from optimum.intel import OVQuantizer, OVConfig, OVWeightQuantizationConfig
from transformers import QuantoConfig
from optimum.quanto import quantize, qfloat8
from diffusers import StableDiffusionPipeline
import torch
from nncf import CompressWeightsMode
import os

Load Base Model

model_id = "danhtran2mind/Ghibli-Stable-Diffusion-2.1-Base-finetuning"
device = "cuda" if torch.cuda.is_available() else "cpu"
dtype = torch.float16 if torch.cuda.is_available() else torch.float32

# Load PyTorch pipeline for FP8 quantization
pipeline_fp8 = StableDiffusionPipeline.from_pretrained(model_id, torch_dtype=dtype).to(device)

Define FLOĂT quantization configuration

# Define FP8 quantization configuration
quant_config = QuantoConfig(weights="float8", activations=None)

Processing and Save Quantization Model

# Quantize components
quantize(pipeline_fp8.vae, weights=qfloat8)
quantize(pipeline_fp8.text_encoder, weights=qfloat8)
quantize(pipeline_fp8.unet, weights=qfloat8)

# Save directory
save_dir_fp8 = "ghibli_sd_fp8"
os.makedirs(save_dir_fp8, exist_ok=True)

# Save the entire pipeline to ensure model_index.json is included
pipeline_fp8.save_pretrained(save_dir_fp8)

Usage

Install Dependencies

pip install -q "optimum-intel[openvino,diffusers]" openvino

Import Libraries

import torch
from diffusers import StableDiffusionPipeline

device = "cuda" if torch.cuda.is_available() else "cpu"

model_id = "danhtran2mind/Ghibli-Stable-Diffusion-2.1-Base-finetuning-FP8"
pipe = StableDiffusionPipeline.from_pretrained(model_id, torch_dtype=torch.float16)
pipe.to(device)
Downloads last month
3
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for danhtran2mind/Ghibli-Stable-Diffusion-2.1-Base-finetuning-FP8

Collection including danhtran2mind/Ghibli-Stable-Diffusion-2.1-Base-finetuning-FP8