
    RX9i                         S SK JrJrJrJr  S SKJr  S SKJrJ	r	J
r
  S SKJrJr  S SKJr  SrSr " S S	\5      r " S
 S\5      r " S S\5      r " S S\5      rg)    )AnyDictOptionalUnion)InferenceProviderMapping)RequestParameters_as_dict_as_url)TaskProviderHelperfilter_none)get_session	replicatezhttps://api.replicate.comc            	          ^  \ rS rSrS\4U 4S jjrS\S\S\\\4   4U 4S jjrS\S\S\4S	 jr	S
\S\S\
S\\   4S jrSS\\\4   S\\   S\4S jjrSrU =r$ )ReplicateTask   taskc                 4   > [         TU ]  [        [        US9  g )N)providerbase_urlr   )super__init__	_PROVIDER	_BASE_URL)selfr   	__class__s     n/var/www/html/land-doc-ocr/venv/lib/python3.13/site-packages/huggingface_hub/inference/_providers/replicate.pyr   ReplicateTask.__init__   s    )idK    headersapi_keyreturnc                 0   > [         TU ]  X5      nSUS'   U$ )NwaitPrefer)r   _prepare_headers)r   r   r    r   s      r   r%   ReplicateTask._prepare_headers   s!    '*7<"r   mapped_modelc                     SU;   a  gSU S3$ )N:z/v1/predictionsz/v1/models/z/predictions )r   r'   r    s      r   _prepare_routeReplicateTask._prepare_route   s    ,$\N,77r   inputs
parametersprovider_mapping_infoc                 ~    UR                   nSSU0[        U5      E0nSU;   a  UR                  SS5      S   nXeS'   U$ )Ninputpromptr)      version)provider_idr   split)r   r-   r.   r/   r'   payloadr4   s          r   _prepare_payload_as_dict&ReplicateTask._prepare_payload_as_dict   sT     -88#*Xv,YZAX,Y"Z,"((a03G!(Ir   responserequest_paramsc                    [        U5      nUR                  S5      c  [        SUR                  S5       S35      e[        US   [        5      (       a  US   OUS   S   n[        5       R                  U5      R                  $ )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   r:   r;   response_dict
output_urls        r   get_responseReplicateTask.get_response%   s     *X&.^_l_p_pqx_y^zZ[ 
 (2-2I3'O'OM(#UbckUlmnUo 	 }  ,444r   r*   )N)__name__
__module____qualname____firstlineno__rB   r   r   r   r%   r+   r   r   r8   r   bytesr   rF   __static_attributes____classcell__r   s   @r   r   r      s    LS L s tCH~ 
83 8 8 8
'+D\	$
5U5$;%7 
5RcId 
5ps 
5 
5r   r   c            	       N   ^  \ rS rSrU 4S jrS\S\S\S\\   4U 4S jjr	Sr
U =r$ )	ReplicateTextToImageTask2   c                 $   > [         TU ]  S5        g )Nztext-to-imager   r   r   r   s    r   r   !ReplicateTextToImageTask.__init__3   s    )r   r-   r.   r/   r!   c                 l   > [         TU ]  XU5      nUR                  b  SUR                   3US   S'   U$ )Nzhttps://huggingface.co/r1   lora_weights)r   r8   adapter_weights_pathhf_model_idr   r-   r.   r/   r7   r   s        r   r8   1ReplicateTextToImageTask._prepare_payload_as_dict6   sF     8Mbc 55A1HI^IjIjHk/lGG^,r   r*   rH   rI   rJ   rK   r   r   r   r   r   r8   rM   rN   rO   s   @r   rQ   rQ   2   s6    *'+D\	$ r   rQ   c            	       N   ^  \ rS rSrU 4S jrS\S\S\S\\   4U 4S jjr	Sr
U =r$ )	ReplicateTextToSpeechTask?   c                 $   > [         TU ]  S5        g )Nztext-to-speechrT   rU   s    r   r   "ReplicateTextToSpeechTask.__init__@       )*r   r-   r.   r/   r!   c                 \   > [         TU ]  XU5      nUS   R                  S5      US   S'   U$ )Nr1   r2   text)r   r8   popr[   s        r   r8   2ReplicateTextToSpeechTask._prepare_payload_as_dictC   s;     8Mbc#*7#3#7#7#A r   r*   r]   rO   s   @r   r_   r_   ?   s6    +'+D\	$ r   r_   c            	       H   ^  \ rS rSrU 4S jrS\S\S\S\\   4S jr	Sr
U =r$ )	ReplicateImageToImageTaskK   c                 $   > [         TU ]  S5        g )Nzimage-to-imagerT   rU   s    r   r   "ReplicateImageToImageTask.__init__L   rc   r   r-   r.   r/   r!   c                     [        USS9nSSU0[        U5      E0nUR                  nSU;   a  UR                  SS5      S   nXuS'   U$ )Nz
image/jpeg)default_mime_typer1   input_imager)   r3   r4   )r
   r   r5   r6   )r   r-   r.   r/   	image_urlr7   r'   r4   s           r   r8   2ReplicateImageToImageTask._prepare_payload_as_dictO   sa     FlC	#*]I,aU_I`,a"b,88,"((a03G!(Ir   r*   r]   rO   s   @r   ri   ri   K   s6    +'+D\	$ r   ri   N)typingr   r   r   r   huggingface_hub.hf_apir   !huggingface_hub.inference._commonr   r	   r
   ,huggingface_hub.inference._providers._commonr   r   huggingface_hub.utilsr   r   r   r   rQ   r_   ri   r*   r   r   <module>rw      sX    - - ; R R X - 	'	"5& "5J
} 
	 	 r   