o
    i                     @  s
  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
mZ d dlZddlmZ ddlmZ ddlmZmZmZmZmZmZmZ dd	l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$m%Z% ddlm&Z&m'Z' ddl(m)Z)m*Z*m+Z+ erOddl,m-Z-m.Z.m/Z/m0Z0m1Z1m2Z2m3Z3m4Z4m5Z5m6Z6m7Z7m8Z8m9Z9m:Z:m;Z;m<Z<m=Z=m>Z>m?Z?m@Z@ ddlAmBZBmCZC ddlDmEZEmFZF ddlGmHZHmIZI ddlJmKZKmLZL ddlMmNZNmOZO ddlPmQZQmRZR ddlSmTZTmUZU ddlVmWZWmXZX ddlYmZZZm[Z[ ddl\m]Z]m^Z^ ddl_m`Z`maZa ddlbmcZcmdZd ddlemfZfmgZg ddlhmiZimjZj ddlkmlZlmmZm dd lnmoZompZp dd!lqmrZrmsZs dd"ltmuZumvZv dd#lwmxZxmyZy dd$lzm{Z{m|Z| dd%l}m~Z~mZ g d&ZG d'd( d(e*ZG d)d* d*e+ZG d+d, d,ZG d-d. d.ZG d/d0 d0ZG d1d2 d2ZeZeZdS )3    )annotationsN)TYPE_CHECKINGAnyMappingCallable	Awaitable)Selfoverride   )_exceptionsQuerystring)OmitTimeoutNotGiven	TransportProxiesTypesRequestOptions	not_given)is_given
is_mappingget_async_library)cached_property)FinalRequestOptions)__version__)StreamAsyncStream)OpenAIErrorAPIStatusError)DEFAULT_MAX_RETRIESSyncAPIClientAsyncAPIClient)betachataudioevalsfilesimagesmodelsskillsvideosbatchesuploadsrealtime	responses
containers
embeddingscompletionsfine_tuningmoderationsconversationsvector_stores)Files
AsyncFiles)ImagesAsyncImages)ModelsAsyncModels)VideosAsyncVideos)BatchesAsyncBatches)Beta	AsyncBeta)Chat	AsyncChat)
EmbeddingsAsyncEmbeddings)Audio
AsyncAudio)CompletionsAsyncCompletions)Evals
AsyncEvals)ModerationsAsyncModerations)SkillsAsyncSkills)UploadsAsyncUploads)RealtimeAsyncRealtime)WebhooksAsyncWebhooks)	ResponsesAsyncResponses)
ContainersAsyncContainers)
FineTuningAsyncFineTuning)ConversationsAsyncConversations)VectorStoresAsyncVectorStores)r   r   r   r   OpenAIAsyncOpenAIClientAsyncClientc                      s:  e Zd ZU ded< ded< ded< ded< ded< 	 d	d	d	d	d	d	eed	d	d	d
dd fddZeddd Zedd"d#Z	edd%d&Z
edd(d)Zedd+d,Zedd.d/Zedd1d2Zedd4d5Zedd7d8Zedd:d;Zedd=d>Zedd@dAZeddCdDZeddFdGZeddIdJZeddLdMZeddOdPZeddRdSZeddUdVZeddXdYZedd[d\Zedd^d_ZeddadbZee ddddeZ!ddfdgZ"e d fdjdkZ#ee ddmdnZ$ee d fdpdqZ%d	d	d	d	d	d	ed	ed	d	d	d	i drddzd{Z&e&Z'e dddZ(  Z)S )r`   strapi_key
str | Noneorganizationprojectwebhook_secretstr | httpx.URL | Nonewebsocket_base_urlNFre   rg   rh   ri   base_urlrk   timeoutmax_retriesdefault_headersdefault_queryhttp_client_strict_response_validationstr | None | Callable[[], str]rm   rn   !float | Timeout | None | NotGivenro   intrp   Mapping[str, str] | Nonerq   Mapping[str, object] | Nonerr   httpx.Client | Noners   boolreturnNonec             
        |du r
t jd}|du rtdt|rd| _|| _n|| _d| _|du r-t jd}|| _|du r:t jd}|| _|du rGt jd}|| _	|| _
|du rWt jd}|du r]d	}t jt|||||	|
|d
 t| _dS )a}  Construct a new synchronous OpenAI client instance.

        This automatically infers the following arguments from their corresponding environment variables if they are not provided:
        - `api_key` from `OPENAI_API_KEY`
        - `organization` from `OPENAI_ORG_ID`
        - `project` from `OPENAI_PROJECT_ID`
        - `webhook_secret` from `OPENAI_WEBHOOK_SECRET`
        NOPENAI_API_KEYThe api_key client option must be set either by passing api_key to the client or by setting the OPENAI_API_KEY environment variable OPENAI_ORG_IDOPENAI_PROJECT_IDOPENAI_WEBHOOK_SECRETOPENAI_BASE_URLhttps://api.openai.com/v1versionrm   ro   rn   rr   Zcustom_headersZcustom_queryrs   )osenvirongetr   callablere   _api_key_providerrg   rh   ri   rk   super__init__r   r   _default_stream_clsselfre   rg   rh   ri   rm   rk   rn   ro   rp   rq   rr   rs   	__class__ H/home/kim/smarthome/.venv/lib/python3.10/site-packages/openai/_client.pyr   e   H   #
