
    ]j                         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
 ddlmZ ddlmZ dd	lmZ dd
lmZ ddlmZ ddlmZ ddlmZ  e j2                  e j4                  d      Z G d d      Z G d d      Zy)    N)JSONDecodeError   )ApiError)AsyncClientWrapperSyncClientWrapper)AsyncHttpResponseHttpResponse)jsonable_encoder)RequestOptions)construct_type)ModelProviderConnection)ProviderEnum)	ScopeEnum   ).ListModelProviderChoicesModelProvidersResponse.c                       e Zd ZdefdZddddej                  e   dej                  e   de	ej                  e      fdZeeeeeeeeeeeedd	d
ej                  e   dej                  e   dej                  e   dej                  e   dej                  e   dej                  e   dej                  e   dej                  e   dej                  e   dej                  e   dej                  e   dej                  e   dej                  e   de	e   fdZdddej                  e   de	e   fdZdddedej                  e   de	e   fdZdddedej                  e   de	d   fdZeeeeeeeeeeeedd	ded
ej                  e   dej                  e   dej                  e   dej                  e   dej                  e   dej                  e   dej                  e   dej                  e   dej                  e   dej                  e   dej                  e   dej                  e   dej                  e   de	e   fdZy)RawModelProvidersClientclient_wrapperc                    || _         y N_client_wrapperselfr   s     U/root/env/lib/python3.12/site-packages/label_studio_sdk/model_providers/raw_client.py__init__z RawModelProvidersClient.__init__   
    -    Norderingrequest_optionsr    r!   returnc                P   | j                   j                  j                  ddd|i|      }	 d|j                  cxk  rdk  rin nft	        j
                  t        j                  t           t        t        j                  t           |j                                     }t        ||      S |j                         }t        |j                  t        |j                        |	      # t        $ r6 t        |j                  t        |j                        |j                  	      w xY w)
