
    ;3h                         d Z ddlmZmZ ddlZddlmZ ddlm	Z	 dedee
eef      fdZdedee
eef      fd	Zdede
eef   fd
Zy)z
Defines internal helper methods for handling transformers and diffusers pipelines.
These are used by load_from_pipeline method in pipelines.py.
    )AnyOptionalN)Image)
componentspipelinereturnc                 	   	 dd l dt        ffd} || d      r4t        j                  ddd	      t        j
                  d
d      d d dS  || d      r4t        j                  ddd	      t        j                  dd      d d dS  || d      r3t        j                  dd      t        j                  dd      d d dS  || d      r3t        j                  dd      t        j
                  dd      d d dS  || d      r4t        j                  ddd	      t        j
                  dd      d d dS  || d      rbt        j                  dd d!      t        j                  d"d      gt        j                  d#d      t        j
                  d$d      gd% d& dS  || d'      r4t        j                  ddd!      t        j                  d(d      d) d* dS  || d+      r3t        j                  dd      t        j
                  dd      d, d- dS  || d.      r3t        j                  dd      t        j                  d/d      d0 d1 dS  || d2      r3t        j                  dd      t        j                  dd      d3 d4 dS  || d5      r3t        j                  dd      t        j                  d6d      d7 d8 dS  || d9      r3t        j                  dd      t        j                  d:d      d; d< dS  || d=      r`t        j                  dd      t        j                  d>d      t        j                  d?d      gt        j
                  dd      d@ dA dS  || dB      rKt        j                  ddCd	      t        j                  d"d      gt        j
                  dDd      dE dF dS  || dG      rKt        j                  ddd	      t        j                  d"d      gt        j
                  d$d      dH dI dS  || dJ      r4t        j                  ddd	      t        j                  dKd      dL dM dS  || dN      r4t        j                  ddd	      t        j                  dOd      dP dQ dS t        dRt        |              # t        $ r}t        d      |d }~ww xY w)SNr   zAtransformers not installed. Please try `pip install transformers`
class_namec                 >    t        |d       }|xr t        | |      S Ngetattr
isinstance)r   r
   clstransformerss      V/var/www/html/audio-gradio/venv/lib/python3.12/site-packages/gradio/pipelines_utils.pyis_transformers_pipeline_typezChandle_transformers_pipeline.<locals>.is_transformers_pipeline_type   s#    lJ50z(C00    AudioClassificationPipelinefilepathInputFtypelabelrenderClassr   r   c                 
    d| iS Ninputs is    r   <lambda>z.handle_transformers_pipeline.<locals>.<lambda>    
    XqM r   c                 :    | D ci c]  }|d   |d    c}S c c}w Nr   scorer!   rr#   s     r   r$   z.handle_transformers_pipeline.<locals>.<lambda>!   !    a%Haj!G*&<%H %H   r    outputs
preprocesspostprocess"AutomaticSpeechRecognitionPipelineOutputc                 
    d| iS r   r!   r"   s    r   r$   z.handle_transformers_pipeline.<locals>.<lambda>'   r%   r   c                     | d   S Ntextr!   r*   s    r   r$   z.handle_transformers_pipeline.<locals>.<lambda>(   
    QvY r   FeatureExtractionPipelinec                 
    d| iS r   r!   xs    r   r$   z.handle_transformers_pipeline.<locals>.<lambda>.   r%   r   c                     | d   S Nr   r!   r7   s    r   r$   z.handle_transformers_pipeline.<locals>.<lambda>/   s
    QqT r   FillMaskPipelineClassificationc                 
    d| iS r   r!   r;   s    r   r$   z.handle_transformers_pipeline.<locals>.<lambda>5   r%   r   c                 :    | D ci c]  }|d   |d    c}S c c}w N	token_strr(   r!   r)   s     r   r$   z.handle_transformers_pipeline.<locals>.<lambda>6   !    !%LQanaj&@%L %Lr,   ImageClassificationPipelineInput Imagec                 
    d| iS Nimagesr!   r"   s    r   r$   z.handle_transformers_pipeline.<locals>.<lambda>>   r%   r   c                 :    | D ci c]  }|d   |d    c}S c c}w r'   r!   r)   s     r   r$   z.handle_transformers_pipeline.<locals>.<lambda>?   r+   r,   QuestionAnsweringPipeline   Context)linesr   r   QuestionAnswerScorec                     | |dS )N)contextquestionr!   cqs     r   r$   z.handle_transformers_pipeline.<locals>.<lambda>K   s    1!'D r   c                     | d   | d   fS Nanswerr(   r!   r7   s    r   r$   z.handle_transformers_pipeline.<locals>.<lambda>L       ak1W:%> r   SummarizationPipelineSummaryc                 
    d| iS r   r!   r;   s    r   r$   z.handle_transformers_pipeline.<locals>.<lambda>R   r%   r   c                     | d   d   S Nr   summary_textr!   r7   s    r   r$   z.handle_transformers_pipeline.<locals>.<lambda>S       QqT.%9 r   TextClassificationPipelinec                     | gS r   r!   r;   s    r   r$   z.handle_transformers_pipeline.<locals>.<lambda>Y       QC r   c                 :    | D ci c]  }|d   |d    c}S c c}w r'   r!   r)   s     r   r$   z.handle_transformers_pipeline.<locals>.<lambda>Z   r+   r,   TokenClassificationPipelineEntitiesc                     | gS r   r!   r;   s    r   r$   z.handle_transformers_pipeline.<locals>.<lambda>`   rf   r   c                     || dS )N)r6   entitiesr!   )r*   r6   s     r   r$   z.handle_transformers_pipeline.<locals>.<lambda>a   s    , r   TextGenerationPipelinec                 
    d| iS )Ntext_inputsr!   r;   s    r   r$   z.handle_transformers_pipeline.<locals>.<lambda>j   s    ]A$6 r   c                     | d   d   S Nr   generated_textr!   r7   s    r   r$   z.handle_transformers_pipeline.<locals>.<lambda>k       QqT*:%; r   TranslationPipelineTranslationc                     | gS r   r!   r;   s    r   r$   z.handle_transformers_pipeline.<locals>.<lambda>q   rf   r   c                     | d   d   S Nr   translation_textr!   r7   s    r   r$   z.handle_transformers_pipeline.<locals>.<lambda>r       QqT*<%= r   Text2TextGenerationPipelineGenerated Textc                     | gS r   r!   r;   s    r   r$   z.handle_transformers_pipeline.<locals>.<lambda>x   rf   r   c                     | d   d   S rq   r!   r7   s    r   r$   z.handle_transformers_pipeline.<locals>.<lambda>y   rs   r   ZeroShotClassificationPipeline&Possible class names (comma-separated)zAllow multiple true classesc                     | ||dS )N)	sequencescandidate_labelsmulti_labelr!   )r#   rW   ms      r   r$   z.handle_transformers_pipeline.<locals>.<lambda>   s    $% + r   c                 p    t        t        | d               D ci c]  }| d   |   | d   |    c}S c c}w )Nlabelsscores)rangelenr)   s     r   r$   z.handle_transformers_pipeline.<locals>.<lambda>   s?    8=c!H+>N8O&34(A(A.&  &s   3!DocumentQuestionAnsweringPipelineInput DocumentLabelc                     | |dS N)imagerU   r!   imgrX   s     r   r$   z.handle_transformers_pipeline.<locals>.<lambda>       3A)F r   c                 :    | D ci c]  }|d   |d    c}S c c}w rZ   r!   r)   s     r   r$   z.handle_transformers_pipeline.<locals>.<lambda>   !    q%I!ak1W:&=%I %Ir,   VisualQuestionAnsweringPipelinec                     | |dS r   r!   r   s     r   r$   z.handle_transformers_pipeline.<locals>.<lambda>   r   r   c                 :    | D ci c]  }|d   |d    c}S c c}w rZ   r!   r)   s     r   r$   z.handle_transformers_pipeline.<locals>.<lambda>   r   r,   ImageToTextPipelineTextc                 
    d| iS rI   r!   r"   s    r   r$   z.handle_transformers_pipeline.<locals>.<lambda>   r%   r   c                     | d   d   S rq   r!   r7   s    r   r$   z.handle_transformers_pipeline.<locals>.<lambda>   rs   r   ObjectDetectionPipelineObjects Detectedc                 
    d| iS r   r!   r"   s    r   r$   z.handle_transformers_pipeline.<locals>.<lambda>   r%   r   c           	      r    || D cg c]%  }|d   d   |d   d   |d   d   |d   d   f|d   f' c}fS c c}w )Nboxxminyminxmaxymaxr   r!   )r*   r   r#   s      r   r$   z.handle_transformers_pipeline.<locals>.<lambda>   sk       eHV,eHV,eHV,eHV,	 '
