Unverified Commit df56c843 authored by Yih-Dar's avatar Yih-Dar Committed by GitHub
Browse files

[Tiny model creation] deal with `ImageProcessor` (#20298)


Co-authored-by: default avatarydshieh <ydshieh@users.noreply.github.com>
parent 4bb07647
...@@ -41,6 +41,7 @@ from transformers import ( ...@@ -41,6 +41,7 @@ from transformers import (
) )
from transformers.feature_extraction_utils import FeatureExtractionMixin from transformers.feature_extraction_utils import FeatureExtractionMixin
from transformers.file_utils import is_tf_available, is_torch_available from transformers.file_utils import is_tf_available, is_torch_available
from transformers.image_processing_utils import BaseImageProcessor
from transformers.models.auto.configuration_auto import AutoConfig, model_type_to_module_name from transformers.models.auto.configuration_auto import AutoConfig, model_type_to_module_name
from transformers.models.fsmt import configuration_fsmt from transformers.models.fsmt import configuration_fsmt
from transformers.processing_utils import ProcessorMixin, transformers_module from transformers.processing_utils import ProcessorMixin, transformers_module
...@@ -383,6 +384,8 @@ def convert_processors(processors, tiny_config, output_folder, result): ...@@ -383,6 +384,8 @@ def convert_processors(processors, tiny_config, output_folder, result):
for processor in processors: for processor in processors:
if isinstance(processor, PreTrainedTokenizerBase): if isinstance(processor, PreTrainedTokenizerBase):
tokenizers.append(processor) tokenizers.append(processor)
elif isinstance(processor, BaseImageProcessor):
feature_extractors.append(processor)
elif isinstance(processor, FeatureExtractionMixin): elif isinstance(processor, FeatureExtractionMixin):
feature_extractors.append(processor) feature_extractors.append(processor)
elif isinstance(processor, ProcessorMixin): elif isinstance(processor, ProcessorMixin):
...@@ -848,8 +851,8 @@ def build(config_class, models_to_create, output_dir): ...@@ -848,8 +851,8 @@ def build(config_class, models_to_create, output_dir):
error = f"Failed to convert the processors: {e}" error = f"Failed to convert the processors: {e}"
result["warnings"].append(error) result["warnings"].append(error)
if len(result["processor"]) == 0: if len(processors) == 0:
error = f"No processor could be converted for {config_class.__name__}." error = f"No processor is returned by `convert_processors` for {config_class.__name__}."
fill_result_with_error(result, error, models_to_create) fill_result_with_error(result, error, models_to_create)
logger.error(result["error"]) logger.error(result["error"])
return result return result
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment