ó
    �®žjr  ã            
       óp  • S SK Jr  S SKJr  S SKJr  S SKJrJrJ	r	J
r
Jr  S SKJrJrJrJrJrJr  S SKJr  S SKJr  S SKJr  S S	KJr  S S
KJr  S SKJrJrJ r   Sr!Sr" " S S\\5      r#S\$\-  S\%\$\S-  4   4S jr&S\	\   S\	\\      S\	\\      S\'S\(4
S jr)S\\\$4   S\$4S jr*S\	\'   S\'S\(4S jr+g)é    )Úabstractmethod)ÚIterable)ÚPath)ÚAnyÚListÚOptionalÚTypeÚUnion)ÚDescriptionMetaFieldÚDoclingDocumentÚNodeItemÚPictureClassificationLabelÚPictureItemÚPictureMeta)ÚPictureDescriptionData)ÚImage)ÚAcceleratorOptions)ÚApiImageRequestResult)ÚPictureDescriptionBaseOptions)ÚBaseItemAndImageEnrichmentModelÚBaseModelWithOptionsÚItemAndImageEnrichmentElementÚdoclingÚusagec            
       óê   • \ rS rSr% Sr\\S'   S\S\S\\	\
\4      S\S\4
S	 jrS
\S\S\4S jrS\\R&                     S\\\-     4S jrS
\S\\   S\\   4S jr\\S\\   4S j5       5       rSrg)ÚPictureDescriptionBaseModelé#   g       @Úimages_scaleÚenabledÚenable_remote_servicesÚartifacts_pathÚoptionsÚaccelerator_optionsc                óÚ   • UR                   S:  a  [        S5      eUR                  S::  a  [        S5      eXl        X@l        SU l        UR                   U l        UR                  U l        g )Né   z+Picture description batch_size must be >= 1r   z%Picture description scale must be > 0znot-implemented)Ú
batch_sizeÚ
ValueErrorÚscaler   r"   Ú
provenanceÚelements_batch_sizer   )Úselfr   r    r!   r"   r#   s         Új/home/mande/repo/quber/.venv/lib/python3.13/site-packages/docling/models/picture_description_base_model.pyÚ__init__Ú$PictureDescriptionBaseModel.__init__(   sa   € ð ×Ñ Ó!ÜÐJÓKÐKØ�=‰=˜AÓÜÐDÓEÐEàŒØŒØ+ˆŒØ#*×#5Ñ#5ˆÔ Ø#ŸM™MˆÕó    ÚdocÚelementÚreturnc                 óH   • U R                   =(       a    [        U[        5      $ ©N)r   Ú
isinstancer   )r+   r0   r1   s      r,   Úis_processableÚ*PictureDescriptionBaseModel.is_processable<   s   € Ø�|‰|×@¤
¨7´KÓ @Ð@r/   Úimagesc                 ó   • [         er4   )ÚNotImplementedError)r+   r8   s     r,   Ú_annotate_imagesÚ,PictureDescriptionBaseModel._annotate_images?   s
   € ô "Ð!r/   Úelement_batchc              #   ó°  #   • U R                   (       d  U H  nUR                  v •  M     g / n/ nU GH±  n[        UR                  [        5      (       d   eSn[	        UR                  R
                  5      S:”  a¬  UR                  R
                  S   nUR                  R                  UR                  5      n	U	bk  U	R                  R                  U	R                  R                  -  n