+ s   *4z(Unsupported transformers pipeline type: )r   ImportErrorstrr   Audior   Textbox	Dataframer   HighlightedTextCheckboxAnnotatedImage
ValueErrorr   )r   ier   r   s      @r   handle_transformers_pipeliner      s,   1C 1 %X/LM &&JgeT!''geD1H	
 	
 %X/ST &&JgeT!))G1.	
 	
 %X/JK ((wuE!++(5I1)	
 	
 %X/AB ((wuE!''.>uM1L	
 	
 %X/LM &&}U "''.>uM1H
 	
 %X/JK "")EJ""EB
 ""%@  wu= E>
 	
 %X/FG ((qN!))	%H19	
 	
 %X/KL ((wuE!''.>uM'H	
 	
 %X/LM ((wuE!11
5Q'	
 	
 %X/GH ((wuE!))G6;	
 	
 %X/DE ((wuE!))eL'=	
 	
 %X/LM ((wuE!))0@O';	
 	
 %X/OP ""?""B5 ##*GPUV "''.>uM

 	
$ %X/RS   j8HQVW""EB "''geDFI
 	
 %X/PQ   jeT""EB "''geDFI
 	
 %X/DE &&}U "))uE1;
 	
 %X/HI &&}U "00( 2
 	
0 ?X?OP
QQg  O
	s   R8 8	SSSc                 	   	 dd l dt        ffd} || d      r}t        j                  dd      t        j                  d	d      t        j
                  d
dddd      t        j
                  ddddd      gt        j                  ddd      d d dS  || d      rt        j                  dd      t        j                  d	d      t        j                  ddd      t        j
                  ddddd      t        j
                  d
dddd      t        j
                  ddddd      gt        j                  ddd      d  d! dS  || d"      rt        j                  dd      t        j                  d	d      t        j                  ddd      t        j                  dd#d      t        j
                  ddddd      t        j
                  d
dddd      t        j
                  ddddd      gt        j                  ddd      d$ d% dS  || d&      rt        j                  dd      t        j                  d	d      t        j                  ddd      t        j
                  ddddd      t        j
                  d
dddd      t        j
                  ddddd      gt        j                  ddd      d' d( dS  || d)      rht        j                  ddd      t        j
                  d
dddd      t        j
                  ddddd      gt        j                  ddd      d* d+ dS  || d,      rt        j                  dd      t        j                  d	d      t        j                  ddd      t        j
                  d
dddd      t        j
                  ddddd      t        j
                  d-dd.d/d      gt        j                  ddd      d0 d1 dS  || d2      rt        j                  dd      t        j                  d	d      t        j                  ddd      t        j
                  d
dddd      t        j
                  ddddd      t        j
                  d3dd4dd      gt        j                  ddd      d5 d6 dS t        d7t        |              # t        $ r}t        d      |d }~ww xY w)8Nr   z;diffusers not installed. Please try `pip install diffusers`r
   c                 >    t        |d       }|xr t        | |      S r   r   )r   r
   r   	diffuserss      r   is_diffusers_pipeline_typez=handle_diffusers_pipeline.<locals>.is_diffusers_pipeline_type   s#    iT20z(C00r   StableDiffusionPipelinePromptFr   zNegative promptzNumber of inference steps     2   r   minimummaximumvaluestepzGuidance scale   g      @g      ?zGenerated Imagepil)r   r   r   c                     | |||dS )N)promptnegative_promptnum_inference_stepsguidance_scaler!   )r   n_promptnum_inf_stepsg_scales       r   r$   z+handle_diffusers_pipeline.<locals>.<lambda>   s     #+'4")	L r   c                     | d   d   S NrJ   r   r!   r7   s    r   r$   z+handle_diffusers_pipeline.<locals>.<lambda>       Qx[^ r   r-   StableDiffusionImg2ImgPipeliner   r   r   Strengthg?g?c                 X    | t        j                  |      j                  d      ||||dS N   r   )r   r   r   r   r   strengthr   openresizer   r   r   r   r   r   s         r   r$   z+handle_diffusers_pipeline.<locals>.<lambda>  4     !E*11*=#+'4")$ r   c                     | d   d   S r   r!   r7   s    r   r$   z+handle_diffusers_pipeline.<locals>.<lambda>  r   r   StableDiffusionInpaintPipelinez
