Add Deepseek-OCR-2 model (#45075)
* feat: add DeepSeek-OCR-2 model registration and docs
* feat: add DeepseekOcr2ImageProcessor
* feat: add DeepseekOcr2Processor and refactor image processor tile_size
* feat: add script to convert DeepSeek-OCR-2 weights to Hugging Face format
* feat: enhance DeepSeek-OCR-2 processing and inference test
* refactor
* feat: add fast image processor
* refactor
* test: add image processor tests for DeepseekOcr2
* fix: make background_color configurable
* refactor: migrate image processors to pil/torchvision backend pattern
* test: add processor tests for DeepseekOcr2
* fix: update __init__
* chore: clean up unused imports and fix formatting
* feat: add configuration, modeling, and modular for DeepseekOcr2
* fix: style fixes, update docs, and minor cleanups
* fix: use @strict
* fix: register private models
* docs: add usage example and expand DeepSeek-OCR-2 model doc
* fix: add checkpoint to auto_docstring
* fix: remove comment
* fix: remove unused max_query
* fix: clean up DeepSeek-OCR2 modular
* docs: update date
* refactor: inherit SamVisionEncoder
* refactor: use create_causal_mask with or_mask_function
* docs: update date
* fix: address PR review
* refactor: use modular for image processor
* refactor: restructure DeepSeek-OCR-2 config, image processor, and processing
* fix: sync hidden_size and rms_norm_eps from encoder_config to vision_config
* refactor: remove comment
* fix
* fix: correct EncoderConfig docstring example
* refactor: add PIL image processor to modular
* refactor: address review comments on config, processor, and model
* fix: adjust processing tests for image token expansion
* fix: move view_separator to correct device for model parallelism
* fix: add DeepseekOcr2ImageProcessorPil to __all__
* fix: remove SDPA skip
* test: skip offload/export tests
* refactor: address review comments
* fix: remove in DeepseekOcr2Model
* refactor: enforce explicit tokens in DeepseekOcr2Processor
* refactor: inherit DeepseekOcr2ImageProcessorKwargs from GotOcr2ImageProcessorKwargs
* refactor: remove unused image processing
* fix: update docs
* fix: export sub-configs
* Update src/transformers/models/deepseek_ocr2/modular_deepseek_ocr2.py
Co-authored-by: Anton Vlasjuk <73884904+vasqu@users.noreply.github.com>
* refactor: switch to mlp_layer_types pattern and clean up redundant overrides
* refactor: derive projector dims from sub-configs
* refactor: address comments on naming, decorators, and mask location
* refactor: use VLMModelTester, fix processor text handling, and cache test images
* fix: enable fullgraph compile
* refactor: move weight mapping to conversion_mapping.py
* fix: add tie_word_embeddings
* refactor: address review comments
* make ci compatible, passed without changes neat
* fixup imports
* switch vision encoder mask to block_sequence_ids
* update docs
* update docs
* Clean up DeepSeek-OCR-2 converted config
* update DeepSeek-OCR-2 checkpoint
* update docs and sync generated config
* fix
* ok
---------
Co-authored-by: Anton Vlasjuk <73884904+vasqu@users.noreply.github.com>
Co-authored-by: vasqu <antonprogamer@gmail.com>