
                            S r SSKJr  SSKJr  SSKJr  SSKrSSKJr  SSKJ	r	  SSK
Jr  SS	K
Jr  SS
K
Jr  SSK
Jr  SSK
Jr  S rS r\	R$                  \	R&                  " \	R(                  R*                  5       " S S\	R,                  5      5       5       r\	R$                  \	R&                  " \	R(                  R0                  \	R(                  R2                  5       " S S\5      5       5       rg)z6Vertex AI endpoints stream direct raw predict command.    )absolute_import)division)unicode_literalsN)prediction_streamer)base)	constants)endpoint_util)endpoints_util)flags)region_utilc                 x    [         R                  " U S[        R                  S9  [         R                  " U 5        g )Nz)to do online stream direct raw prediction)prompt_func)r   AddEndpointResourceArgr   PromptForOpRegionAddDirectRawPredictInputArgparsers    5lib/surface/ai/endpoints/stream_direct_raw_predict.py_AddArgsr       s/    1//
 ##F+    c              #     #    U R                   R                  R                  5       nUR                  5       S   U l        [
        R                  " XR                  SS9   [        R                  " U R                  5      nU[        R                  :X  a  [        R                  " S5      nO[        R                  " S5      nU R                  S5      (       d  SU l        UR!                  UR#                  5       US   US	   S
9 H,  n[$        R&                  " UR(                  5      Ul        Uv   M.     SSS5        g! , (       d  f       g= f7f)z2Run Vertex AI online stream direct raw prediction.locationsIdT)regionis_predictionv1v1beta1formatjsonmethod_nameinput)endpointr   r    N)CONCEPTSr!   ParseAsDictr   r	   AiplatformEndpointOverridesr
   ReadInputFromArgsjson_requestr   
GA_VERSIONr   PredictionStreamerIsSpecifiedr   StreamDirectRawPredictRelativeNamebase64	b64decodeoutput)argsversionendpoint_ref
input_jsonstreamerresps         r   _Runr6   )   s	    ''--/,##%m4$+00kk  11$2C2CDJ)&&&$77=h$77	BhH%%dk//**,}-! 0 
 $$T[[1dkj  s   AECD;2	E;
E	Ec                   .    \ rS rSrSr\S 5       rS rSrg)StreamDirectRawPredictGaB   a  Run Vertex AI online stream direct raw prediction.

   `{command}` sends a stream direct raw prediction request to Vertex AI
   endpoint for the given input. The request limit is 10MB.

## EXAMPLES

To stream direct predict against an endpoint ``123'' under project ``example''
in region ``us-central1'', run:

  $ {command} 123 --project=example --region=us-central1
  --json-request=input.json
c                     [        U 5        g N)r   r   s    r   ArgsStreamDirectRawPredictGa.ArgsS   s
    Vr   c                 6    [        U[        R                  5      $ r;   )r6   r   r(   selfr0   s     r   RunStreamDirectRawPredictGa.RunW   s    i**++r    N)	__name__
__module____qualname____firstlineno____doc__staticmethodr<   rA   __static_attributes__rC   r   r   r8   r8   B   s       ,r   r8   c                       \ rS rSrSrS rSrg)StreamDirectRawPredictBeta[   a  Run Vertex AI online stream direct raw prediction.

   `{command}` sends a stream direct raw prediction request to Vertex AI
   endpoint for the given input. The request limit is 10MB.

## EXAMPLES

To stream direct raw predict against an endpoint ``123'' under project
``example'' in region ``us-central1'', run:

  $ {command} 123 --project=example --region=us-central1
  --json-request=input.json
c                 6    [        U[        R                  5      $ r;   )r6   r   BETA_VERSIONr?   s     r   rA   StreamDirectRawPredictBeta.Runl   s    i,,--r   rC   N)rD   rE   rF   rG   rH   rA   rJ   rC   r   r   rL   rL   [   s    .r   rL   )rH   
__future__r   r   r   r-   #googlecloudsdk.api_lib.ai.endpointsr   googlecloudsdk.callioper   googlecloudsdk.command_lib.air   r	   r
   r   r   r   r6   UniverseCompatibleReleaseTracksReleaseTrackGACommandr8   BETAALPHArL   rC   r   r   <module>r\      s    = &  '  C ( 3 7 8 / 5,2 D%%((),t|| , * ,. D%%**D,=,=,C,CD.!9 . E .r   