Mask Imagec                     | t        j                  |      j                  d      t        j                  |      j                  d      ||||dS )Nr   )r   r   
mask_imager   r   r   r   r   )r   r   r   r   r   r   r   s          r   r$   z+handle_diffusers_pipeline.<locals>.<lambda>8  sK     !E*11*=#jj4;;JG#+'4")$ r   c                     | d   d   S r   r!   r7   s    r   r$   z+handle_diffusers_pipeline.<locals>.<lambda>G  r   r    StableDiffusionDepth2ImgPipelinec                 X    | t        j                  |      j                  d      ||||dS r   r   r   s         r   r$   z+handle_diffusers_pipeline.<locals>.<lambda>d  r   r   c                     | d   d   S r   r!   r7   s    r   r$   z+handle_diffusers_pipeline.<locals>.<lambda>q  r   r   %StableDiffusionImageVariationPipelinec                 R    t        j                  |       j                  d      ||dS )Nr   )r   r   r   r   )r   r   r   s      r   r$   z+handle_diffusers_pipeline.<locals>.<lambda>  s'    E*11*='4")A r   c                     | d   d   S r   r!   r7   s    r   r$   z+handle_diffusers_pipeline.<locals>.<lambda>  r   r   &StableDiffusionInstructPix2PixPipelinezImage Guidance scale   g      ?c                 X    | t        j                  |      j                  d      ||||dS )Nr   )r   r   r   r   r   image_guidance_scaler   )r   r   r   r   r   img_g_scales         r   r$   z+handle_diffusers_pipeline.<locals>.<lambda>  s4     !E*11*=#+'4")(3 r   c                     | d   d   S r   r!   r7   s    r   r$   z+handle_diffusers_pipeline.<locals>.<lambda>  r   r   StableDiffusionUpscalePipelinezNoise leveld   c                 X    | t        j                  |      j                  d      ||||dS )Nr   )r   r   r   r   r   noise_levelr   )r   r   r   r   r   r   s         r   r$   z+handle_diffusers_pipeline.<locals>.<lambda>  s4     !E*11*=#+'4")* r   c                     | d   d   S r   r!   r7   s    r   r$   z+handle_diffusers_pipeline.<locals>.<lambda>  r   r   z%Unsupported diffusers pipeline type: )	r   r   r   r   r   Sliderr   r   r   )r   r   r   r   s      @r   handle_diffusers_pipeliner      s   1 1 "(,EF ""%@""):5I!!5 !!*$ "'''E 49
 	