a  
        <Card href="https://humansignal.com/goenterprise">
                <img style="pointer-events: none; margin-left: 0px; margin-right: 0px;" src="https://docs.humansignal.com/images/badge.svg" alt="Label Studio Enterprise badge"/>
                <p style="margin-top: 10px; font-size: 14px;">
                    This endpoint is not available in Label Studio Community Edition. [Learn more about Label Studio Enterprise](https://humansignal.com/goenterprise)
                </p>
            </Card>
        List all model provider connections.

        Parameters
        ----------
        ordering : typing.Optional[str]
            Which field to use when ordering the results.

        request_options : typing.Optional[RequestOptions]
            Request-specific configuration.

        Returns
        -------
        HttpResponse[typing.List[ModelProviderConnection]]

        api/model-provider-connections/GETr    methodparamsr!      ,  type_object_responsedatastatus_codeheadersbody)r   httpx_clientrequestr2   typingcastListr   r   jsonr	   r   r   dictr3   textr   r    r!   	_response_data_response_jsons         r   listzRawModelProvidersClient.list   s   2 ((55==-H , > 
		ti++1c1KK 78"$kk*AB ) 0 $YUCC&^^-N 9#8#8$yGXGXBY`noo  	ty'<'<d9K\K\F]dmdrdrss	ts   A=C& +C& &?D%api_key
auth_tokenbudget_alert_thresholdcached_available_modelsdeployment_nameendpointgoogle_application_credentialsgoogle_locationgoogle_project_idis_internalproviderscoper!   rC   rD   rE   rF   rG   rH   rI   rJ   rK   rL   rM   rN   c                2   | j                   j                  j                  dd|||||||||	|
||dddi|t              }	 d|j                  cxk  rdk  rGn nDt        j                  t        t        t        |j                         	            }t        ||
      S |j                         }t        |j                  t        |j                        |      # t        $ r6 t        |j                  t        |j                        |j                        w xY w)aH  
        <Card href="https://humansignal.com/goenterprise">
                <img style="pointer-events: none; margin-left: 0px; margin-right: 0px;" src="https://docs.humansignal.com/images/badge.svg" alt="Label Studio Enterprise badge"/>
                <p style="margin-top: 10px; font-size: 14px;">
                    This endpoint is not available in Label Studio Community Edition. [Learn more about Label Studio Enterprise](https://humansignal.com/goenterprise)
                </p>
            </Card>
        Create a new model provider connection.

        Parameters
        ----------
        api_key : typing.Optional[str]
            Model provider API key

        auth_token : typing.Optional[str]
            Model provider Auth token

        budget_alert_threshold : typing.Optional[float]
            Budget alert threshold for the given provider connection

        cached_available_models : typing.Optional[str]
            List of available models from the provider

        deployment_name : typing.Optional[str]
            Azure OpenAI deployment name

        endpoint : typing.Optional[str]
            Azure OpenAI endpoint

        google_application_credentials : typing.Optional[str]
            The content of GOOGLE_APPLICATION_CREDENTIALS json file

        google_location : typing.Optional[str]
            Google project location

        google_project_id : typing.Optional[str]
            Google project ID

        is_internal : typing.Optional[bool]
            Whether the model provider connection is internal, not visible to the user

        provider : typing.Optional[ProviderEnum]

        scope : typing.Optional[ScopeEnum]

        request_options : typing.Optional[RequestOptions]
            Request-specific configuration.

        Returns
        -------
        HttpResponse[ModelProviderConnection]

        r$   POSTrC   rD   rE   rF   rG   rH   rI   rJ   rK   rL   rM   rN   content-typeapplication/jsonr'   r:   r3   r!   omitr)   r*   r+   r.   r1   )r   r5   r6   OMITr2   r7   r8   r   r   r:   r	   r   r   r;   r3   r<   r   rC   rD   rE   rF   rG   rH   rI   rJ   rK   rL   rM   rN   r!   r>   r?   r@   s                    r   createzRawModelProvidersClient.createI   s!   L ((55==-"(*@+B#2$2P#2%6*$  2 ,+ > 
	.	ti++1c1+"5 ) 0 $YUCC&^^-N 9#8#8$yGXGXBY`noo  	ty'<'<d9K\K\F]dmdrdrss	ts    AC C ?Dr!   c                   | j                   j                  j                  dd|      }	 d|j                  cxk  rdk  rGn nDt	        j
                  t        t        t        |j                                     }t        ||      S |j                         }t        |j                  t        |j                        |      # t        $ r6 t        |j                  t        |j                        |j                        w xY w)	aT  
        <Card href="https://humansignal.com/goenterprise">
                <img style="pointer-events: none; margin-left: 0px; margin-right: 0px;" src="https://docs.humansignal.com/images/badge.svg" alt="Label Studio Enterprise badge"/>
                <p style="margin-top: 10px; font-size: 14px;">
                    This endpoint is not available in Label Studio Community Edition. [Learn more about Label Studio Enterprise](https://humansignal.com/goenterprise)
                </p>
            </Card>
        List all possible model provider choices

        Parameters
        ----------
        request_options : typing.Optional[RequestOptions]
            Request-specific configuration.

        Returns
        -------
        HttpResponse[ListModelProviderChoicesModelProvidersResponse]
            List of model provider choices
        /api/model-provider-connections/provider-choicesr%   r'   r!   r)   r*   r+   r.   r1   )r   r5   r6   r2   r7   r8   r   r   r:   r	   r   r   r;   r3   r<   r   r!   r>   r?   r@   s        r   list_model_provider_choicesz3RawModelProvidersClient.list_model_provider_choices   s    , ((55===+ > 
	
	ti++1c1B"L ) 0 $YUCC&^^-N 9#8#8$yGXGXBY`noo  	ty'<'<d9K\K\F]dmdrdrss	ts   AC C ?D idc                    | j                   j                  j                  dt        |       dd|      }	 d|j                  cxk  rdk  rGn nDt        j                  t        t        t        |j                                     }t        ||      S |j                         }t        |j                  t        |j                        |	      # t        $ r6 t        |j                  t        |j                        |j                  	      w xY w)
a+  
        <Card href="https://humansignal.com/goenterprise">
                <img style="pointer-events: none; margin-left: 0px; margin-right: 0px;" src="https://docs.humansignal.com/images/badge.svg" alt="Label Studio Enterprise badge"/>
                <p style="margin-top: 10px; font-size: 14px;">
                    This endpoint is not available in Label Studio Community Edition. [Learn more about Label Studio Enterprise](https://humansignal.com/goenterprise)
                </p>
            </Card>
        Retrieve a specific model provider connection.

        Parameters
        ----------
        id : str

        request_options : typing.Optional[RequestOptions]
            Request-specific configuration.

        Returns
        -------
        HttpResponse[ModelProviderConnection]

        r$   /r%   r\   r)   r*   r+   r.   r1   )r   r5   r6   r
   r2   r7   r8   r   r   r:   r	   r   r   r;   r3   r<   r   r_   r!   r>   r?   r@   s         r   getzRawModelProvidersClient.get   s    0 ((55==-.>r.B-C1E+ > 
	
	ti++1c1+"5 ) 0 $YUCC&^^-N 9#8#8$yGXGXBY`noo  	ty'<'<d9K\K\F]dmdrdrss	ts   AC C ?Dc                   | j                   j                  j                  dt        |       dd|      }	 d|j                  cxk  rdk  rn nt        |d      S |j                         }t        |j                  t        |j                        |	      # t        $ r6 t        |j                  t        |j                        |j                  	      w xY w)
a  
        <Card href="https://humansignal.com/goenterprise">
                <img style="pointer-events: none; margin-left: 0px; margin-right: 0px;" src="https://docs.humansignal.com/images/badge.svg" alt="Label Studio Enterprise badge"/>
                <p style="margin-top: 10px; font-size: 14px;">
                    This endpoint is not available in Label Studio Community Edition. [Learn more about Label Studio Enterprise](https://humansignal.com/goenterprise)
                </p>
            </Card>
        Delete a model provider connection by ID

        Parameters
        ----------
        id : str

        request_options : typing.Optional[RequestOptions]
            Request-specific configuration.

        Returns
        -------
        HttpResponse[None]
        r$   ra   DELETEr\   r)   r*   Nr.   r1   )r   r5   r6   r
   r2   r	   r:   r   r   r;   r3   r<   r   r_   r!   r>   r@   s        r   deletezRawModelProvidersClient.delete  s    * ((55==-.>r.B-C1E+ > 
	
	ti++1c1#YTBB&^^-N 9#8#8$yGXGXBY`noo  	ty'<'<d9K\K\F]dmdrdrss	ts   $B B ?Cc                L   | j                   j                  j                  dt        |       dd||||||||	|
|||dddi|t              }	 d|j
                  cxk  rd	k  rGn nDt        j                  t        t        t        |j                         
            }t        ||      S |j                         }t        |j
                  t        |j                        |      # t        $ r6 t        |j
                  t        |j                        |j                         w xY w)ae  
        <Card href="https://humansignal.com/goenterprise">
                <img style="pointer-events: none; margin-left: 0px; margin-right: 0px;" src="https://docs.humansignal.com/images/badge.svg" alt="Label Studio Enterprise badge"/>
                <p style="margin-top: 10px; font-size: 14px;">
                    This endpoint is not available in Label Studio Community Edition. [Learn more about Label Studio Enterprise](https://humansignal.com/goenterprise)
                </p>
            </Card>
        Update a specific model provider connection by ID.

        Parameters
        ----------
        id : str

        api_key : typing.Optional[str]
            Model provider API key

        auth_token : typing.Optional[str]
            Model provider Auth token

        budget_alert_threshold : typing.Optional[float]
            Budget alert threshold for the given provider connection

        cached_available_models : typing.Optional[str]
            List of available models from the provider

        deployment_name : typing.Optional[str]
            Azure OpenAI deployment name

        endpoint : typing.Optional[str]
            Azure OpenAI endpoint

        google_application_credentials : typing.Optional[str]
            The content of GOOGLE_APPLICATION_CREDENTIALS json file

        google_location : typing.Optional[str]
            Google project location

        google_project_id : typing.Optional[str]
            Google project ID

        is_internal : typing.Optional[bool]
            Whether the model provider connection is internal, not visible to the user

        provider : typing.Optional[ProviderEnum]

        scope : typing.Optional[ScopeEnum]

        request_options : typing.Optional[RequestOptions]
            Request-specific configuration.

        Returns
        -------
        HttpResponse[ModelProviderConnection]

        r$   ra   PATCHrQ   rR   rS   rT   r)   r*   r+   r.   r1   )r   r5   r6   r
   rV   r2   r7   r8   r   r   r:   r	   r   r   r;   r3   r<   r   r_   rC   rD   rE   rF   rG   rH   rI   rJ   rK   rL   rM   rN   r!   r>   r?   r@   s                     r   updatezRawModelProvidersClient.update-  s1   R ((55==-.>r.B-C1E"(*@+B#2$2P#2%6*$  2 ,+ > 
	.	ti++1c1+"5 ) 0 $YUCC&^^-N 9#8#8$yGXGXBY`noo  	ty'<'<d9K\K\F]dmdrdrss	ts   AC$ )C$ $?D#)__name__
__module____qualname__r   r   r7   Optionalstrr   r	   r9   r   rA   rV   floatboolr   r   rX   r   r^   rc   rg   rk    r   r   r   r      s   .*; . 37ko.p!??3/.pIOYgIh.p	fkk"9:	;.pf )-+/9=8<04)-?C0426-126,0;?jp %jp OOC(	jp
 !' 6jp "(!5jp  -jp //#&jp )/(<jp  -jp "??3/jp __T*jp //,/jp y)jp  8jp  
-	.!jpZ EI(p"(//."A(p	D	E(pV NR*p*p+1??>+J*p	-	.*pX UY  p  p&//.2Q  p]ijn]o  pL )-+/9=8<04)-?C0426-126,0;?!mpmp %	mp
 OOC(mp !' 6mp "(!5mp  -mp //#&mp )/(<mp  -mp "??3/mp __T*mp //,/mp y)mp   8!mp" 
-	.#mpr   r   c                       e Zd ZdefdZddddej                  e   dej                  e   de	ej                  e      fdZeeeeeeeeeeeedd	d
ej                  e   dej                  e   dej                  e   dej                  e   dej                  e   dej                  e   dej                  e   dej                  e   dej                  e   dej                  e   dej                  e   dej                  e   dej                  e   de	e   fdZdddej                  e   de	e   fdZdddedej                  e   de	e   fdZdddedej                  e   de	d   fdZeeeeeeeeeeeedd	ded
ej                  e   dej                  e   dej                  e   dej                  e   dej                  e   dej                  e   dej                  e   dej                  e   dej                  e   dej                  e   dej                  e   dej                  e   dej                  e   de	e   fdZy)AsyncRawModelProvidersClientr   c                    || _         y r   r   r   s     r   r   z%AsyncRawModelProvidersClient.__init__  r   r   Nr   r    r!   r"   c                l  K   | j                   j                  j                  ddd|i|       d{   }	 d|j                  cxk  rdk  rin nft	        j
                  t        j                  t           t        t        j                  t           |j                                     }t        ||	      S |j                         }t        |j                  t        |j                        |
      7 # t        $ r6 t        |j                  t        |j                        |j                  
      w xY ww)a  
        <Card href="https://humansignal.com/goenterprise">
                <img style="pointer-events: none; margin-left: 0px; margin-right: 0px;" src="https://docs.humansignal.com/images/badge.svg" alt="Label Studio Enterprise badge"/>
                <p style="margin-top: 10px; font-size: 14px;">
                    This endpoint is not available in Label Studio Community Edition. [Learn more about Label Studio Enterprise](https://humansignal.com/goenterprise)
                </p>
            </Card>
        List all model provider connections.

        Parameters
        ----------
        ordering : typing.Optional[str]
            Which field to use when ordering the results.

        request_options : typing.Optional[RequestOptions]
            Request-specific configuration.

        Returns
        -------
        AsyncHttpResponse[typing.List[ModelProviderConnection]]

        r$   r%   r    r&   Nr)   r*   r+   r.   r1   )r   r5   r6   r2   r7   r8   r9   r   r   r:   r   r   r   r;   r3   r<   r=   s         r   rA   z!AsyncRawModelProvidersClient.list  s    2 ..;;CC-H , D 
 
		ti++1c1KK 78"$kk*AB ) 0 ))%HH&^^-N 9#8#8$yGXGXBY`noo+
&  	ty'<'<d9K\K\F]dmdrdrss	ts3   /D4C0D4A=C2 4D45C2 ,D42?D11D4rB   rC   rD   rE   rF   rG   rH   rI   rJ   rK   rL   rM   rN   c                N  K   | j                   j                  j                  dd|||||||||	|
||dddi|t               d{   }	 d|j                  cxk  rd	k  rGn nDt        j                  t        t        t        |j                         
            }t        ||      S |j                         }t        |j                  t        |j                        |      7 # t        $ r6 t        |j                  t        |j                        |j                        w xY ww)aM  
        <Card href="https://humansignal.com/goenterprise">
                <img style="pointer-events: none; margin-left: 0px; margin-right: 0px;" src="https://docs.humansignal.com/images/badge.svg" alt="Label Studio Enterprise badge"/>
                <p style="margin-top: 10px; font-size: 14px;">
                    This endpoint is not available in Label Studio Community Edition. [Learn more about Label Studio Enterprise](https://humansignal.com/goenterprise)
                </p>
            </Card>
        Create a new model provider connection.

        Parameters
        ----------
        api_key : typing.Optional[str]
            Model provider API key

        auth_token : typing.Optional[str]
            Model provider Auth token

        budget_alert_threshold : typing.Optional[float]
            Budget alert threshold for the given provider connection

        cached_available_models : typing.Optional[str]
            List of available models from the provider

        deployment_name : typing.Optional[str]
            Azure OpenAI deployment name

        endpoint : typing.Optional[str]
            Azure OpenAI endpoint

        google_application_credentials : typing.Optional[str]
            The content of GOOGLE_APPLICATION_CREDENTIALS json file

        google_location : typing.Optional[str]
            Google project location

        google_project_id : typing.Optional[str]
            Google project ID

        is_internal : typing.Optional[bool]
            Whether the model provider connection is internal, not visible to the user

        provider : typing.Optional[ProviderEnum]

        scope : typing.Optional[ScopeEnum]

        request_options : typing.Optional[RequestOptions]
            Request-specific configuration.

        Returns
        -------
        AsyncHttpResponse[ModelProviderConnection]

        r$   rP   rQ   rR   rS   rT   Nr)   r*   r+   r.   r1   )r   r5   r6   rV   r2   r7   r8   r   r   r:   r   r   r   r;   r3   r<   rW   s                    r   rX   z#AsyncRawModelProvidersClient.create  s1    L ..;;CC-"(*@+B#2$2P#2%6*$  2 ,+ D 
 
	.	ti++1c1+"5 ) 0 ))%HH&^^-N 9#8#8$yGXGXBY`nooI
