+
    œ°³jä  ã                   óx   € ^ RI Ht ^RIHt ^RIHt ^RIHtHt ]! RR7      ] ! R R]4      4       4       t	R.t
R	# )
é    )Ústrict)ÚPreTrainedConfig)Úauto_docstring)ÚCONFIG_MAPPINGÚ
AutoConfigz%magic-leap-community/superglue_indoor)Ú
checkpointc                   ó|   a a€ ] tR t^t oRtRtR]/tRtRt	Rt
Rt^t^dtRtRtRtRtV 3R	 ltR
 tV3R ltRtVtV ;t# )ÚSuperGlueConfiga‰  
keypoint_detector_config (`Union[AutoConfig, dict]`,  *optional*, defaults to `SuperPointConfig`):
    The config object or dictionary of the keypoint detector.
keypoint_encoder_sizes (`list[int]`, *optional*, defaults to `[32, 64, 128, 256]`):
    The sizes of the keypoint encoder layers.
gnn_layers_types (`list[str]`, *optional*, defaults to `['self', 'cross', 'self', 'cross', 'self', 'cross', 'self', 'cross', 'self', 'cross', 'self', 'cross', 'self', 'cross', 'self', 'cross', 'self', 'cross']`):
    The types of the GNN layers. Must be either 'self' or 'cross'.
sinkhorn_iterations (`int`, *optional*, defaults to 100):
    The number of Sinkhorn iterations.
matching_threshold (`float`, *optional*, defaults to 0.0):
    The matching threshold.

Examples:
    ```python
    >>> from transformers import SuperGlueConfig, SuperGlueModel

    >>> # Initializing a SuperGlue superglue style configuration
    >>> configuration = SuperGlueConfig()

    >>> # Initializing a model from the superglue style configuration
    >>> model = SuperGlueModel(configuration)

    >>> # Accessing the model configuration
    >>> configuration = model.config
    ```
Ú	superglueÚkeypoint_detector_configNé   g        g{®Gáz”?Fc                ó  <€ V P                   e   V P                   M
RR.^	,          V n         V P                  e   V P                  M. ROV n        \        V P                  \        4      '       d^   V P                  P                  RR4      V P                  R&   \        V P                  R,          ,          ! R/ V P                  B V n        M%V P                  f   \        R,          ! 4       V n        \        SV `   ! R/ VB  R # )NÚselfÚcrossÚ
model_typeÚ
superpoint)é    é@   é€   r   © )	Úgnn_layers_typesÚkeypoint_encoder_sizesÚ
isinstancer   ÚdictÚgetr   ÚsuperÚ__post_init__)r   ÚkwargsÚ	__class__s   &,€Úv/home/luca/screen-checking/.venv/lib/python3.14/site-packages/transformers/models/superglue/configuration_superglue.pyr   ÚSuperGlueConfig.__post_init__B   sÞ   ø€ Ø9=×9NÑ9NÒ9Z × 5Ò 5ÐagÐipÐ`qÐtuÕ`uˆÔà+/×+FÑ+FÒ+RˆD×'Ò'ÒXjð 	Ô#ô �d×3Ñ3´T×:Ò:Ø:>×:WÑ:W×:[Ñ:[Ð\hÐjvÓ:wˆD×)Ñ)¨,Ñ7Ü,:¸4×;XÑ;XÐYeÕ;fÖ,gñ -Ø×/Ñ/ñ-ˆDÕ)ð ×*Ñ*Ò2Ü,:¸<Ö,HÓ,JˆDÔ)ä‰ÒÑ' Ô'ó    c                ó  € \         ;QJ d&    R V P                   4       F  '       d   K   RM	  RM! R V P                   4       4      '       g   \        R4      hV P                  V P                  ,          ^ 8w  d   \        R4      hR# )zOPart of `@strict`-powered validation. Validates the architecture of the config.c              3   ó*   "  € T F	  qR9   x € K  	  R# 5i)r   N)r   r   r   )Ú.0Ú
layer_types   & r    Ú	<genexpr>Ú8SuperGlueConfig.validate_architecture.<locals>.<genexpr>U   s   é € Ð[ÑEZ°zÐ!2Ö2ÓEZùs   ‚FTz5All gnn_layers_types must be either 'self' or 'cross'z8hidden_size % num_attention_heads is different from zeroN)Úallr   Ú
ValueErrorÚhidden_sizeÚnum_attention_heads)r   s   &r    Úvalidate_architectureÚ%SuperGlueConfig.validate_architectureR   sg   € ÷ ‹sÑ[ÀT×EZÒEZÓ[�s�sŠsÑ[ÀT×EZÒEZÓ[×[Ò[ÜÐTÓUÐUà×Ñ˜d×6Ñ6Õ6¸!Ô;ÜÐWÓXÐXñ <r"   c                óü   <€ V ^8„  d   Qh/ S[ S[,          R,          ;R&   S[;R&   S[S[,          R,          ;R&   S[S[,          R,          ;R&   S[;R&   S[;R&   S[;R&   S[;R	&   S[;R
&   S[S[,          ;R&   # )é   Nr   r+   r   r   r,   Úsinkhorn_iterationsÚmatching_thresholdÚinitializer_rangeÚ
is_decoderÚattention_probs_dropout_prob)r   r   ÚintÚlistÚstrÚfloatÚbool)ÚformatÚ__classdict__s   "€r    Ú__annotate__ÚSuperGlueConfig.__annotate__   s¼   ø‡ ‚ ñB #Ñ%5Õ5¸Õ<ÑCñC ñD ÑñE ñF !¡�I¨Õ,Ñ3ñG ñH ™3•i $Õ&Ñ-ñI ñJ Ñ ñK ñL Ñ"ñM ñN Ñ#ñO ñP Ñ#ñQ ñR ÑñS ñT #&©¥+Ñ3òU r"   )r   r   r   )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r   r   Úsub_configsr   r+   r   r   r,   r1   r2   r3   r4   r5   r   r-   Ú__annotate_func__Ú__static_attributes__Ú__classdictcell__Ú__classcell__)r   r<   s   @@r    r
   r
      sh   ù‡ € ñð6 €JØ-¨zÐ:€Kà?CÐØ€KØ/3ÐØ)-ÐØ ÐØ"ÐØ #ÐØ#ÐØ€JØ03Ð õ(ò Y÷y … r"   r
   N)Úhuggingface_hub.dataclassesr   Úconfiguration_utilsr   Úutilsr   Úautor   r   r
   Ú__all__r   r"   r    Ú<module>rN      sO   ðõ /å 3Ý #ß -ñ ÐBÔCØôAYÐ&ó AYó ó DðAYðH Ð
‚r"   