
    h                     r    d Z ddlmZ ddlmZmZmZ ddlmZm	Z	m
Z
  G d ded	      Z G d
 de      ZdgZy)z"
Processor class for BridgeTower.
    )Union   )ProcessingKwargsProcessorMixinUnpack)BatchEncodingPreTokenizedInput	TextInputc            	       .    e Zd ZdddddddddddddZy)BridgeTowerProcessorKwargsTFr   )add_special_tokenspaddingstridereturn_overflowing_tokensreturn_special_tokens_maskreturn_offsets_mappingreturn_lengthverbose)do_normalizedo_center_crop)text_kwargsimages_kwargsN)__name__
__module____qualname__	_defaults     t/var/www/html/eduruby.in/venv/lib/python3.12/site-packages/transformers/models/bridgetower/processing_bridgetower.pyr   r      s5     #').*/&+"	
 !"
Ir   r   F)totalc                   n     e Zd ZdZddgZdZdZ fdZ	 	 	 ddee	e
ee	   ee
   f   dee   d	efd
Z xZS )BridgeTowerProcessora  
    Constructs a BridgeTower processor which wraps a Roberta tokenizer and BridgeTower image processor into a single
    processor.

    [`BridgeTowerProcessor`] offers all the functionalities of [`BridgeTowerImageProcessor`] and
    [`RobertaTokenizerFast`]. See the docstring of [`~BridgeTowerProcessor.__call__`] and
    [`~BridgeTowerProcessor.decode`] for more information.

    Args:
        image_processor (`BridgeTowerImageProcessor`):
            An instance of [`BridgeTowerImageProcessor`]. The image processor is a required input.
        tokenizer (`RobertaTokenizerFast`):
            An instance of ['RobertaTokenizerFast`]. The tokenizer is a required input.
    image_processor	tokenizerBridgeTowerImageProcessor)RobertaTokenizerRobertaTokenizerFastc                 &    t         |   ||       y )N)super__init__)selfr#   r$   	__class__s      r   r*   zBridgeTowerProcessor.__init__@   s    )4r   textkwargsreturnc                      | j                   t        fd| j                  j                  i|} | j                  dd|i|d   } | j                  |fi |d   }|j                  |       |S )a  
        This method uses [`BridgeTowerImageProcessor.__call__`] method to prepare image(s) for the model, and
        [`RobertaTokenizerFast.__call__`] to prepare text for the model.

        Please refer to the docstring of the above two methods for more information.
        tokenizer_init_kwargsr-   r   r   r   )_merge_kwargsr   r$   init_kwargsr#   update)	r+   imagesr-   audiovideosr.   output_kwargsencodingencoding_image_processors	            r   __call__zBridgeTowerProcessor.__call__C   s     +**&
"&.."<"<
 

 "4>>LtL}]/KL#74#7#7#a-P_B`#a 01r   )NNN)r   r   r   __doc__
attributesimage_processor_classtokenizer_classr*   r   r
   r	   listr   r   r   r;   __classcell__)r,   s   @r   r"   r"   ,   ss     $[1J7BO5 _c I0$y/4HYCZZ[ 34 
r   r"   N)r<   typingr   processing_utilsr   r   r   tokenization_utils_baser   r	   r
   r   r"   __all__r   r   r   <module>rF      sA     H H R R!1 &/> /d "
"r   