D  	ty'<'<d9K\K\F]dmdrdrss	ts7   AD%C!D%
AC# %D%&C# 6,D%#?D""D%rY   c                "  K   | j                   j                  j                  dd|       d{   }	 d|j                  cxk  rdk  rGn nDt	        j
                  t        t        t        |j                                     }t        ||      S |j                         }t        |j                  t        |j                        |	      7 # t        $ r6 t        |j                  t        |j                        |j                  	      w xY ww)
aY  
        <Card href="https://humansignal.com/goenterprise">
                <img style="pointer-events: none; margin-left: 0px; margin-right: 0px;" src="https://docs.humansignal.com/images/badge.svg" alt="Label Studio Enterprise badge"/>
                <p style="margin-top: 10px; font-size: 14px;">
                    This endpoint is not available in Label Studio Community Edition. [Learn more about Label Studio Enterprise](https://humansignal.com/goenterprise)
                </p>
            </Card>
        List all possible model provider choices

        Parameters
        ----------
        request_options : typing.Optional[RequestOptions]
            Request-specific configuration.

        Returns
        -------
        AsyncHttpResponse[ListModelProviderChoicesModelProvidersResponse]
            List of model provider choices
        r[   r%   r\   Nr)   r*   r+   r.   r1   )r   r5   r6   r2   r7   r8   r   r   r:   r   r   r   r;   r3   r<   r]   s        r   r^   z8AsyncRawModelProvidersClient.list_model_provider_choices=  s     , ..;;CC=+ D 
 
	
	ti++1c1B"L ) 0 ))%HH&^^-N 9#8#8$yGXGXBY`noo%
   	ty'<'<d9K\K\F]dmdrdrss	ts3   ,DCDAC DC  ,D?DDr_   c                <  K   | j                   j                  j                  dt        |       dd|       d{   }	 d|j                  cxk  rdk  rGn nDt        j                  t        t        t        |j                                     }t        ||	      S |j                         }t        |j                  t        |j                        |
      7 # t        $ r6 t        |j                  t        |j                        |j                  
      w xY ww)a0  
        <Card href="https://humansignal.com/goenterprise">
                <img style="pointer-events: none; margin-left: 0px; margin-right: 0px;" src="https://docs.humansignal.com/images/badge.svg" alt="Label Studio Enterprise badge"/>
                <p style="margin-top: 10px; font-size: 14px;">
                    This endpoint is not available in Label Studio Community Edition. [Learn more about Label Studio Enterprise](https://humansignal.com/goenterprise)
                </p>
            </Card>
        Retrieve a specific model provider connection.

        Parameters
        ----------
        id : str

        request_options : typing.Optional[RequestOptions]
            Request-specific configuration.

        Returns
        -------
        AsyncHttpResponse[ModelProviderConnection]

        r$   ra   r%   r\   Nr)   r*   r+   r.   r1   )r   r5   r6   r
   r2   r7   r8   r   r   r:   r   r   r   r;   r3   r<   rb   s         r   rc   z AsyncRawModelProvidersClient.getg  s    0 ..;;CC-.>r.B-C1E+ D 
 
	
	ti++1c1+"5 ) 0 ))%HH&^^-N 9#8#8$yGXGXBY`noo%
   	ty'<'<d9K\K\F]dmdrdrss	ts4   9DCDAC DC -,D?DDc                  K   | j                   j                  j                  dt        |       dd|       d{   }	 d|j                  cxk  rdk  rn nt        |d      S |j                         }t        |j                  t        |j                        |	      7 e# t        $ r6 t        |j                  t        |j                        |j                  	      w xY ww)
