Skip to content

Commit 76f8010

Browse files
committed
enable t5 in SD3 pipe testing and flux img2img and inpaint
1 parent 595246d commit 76f8010

File tree

4 files changed

+51
-3
lines changed

4 files changed

+51
-3
lines changed

optimum/intel/__init__.py

+4
Original file line numberDiff line numberDiff line change
@@ -106,6 +106,8 @@
106106
"OVLatentConsistencyModelPipeline",
107107
"OVLatentConsistencyModelImg2ImgPipeline",
108108
"OVFluxPipeline",
109+
"OVFluxImg2ImgPipeline",
110+
"OVFluxInpaintPipeline",
109111
"OVPipelineForImage2Image",
110112
"OVPipelineForText2Image",
111113
"OVPipelineForInpainting",
@@ -126,6 +128,8 @@
126128
"OVLatentConsistencyModelPipeline",
127129
"OVLatentConsistencyModelImg2ImgPipeline",
128130
"OVFluxPipeline",
131+
"OVFluxImg2ImgPipeline",
132+
"OVFluxInpaintPipeline",
129133
"OVPipelineForImage2Image",
130134
"OVPipelineForText2Image",
131135
"OVPipelineForInpainting",

optimum/intel/openvino/__init__.py

+2
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,8 @@
8383
from .modeling_diffusion import (
8484
OVDiffusionPipeline,
8585
OVFluxPipeline,
86+
OVFluxImg2ImgPipeline,
87+
OVFluxInpaintPipeline,
8688
OVLatentConsistencyModelImg2ImgPipeline,
8789
OVLatentConsistencyModelPipeline,
8890
OVPipelineForImage2Image,

optimum/intel/openvino/modeling_diffusion.py

+23-3
Original file line numberDiff line numberDiff line change
@@ -95,6 +95,13 @@
9595
FluxPipeline = StableDiffusionPipeline
9696

9797

98+
if is_diffusers_version(">=", "0.31.0"):
99+
from diffusers import FluxImg2ImgPipeline, FluxInpaintPipeline
100+
else:
101+
FluxImg2ImgPipeline = StableDiffusionImg2ImgPipeline
102+
FluxInpaintPipeline = StableDiffusionInpaintPipeline
103+
104+
98105
DIFFUSION_MODEL_TRANSFORMER_SUBFOLDER = "transformer"
99106
DIFFUSION_MODEL_TEXT_ENCODER_3_SUBFOLDER = "text_encoder_3"
100107

@@ -887,9 +894,6 @@ def compile(self):
887894
def _load_config(cls, config_name_or_path: Union[str, os.PathLike], **kwargs):
888895
return cls.load_config(config_name_or_path, **kwargs)
889896

890-
def _save_config(self, save_directory):
891-
self.save_config(save_directory)
892-
893897
@property
894898
def components(self) -> Dict[str, Any]:
895899
components = {
@@ -1447,6 +1451,18 @@ class OVFluxPipeline(OVDiffusionPipeline, OVTextualInversionLoaderMixin, FluxPip
14471451
auto_model_class = FluxPipeline
14481452

14491453

1454+
class OVFluxImg2ImgPipeline(OVDiffusionPipeline, OVTextualInversionLoaderMixin, FluxImg2ImgPipeline):
1455+
main_input_name = "prompt"
1456+
export_feature = "image-to-image"
1457+
auto_model_class = FluxImg2ImgPipeline
1458+
1459+
1460+
class OVFluxInpaintPipeline(OVDiffusionPipeline, OVTextualInversionLoaderMixin, FluxInpaintPipeline):
1461+
main_input_name = "prompt"
1462+
export_feature = "inpainting"
1463+
auto_model_class = FluxInpaintPipeline
1464+
1465+
14501466
SUPPORTED_OV_PIPELINES = [
14511467
OVStableDiffusionPipeline,
14521468
OVStableDiffusionImg2ImgPipeline,
@@ -1510,6 +1526,10 @@ def _get_ov_class(pipeline_class_name: str, throw_error_if_not_exist: bool = Tru
15101526
OV_INPAINT_PIPELINES_MAPPING["stable-diffusion-3"] = OVStableDiffusion3InpaintPipeline
15111527
OV_TEXT2IMAGE_PIPELINES_MAPPING["flux"] = OVFluxPipeline
15121528

1529+
if is_diffusers_version(">=", "0.31.0"):
1530+
SUPPORTED_OV_PIPELINES.extend([OVFluxImg2ImgPipeline, OVFluxInpaintPipeline])
1531+
OV_INPAINT_PIPELINES_MAPPING["flux"] = OVFluxInpaintPipeline
1532+
OV_IMAGE2IMAGE_PIPELINES_MAPPING["flux"] = OVFluxImg2ImgPipeline
15131533

15141534
SUPPORTED_OV_PIPELINES_MAPPINGS = [
15151535
OV_TEXT2IMAGE_PIPELINES_MAPPING,

optimum/intel/utils/dummy_openvino_and_diffusers_objects.py

+22
Original file line numberDiff line numberDiff line change
@@ -189,3 +189,25 @@ def __init__(self, *args, **kwargs):
189189
@classmethod
190190
def from_pretrained(cls, *args, **kwargs):
191191
requires_backends(cls, ["openvino", "diffusers"])
192+
193+
194+
class OVFluxImg2ImgPipeline(metaclass=DummyObject):
195+
_backends = ["openvino", "diffusers"]
196+
197+
def __init__(self, *args, **kwargs):
198+
requires_backends(self, ["openvino", "diffusers"])
199+
200+
@classmethod
201+
def from_pretrained(cls, *args, **kwargs):
202+
requires_backends(cls, ["openvino", "diffusers"])
203+
204+
205+
class OVFluxInpaintPipeline(metaclass=DummyObject):
206+
_backends = ["openvino", "diffusers"]
207+
208+
def __init__(self, *args, **kwargs):
209+
requires_backends(self, ["openvino", "diffusers"])
210+
211+
@classmethod
212+
def from_pretrained(cls, *args, **kwargs):
213+
requires_backends(cls, ["openvino", "diffusers"])

0 commit comments

Comments
 (0)