Ë
    Q^(h>	  ã                   óX   — d Z ddlZddlZddlmZ ddlmZ erddlmZ ddd	e	d
e	de
fd„Zy)zz
Helpful utility functions and classes in relation to exploring API endpoints
with the aim for a user-friendly interface.
é    N)ÚTYPE_CHECKINGé   )ÚModelCardData)Ú	ModelInfoÚ
model_infor   Úminimum_thresholdÚmaximum_thresholdÚreturnc                 ó„  — |€|€t        d«      ‚|€d}|€t        j                  }t        | dd«      }|�t	        |t
        t        f«      sy|j                  dd«      }t	        |t
        «      r|d   }|syt        j                  dt        |«      «      }|€yt        |j                  d	«      «      }||cxk  xr |k  S c S )
aÝ  Checks if a model's emission is within a given threshold.

    Args:
        model_info (`ModelInfo`):
            A model info object containing the model's emission information.
        minimum_threshold (`float`):
            A minimum carbon threshold to filter by, such as 1.
        maximum_threshold (`float`):
            A maximum carbon threshold to filter by, such as 10.

    Returns:
        `bool`: Whether the model's emission is within the given threshold.
    NzFBoth `minimum_threshold` and `maximum_threshold` cannot both be `None`éÿÿÿÿÚ	card_dataFÚco2_eq_emissionsÚ	emissionsz\d+\.\d+|\d+r   )Ú
ValueErrorÚmathÚinfÚgetattrÚ
isinstanceÚdictr   ÚgetÚreÚsearchÚstrÚfloatÚgroup)r   r   r	   r   ÚemissionÚmatchedÚemission_values          úd/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/huggingface_hub/utils/endpoint_helpers.pyÚ_is_emission_within_thresholdr       sÒ   € ð Ð Ð%6Ð%>ÜÐaÓbÐbØÐ ØÐØÐ Ü ŸH™HÐä˜
 K°Ó6€IØÐ¤
¨9´t¼]Ð6KÔ LØð �}‰}Ð/°Ó6€HÜ�(œDÔ!Ø˜KÑ(ˆÙØô �i‰i˜¬¨X«Ó7€GØ€Øä˜7Ÿ=™=¨Ó+Ó,€NØ ÖCÐ2CÑCÐCÑCÐCó    )Ú__doc__r   r   Útypingr   Úrepocard_datar   Úhf_apir   r   Úboolr    © r!   r   ú<module>r(      sH   ðñó
 Û 	Ý  å )ñ Ý"ð&D¨kð &DÈeð &DÐhmð &DÐrvô &Dr!   