zOpenAI.__init__rH   c                 C     ddl m} || S )
        Given a prompt, the model will return one or more predicted completions, and can also return the probabilities of alternative tokens at each position.
        r
   )rH   )resources.completionsrH   )r   rH   r   r   r   r1         zOpenAI.completionsrB   c                 C  r   )Nr
   )rB   )resources.chatrB   )r   rB   r   r   r   r#         zOpenAI.chatrD   c                 C  r   )
        Get a vector representation of a given input that can be easily consumed by machine learning models and algorithms.
        r
   )rD   )resources.embeddingsrD   )r   rD   r   r   r   r0      r   zOpenAI.embeddingsr6   c                 C  r   )t
        Files are used to upload documents that can be used with features like Assistants and Fine-tuning.
        r
   )r6   )resources.filesr6   )r   r6   r   r   r   r&      r   zOpenAI.filesr8   c                 C  r   )JGiven a prompt and/or an input image, the model will generate a new image.r
   )r8   )resources.imagesr8   )r   r8   r   r   r   r'         zOpenAI.imagesrF   c                 C  r   )Nr
   )rF   )resources.audiorF   )r   rF   r   r   r   r$      r   zOpenAI.audiorL   c                 C  r   )e
        Given text and/or image inputs, classifies if those inputs are potentially harmful.
        r
   )rL   )resources.moderationsrL   )r   rL   r   r   r   r3      r   zOpenAI.moderationsr:   c                 C  r   ):List and describe the various models available in the API.r
   )r:   )resources.modelsr:   )r   r:   r   r   r   r(      r   zOpenAI.modelsrZ   c                 C  r   )Nr
   )rZ   )resources.fine_tuningrZ   )r   rZ   r   r   r   r2      r   zOpenAI.fine_tuningr^   c                 C  r   )Nr
   )r^   )resources.vector_storesr^   )r   r^   r   r   r   r5      r   zOpenAI.vector_storesrT   c                 C  r   )Nr
   )rT   )resources.webhooksrT   )r   rT   r   r   r   webhooks   r   zOpenAI.webhooksr@   c                 C  r   )Nr
   )r@   )resources.betar@   )r   r@   r   r   r   r"     r   zOpenAI.betar>   c                 C  r   );Create large batches of API requests to run asynchronously.r
   )r>   )resources.batchesr>   )r   r>   r   r   r   r+     r   zOpenAI.batchesrP   c                 C  r   )4Use Uploads to upload large files in multiple parts.r
   )rP   )resources.uploadsrP   )r   rP   r   r   r   r,     r   zOpenAI.uploadsrV   c                 C  r   )Nr
   )rV   )resources.responsesrV   )r   rV   r   r   r   r.     r   zOpenAI.responsesrR   c                 C  r   )Nr
   )rR   )resources.realtimerR   )r   rR   r   r   r   r-     r   zOpenAI.realtimer\   c                 C  r   ),Manage conversations and conversation items.r
   )r\   )resources.conversationsr\   )r   r\   r   r   r   r4   %  r   zOpenAI.conversationsrJ   c                 C  r   ),Manage and run evals in the OpenAI platform.r
   )rJ   )resources.evalsrJ   )r   rJ   r   r   r   r%   ,  r   zOpenAI.evalsrX   c                 C  r   )Nr
   )rX   )resources.containersrX   )r   rX   r   r   r   r/   3  r   zOpenAI.containersrN   c                 C  r   )Nr
   )rN   )resources.skillsrN   )r   rN   r   r   r   r)   9  r   zOpenAI.skillsr<   c                 C  r   )Nr
   )r<   )resources.videosr<   )r   r<   r   r   r   r*   ?  r   zOpenAI.videosOpenAIWithRawResponsec                 C     t | S N)r   r   r   r   r   with_raw_responseE     zOpenAI.with_raw_responseOpenAIWithStreamedResponsec                 C  r   r   )r   r   r   r   r   with_streaming_responseI  r   zOpenAI.with_streaming_responser   c                 C  
   t ddS NZbrackets)Zarray_formatr   r   r   r   r   qsM     
z	OpenAI.qsc                 C  s   | j r
|   | _d S d S r   r   re   r   r   r   r   _refresh_api_keyR  s   zOpenAI._refresh_api_keyoptionsr   c                   s   |    t |S r   r   r   _prepare_optionsr   r   r   r   r   r   V  s   zOpenAI._prepare_optionsdict[str, str]c                 C     | j }|si S dd| iS NAuthorizationzBearer re   r   re   r   r   r   auth_headers[     zOpenAI.auth_headersdict[str, str | Omit]c                   sB   i t  jd| jd ur| jnt | jd ur| jnt d| jS )NfalsezX-Stainless-AsynczOpenAI-OrganizationzOpenAI-Project)r   rp   rg   r   rh   _custom_headersr   r   r   r   rp   d  s   zOpenAI.default_headersre   rg   rh   ri   rk   rm   rn   rr   ro   rp   set_default_headersrq   set_default_query_extra_kwargsstr | Callable[[], str] | Noneint | NotGivenr   r   r   Mapping[str, Any]r   c                C     |
dur|durt d|dur|durt d| j}|
dur&i ||
}n|dur,|}| j}|dur:i ||}n|dur@|}|pD| j}| jd|pO| jpO| j|pS| j|pW| j|p[| j	|p_| j
|pc| jt|trk| jn||t|	rs|	n| j||d|S z~
        Create a new client instance re-using the same options given to the current client with optional overriding.
        NzPThe `default_headers` and `set_default_headers` arguments are mutually exclusivezLThe `default_query` and `set_default_query` arguments are mutually exclusive)re   rg   rh   ri   rk   rm   rn   rr   ro   rp   rq   r   