a  
        <Card href="https://humansignal.com/goenterprise">
                <img style="pointer-events: none; margin-left: 0px; margin-right: 0px;" src="https://docs.humansignal.com/images/badge.svg" alt="Label Studio Enterprise badge"/>
                <p style="margin-top: 10px; font-size: 14px;">
                    This endpoint is not available in Label Studio Community Edition. [Learn more about Label Studio Enterprise](https://humansignal.com/goenterprise)
                </p>
            </Card>
        Delete a model provider connection by ID

        Parameters
        ----------
        id : str

        request_options : typing.Optional[RequestOptions]
            Request-specific configuration.

        Returns
        -------
        AsyncHttpResponse[None]
        r$   ra   re   r\   Nr)   r*   r.   r1   )r   r5   r6   r
   r2   r   r:   r   r   r;   r3   r<   rf   s        r   rg   z#AsyncRawModelProvidersClient.delete  s     . ..;;CC-.>r.B-C1E+ D 
 
	
	ti++1c1()$GG&^^-N 9#8#8$yGXGXBY`noo
  	ty'<'<d9K\K\F]dmdrdrss	ts3   9C%B!C%$B# %C%&B# 6,C%#?C""C%c                h  K   | j                   j                  j                  dt        |       dd||||||||	|
|||dddi|t               d{   }	 d	|j
                  cxk  rd
