Skip to content

Commit cf5b951

Browse files
authored
fix pil import in VLM (#1019)
1 parent 080180b commit cf5b951

File tree

1 file changed

+11
-8
lines changed

1 file changed

+11
-8
lines changed

optimum/intel/openvino/modeling_visual_language.py

+11-8
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,14 @@
44
import warnings
55
from abc import abstractmethod
66
from pathlib import Path
7-
from typing import Dict, Optional, Tuple, Union
7+
from typing import TYPE_CHECKING, Dict, Optional, Tuple, Union
88

99
import numpy as np
1010
import openvino as ov
1111
import torch
1212
from huggingface_hub import hf_hub_download
1313
from huggingface_hub.constants import HUGGINGFACE_HUB_CACHE
1414
from openvino._offline_transformations import apply_moc_transformations, compress_model_transformation
15-
from PIL.Image import Image
1615
from transformers import (
1716
AutoConfig,
1817
AutoImageProcessor,
@@ -50,6 +49,10 @@
5049
LlavaNextForConditionalGeneration = None
5150

5251

52+
if TYPE_CHECKING:
53+
from PIL import Image
54+
55+
5356
logger = logging.getLogger(__name__)
5457

5558
core = ov.Core()
@@ -790,7 +793,7 @@ def can_generate(self):
790793
@abstractmethod
791794
def preprocess_inputs(
792795
text: str,
793-
image: Optional[Image] = None,
796+
image: Optional["Image"] = None,
794797
processor: Optional[AutoImageProcessor] = None,
795798
tokenizer: Optional[PreTrainedTokenizer] = None,
796799
config: Optional[PretrainedConfig] = None,
@@ -967,7 +970,7 @@ def _filter_unattended_tokens(self, input_ids, attention_mask, past_key_values):
967970
@staticmethod
968971
def preprocess_inputs(
969972
text: str,
970-
image: Optional[Image] = None,
973+
image: Optional["Image"] = None,
971974
processor: Optional[AutoImageProcessor] = None,
972975
tokenizer: Optional[PreTrainedTokenizer] = None,
973976
config: Optional[PretrainedConfig] = None,
@@ -1287,7 +1290,7 @@ def merge_vision_text_embeddings(
12871290
@staticmethod
12881291
def preprocess_inputs(
12891292
text: str,
1290-
image: Optional[Image] = None,
1293+
image: Optional["Image"] = None,
12911294
processor: Optional[AutoImageProcessor] = None,
12921295
tokenizer: Optional[PreTrainedTokenizer] = None,
12931296
config: Optional[PretrainedConfig] = None,
@@ -1662,7 +1665,7 @@ def merge_vision_text_embeddings(
16621665
@staticmethod
16631666
def preprocess_inputs(
16641667
text: str,
1665-
image: Optional[Image] = None,
1668+
image: Optional["Image"] = None,
16661669
processor: Optional[AutoImageProcessor] = None,
16671670
tokenizer: Optional[PreTrainedTokenizer] = None,
16681671
config: Optional[PretrainedConfig] = None,
@@ -1857,7 +1860,7 @@ def get_multimodal_embeddings(
18571860
@staticmethod
18581861
def preprocess_inputs(
18591862
text: str,
1860-
image: Optional[Image] = None,
1863+
image: Optional["Image"] = None,
18611864
processor: Optional[AutoImageProcessor] = None,
18621865
tokenizer: Optional[PreTrainedTokenizer] = None,
18631866
config: Optional[PretrainedConfig] = None,
@@ -2017,7 +2020,7 @@ def get_multimodal_embeddings(
20172020
@staticmethod
20182021
def preprocess_inputs(
20192022
text: str,
2020-
image: Optional[Image] = None,
2023+
image: Optional["Image"] = None,
20212024
processor: Optional[AutoImageProcessor] = None,
20222025
tokenizer: Optional[PreTrainedTokenizer] = None,
20232026
config: Optional[PretrainedConfig] = None,

0 commit comments

Comments
 (0)