U
S:”  a8  UR                  R                  5       U
-  nX°R                  R                  :  a  SnU(       ae  [!        UR                  R"                  U R                  R$                  U R                  R&                  U R                  R(                  5      (       d  SnU(       d  GMl  UR+                  UR                  5        UR+                  UR,                  R/                  S5      5        GM´     U R1                  U5      n[3        X\5       HÍ  u  pÞ[5        U5      u  nnU R                  R6                  (       a,  UR8                  R+                  [;        XðR<                  S95        UR"                  c  [?        5       Ul        [A        UU R<                  S9UR"                  l!        Ub-  UR"                  RB                  RE                  [F        [H        US9  Uv •  MÏ     g 7f)NTr   FÚRGB)Útextr)   )r@   Ú
created_by)Ú	namespaceÚnameÚvalue)%r   Úitemr5   r   ÚlenÚprovÚpagesÚgetÚpage_noÚsizeÚwidthÚheightÚbboxÚarear"   Úpicture_area_thresholdÚ_passes_classificationÚmetaÚclassification_allowÚclassification_denyÚclassification_min_confidenceÚappendÚimageÚconvertr;   ÚzipÚ_normalize_description_outputÚ_keep_deprecated_annotationsÚannotationsr   r)   r   r   ÚdescriptionÚset_custom_fieldÚ_USAGE_META_NAMESPACEÚ_USAGE_META_FIELD_NAME)r+   r0   r=   r1   r8   ÚelementsÚelÚdescribe_imagerG   ÚpageÚ	page_areaÚarea_fractionÚoutputsrE   ÚoutputÚdescription_textr   s                    r,   Ú__call__Ú$PictureDescriptionBaseModel.__call__D   s%  é € ð
 �|�|Û(�Ø—l‘lÔ"ñ )àà$&ˆØ&(ˆÜˆBÜ˜bŸg™g¤{×3Ñ3Ð3Ð3Ø!ˆNä�2—7‘7—<‘<Ó  1Ó$Ø—w‘w—|‘| A‘�Ø—y‘y—}‘} T§\¡\Ó2�ØÑ#Ø $§	¡	§¡°$·)±)×2BÑ2BÑ B�IØ  1“}Ø(,¯	©	¯©Ó(8¸9Ñ(D˜Ø(¯<©<×+NÑ+NÓNØ-2˜NÞÔ&<Ø—‘—‘Ø—‘×1Ñ1Ø—‘×0Ñ0Ø—‘×:Ñ:÷	'ñ 'ð "'�ß‰~Ø—‘ §¡Ô(Ø—‘˜bŸh™h×.Ñ.¨uÓ5×6ñ-  ð0 ×'Ñ'¨Ó/ˆä Ö2‰LˆDÜ&CÀFÓ&KÑ#Ð˜eà�|‰|×8×8Ø× Ñ ×'Ñ'Ü*Ø-¿/¹/ñôð �y‰yÑ Ü'›M�”	Ü$8Ø%ØŸ?™?ñ%ˆD�I‰IÔ!ð Ñ Ø—	‘	×%Ñ%×6Ñ6Ü3Ü/Øð 7ñ ð ŒJò1 3ùs   ‚FKÆD8Kc                 ó   • g r4   © )Úclss    r,   Úget_options_typeÚ,PictureDescriptionBaseModel.get_options_type„   s   € ð 	r/   )r*   r   r   r"   r)   N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r   ÚfloatÚ__annotations__Úboolr   r
   r   Ústrr   r   r-   r   r   r6   r   r   r   r;   r   rj   Úclassmethodr   r	   ro   Ú__static_attributes__rm   r/   r,   r   r   #   sð   ‡ ð €L�%Óð*ð ð*ð !%ð	*ð
 !  t¨S yÑ!1Ñ2ð*ð /ð*ð 0ô*ð(A /ð A¸Hð AÈô Að"Ø˜uŸ{™{Ñ+ð"à	�#Ð-Ñ-Ñ	.ô"ð
>àð>ð  Ð =Ñ>ð>ð 
�(Ñ	ô	>ð@ Øð Ð&CÑ!Dó ó ó ór/   r   rh   r2   Nc                 ód   • [        U [        5      (       a  U R                  U R                  4$ U S 4$ r4   )r5   r   r@   r   )rh   s    r,   rZ   rZ   Š   s/   € ô �&Ô/×0Ñ0Ø�{‰{˜FŸL™LÐ(Ð(Ø�4ˆ<Ðr/   rR   ÚallowÚdenyÚmin_confidencec                 óÖ  ^^• U(       d  U(       d  gS nU (       a'  U R                   (       a  U R                   R                  nU(       d  US L $ U(       aS  U Vs1 s H  n[        U5      iM     nnU H2  n[        UR                  T5      (       d  M   UR
                  U;   d  M2    g   U(       a2  U Vs1 s H  n[        U5      iM     snm[        UU4S jU 5       5      $ gs  snf s  snf )NTFc              3   ó|   >#   • U  H1  n[        UR                  T5      =(       a    UR                  T;   v •  M3     g 7fr4   )Ú_meets_confidenceÚ
confidenceÚ
class_name)Ú.0ÚentryÚ	allow_setr~   s     €€r,   Ú	<genexpr>Ú)_passes_classification.<locals>.<genexpr>¨   s?   øé € ð 
ò #�ô ˜e×.Ñ.°Ó?÷ .Ø× Ñ  IÑ-ô.â"ùs   ƒ9<)ÚclassificationÚpredictionsÚ_label_valuer�   r‚   rƒ   Úany)	rR   r|   r}   r~   Ú	predictedÚlabelÚdeny_setr…   r†   s	      `    @r,   rQ   rQ   ’   sÎ   ù€ ö žØØ€IÞ�×#×#Ø×'Ñ'×3Ñ3ˆ	ÞØ˜ˆ}ÐÞÙ59Ó:²T¨E”L Ö'±TˆÐ:ÛˆEÜ  ×!1Ñ!1°>×BÓBØ× Ñ  HÕ,áñ	 ö
 Ù6;Ó<²e¨U”\ %Ö(±eÑ<ˆ	Üõ 
ñ #ó
ó 
ð 	
ð
 ùò ;ùò =s   ÁC!Â2C&rŽ   c                 óZ   • [        U [        5      (       a  U R                  $ [        U 5      $ r4   )r5   r   rD   rx   )rŽ   s    r,   r‹   r‹   °   s#   € Ü$ UÔ,F×GÑGˆ5�;‰;ÐWÌSÐQVËZÐWr/   r‚   c                 ó8   • US:*  =(       d    U S L=(       a    X:¬  $ )Nr   rm   )r‚   r~   s     r,   r�   r�   ´   s$   € Ø˜QÑ÷ Ø˜$Ð×? :Ñ#?ðr/   ),Úabcr   Úcollections.abcr   Úpathlibr   Útypingr   r   r   r	   r
   Údocling_core.types.docr   r   r   r   r   r   Údocling_core.types.doc.documentr   ÚPILr   Ú%docling.datamodel.accelerator_optionsr   Údocling.datamodel.base_modelsr   Ú"docling.datamodel.pipeline_optionsr   Údocling.models.base_modelr   r   r   r_   r`   r   rx   ÚtuplerZ   ru   rw   rQ   r‹   r�   rm   r/   r,   Ú<module>rž      s  ðõ Ý $Ý ß 3Õ 3÷÷ õ CÝ å DÝ ?õ÷ñ ð "Ð Ø Ð ôdØ#Ð%9ôdðNØÐ'Ñ'ðà
ˆ3��d‘
ˆ?ÑôðØ
�;Ñ
ðà�DÐ3Ñ4Ñ5ðð �4Ð2Ñ3Ñ
4ðð ð	ð
 
ôð<X˜Ð8¸#Ð=Ñ>ð XÀ3ô Xð (¨5¡/ð À5ð ÈTõ r/   