< "(,LM ""%@""):5I  jN!!$a#C !!5 !!*, "'''E 4O(
 (	
R "(,LM ""%@""):5I  jN  jUS!!$a#C !!5 !!*. "'''E 4U+
 +	
X "(,NO ""%@""):5I  jN!!$a#C !!5 !!*, "'''E 4O(
 (	
R "(,ST   jN!!5 !!*" "'''E
 45
 	
8 "(,TU ""%@""):5I  jN!!5 !!* !!0%4 "'''E 4W,
 ,	
Z "(,LM ""%@""):5I  jN!!5 !!* !!'CrPQ%, "'''E 4O(
 (	
R <T(^<LM
NN}  I
	s   S 	S SS c                 R    	 ddl mm  j                  dk(  r0t        j                  d      t        j                  d      d d d	S  j                  d
k(  r^t        j                  dd      t        j                  d      gt        j                  d      t        j                  d      gd d d	S  j                  dk(  rLt        j                  dd      t        j                  ddddd      gt        j                  d      d d d	S  j                  dk(  rHt        j                  d      t        j                  dd      gt        j                  d      d  d! d	S  j                  d"k(  r0t        j                  d      t        j                  d#      d d$ d	S  j                  d%k(  rKt        j                  d      t        j                  ddddd      gt        j                  d&      d' d( d	S  j                  d)k(  r0t        j                  d      t        j                  d#      d d d*d+S  j                  d,v r\t        j                  d      t        j                  d-      t        j                  d.      gt        j                  d/      d0 d1 d	S  j                  d2k(  rGt        j                  d      t        j                  d3      gt        j                  d      d4 d5 d	S  j                  d6k(  r0t        j                  d      t        j                  d#      d d7 d	S  j                  d8k(  r4t        j                  d9d:;      t        j                  d<      fd=d> d	S  j                  d?k(  rKt        j                  d9d:;      t        j                  dd      gt        j                  d      fd@dA d	S  j                  dBk(  r5t        j                  d9d:;      t        j                  dC      fdDdE d*d+S  j                  dFk(  r4t        j                  d9d:;      t        j                  dG      fdHdI d	S  j                  dJk(  r5t        j                  d9d:;      t        j                  dK      fdLdM d*d+S  j                  dNk(  r4t        j                  d9d:;      t        j                  d#      fdOdP d	S  j                  dQk(  r5t        j                  d9d;      t        j                  dR       fdSdT d	S  j                  dUk(  r5t        j                  d9d;      t        j                  d#       fdVdW d	S  j                  dXk(  rGt        j                  d      t        j                  dY      gt        j                  d#      dZ d[ d	S  j                  d\k(  rJt        j                  d9d];      t        j                  d      gt        j                  d^      fd_d` d	S  j                  dak(  r4t        j                  d9d:;      t        j                  d#      fdbdc d	S  j                  ddk(  rKt        j                  d9d;      t        j                  d3      gt        j                  d       fdedf d	S  j                  dgk(  rJt        j                  d9d:;      t        j                  d3      gt        j                  d      fdhdi d	S  j                  djk(  rKt        j                  d9d:;      t        j                  d3      gt        j                  dK      fdkdl d*d+S t        dm j                         # t        $ r}t        d      |d }~ww xY w)nNr   )as_url
read_audiozmtransformers_js_py not installed. Please add `transformers_js_py` to the requirements of your Gradio-Lite appz	fill-maskr   )r   r@   c                 :    | D ci c]  }|d   |d    c}S c c}w rC   r!   r)   s     r   r$   z1handle_transformers_js_pipeline.<locals>.<lambda>  rE   r,   r-   zquestion-answeringrM   rN   )rO   r   rP   rQ   rR   c                 
    || fS r   r!   rV   s     r   r$   z1handle_transformers_js_pipeline.<locals>.<lambda>  s    ( r   c                     | d   | d   fS rZ   r!   r7   s    r   r$   z1handle_transformers_js_pipeline.<locals>.<lambda>	  r\   r   summarizationz)The maximum numbers of tokens to generater   r   r   r   r^   c                     | d|ifS Nmax_new_tokensr!   r6   r   s     r   r$   z1handle_transformers_js_pipeline.<locals>.<lambda>      !>28 r   c                     | d   d   S ra   r!   r7   s    r   r$   z1handle_transformers_js_pipeline.<locals>.<lambda>  rc   r   ztext-classificationzTop kr   )r   r   c                     | d|ifS Ntopkr!   )r6   r   s     r   r$   z1handle_transformers_js_pipeline.<locals>.<lambda>%  s    dVTN-C r   c                 :    | D ci c]  }|d   |d    c}S c c}w r'   r!   r)   s     r   r$   z1handle_transformers_js_pipeline.<locals>.<lambda>&  r+   r,   ztext-generationr2   c                     | d   d   S rq   r!   r7   s    r   r$   z1handle_transformers_js_pipeline.<locals>.<lambda>-  rs   r   ztext2text-generationr|   c                     | d|ifS r   r!   r   s     r   r$   z1handle_transformers_js_pipeline.<locals>.<lambda><  r   r   c                     | d   d   S rq   r!   r7   s    r   r$   z1handle_transformers_js_pipeline.<locals>.<lambda>@  rs   r   ztoken-classificationT)r    r.   r/   r0   postprocess_takes_inputs>   translationtranslation_xx_to_yyzSource LanguagezTarget Languageru   c                     | ||dfS )N)src_langtgt_langr!   )r<   sts      r   r$   z1handle_transformers_js_pipeline.<locals>.<lambda>R  s    11!.L*M r   c                     | d   d   S rx   r!   r7   s    r   r$   z1handle_transformers_js_pipeline.<locals>.<lambda>S  rz   r   zzero-shot-classificationr   c                 j    | |j                  d      D cg c]  }|j                          c}fS c c}w N,splitstrip)r6   
