ó
    tñ:ið  ã                   ó2  • S r SSKrSSKrSSKJr  SSKJrJrJ	r	J
r
  SSKrSSKrSSKJr  SSKJr  SSKJr  \R&                  " S	5      rS
\\\4   SSS\4S jrS\	\\\4      S\S\
\	\   \4   4S jr\S\4S j5       r\S\4S j5       r\S\4S j5       rg)z)Utilities for the XGBoost Dask interface.é    N)Úcache)ÚAnyÚDictÚOptionalÚTuple)ÚVersion)Úparseé   )ÚConfigz[xgboost.dask]Úlocal_paramÚworkerzdistributed.WorkerÚreturnc                 ó"  • [        US5      (       a  UR                  R                  OUR                  nSnS HH  nU R                  US5      c  M  U R                  XB5      U:w  d  M/  [        R                  S5        X   n  O   US:X  d  Uc  UnU$ )zIGet the number of threads from a worker and the user-supplied parameters.ÚstateN)ÚnthreadÚn_jobsz-Overriding `nthreads` defined in dask worker.r   )Úhasattrr   ÚnthreadsÚgetÚLOGGERÚinfo)r   r   ÚdwntÚ	n_threadsÚps        ÚU/srv/projetos/modelo_ml_acdoc/venv/lib/python3.13/site-packages/xgboost/dask/utils.pyÚget_n_threadsr      s†   € ô %,¨F°G×$<Ñ$<ˆ6�<‰<× Ò À&Ç/Á/€DØ€IÛ"ˆØ�?‰?˜1˜dÓ#Ó/°K·O±OÀAÓ4LÐPTÕ4TÜ�K‰KÐGÔHØ#™ˆIÙñ	 #ð
 �Aƒ~˜Ñ*Øˆ	ØÐó    ÚdconfigÚcoll_cfgc                 óò  • S/nSnSnU b<  U  H5  nXR;  a  [        SU 35      e[        R                  " SU S3[        5        M7     O0 n U R	                  SS5      nUb1  UR                  S5      (       a  UR                  S5      (       a  US	S
 nUb"   [        R                  R                  U5      u  p4Uc
  [        5       nUR                  b;  Ub,  UR                  U:w  a  [        SU SUR                   S35      eUR                  nUR                  bP  US:w  a>  Ub;  UR                  S:w  a+  XAR                  :w  a  [        SU SUR                   S35      eUR                  nX44$ ! [          a     NÁf = f)zåGet the tracker address from the optional user configuration.

Parameters
----------
dconfig :
    Dask global configuration.

coll_cfg :
    Collective configuration.

Returns
-------
The IP address along with the port number.

Úscheduler_addressNr   zUnknown configuration: zeUse `coll_cfg` instead of the Dask global configuration store for the XGBoost tracker configuration: Ú.Ú[Ú]é   éÿÿÿÿz\Conflicting host IP addresses from the dask configuration and the collective configuration: z v.s. zPConflicting ports from the dask configuration and the collective configuration: )Ú
ValueErrorÚwarningsÚwarnÚFutureWarningr   Ú
startswithÚendswithÚdistributedÚcommÚget_address_host_portr   Útracker_host_ipÚtracker_port)r   r   Úvalid_configÚhost_ipÚportÚks         r   Úget_address_from_userr6   "   s¾  € ð& (Ð(€Là€GØ€DàÑÛˆAØÓ$Ü Ð#:¸1¸#Ð!>Ó?Ð?Ü�MŠMð?Ø?@¸cÀðDô öò ð ˆà�k‰kÐ-¨tÓ4€GØÑ˜w×1Ñ1°#×6Ñ6¸7×;KÑ;KÈC×;PÑ;Pà˜!˜B�-ˆØÑð	Ü'×,Ñ,×BÑBÀ7ÓK‰MˆGð ÑÜ“8ˆØ×ÑÑ+ØÑ 8×#;Ñ#;¸wÓ#FÜð-Ø-4¨I°V¸H×<TÑ<TÐ;UÐUVðXóð ð ×*Ñ*ˆØ×ÑÑ(à�A‹IØÑ Ø×%Ñ%¨Ó*Ø×-Ñ-Ó-äð-Ø-1¨F°&¸×9NÑ9NÐ8OÈqðRóð ð ×$Ñ$ˆàˆ=Ðøô3 ó 	Ùð	ús   Â!E) Å)
E6Å5E6c                  ó4   • [        [        R                  5      $ )N)Úparse_versionÚdaskÚ__version__© r   r   Ú_DASK_VERSIONr<   k   s   € äœ×)Ñ)Ó*Ð*r   c                  ó.   • [        5       [        S5      :¬  $ )Nz	2024.12.1©r<   r8   r;   r   r   Ú_DASK_2024_12_1r?   p   s   € ä‹?œm¨KÓ8Ñ8Ð8r   c                  ó.   • [        5       [        S5      :¬  $ )Nz2025.3.0r>   r;   r   r   Ú_DASK_2025_3_0rA   u   s   € ä‹?œm¨JÓ7Ñ7Ð7r   )Ú__doc__Úloggingr(   Ú	functoolsr   ÚfcacheÚtypingr   r   r   r   r9   r-   Úpackaging.versionr   r	   r8   Ú
collectiver   Ú	getLoggerr   ÚstrÚintr   r6   r<   Úboolr?   rA   r;   r   r   Ú<module>rM      sé   ðá /ã Û Ý %ß -Ó -ã Û Ý %Ý 4å à	×	Ò	Ð+Ó	,€ð˜t C¨ H™~ð Ð7Kð ÐPSô ðFØ�d˜3 ˜8‘nÑ%ðFØ17ðFà
ˆ8�C‰=˜#ÐÑôFðR ð+�wó +ó ð+ð ð9˜ó 9ó ð9ð ð8˜ó 8ó ñ8r   