Ë
    Q^(hU  ã                   óž   — d dl mZmZmZmZ d dlmZ d dlmZm	Z	 d dl
mZmZ d dlmZ dZdZ G d„ d	e«      Z G d
„ de«      Z G d„ de«      Zy)é    )ÚAnyÚDictÚOptionalÚUnion)ÚInferenceProviderMapping)ÚRequestParametersÚ_as_dict)ÚTaskProviderHelperÚfilter_none)Úget_sessionÚ	replicatezhttps://api.replicate.comc            	       ó”   ‡ — e Zd Zdefˆ fd„Zdededefˆ fd„Zdededefd„Zd	ed
ede	de
e   fd„Zddeeef   de
e   defd„Zˆ xZS )ÚReplicateTaskÚtaskc                 ó:   •— t         ‰| �  t        t        |¬«       y )N)ÚproviderÚbase_urlr   )ÚsuperÚ__init__Ú	_PROVIDERÚ	_BASE_URL)Úselfr   Ú	__class__s     €úl/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/huggingface_hub/inference/_providers/replicate.pyr   zReplicateTask.__init__   s   ø€ Ü‰Ñ¤)´iÀdÐÕKó    ÚheadersÚapi_keyÚreturnc                 ó2   •— t         ‰| �  ||«      }d|d<   |S )NÚwaitÚPrefer)r   Ú_prepare_headers)r   r   r   r   s      €r   r"   zReplicateTask._prepare_headers   s#   ø€ Ü‘'Ñ*¨7°GÓ<ˆØ"ˆ�ÑØˆr   Úmapped_modelc                 ó   — d|v ryd|› d�S )Nú:z/v1/predictionsz/v1/models/z/predictions© )r   r#   r   s      r   Ú_prepare_routezReplicateTask._prepare_route   s   € Ø�,ÑØ$Ø˜\˜N¨,Ð7Ð7r   ÚinputsÚ
parametersÚprovider_mapping_infoc                 ó|   — |j                   }dd|it        |«      ¥i}d|v r|j                  dd«      d   }||d<   |S )NÚinputÚpromptr%   é   Úversion)Úprovider_idr   Úsplit)r   r(   r)   r*   r#   Úpayloadr/   s          r   Ú_prepare_payload_as_dictz&ReplicateTask._prepare_payload_as_dict   sV   € ð -×8Ñ8ˆØ#*¨X°vÐ,YÄÈZÓAXÐ,YÐ"ZˆØ�,ÑØ"×(Ñ(¨¨aÓ0°Ñ3ˆGØ!(ˆG�IÑØˆr   ÚresponseÚrequest_paramsc                 óü   — t        |«      }|j                  d«      €t        d|j                  d«      › d�«      ‚t        |d   t        «      r|d   n|d   d   }t        «       j                  |«      j                  S )NÚoutputzLInference request timed out after 60 seconds. No output generated for model ÚmodelzHThe model might be in cold state or starting up. Please try again later.r   )r	   ÚgetÚTimeoutErrorÚ
isinstanceÚstrr   Úcontent)r   r4   r5   Úresponse_dictÚ
output_urls        r   Úget_responsezReplicateTask.get_response%   s�   € Ü  Ó*ˆØ×Ñ˜XÓ&Ð.ÜØ^Ð_l×_pÑ_pÐqxÓ_yÐ^zØZð[óð ô
 (2°-ÀÑ2IÌ3Ô'OˆM˜(Ò#ÐUbÐckÑUlÐmnÑUoð 	ô ‹}× Ñ  Ó,×4Ñ4Ð4r   )N)Ú__name__Ú
__module__Ú__qualname__r<   r   r   r"   r'   r   r   r   r3   r   Úbytesr   r@   Ú__classcell__©r   s   @r   r   r      s˜   ø„ ðL˜Sõ Lð¨ð °sð ¸tõ ð
8¨3ð 8¸ð 8Àó 8ð
ØðØ'+ðØD\ðà	�$‰óñ
5 U¨5°$¨;Ñ%7ð 
5ÈÐRcÑIdð 
5Ðps÷ 
5r   r   c            	       ó@   ‡ — e Zd Zˆ fd„Zdedededee   fˆ fd„Zˆ xZ	S )ÚReplicateTextToImageTaskc                 ó$   •— t         ‰| �  d«       y )Nztext-to-image©r   r   ©r   r   s    €r   r   z!ReplicateTextToImageTask.__init__3   s   ø€ Ü‰Ñ˜Õ)r   r(   r)   r*   r   c                 ól   •— t         ‰| �  |||«      }|j                  �d|j                  › �|d   d<   |S )Nzhttps://huggingface.co/r,   Úlora_weights)r   r3   Úadapter_weights_pathÚhf_model_id©r   r(   r)   r*   r2   r   s        €r   r3   z1ReplicateTextToImageTask._prepare_payload_as_dict6   sH   ø€ ô ™Ñ8¸ÀÐMbÓcˆØ ×5Ñ5ÐAØ1HÐI^×IjÑIjÐHkÐ/lˆG�GÑ˜^Ñ,Øˆr   ©
rA   rB   rC   r   r   r   r   r   r3   rE   rF   s   @r   rH   rH   2   s6   ø„ ô*ðØðØ'+ðØD\ðà	�$‰÷ñ r   rH   c            	       ó@   ‡ — e Zd Zˆ fd„Zdedededee   fˆ fd„Zˆ xZ	S )ÚReplicateTextToSpeechTaskc                 ó$   •— t         ‰| �  d«       y )Nztext-to-speechrJ   rK   s    €r   r   z"ReplicateTextToSpeechTask.__init__@   s   ø€ Ü‰ÑÐ)Õ*r   r(   r)   r*   r   c                 ó^   •— t         ‰| �  |||«      }|d   j                  d«      |d   d<   |S )Nr,   r-   Útext)r   r3   ÚpoprP   s        €r   r3   z2ReplicateTextToSpeechTask._prepare_payload_as_dictC   s=   ø€ ô ™Ñ8¸ÀÐMbÓcˆØ#*¨7Ñ#3×#7Ñ#7¸Ó#Aˆ�Ñ˜Ñ Øˆr   rQ   rF   s   @r   rS   rS   ?   s6   ø„ ô+ðØðØ'+ðØD\ðà	�$‰÷ñ r   rS   N)Útypingr   r   r   r   Úhuggingface_hub.hf_apir   Ú!huggingface_hub.inference._commonr   r	   Ú,huggingface_hub.inference._providers._commonr
   r   Úhuggingface_hub.utilsr   r   r   r   rH   rS   r&   r   r   ú<module>r]      sI   ðß -Ó -å ;ß Iß XÝ -ð €	Ø'€	ô"5Ð&ô "5ôJ
˜}ô 
ô	 õ 	r   