classnamesrW   s      r   r$   z1handle_transformers_js_pipeline.<locals>.<lambda>\  s.    $.$4$4S$9:q:4 :s   0c                 <    t        t        | d   | d   d            S )Nr   r   F)strict)dictzipresults    r   r$   z1handle_transformers_js_pipeline.<locals>.<lambda>`  s!    $F8$fX&6uE+ r   zfeature-extractionc                 (    | j                         d   S r>   to_numpytensors    r   r$   z1handle_transformers_js_pipeline.<locals>.<lambda>i  s    &//*;A*> r   zdepth-estimationr   rG   )r   r   Depthc                      |       fS r   r!   
image_pathr   s    r   r$   z1handle_transformers_js_pipeline.<locals>.<lambda>q      fZ.@-B r   c                 (    | d   j                         S )Ndepthto_pilr  s    r   r$   z1handle_transformers_js_pipeline.<locals>.<lambda>r  s    &/*@*@*B r   zimage-classificationc                      |       d|ifS r   r!   )r"  r   r   s     r   r$   z1handle_transformers_js_pipeline.<locals>.<lambda>{  s    F:4FQU3W r   c                 :    | D ci c]  }|d   |d    c}S c c}w r'   r!   )r  items     r   r$   z1handle_transformers_js_pipeline.<locals>.<lambda>|  s)    9?+15WtG},+  +r,   zimage-segmentationSegmentationc                      |       fS r   r!   r!  s    r   r$   z1handle_transformers_js_pipeline.<locals>.<lambda>  r#  r   c           	          || D cg c]0  }|d   j                         d d d d df   dz  |d    d|d    df2 c}fS c c}w )Nmaskr   g     o@r    (r(   )r  r  r"  r*  s      r   r$   z1handle_transformers_js_pipeline.<locals>.<lambda>  sh     !' 	 V--/1a8 =/DM?!<
7 s   5?zimage-to-imagezOutput Imagec                      |       fS r   r!   r!  s    r   r$   z1handle_transformers_js_pipeline.<locals>.<lambda>  r#  r   c                 "    | j                         S r   r&  r  s    r   r$   z1handle_transformers_js_pipeline.<locals>.<lambda>  s    &--/ r   zobject-detectionr   c                      |       fS r   r!   r!  s    r   r$   z1handle_transformers_js_pipeline.<locals>.<lambda>  r#  r   c                     || D cg c]R  }t        |d   d         t        |d   d         t        |d   d         t        |d   d         f|d    d|d    d	fT c}fS c c}w 
Nr   r   r   r   r   r   r/  r(   r0  intr1  s      r   r$   z1handle_transformers_js_pipeline.<locals>.<lambda>  s     !'   UF 34UF 34UF 34UF 34	  =/DM?!<7    AA!zimage-feature-extractionc                      |       fS r   r!   r!  s    r   r$   z1handle_transformers_js_pipeline.<locals>.<lambda>  r#  r   c                 "    | j                         S r   r  r  s    r   r$   z1handle_transformers_js_pipeline.<locals>.<lambda>  s    &//*; r   zaudio-classificationr   c                 Z     | j                   j                  j                  d         fS Nsampling_rate	processorfeature_extractorconfigr#   r   r   s    r   r$   z1handle_transformers_js_pipeline.<locals>.<lambda>  .    x));;BB?S% r   c                 :    | D ci c]  }|d   |d    c}S c c}w r'   r!   r)   s     r   r$   z1handle_transformers_js_pipeline.<locals>.<lambda>  r+   r,   zautomatic-speech-recognitionc                 Z     | j                   j                  j                  d         fS r=  r?  rC  s    r   r$   z1handle_transformers_js_pipeline.<locals>.<lambda>  rD  r   c                     | d   S r5   r!   r7   s    r   r$   z1handle_transformers_js_pipeline.<locals>.<lambda>  r8   r   ztext-to-audiozSpeaker Embeddingsc                     | d|ifS )Nspeaker_embeddingsr!   )r6   rI  s     r   r$   z1handle_transformers_js_pipeline.<locals>.<lambda>  s    %'9:< r   c                 <    | d   t        j                  | d         fS )Nr>  audio)npasarrayr7   s    r   r$   z1handle_transformers_js_pipeline.<locals>.<lambda>  s    a&8"**QwZ:P%Q r   zdocument-question-answeringr   r   c                      |       |fS r   r!   )r   rX   r   s     r   r$   z1handle_transformers_js_pipeline.<locals>.<lambda>  s    &+q)9 r   c                     | d   d   S )Nr   r[   r!   r7   s    r   r$   z1handle_transformers_js_pipeline.<locals>.<lambda>  s    QqT& r   zimage-to-textc                      |       fS r   r!   r!  s    r   r$   z1handle_transformers_js_pipeline.<locals>.<lambda>  r#  r   c                     | d   d   S rq   r!   r7   s    r   r$   z1handle_transformers_js_pipeline.<locals>.<lambda>  rs   r   zzero-shot-audio-classificationc                      | j                   j                  j                  d         |j                  d      D cg c]  }|j	                          c}fS c c}w )Nr>  r  )r@  rA  rB  r  r  )
audio_pathr  rW   r   r   s      r   r$   z1handle_transformers_js_pipeline.<locals>.<lambda>  sU    &&88??P %/$4$4S$9:q:: 
 ;s   Ac                 :    | D ci c]  }|d   |d    c}S c c}w r'   r!   r  r#   s     r   r$   z1handle_transformers_js_pipeline.<locals>.<lambda>  !    6*Ra1W:qz+A*R *Rr,   zzero-shot-image-classificationc                 x     |       |j                  d      D cg c]  }|j                          c}fS c c}w r  r  r"  r  rW   r   s      r   r$   z1handle_transformers_js_pipeline.<locals>.<lambda>  4    z"$.$4$4S$9:q:: :   7c                 :    | D ci c]  }|d   |d    c}S c c}w r'   r!   rU  s     r   r$   z1handle_transformers_js_pipeline.<locals>.<lambda>  rV  r,   zzero-shot-object-detectionc                 x     |       |j                  d      D cg c]  }|j                          c}fS c c}w r  r  rX  s      r   r$   z1handle_transformers_js_pipeline.<locals>.<lambda>  rY  rZ  c                     || D cg c]R  }t        |d   d         t        |d   d         t        |d   d         t        |d   d         f|d    d|d    d	fT c}fS c c}w r6  r7  )r  r"  _r*  s       r   r$   z1handle_transformers_js_pipeline.<locals>.<lambda>  s     !'   UF 34UF 34UF 34UF 34	  =/DM?!<: r9  z.Unsupported transformers_js_py pipeline type: )transformers_js_pyr   r   r   taskr   r   r   r   NumberJSONr   r   r   r   r   )r   r   r   r   s   ` @@r   handle_transformers_js_pipelinerc    s   9 }}# ((w7!''.>?L	
 	
 }},, "")<""4
 ""2  w/ ?
 	
 }}' ""':!!E	 "))	: :!
 	
