Ë
    `›¾j$  ã                   óB  — d dl Z d dlZd dlmZ d dlmZmZmZmZm	Z	 d dl
Z
d dlmZmZ ddlmZmZ ddlmZ dd	lmZmZmZmZ dd
lmZmZ  ej6                  d«       edd¬«       edddd¬«       eddddd¬«       edddd¬«       edddd¬«      fdee   deded ed!ef
d"„«       Z	 d/dd#ddd$œdee   deded eee      d!ed%e	eef   fd&„Z d%eeef   fd'„Z!d#d(œdeded%eeef   fd)„Z"ded%ee   fd*„Z#ded%eeef   fd+„Z$	 	 d0d,eeef   d-ee   d eee      d%efd.„Z%y)1é    N)ÚPath)ÚAnyÚDictÚListÚOptionalÚUnion)ÚMarkdownRendererÚPrinteré   )ÚaboutÚutil)Úimportlib_metadataé   )ÚArgÚOptÚappÚstring_to_list)Úget_latest_versionÚget_model_filenameÚinfoz Optional loadable spaCy pipeline)ÚhelpFz
--markdownz-mdz#Generate Markdown for GitHub issuesz--silentz-sz-Sz"Don't print anything (just return)Úlabelsz	--excludez-ez2Comma-separated keys to exclude from the print-outz--urlz-uzLPrint the URL to download the most recent compatible version of the pipelineÚmodelÚmarkdownÚsilentÚexcludeÚurlc                 ó:   — t        |«      }t        | ||||¬«       y)aa  
    Print info about spaCy installation. If a pipeline is specified as an argument,
    print its meta information. Flag --markdown prints details in Markdown for easy
    copy-pasting to GitHub issues.

    Flag --url prints only the download URL of the most recent compatible
    version of the pipeline.

    DOCS: https://spacy.io/api/cli#info
    ©r   r   r   r   N)r   r   )r   r   r   r   r   s        úX/home/spazio/kingdom_calls/work5/transenv/lib/python3.12/site-packages/spacy/cli/info.pyÚinfo_clir!      s&   € ôD ˜WÓ%€GÜØØØØØöó    Tr   Úreturnc                ó¸  — t        || ¬«      }|sg }|r7| �!d| › d�}t        | «      }t        |d   «       |S |j                  dd¬«       n"| rd| › d�}t	        | |¬	«      }nd
}t        «       }j                  «       D ��	ci c]&  \  }}	|j                  «       j                  dd«      |	“Œ( }
}}	d|v r?t        |d   t        «      r,dj                  d„ |d   j                  «       D «       «      |d<   t        ||¬«      }|r|st        |«       |S |s;|j                  «       D ��	ci c]  \  }}	||vsŒ||	“Œ }}}	|j                  ||¬«       |
S c c}	}w c c}	}w )N©Úno_printÚprettyzDownload info for pipeline 'ú'Údownload_urlz%--url option requires a pipeline namer   ©ÚexitszInfo about pipeline '©r   zInfo about spaCyú Ú_Ú	Pipelinesz, c              3   ó2   K  — | ]  \  }}|› d |› d�–— Œ y­w)z (ú)N© )Ú.0ÚnÚvs      r    ú	<genexpr>zinfo.<locals>.<genexpr>V   s%   è ø€ ò &
Ù!˜Q ˆqˆc��A�3�aŒLñ&
ùs   ‚)Útitler   )r7   )r
   Úinfo_model_urlÚprintÚfailÚ
info_modelÚ
info_spacyÚitemsÚlowerÚreplaceÚ
isinstanceÚdictÚjoinÚget_markdownÚtable)r   r   r   r   r   Úmsgr7   ÚdataÚkr5   Úraw_dataÚmarkdown_dataÚ
table_datas                r    r   r   ;   sp  € ô ˜6¨f¨*Ô
5€CÙØˆÙ
ØÐØ2°5°'¸Ð;ˆEÜ! %Ó(ˆDÜ�$�~Ñ&Ô'ØˆKà�H‰HÐ<ÀAˆHÕFÙ	Ø'¨ w¨aÐ0ˆÜ˜%¨Ô/‰à"ˆÜ‹|ˆØ;?¿:¹:»<×H±4°1°a�—‘“	×!Ñ! # sÓ+¨QÑ.ÐH€HÑHØ�dÑœz¨$¨{Ñ*;¼TÔBØ ŸI™Iñ &
Ø%)¨+Ñ%6×%<Ñ%<Ó%>ô&
ó 
ˆˆ[Ñô ! ¨U¸GÔD€MÙÙÜ�-Ô ØÐÙØ'+§z¡z£|×H™t˜q !°qÀÒ7G�a˜‘dÐHˆ
ÑHØ�	‰	�* Eˆ	Ô*Ø€Oùó Iùó Is   Â+EÄ&EÄ3Ec                  óT  — i } t        j                  «       D ],  }|j                  dd«      }t        j                  |«      | |<   Œ. t        j
                  t        t        t        «      j                  j                  «      t        j                  «       t        j                  «       | dœS )z\Generate info about the current spaCy intallation.

    RETURNS (dict): The spaCy info.
    ú-r.   )zspaCy versionÚLocationÚPlatformzPython versionr/   )r   Úget_installed_modelsr?   Úget_package_versionr   Ú__version__Ústrr   Ú__file__ÚparentÚplatformÚpython_version)Ú
all_modelsÚpkg_nameÚpackages      r    r<   r<   d   s’   € ð
 €JÜ×-Ñ-Ó/ò AˆØ×"Ñ" 3¨Ó,ˆÜ"×6Ñ6°xÓ@ˆ
�7ÒðAô ×*Ñ*ÜœœX›×-Ñ-×4Ñ4Ó5Ü×%Ñ%Ó'Ü"×1Ñ1Ó3Øñð r"   r,   c                ó  — t        || ¬«      }t        j                  | «      rt        j                  | «      }nt	        | «      }|dz  }|j                  «       s|j                  d|d¬«       t        j                  |«      }|j                  «       |k7  rt        |j                  «       «      |d<   nt        |«      |d<   t        | «      }|r||d<   |j                  «       D ��ci c]  \  }}|dvsŒ||“Œ c}}S c c}}w )	zªGenerate info about a specific model.

    model (str): Model name of path.
    silent (bool): Don't print anything, just return.
    RETURNS (dict): The model meta.
    r%   z	meta.jsonzCan't find pipeline meta.jsonr   r*   Úsourcer)   )ÚaccuracyÚperformanceÚspeed)r
   r   Ú
is_packageÚget_package_pathr   Úis_filer:   ÚsrslyÚ	read_jsonÚresolverR   Úinfo_installed_model_urlr=   )	r   r   rE   Ú
model_pathÚ	meta_pathÚmetar)   rG   r5   s	            r    r;   r;   v   sí   € ô ˜6¨f¨*Ô
5€CÜ‡��uÔÜ×*Ñ*¨5Ó1‰
ä˜%“[ˆ
Ø˜[Ñ(€IØ×ÑÔØ�‰Ð0°)À1ˆÔEÜ�?‰?˜9Ó%€DØ×ÑÓ˜zÒ)Ü˜Z×/Ñ/Ó1Ó2ˆˆXŠä˜Z›ˆˆX‰Ü+¨EÓ2€LÙØ+ˆˆ^ÑàŸ™›÷Ù��A¨Ð2VÒ)Vˆˆ1‰óð ùó s   Ã&C<Ã3C<c                 óÆ   — 	 t        j                  | «      }|j                  d«      }t        |t        «      rt        j                  |«      }|d   S 	 y# t        $ r Y yw xY w)z»Given a pipeline name, get the download URL if available, otherwise
    return None.

    This is only available for pipelines installed as modules that have
    dist-info available.
    zdirect_url.jsonr   N)r   ÚdistributionÚ	read_textr@   rR   ÚjsonÚloadsÚ	Exception)r   ÚdistÚtextrF   s       r    re   re   ’   si   € ðÜ!×.Ñ.¨uÓ5ˆØ�~‰~Ð/Ó0ˆÜ�dœCÔ Ü—:‘:˜dÓ#ˆDØ˜‘;Ðð !ð
 øô ò ØØðús   ‚AA Á	A ÁA c                 ó�   — t        | «      }t        | |«      }t        j                  dz   |z   }d}|j	                  | |¬«      }||dœS )z=Return the download URL for the latest version of a pipeline.ú/z>https://github.com/explosion/spacy-models/releases/tag/{m}-{v})Úmr5   )r)   Úrelease_url)r   r   r   Ú__download_url__Úformat)r   ÚversionÚfilenamer)   Úrelease_tplrt   s         r    r8   r8   ¤   sR   € ä  Ó'€Gä! %¨Ó1€HÜ×)Ñ)¨CÑ/°(Ñ:€LØR€KØ×$Ñ$ u°Ð$Ó8€KØ(¸ÑEÐEr"   rF   r7   c                 óÊ  — t        «       }|r!|j                  |j                  d|«      «       g }| j                  «       D ]a  \  }}|r||v rŒt	        |t
        «      r	 t        |«      j                  «       }|rŒ:|j                  |j                  |› d�«      › d|› �«       Œc |j                  |j                  |«      «       d|j                  › d�S # t        $ r d}Y Œjw xY w)a  Get data in GitHub-flavoured Markdown format for issues etc.

    data (Dict[str, Any]): Label/value pairs.
    title (str): Optional title, will be rendered as headline 2.
    exclude (List[str]): Names of keys to exclude.
    RETURNS (str): The Markdown string.
    r   Fú:r-   ú
)r	   Úaddr7   r=   r@   rR   r   Úexistsrn   ÚappendÚboldÚlistrp   )rF   r7   r   Úmdr=   ÚkeyÚvalueÚexisting_paths           r    rC   rC   ¯   sß   € ô 
Ó	€BÙØ
�‰ˆr�x‰x˜˜5Ó!Ô"Ø€EØ—j‘j“lò 6‰
ˆˆUÙ�s˜g‘~ØÜ�eœSÔ!ð&Ü $ U£× 2Ñ 2Ó 4�ñ ØØ�‰˜Ÿ™ 3 % q 	Ó*Ð+¨1¨U¨GÐ4Õ5ð6ð ‡F�Fˆ2�7‰7�5‹>ÔØ�—‘ˆy˜ÐÐøô ò &à %’ð&ús   ÁCÃC"Ã!C")N)NN)&rl   rU   Úpathlibr   Útypingr   r   r   r   r   rb   Úwasabir	   r
   Ú r   r   Úcompatr   Ú_utilr   r   r   r   Údownloadr   r   ÚcommandrR   Úboolr!   rA   r   r<   r;   re   r8   rC   r2   r"   r    ú<module>r�      s  ðÛ Û Ý ß 3Õ 3ã ß ,ç Ý 'ß 0Ó 0ß <ð €‡�ˆVÓñ ˜tÐ*LÔMÙØˆ|˜UÐ)Nôñ Øˆz˜4 Ð,Pôñ ØØØØAô	ñ ØØØØ[ô	ñ(à�C‰=ð(ð ð(ð ð(ð ð(ð 
ò(ó ð(ðX  ð&ð ØØ#'Øò&Ø�C‰=ð&ð ð&ð ð	&ð
 �d˜3‘iÑ ð&ð 
ð&ð ˆ3�ˆ9Ñó&ðR�D˜˜c˜‘Nó ð$ .2ò �cð  dð °d¸3À¸8±nó ð8 Cð ¨H°S©Mó ð$F˜#ð F $ s¨C x¡.ó Fð  Ø#'ñØ
ˆs�Cˆx‰.ðà�C‰=ðð �d˜3‘iÑ ðð 	ô	r"   