
    g$)                       d dl mZ d dlZddlmZ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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gZ G d de      Z G d de      Z G d d      Z G d d      Z G d d      Z  G d d      Z!y)    )annotationsN   )	NOT_GIVENBodyQueryHeadersNotGiven)cached_property)SyncAPIResourceAsyncAPIResource)to_raw_response_wrapperto_streamed_response_wrapperasync_to_raw_response_wrapper"async_to_streamed_response_wrapper)Model)make_request_options)ModelDeleted)ModelListResponseModelsAsyncModelsc                      e Zd Zedd       Zed	d       Zddded	 	 	 	 	 	 	 	 	 	 	 d
dZddded	 	 	 	 	 	 	 	 	 ddZddded	 	 	 	 	 	 	 	 	 	 	 ddZ	y)r   c                    t        |       S a  
        This property can be used as a prefix for any HTTP method call to return the
        the raw response object instead of the parsed content.

        For more information, see https://www.github.com/groq/groq-python#accessing-raw-response-data-eg-headers
        )ModelsWithRawResponseselfs    J/var/www/openai/venv/lib/python3.12/site-packages/groq/resources/models.pywith_raw_responsezModels.with_raw_response   s     %T**    c                    t        |       S z
        An alternative to `.with_raw_response` that doesn't eagerly read the response body.

        For more information, see https://www.github.com/groq/groq-python#with_streaming_response
        )ModelsWithStreamingResponser   s    r   with_streaming_responsezModels.with_streaming_response#   s     +400r   Nextra_headersextra_query
extra_bodytimeoutc          	     r    |st        d|      | j                  d| t        ||||      t              S )H  
        Get a specific model

        Args:
          extra_headers: Send extra headers

          extra_query: Add additional query parameters to the request

          extra_body: Add additional JSON properties to the request

          timeout: Override the client-level default timeout for this request, in seconds
        4Expected a non-empty value for `model` but received /openai/v1/models/r$   optionscast_to
ValueError_getr   r   r   modelr%   r&   r'   r(   s         r   retrievezModels.retrieve,   sT    . STYS\]^^yy ((+Q[el   
 	
r   c          	     L    | j                  dt        ||||      t              S )get all available models/openai/v1/modelsr$   r-   r2   r   r   r   r%   r&   r'   r(   s        r   listzModels.listM   s5     yy(+Q[el &  
 	
r   c          	     r    |st        d|      | j                  d| t        ||||      t              S )B  
        Delete a model

        Args:
          extra_headers: Send extra headers

          extra_query: Add additional query parameters to the request

          extra_body: Add additional JSON properties to the request

          timeout: Override the client-level default timeout for this request, in seconds
        r+   r,   r$   r-   r1   _deleter   r   r3   s         r   deletezModels.delete`   sT    . STYS\]^^|| ((+Q[el !  
 	
r   )returnr   )rA   r"   r4   strr%   Headers | Noner&   Query | Noner'   Body | Noner(   'float | httpx.Timeout | None | NotGivenrA   r   
r%   rD   r&   rE   r'   rF   r(   rG   rA   r   r4   rC   r%   rD   r&   rE   r'   rF   r(   rG   rA   r   
__name__
__module____qualname__r
   r   r#   r   r5   r;   r@    r   r   r   r      s   + + 1 1 )-$("&;D

 &
 "
  
 9
 

L )-$("&;D

 &
 "
  
 9
 

2 )-$("&;D

 &
 "
  
 9
 

r   c                      e Zd Zedd       Zed	d       Zddded	 	 	 	 	 	 	 	 	 	 	 d
dZddded	 	 	 	 	 	 	 	 	 ddZddded	 	 	 	 	 	 	 	 	 	 	 ddZ	y)r   c                    t        |       S r   )AsyncModelsWithRawResponser   s    r   r   zAsyncModels.with_raw_response   s     *$//r   c                    t        |       S r!   ) AsyncModelsWithStreamingResponser   s    r   r#   z#AsyncModels.with_streaming_response   s     055r   Nr$   c          	        K   |st        d|      | j                  d| t        ||||      t               d{   S 7 w)r*   r+   r,   r$   r-   Nr0   r3   s         r   r5   zAsyncModels.retrieve   sb     . STYS\]^^YY ((+Q[el   
 
 	
 
   <AAAc          	     h   K   | j                  dt        ||||      t               d{   S 7 w)r7   r8   r$   r-   Nr9   r:   s        r   r;   zAsyncModels.list   sC      YY(+Q[el &  
 
 	
 
s   )202c          	        K   |st        d|      | j                  d| t        ||||      t               d{   S 7 w)r=   r+   r,   r$   r-   Nr>   r3   s         r   r@   zAsyncModels.delete   sb     . STYS\]^^\\ ((+Q[el ! " 
 
 	
 
rU   )rA   rQ   )rA   rS   rB   rH   rI   rJ   rN   r   r   r   r      s   0 0 6 6 )-$("&;D

 &
 "
  
 9
 

L )-$("&;D

 &
 "
  
 9
 

2 )-$("&;D

 &
 "
  
 9
 

r   c                      e Zd ZddZy)r   c                    || _         t        |j                        | _        t        |j                        | _        t        |j                        | _        y N)_modelsr   r5   r;   r@   r   modelss     r   __init__zModelsWithRawResponse.__init__   sF    /OO
 ,KK
	 .MM
r   Nr]   r   rA   NonerK   rL   rM   r^   rN   r   r   r   r          
r   r   c                      e Zd ZddZy)rQ   c                    || _         t        |j                        | _        t        |j                        | _        t        |j                        | _        y rZ   )r[   r   r5   r;   r@   r\   s     r   r^   z#AsyncModelsWithRawResponse.__init__   sF    5OO
 2KK
	 4MM
r   Nr]   r   rA   r`   ra   rN   r   r   rQ   rQ      rb   r   rQ   c                      e Zd ZddZy)r"   c                    || _         t        |j                        | _        t        |j                        | _        t        |j                        | _        y rZ   )r[   r   r5   r;   r@   r\   s     r   r^   z$ModelsWithStreamingResponse.__init__  sF    4OO
 1KK
	 3MM
r   Nr_   ra   rN   r   r   r"   r"   
  rb   r   r"   c                      e Zd ZddZy)rS   c                    || _         t        |j                        | _        t        |j                        | _        t        |j                        | _        y rZ   )r[   r   r5   r;   r@   r\   s     r   r^   z)AsyncModelsWithStreamingResponse.__init__  sF    :OO
 7KK
	 9MM
r   Nre   ra   rN   r   r   rS   rS     rb   r   rS   )"
__future__r   httpx_typesr   r   r   r   r	   _compatr
   	_resourcer   r   	_responser   r   r   r   types.modelr   _base_clientr   types.model_deletedr   types.model_list_responser   __all__r   r   r   rQ   r"   rS   rN   r   r   <module>ru      s    #  > > % 9    / . 9]
#g
_ g
Tg
" g
T
 

 

 

 
r   