k  rGn nDt        j                  t        t        t        |j                                     }t        ||      S |j                         }t        |j
                  t        |j                        |      7 # t        $ r6 t        |j
                  t        |j                        |j                         w xY ww)aj  
        <Card href="https://humansignal.com/goenterprise">
                <img style="pointer-events: none; margin-left: 0px; margin-right: 0px;" src="https://docs.humansignal.com/images/badge.svg" alt="Label Studio Enterprise badge"/>
                <p style="margin-top: 10px; font-size: 14px;">
                    This endpoint is not available in Label Studio Community Edition. [Learn more about Label Studio Enterprise](https://humansignal.com/goenterprise)
                </p>
            </Card>
        Update a specific model provider connection by ID.

        Parameters
        ----------
        id : str

        api_key : typing.Optional[str]
            Model provider API key

        auth_token : typing.Optional[str]
            Model provider Auth token

        budget_alert_threshold : typing.Optional[float]
            Budget alert threshold for the given provider connection

        cached_available_models : typing.Optional[str]
            List of available models from the provider

        deployment_name : typing.Optional[str]
            Azure OpenAI deployment name

        endpoint : typing.Optional[str]
            Azure OpenAI endpoint

        google_application_credentials : typing.Optional[str]
            The content of GOOGLE_APPLICATION_CREDENTIALS json file

        google_location : typing.Optional[str]
            Google project location

        google_project_id : typing.Optional[str]
            Google project ID

        is_internal : typing.Optional[bool]
            Whether the model provider connection is internal, not visible to the user

        provider : typing.Optional[ProviderEnum]

        scope : typing.Optional[ScopeEnum]

        request_options : typing.Optional[RequestOptions]
            Request-specific configuration.

        Returns
        -------
        AsyncHttpResponse[ModelProviderConnection]

        r$   ra   ri   rQ   rR   rS   rT   Nr)   r*   r+   r.   r1   )r   r5   r6   r
   rV   r2   r7   r8   r   r   r:   r   r   r   r;   r3   r<   rj   s                     r   rk   z#AsyncRawModelProvidersClient.update  sA    R ..;;CC-.>r.B-C1E"(*@+B#2$2P#2%6*$  2 ,+ D 
 
	.	ti++1c1+"5 ) 0 ))%HH&^^-N 9#8#8$yGXGXBY`nooI
