Skip to content

Commit b1f8d1d

Browse files
authored
disable warning about tokenizers version for ov tokenizers >= 2024.5 (#962)
* disable warning about tokenizers version for ov tokenizers >= 2024.5 * increase verbosity for tokenizers test
1 parent 227defe commit b1f8d1d

File tree

4 files changed

+25
-4
lines changed

4 files changed

+25
-4
lines changed

optimum/exporters/openvino/__main__.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,9 @@
5555

5656
logger = logging.getLogger(__name__)
5757

58+
# init core before import openvino tokenizers to prevent failed attempt loading extension
59+
core = Core()
60+
5861

5962
def infer_task(
6063
task,
@@ -413,7 +416,6 @@ class StoreAttr(object):
413416
del model
414417
gc.collect()
415418

416-
core = Core()
417419
for submodel_path in submodel_paths:
418420
submodel_path = Path(output) / submodel_path
419421
submodel = core.read_model(submodel_path)

optimum/exporters/openvino/convert.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@
4141
_torch_version,
4242
_transformers_version,
4343
compare_versions,
44+
is_openvino_tokenizers_version,
4445
is_tokenizers_version,
4546
is_transformers_version,
4647
)
@@ -734,9 +735,9 @@ def export_tokenizer(
734735
except ModuleNotFoundError:
735736
return
736737

737-
if is_tokenizers_version(">", "0.19"):
738+
if is_tokenizers_version(">", "0.19") and is_openvino_tokenizers_version("<", "2024.5.0.0"):
738739
logger.warning(
739-
"Exporting tokenizers to OpenVINO is not supported for tokenizers version > 0.19. "
740+
"Exporting tokenizers to OpenVINO is not supported for tokenizers version > 0.19 and openvino version <= 2024.4. "
740741
"Please downgrade to tokenizers version <= 0.19 to export tokenizers to OpenVINO."
741742
)
742743

optimum/intel/utils/import_utils.py

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -382,6 +382,24 @@ def is_openvino_version(operation: str, version: str):
382382
return compare_versions(parse(_openvino_version), operation, version)
383383

384384

385+
def is_openvino_tokenizers_version(operation: str, version: str):
386+
if not is_openvino_available():
387+
return False
388+
if not is_openvino_tokenizers_available():
389+
return False
390+
import openvino_tokenizers
391+
392+
tokenizers_version = openvino_tokenizers.__version__
393+
394+
if tokenizers_version == "0.0.0.0":
395+
try:
396+
tokenizers_version = importlib_metadata.version("openvino_tokenizers") or tokenizers_version
397+
except importlib_metadata.PackageNotFoundError:
398+
pass
399+
400+
return compare_versions(parse(tokenizers_version), operation, version)
401+
402+
385403
def is_diffusers_version(operation: str, version: str):
386404
"""
387405
Compare the current diffusers version to a given reference with an operation.

tests/openvino/test_exporters_cli.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -153,7 +153,7 @@ def test_exporters_cli(self, task: str, model_type: str):
153153
def test_exporters_cli_tokenizers(self, task: str, model_type: str):
154154
with TemporaryDirectory() as tmpdir:
155155
output = subprocess.check_output(
156-
f"optimum-cli export openvino --model {MODEL_NAMES[model_type]} --task {task} {tmpdir}",
156+
f"TRANSFORMERS_VERBOSITY=debug optimum-cli export openvino --model {MODEL_NAMES[model_type]} --task {task} {tmpdir}",
157157
shell=True,
158158
stderr=subprocess.STDOUT,
159159
).decode()

0 commit comments

Comments
 (0)