$ }}-- ""1!!q9 "''.>?CH
 	
 }})) ((w7!))9;	
 	
 }}.. ""1!!E	 "))0@A <!
 	
$ }}.. ((w7!X6(,
 	
 }}?? ""1""):;""):;
 "))>M=	
 		
 }}22 ""1"")QR "''.>?
 	
 }},, ((w7!++(;>	
 	
 }}** &&JmL!''g6BB	
 	
 }}..   jF!!q9 "''.>?W

 
	
 }},, &&JmL!00~FB
 )-
 	
" }}(( &&JmL!''n=B9	
 	
 }}** &&JmL!007IJB )-'
 	
* }}22 &&JmL!++(;B;	
 	
 }}.. &&JgF!''g6
 I	
 		
 }}66 &&JgF!))9
 /	
 		
 }}' ""1"")=> "''h7 R
 	
 }}55   j8HI""4 "))89

 
	
 }}' &&JmL!))9B;	
 	
 }}88   j@"")QR "''.>? S
 	
 }}88   jF"")QR "''.>? S
 	
 }}44   jF"")QR "007IJ )-3
 	
8 Ehmm_U
VVy	  {
	s   ^ 	^&^!!^&)__doc__typingr   r   numpyrL  PILr   gradior   r  r   r   r   rc  r!   r   r   <module>ri     s   
 !   vR3 vR8DcN3K vRraO aOc3h0H aOH	Wc Wd38n Wr   