matilda-jev-v1.5 / processing_matilda_jev.py
yue-maincode's picture
Release MATILDA JEV v1.5: verified BF16 checkpoint, native runtime and DI 62.76
1b88863 verified
Raw History Blame Contribute Delete
1.54 kB
"""MATILDA multimodal aliases with an explicit loader for the frozen preprocessing configuration."""
from transformers.models.qwen2_vl.image_processing_qwen2_vl import Qwen2VLImageProcessor
from transformers.models.qwen3_vl.processing_qwen3_vl import Qwen3VLProcessor
from transformers.models.qwen3_vl.video_processing_qwen3_vl import Qwen3VLVideoProcessor
from .tokenization_matilda_jev import MatildaJevTokenizer
class MatildaJevImageProcessor(Qwen2VLImageProcessor):
pass
class MatildaJevVideoProcessor(Qwen3VLVideoProcessor):
pass
class MatildaJevProcessor(Qwen3VLProcessor):
@classmethod
def _get_arguments_from_pretrained(cls, pretrained_model_name_or_path, processor_dict=None, **kwargs):
if processor_dict is None:
raise ValueError("MATILDA requires its processor_config.json")
image = dict(processor_dict["image_processor"])
video = dict(processor_dict["video_processor"])
image.pop("image_processor_type", None)
video.pop("video_processor_type", None)
image.pop("auto_map", None)
video.pop("auto_map", None)
tokenizer = MatildaJevTokenizer.from_pretrained(pretrained_model_name_or_path, **kwargs)
components = {
"image_processor": MatildaJevImageProcessor(**image),
"tokenizer": tokenizer,
"video_processor": MatildaJevVideoProcessor(**video),
}
return [components[name] for name in cls.get_attributes()]
MatildaJevProcessor.register_for_auto_class("AutoProcessor")