ValueErrorr   Z_custom_query_clientr   r   re   rg   rh   ri   rk   rm   
isinstancer   rn   r   ro   r   re   rg   rh   ri   rk   rm   rn   rr   ro   rp   r   rq   r   r   headersparamsr   r   r   copyo  <   
zOpenAI.copyerr_msgbodyobjectresponsehttpx.Responser   c                C     t |r
|d|n|}|jdkrtj|||dS |jdkr&tj|||dS |jdkr3tj|||dS |jdkr@tj|||dS |jdkrMtj|||dS |jdkrZtj	|||dS |jd	krgtj
|||dS |jd
krttj|||dS t|||dS Nerrori  )r   r   i  i  i  i  i  i  i  r   r   status_coder   ZBadRequestErrorAuthenticationErrorZPermissionDeniedErrorZNotFoundErrorZConflictErrorZUnprocessableEntityErrorZRateLimitErrorZInternalServerErrorr   r   r   r   r   datar   r   r   _make_status_error  $   







zOpenAI._make_status_error)re   rt   rg   rf   rh   rf   ri   rf   rm   rj   rk   rj   rn   ru   ro   rv   rp   rw   rq   rx   rr   ry   rs   rz   r{   r|   )r{   rH   )r{   rB   )r{   rD   )r{   r6   )r{   r8   )r{   rF   )r{   rL   )r{   r:   )r{   rZ   )r{   r^   )r{   rT   )r{   r@   )r{   r>   )r{   rP   )r{   rV   )r{   rR   )r{   r\   )r{   rJ   )r{   rX   )r{   rN   )r{   r<   )r{   r   )r{   r   r{   r   r{   r|   r   r   r{   r   r{   r   r{   r   )re   r   rg   rf   rh   rf   ri   rf   rk   rj   rm   rj   rn   ru   rr   ry   ro   r   rp   rw   r   rw   rq   rx   r   rx   r   r   r{   r   r   rd   r   r   r   r   r{   r   *__name__
__module____qualname____annotations__r   r   r   r   r1   r#   r0   r&   r'   r$   r3   r(   r2   r5   r   r"   r+   r,   r.   r-   r4   r%   r/   r)   r*   r   r   propertyr	   r   r   r   r   rp   r   Zwith_optionsr   __classcell__r   r   r   r   r`   V      
 
	P
9r`   c                      s:  e Zd ZU ded< ded< ded< ded< ded< 	 d	d	d	d	d	d	eed	d	d	d
dd fddZeddd Zedd"d#Z	edd%d&Z
edd(d)Zedd+d,Zedd.d/Zedd1d2Zedd4d5Zedd7d8Zedd:d;Zedd=d>Zedd@dAZeddCdDZeddFdGZeddIdJZeddLdMZeddOdPZeddRdSZeddUdVZeddXdYZedd[d\Zedd^d_ZeddadbZee ddddeZ!ddfdgZ"e d fdjdkZ#ee ddmdnZ$ee d fdpdqZ%d	d	d	d	d	d	ed	ed	d	d	d	i drddydzZ&e&Z'e dddZ(  Z)S )ra   rd   re   rf   rg   rh   ri   rj   rk   NFrl   )str | Callable[[], Awaitable[str]] | Nonerm   rn   ru   ro   rv   rp   rw   rq   rx   rr   httpx.AsyncClient | Noners   rz   r{   r|   c             
     r}   )a|  Construct a new async AsyncOpenAI client instance.

        This automatically infers the following arguments from their corresponding environment variables if they are not provided:
        - `api_key` from `OPENAI_API_KEY`
        - `organization` from `OPENAI_ORG_ID`
        - `project` from `OPENAI_PROJECT_ID`
        - `webhook_secret` from `OPENAI_WEBHOOK_SECRET`
        Nr~   r   r   r   r   r   r   r   r   )r   r   r   r   r   re   r   rg   rh   ri   rk   r   r   r   r   r   r   r   r   r   r     r   zAsyncOpenAI.__init__rI   c                 C  r   )r   r
   )rI   )r   rI   )r   rI   r   r   r   r1   ,  r   zAsyncOpenAI.completionsrC   c                 C  r   )Nr
   )rC   )r   rC   )r   rC   r   r   r   r#   5  r   zAsyncOpenAI.chatrE   c                 C  r   )r   r
   )rE   )r   rE   )r   rE   r   r   r   r0   ;  r   zAsyncOpenAI.embeddingsr7   c                 C  r   )r   r
   )r7   )r   r7   )r   r7   r   r   r   r&   D  r   zAsyncOpenAI.filesr9   c                 C  r   )r   r
   )r9   )r   r9   )r   r9   r   r   r   r'   M  r   zAsyncOpenAI.imagesrG   c                 C  r   )Nr
   )rG   )r   rG   )r   rG   r   r   r   r$   T  r   zAsyncOpenAI.audiorM   c                 C  r   )r   r
   )rM   )r   rM   )r   rM   r   r   r   r3   Z  r   zAsyncOpenAI.moderationsr;   c                 C  r   )r   r
   )r;   )r   r;   )r   r;   r   r   r   r(   c  r   zAsyncOpenAI.modelsr[   c                 C  r   )Nr
   )r[   )r   r[   )r   r[   r   r   r   r2   j  r   zAsyncOpenAI.fine_tuningr_   c                 C  r   )Nr
   )r_   )r   r_   )r   r_   r   r   r   r5   p  r   zAsyncOpenAI.vector_storesrU   c                 C  r   )Nr
   )rU   )r   rU   )r   rU   r   r   r   r   v  r   zAsyncOpenAI.webhooksrA   c                 C  r   )Nr
   )rA   )r   rA   )r   rA   r   r   r   r"   |  r   zAsyncOpenAI.betar?   c                 C  r   )r   r
   )r?   )r   r?   )r   r?   r   r   r   r+     r   zAsyncOpenAI.batchesrQ   c                 C  r   )r   r
   )rQ   )r   rQ   )r   rQ   r   r   r   r,     r   zAsyncOpenAI.uploadsrW   c                 C  r   )Nr
   )rW   )r   rW   )r   rW   r   r   r   r.     r   zAsyncOpenAI.responsesrS   c                 C  r   )Nr
   )rS   )r   rS   )r   rS   r   r   r   r-     r   zAsyncOpenAI.realtimer]   c                 C  r   )r   r
   )r]   )r   r]   )r   r]   r   r   r   r4     r   zAsyncOpenAI.conversationsrK   c                 C  r   )r   r
   )rK   )r   rK   )r   rK   r   r   r   r%     r   zAsyncOpenAI.evalsrY   c                 C  r   )Nr
   )rY   )r   rY   )r   rY   r   r   r   r/     r   zAsyncOpenAI.containersrO   c                 C  r   )Nr
   )rO   )r   rO   )r   rO   r   r   r   r)     r   zAsyncOpenAI.skillsr=   c                 C  r   )Nr
   )r=   )r   r=   )r   r=   r   r   r   r*     r   zAsyncOpenAI.videosAsyncOpenAIWithRawResponsec                 C  r   r   )r
  r   r   r   r   r     r   zAsyncOpenAI.with_raw_responseAsyncOpenAIWithStreamedResponsec                 C  r   r   )r  r   r   r   r   r     r   z#AsyncOpenAI.with_streaming_responser   c                 C  r   r   r   r   r   r   r   r     r   zAsyncOpenAI.qsc                   s    | j r|   I d H | _d S d S r   r   r   r   r   r   r     s   zAsyncOpenAI._refresh_api_keyr   r   c                   s"   |   I d H  t |I d H S r   r   r   r   r   r   r     s   zAsyncOpenAI._prepare_optionsr   c                 C  r   r   r   r   r   r   r   r     r   zAsyncOpenAI.auth_headersr   c                   sJ   i t  jdt  | jd ur| jnt | jd ur| jnt d| jS )Nzasync:r   )r   rp   r   rg   r   rh   r   r   r   r   r   rp     s   
zAsyncOpenAI.default_headersr   r   r   r   r   r   r   c                C  r   r   r   r   r   r   r   r     r   zAsyncOpenAI.copyr   r   r   r   r   r   c                C  r   r   r   r   r   r   r   r   !  r   zAsyncOpenAI._make_status_error)re   r  rg   rf   rh   rf   ri   rf   rm   rj   rk   rj   rn   ru   ro   rv   rp   rw   rq   rx   rr   r	  rs   rz   r{   r|   )r{   rI   )r{   rC   )r{   rE   )r{   r7   )r{   r9   )r{   rG   )r{   rM   )r{   r;   )r{   r[   )r{   r_   )r{   rU   )r{   rA   )r{   r?   )r{   rQ   )r{   rW   )r{   rS   )r{   r]   )r{   rK   )r{   rY   )r{   rO   )r{   r=   )r{   r
  )r{   r  r   r   r   r   r   )re   r  rg   rf   rh   rf   ri   rf   rk   rj   rm   rj   rn   ru   rr   r	  ro   r   rp   rw   r   rw   rq   rx   r   rx   r   r   r{   r   r   r   r   r   r   r   ra     r  ra   c                   @  8  e Zd ZU ded< dEddZedFd	d
ZedGddZedHddZedIddZ	edJddZ
edKddZedLddZedMddZedNd!d"ZedOd$d%ZedPd'd(ZedQd*d+ZedRd-d.ZedSd0d1ZedTd3d4ZedUd6d7ZedVd9d:ZedWd<d=ZedXd?d@ZedYdBdCZdDS )Zr   r`   r   clientr{   r|   c                 C  
   || _ d S r   r   r   r  r   r   r   r   G     
zOpenAIWithRawResponse.__init__&completions.CompletionsWithRawResponsec                 C     ddl m} || jjS )r   r
   )CompletionsWithRawResponse)r   r  r   r1   )r   r  r   r   r   r1   J     z!OpenAIWithRawResponse.completionschat.ChatWithRawResponsec                 C  r  )Nr
   )ChatWithRawResponse)r   r  r   r#   )r   r  r   r   r   r#   S     zOpenAIWithRawResponse.chat$embeddings.EmbeddingsWithRawResponsec                 C  r  )r   r
   )EmbeddingsWithRawResponse)r   r  r   r0   )r   r  r   r   r   r0   Y  r  z OpenAIWithRawResponse.embeddingsfiles.FilesWithRawResponsec                 C  r  )r   r
   )FilesWithRawResponse)r   r  r   r&   )r   r  r   r   r   r&   b  r  zOpenAIWithRawResponse.filesimages.ImagesWithRawResponsec                 C  r  )r   r
   )ImagesWithRawResponse)r   r  r   r'   )r   r  r   r   r   r'   k     zOpenAIWithRawResponse.imagesaudio.AudioWithRawResponsec                 C  r  )Nr
   )AudioWithRawResponse)r   r!  r   r$   )r   r!  r   r   r   r$   r  r  zOpenAIWithRawResponse.audio&moderations.ModerationsWithRawResponsec                 C  r  )r   r
   )ModerationsWithRawResponse)r   r#  r   r3   )r   r#  r   r   r   r3   x  r  z!OpenAIWithRawResponse.moderationsmodels.ModelsWithRawResponsec                 C  r  )r   r
   )ModelsWithRawResponse)r   r%  r   r(   )r   r%  r   r   r   r(     r  zOpenAIWithRawResponse.models%fine_tuning.FineTuningWithRawResponsec                 C  r  )Nr
   )FineTuningWithRawResponse)r   r'  r   r2   )r   r'  r   r   r   r2     r  z!OpenAIWithRawResponse.fine_tuning)vector_stores.VectorStoresWithRawResponsec                 C  r  )Nr
   )VectorStoresWithRawResponse)r   r)  r   r5   )r   r)  r   r   r   r5     r  z#OpenAIWithRawResponse.vector_storesbeta.BetaWithRawResponsec                 C  r  )Nr
   )BetaWithRawResponse)r   r+  r   r"   )r   r+  r   r   r   r"     r  zOpenAIWithRawResponse.betabatches.BatchesWithRawResponsec                 C  r  )r   r
   )BatchesWithRawResponse)r   r-  r   r+   )r   r-  r   r   r   r+     r  zOpenAIWithRawResponse.batchesuploads.UploadsWithRawResponsec                 C  r  )r   r
   )UploadsWithRawResponse)r   r/  r   r,   )r   r/  r   r   r   r,     r  zOpenAIWithRawResponse.uploads"responses.ResponsesWithRawResponsec                 C  r  )Nr
   )ResponsesWithRawResponse)r   r1  r   r.   )r   r1  r   r   r   r.     r  zOpenAIWithRawResponse.responses realtime.RealtimeWithRawResponsec                 C  r  )Nr
   )RealtimeWithRawResponse)r   r3  r   r-   )r   r3  r   r   r   r-     r  zOpenAIWithRawResponse.realtime*conversations.ConversationsWithRawResponsec                 C  r  )r   r
   )ConversationsWithRawResponse)r   r5  r   r4   )r   r5  r   r   r   r4     r  z#OpenAIWithRawResponse.conversationsevals.EvalsWithRawResponsec                 C  r  )r   r
   )EvalsWithRawResponse)r   r7  r   r%   )r   r7  r   r   r   r%     r  zOpenAIWithRawResponse.evals$containers.ContainersWithRawResponsec                 C  r  )Nr
   )ContainersWithRawResponse)r   r9  r   r/   )r   r9  r   r   r   r/     r  z OpenAIWithRawResponse.containersskills.SkillsWithRawResponsec                 C  r  )Nr
   )SkillsWithRawResponse)r   r;  r   r)   )r   r;  r   r   r   r)     r  zOpenAIWithRawResponse.skillsvideos.VideosWithRawResponsec                 C  r  )Nr
   )VideosWithRawResponse)r   r=  r   r*   )r   r=  r   r   r   r*     r  zOpenAIWithRawResponse.videosNr  r`   r{   r|   )r{   r  )r{   r  )r{   r  )r{   r  )r{   r  )r{   r   )r{   r"  )r{   r$  )r{   r&  )r{   r(  )r{   r*  )r{   r,  )r{   r.  )r{   r0  )r{   r2  )r{   r4  )r{   r6  )r{   r8  )r{   r:  )r{   r<  r  r  r  r  r   r   r1   r#   r0   r&   r'   r$   r3   r(   r2   r5   r"   r+   r,   r.   r-   r4   r%   r/   r)   r*   r   r   r   r   r   D  V   
 
r   c                   @  r  )Zr
  ra   r   r  r{   r|   c                 C  r  r   r  r  r   r   r   r     r  z#AsyncOpenAIWithRawResponse.__init__+completions.AsyncCompletionsWithRawResponsec                 C  r  )r   r
   )AsyncCompletionsWithRawResponse)r   rB  r   r1   )r   rB  r   r   r   r1     r  z&AsyncOpenAIWithRawResponse.completionschat.AsyncChatWithRawResponsec                 C  r  )Nr
   )AsyncChatWithRawResponse)r   rD  r   r#   )r   rD  r   r   r   r#     r  zAsyncOpenAIWithRawResponse.chat)embeddings.AsyncEmbeddingsWithRawResponsec                 C  r  )r   r
   )AsyncEmbeddingsWithRawResponse)r   rF  r   r0   )r   rF  r   r   r   r0     r  z%AsyncOpenAIWithRawResponse.embeddingsfiles.AsyncFilesWithRawResponsec                 C  r  )r   r
   )AsyncFilesWithRawResponse)r   rH  r   r&   )r   rH  r   r   r   r&     r  z AsyncOpenAIWithRawResponse.files!images.AsyncImagesWithRawResponsec                 C  r  )r   r
   )AsyncImagesWithRawResponse)r   rJ  r   r'   )r   rJ  r   r   r   r'     r  z!AsyncOpenAIWithRawResponse.imagesaudio.AsyncAudioWithRawResponsec                 C  r  )Nr
   )AsyncAudioWithRawResponse)r   rL  r   r$   )r   rL  r   r   r   r$     r  z AsyncOpenAIWithRawResponse.audio+moderations.AsyncModerationsWithRawResponsec                 C  r  )r   r
   )AsyncModerationsWithRawResponse)r   rN  r   r3   )r   rN  r   r   r   r3   	  r  z&AsyncOpenAIWithRawResponse.moderations!models.AsyncModelsWithRawResponsec                 C  r  )r   r
   )AsyncModelsWithRawResponse)r   rP  r   r(   )r   rP  r   r   r   r(     r  z!AsyncOpenAIWithRawResponse.models*fine_tuning.AsyncFineTuningWithRawResponsec                 C  r  )Nr
   )AsyncFineTuningWithRawResponse)r   rR  r   r2   )r   rR  r   r   r   r2     r  z&AsyncOpenAIWithRawResponse.fine_tuning.vector_stores.AsyncVectorStoresWithRawResponsec                 C  r  )Nr
   ) AsyncVectorStoresWithRawResponse)r   rT  r   r5   )r   rT  r   r   r   r5     r  z(AsyncOpenAIWithRawResponse.vector_storesbeta.AsyncBetaWithRawResponsec                 C  r  )Nr
   )AsyncBetaWithRawResponse)r   rV  r   r"   )r   rV  r   r   r   r"   %  r  zAsyncOpenAIWithRawResponse.beta#batches.AsyncBatchesWithRawResponsec                 C  r  )r   r
   )AsyncBatchesWithRawResponse)r   rX  r   r+   )r   rX  r   r   r   r+   +  r  z"AsyncOpenAIWithRawResponse.batches#uploads.AsyncUploadsWithRawResponsec                 C  r  )r   r
   )AsyncUploadsWithRawResponse)r   rZ  r   r,   )r   rZ  r   r   r   r,   2  r  z"AsyncOpenAIWithRawResponse.uploads'responses.AsyncResponsesWithRawResponsec                 C  r  )Nr
   )AsyncResponsesWithRawResponse)r   r\  r   r.   )r   r\  r   r   r   r.   9  r  z$AsyncOpenAIWithRawResponse.responses%realtime.AsyncRealtimeWithRawResponsec                 C  r  )Nr
   )AsyncRealtimeWithRawResponse)r   r^  r   r-   )r   r^  r   r   r   r-   ?  r  z#AsyncOpenAIWithRawResponse.realtime/conversations.AsyncConversationsWithRawResponsec                 C  r  )r   r
   )!AsyncConversationsWithRawResponse)r   r`  r   r4   )r   r`  r   r   r   r4   E  r  z(AsyncOpenAIWithRawResponse.conversationsevals.AsyncEvalsWithRawResponsec                 C  r  )r   r
   )AsyncEvalsWithRawResponse)r   rb  r   r%   )r   rb  r   r   r   r%   L  r  z AsyncOpenAIWithRawResponse.evals)containers.AsyncContainersWithRawResponsec                 C  r  )Nr
   )AsyncContainersWithRawResponse)r   rd  r   r/   )r   rd  r   r   r   r/   S  r  z%AsyncOpenAIWithRawResponse.containers!skills.AsyncSkillsWithRawResponsec                 C  r  )Nr
   )AsyncSkillsWithRawResponse)r   rf  r   r)   )r   rf  r   r   r   r)   Y  r  z!AsyncOpenAIWithRawResponse.skills!videos.AsyncVideosWithRawResponsec                 C  r  )Nr
   )AsyncVideosWithRawResponse)r   rh  r   r*   )r   rh  r   r   r   r*   _  r  z!AsyncOpenAIWithRawResponse.videosNr  ra   r{   r|   )r{   rA  )r{   rC  )r{   rE  )r{   rG  )r{   rI  )r{   rK  )r{   rM  )r{   rO  )r{   rQ  )r{   rS  )r{   rU  )r{   rW  )r{   rY  )r{   r[  )r{   r]  )r{   r_  )r{   ra  )r{   rc  )r{   re  )r{   rg  r?  r   r   r   r   r
    r@  r
  c                   @  r  )Zr   r`   r   r  r{   r|   c                 C  r  r   r  r  r   r   r   r   i  r  z#OpenAIWithStreamedResponse.__init__,completions.CompletionsWithStreamingResponsec                 C  r  )r   r
   ) CompletionsWithStreamingResponse)r   rk  r   r1   )r   rk  r   r   r   r1   l  r  z&OpenAIWithStreamedResponse.completionschat.ChatWithStreamingResponsec                 C  r  )Nr
   )ChatWithStreamingResponse)r   rm  r   r#   )r   rm  r   r   r   r#   u  r  zOpenAIWithStreamedResponse.chat*embeddings.EmbeddingsWithStreamingResponsec                 C  r  )r   r
   )EmbeddingsWithStreamingResponse)r   ro  r   r0   )r   ro  r   r   r   r0   {  r  z%OpenAIWithStreamedResponse.embeddings files.FilesWithStreamingResponsec                 C  r  )r   r
   )FilesWithStreamingResponse)r   rq  r   r&   )r   rq  r   r   r   r&     r  z OpenAIWithStreamedResponse.files"images.ImagesWithStreamingResponsec                 C  r  )r   r
   )ImagesWithStreamingResponse)r   rs  r   r'   )r   rs  r   r   r   r'     r  z!OpenAIWithStreamedResponse.images audio.AudioWithStreamingResponsec                 C  r  )Nr
   )AudioWithStreamingResponse)r   ru  r   r$   )r   ru  r   r   r   r$     r  z OpenAIWithStreamedResponse.audio,moderations.ModerationsWithStreamingResponsec                 C  r  )r   r
   ) ModerationsWithStreamingResponse)r   rw  r   r3   )r   rw  r   r   r   r3     r  z&OpenAIWithStreamedResponse.moderations"models.ModelsWithStreamingResponsec                 C  r  )r   r
   )ModelsWithStreamingResponse)r   ry  r   r(   )r   ry  r   r   r   r(     r  z!OpenAIWithStreamedResponse.models+fine_tuning.FineTuningWithStreamingResponsec                 C  r  )Nr
   )FineTuningWithStreamingResponse)r   r{  r   r2   )r   r{  r   r   r   r2     r  z&OpenAIWithStreamedResponse.fine_tuning/vector_stores.VectorStoresWithStreamingResponsec                 C  r  )Nr
   )!VectorStoresWithStreamingResponse)r   r}  r   r5   )r   r}  r   r   r   r5     r  z(OpenAIWithStreamedResponse.vector_storesbeta.BetaWithStreamingResponsec                 C  r  )Nr
   )BetaWithStreamingResponse)r   r  r   r"   )r   r  r   r   r   r"     r  zOpenAIWithStreamedResponse.beta$batches.BatchesWithStreamingResponsec                 C  r  )r   r
   )BatchesWithStreamingResponse)r   r  r   r+   )r   r  r   r   r   r+     r  z"OpenAIWithStreamedResponse.batches$uploads.UploadsWithStreamingResponsec                 C  r  )r   r
   )UploadsWithStreamingResponse)r   r  r   r,   )r   r  r   r   r   r,     r  z"OpenAIWithStreamedResponse.uploads(responses.ResponsesWithStreamingResponsec                 C  r  )Nr
   )ResponsesWithStreamingResponse)r   r  r   r.   )r   r  r   r   r   r.     r  z$OpenAIWithStreamedResponse.responses&realtime.RealtimeWithStreamingResponsec                 C  r  )Nr
   )RealtimeWithStreamingResponse)r   r  r   r-   )r   r  r   r   r   r-     r  z#OpenAIWithStreamedResponse.realtime0conversations.ConversationsWithStreamingResponsec                 C  r  )r   r
   )"ConversationsWithStreamingResponse)r   r  r   r4   )r   r  r   r   r   r4     r  z(OpenAIWithStreamedResponse.conversations evals.EvalsWithStreamingResponsec                 C  r  )r   r
   )EvalsWithStreamingResponse)r   r  r   r%   )r   r  r   r   r   r%     r  z OpenAIWithStreamedResponse.evals*containers.ContainersWithStreamingResponsec                 C  r  )Nr
   )ContainersWithStreamingResponse)r   r  r   r/   )r   r  r   r   r   r/     r  z%OpenAIWithStreamedResponse.containers"skills.SkillsWithStreamingResponsec                 C  r  )Nr
   )SkillsWithStreamingResponse)r   r  r   r)   )r   r  r   r   r   r)     r  z!OpenAIWithStreamedResponse.skills"videos.VideosWithStreamingResponsec                 C  r  )Nr
   )VideosWithStreamingResponse)r   r  r   r*   )r   r  r   r   r   r*     r  z!OpenAIWithStreamedResponse.videosNr>  )r{   rj  )r{   rl  )r{   rn  )r{   rp  )r{   rr  )r{   rt  )r{   rv  )r{   rx  )r{   rz  )r{   r|  )r{   r~  )r{   r  )r{   r  )r{   r  )r{   r  )r{   r  )r{   r  )r{   r  )r{   r  )r{   r  r?  r   r   r   r   r   f  r@  r   c                   @  r  )Zr  ra   r   r  r{   r|   c                 C  r  r   r  r  r   r   r   r     r  z(AsyncOpenAIWithStreamedResponse.__init__1completions.AsyncCompletionsWithStreamingResponsec                 C  r  )r   r
   )%AsyncCompletionsWithStreamingResponse)r   r  r   r1   )r   r  r   r   r   r1     r  z+AsyncOpenAIWithStreamedResponse.completions#chat.AsyncChatWithStreamingResponsec                 C  r  )Nr
   )AsyncChatWithStreamingResponse)r   r  r   r#   )r   r  r   r   r   r#     r  z$AsyncOpenAIWithStreamedResponse.chat/embeddings.AsyncEmbeddingsWithStreamingResponsec                 C  r  )r   r
   )$AsyncEmbeddingsWithStreamingResponse)r   r  r   r0   )r   r  r   r   r   r0     r  z*AsyncOpenAIWithStreamedResponse.embeddings%files.AsyncFilesWithStreamingResponsec                 C  r  )r   r
   )AsyncFilesWithStreamingResponse)r   r  r   r&   )r   r  r   r   r   r&     r  z%AsyncOpenAIWithStreamedResponse.files'images.AsyncImagesWithStreamingResponsec                 C  r  )r   r
   ) AsyncImagesWithStreamingResponse)r   r  r   r'   )r   r  r   r   r   r'     r  z&AsyncOpenAIWithStreamedResponse.images%audio.AsyncAudioWithStreamingResponsec                 C  r  )Nr
   )AsyncAudioWithStreamingResponse)r   r  r   r$   )r   r  r   r   r   r$   %  r  z%AsyncOpenAIWithStreamedResponse.audio1moderations.AsyncModerationsWithStreamingResponsec                 C  r  )r   r
   )%AsyncModerationsWithStreamingResponse)r   r  r   r3   )r   r  r   r   r   r3   +  r  z+AsyncOpenAIWithStreamedResponse.moderations'models.AsyncModelsWithStreamingResponsec                 C  r  )r   r
   ) AsyncModelsWithStreamingResponse)r   r  r   r(   )r   r  r   r   r   r(   4  r  z&AsyncOpenAIWithStreamedResponse.models0fine_tuning.AsyncFineTuningWithStreamingResponsec                 C  r  )Nr
   )$AsyncFineTuningWithStreamingResponse)r   r  r   r2   )r   r  r   r   r   r2   ;  r  z+AsyncOpenAIWithStreamedResponse.fine_tuning4vector_stores.AsyncVectorStoresWithStreamingResponsec                 C  r  )Nr
   )&AsyncVectorStoresWithStreamingResponse)r   r  r   r5   )r   r  r   r   r   r5   A  r  z-AsyncOpenAIWithStreamedResponse.vector_stores#beta.AsyncBetaWithStreamingResponsec                 C  r  )Nr
   )AsyncBetaWithStreamingResponse)r   r  r   r"   )r   r  r   r   r   r"   G  r  z$AsyncOpenAIWithStreamedResponse.beta)batches.AsyncBatchesWithStreamingResponsec                 C  r  )r   r
   )!AsyncBatchesWithStreamingResponse)r   r  r   r+   )r   r  r   r   r   r+   M  r  z'AsyncOpenAIWithStreamedResponse.batches)uploads.AsyncUploadsWithStreamingResponsec                 C  r  )r   r
   )!AsyncUploadsWithStreamingResponse)r   r  r   r,   )r   r  r   r   r   r,   T  r  z'AsyncOpenAIWithStreamedResponse.uploads-responses.AsyncResponsesWithStreamingResponsec                 C  r  )Nr
   )#AsyncResponsesWithStreamingResponse)r   r  r   r.   )r   r  r   r   r   r.   [  r  z)AsyncOpenAIWithStreamedResponse.responses+realtime.AsyncRealtimeWithStreamingResponsec                 C  r  )Nr
   )"AsyncRealtimeWithStreamingResponse)r   r  r   r-   )r   r  r   r   r   r-   a  r  z(AsyncOpenAIWithStreamedResponse.realtime5conversations.AsyncConversationsWithStreamingResponsec                 C  r  )r   r
   )'AsyncConversationsWithStreamingResponse)r   r  r   r4   )r   r  r   r   r   r4   g  r  z-AsyncOpenAIWithStreamedResponse.conversations%evals.AsyncEvalsWithStreamingResponsec                 C  r  )r   r
   )AsyncEvalsWithStreamingResponse)r   r  r   r%   )r   r  r   r   r   r%   n  r  z%AsyncOpenAIWithStreamedResponse.evals/containers.AsyncContainersWithStreamingResponsec                 C  r  )Nr
   )$AsyncContainersWithStreamingResponse)r   r  r   r/   )r   r  r   r   r   r/   u  r  z*AsyncOpenAIWithStreamedResponse.containers'skills.AsyncSkillsWithStreamingResponsec                 C  r  )Nr
   ) AsyncSkillsWithStreamingResponse)r   r  r   r)   )r   r  r   r   r   r)   {  r  z&AsyncOpenAIWithStreamedResponse.skills'videos.AsyncVideosWithStreamingResponsec                 C  r  )Nr
   ) AsyncVideosWithStreamingResponse)r   r  r   r*   )r   r  r   r   r   r*     r  z&AsyncOpenAIWithStreamedResponse.videosNri  )r{   r  )r{   r  )r{   r  )r{   r  )r{   r  )r{   r  )r{   r  )r{   r  )r{   r  )r{   r  )r{   r  )r{   r  )r{   r  )r{   r  )r{   r  )r{   r  )r{   r  )r{   r  )r{   r  )r{   r  r?  r   r   r   r   r    r@  r  )
__future__r   r   typingr   r   r   r   r   Ztyping_extensionsr   r	   Zhttpxr   r   Z_qsr   _typesr   r   r   r   r   r   r   Z_utilsr   r   r   Z_compatr   Z_modelsr   _versionr   Z
_streamingr   r   r   r   Z_base_clientr   r    r!   	resourcesr"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   r3   r4   r5   r   r6   r7   r   r8   r9   r   r:   r;   r   r<   r=   r   r>   r?   Zresources.beta.betar@   rA   Zresources.chat.chatrB   rC   r   rD   rE   Zresources.audio.audiorF   rG   r   rH   rI   Zresources.evals.evalsrJ   rK   r   rL   rM   Zresources.skills.skillsrN   rO   Zresources.uploads.uploadsrP   rQ   Zresources.realtime.realtimerR   rS   Zresources.webhooks.webhooksrT   rU   Zresources.responses.responsesrV   rW   Zresources.containers.containersrX   rY   Z!resources.fine_tuning.fine_tuningrZ   r[   Z%resources.conversations.conversationsr\   r]   Z%resources.vector_stores.vector_storesr^   r_   __all__r`   ra   r   r
  r   r  rb   rc   r   r   r   r   <module>   sn   $	X  y  y    