D  	ty'<'<d9K\K\F]dmdrdrss	ts7   AD2C.D2AC0 2D23C0 ,D20?D//D2)rl   rm   rn   r   r   r7   ro   rp   r   r   r9   r   rA   rV   rq   rr   r   r   rX   r   r^   rc   rg   rk   rs   r   r   ru   ru     s   .*< . 37ko.p!??3/.pIOYgIh.p	6;;'>?	@.pf )-+/9=8<04)-?C0426-126,0;?jp %jp OOC(	jp
 !' 6jp "(!5jp  -jp //#&jp )/(<jp  -jp "??3/jp __T*jp //,/jp y)jp  8jp  
2	3!jpZ EI(p"(//."A(p	I	J(pV NR*p*p+1??>+J*p	2	3*pZ NR"p"p+1??>+J"p	4	 "pP )-+/9=8<04)-?C0426-126,0;?!mpmp %	mp
 OOC(mp !' 6mp "(!5mp  -mp //#&mp )/(<mp  -mp "??3/mp __T*mp //,/mp y)mp   8!mp" 
2	3#mpr   ru   )r7   json.decoderr   core.api_errorr   core.client_wrapperr   r   core.http_responser   r	   core.jsonable_encoderr
   core.request_optionsr   core.unchecked_base_modelr   types.model_provider_connectionr   types.provider_enumr   types.scope_enumr   :types.list_model_provider_choices_model_providers_responser   r8   AnyrV   r   ru   rs   r   r   <module>r      s`     ( % G @ 4 1 6 E . ( v v{{6::s#Ep EpPGp Gpr   