Ë
    Z²jç  ã                   ót   — d dl Z d dlmZ d dlmZ d dlmZmZ ddlm	Z	m
Z
mZ  G d„ de	«      Z G d	„ d
e
«      Zy)é    N)ÚAny)ÚInferenceProviderMapping)ÚRequestParametersÚ_as_dicté   )ÚBaseConversationalTaskÚTaskProviderHelperÚfilter_nonec                   ó   ‡ — e Zd Zˆ fd„Zˆ xZS )ÚNscaleConversationalTaskc                 ó(   •— t         ‰| �  dd¬«       y )NÚnscaleú https://inference.api.nscale.com)ÚproviderÚbase_url©ÚsuperÚ__init__©ÚselfÚ	__class__s    €új/var/www/html/ia-enhanced/venv/lib/python3.12/site-packages/huggingface_hub/inference/_providers/nscale.pyr   z!NscaleConversationalTask.__init__   s   ø€ Ü‰Ñ (Ð5WÐÕXó    )Ú__name__Ú
__module__Ú__qualname__r   Ú__classcell__©r   s   @r   r   r   
   s   ø„ ÷Yð Yr   r   c            	       ór   ‡ — e Zd Zˆ fd„Zdededefd„Zdedededed	z  fd
„Z	dde
ez  ded	z  defd„Zˆ xZS )ÚNscaleTextToImageTaskc                 ó*   •— t         ‰| �  ddd¬«       y )Nr   r   ztext-to-image)r   r   Útaskr   r   s    €r   r   zNscaleTextToImageTask.__init__   s   ø€ Ü‰Ñ (Ð5WÐ^mÐÕnr   Úmapped_modelÚapi_keyÚreturnc                  ó   — y)Nz/v1/images/generations© )r   r#   r$   s      r   Ú_prepare_routez$NscaleTextToImageTask._prepare_route   s   € Ø'r   ÚinputsÚ
parametersÚprovider_mapping_infoNc                 óø   — |j                   }t        |«      }d|v r,d|v r(|j                  d«      › d|j                  d«      › �|d<   d|v r|j                  d«       d|v r|j                  d«       d||dœ|¥}|S )	NÚwidthÚheightÚxÚsizeÚnum_inference_stepsÚ	cfg_scaleÚb64_json)Úresponse_formatÚpromptÚmodel)Úprovider_idr
   Úpop)r   r)   r*   r+   r#   Úpayloads         r   Ú_prepare_payload_as_dictz.NscaleTextToImageTask._prepare_payload_as_dict   s›   € ð -×8Ñ8ˆä  Ó,ˆ
Ø�jÑ  X°Ñ%;Ø$.§N¡N°7Ó$;Ð#<¸A¸j¿n¹nÈXÓ>VÐ=WÐ!XˆJ�vÑØ  JÑ.Ø�N‰NÐ0Ô1Ø˜*Ñ$Ø�N‰N˜;Ô'à)ØØ!ñ
ð ð	
ˆð ˆr   ÚresponseÚrequest_paramsc                 óT   — t        |«      }t        j                  |d   d   d   «      S )NÚdatar   r3   )r   Úbase64Ú	b64decode)r   r;   r<   Úresponse_dicts       r   Úget_responsez"NscaleTextToImageTask.get_response*   s,   € Ü  Ó*ˆÜ×Ñ ¨fÑ 5°aÑ 8¸Ñ DÓEÐEr   )N)r   r   r   r   Ústrr(   r   Údictr   r:   Úbytesr   rB   r   r   s   @r   r    r       sv   ø„ ôoð(¨3ð (¸ð (Àó (ðØðØ'+ðØD\ðà	�‰óñ(F U¨T¡\ð FÐCTÐW[ÑC[ð FÐgj÷ Fr   r    )r?   Útypingr   Úhuggingface_hub.hf_apir   Ú!huggingface_hub.inference._commonr   r   Ú_commonr   r	   r
   r   r    r'   r   r   ú<module>rJ      s5   ðÛ Ý å ;ß Iç LÑ LôYÐ5ô Yô
FÐ.õ Fr   