Ë
    ,Œ:jÁK  ã                  ó@  — d dl mZ d dlZd dlZd dlmZmZ d dlmZ d dl	Z	ddl
mZ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 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#m$Z$ g d¢Z% G d„ de#«      Z& G d„ de$«      Z' G d„ d«      Z( G d„ d«      Z)e&Z*e'Z+y)é    )ÚannotationsN)ÚUnionÚMapping)Úoverrideé   )Ú	resourcesÚ_exceptions©ÚQuerystring)Ú	NOT_GIVENÚOmitÚTimeoutÚNotGivenÚ	TransportÚProxiesTypesÚRequestOptions)Úis_givenÚ
is_mapping)Ú__version__)ÚStream)ÚAsyncStream)ÚOpenAIErrorÚAPIStatusError)ÚDEFAULT_MAX_RETRIESÚSyncAPIClientÚAsyncAPIClient)	r   r   r   r   r   ÚOpenAIÚAsyncOpenAIÚClientÚAsyncClientc                  óÄ  ‡ — e Zd ZU ded<   ded<   ded<   ded<   d	ed
<   ded<   ded<   ded<   ded<   ded<   ded<   ded<   ded<   ded<   ded<   dddeedddd d!œ		 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 d*ˆ fd"„Zeed+d#„«       «       Z	eed,d$„«       «       Z
eed-ˆ fd%„«       «       Zdddededdddd&œ
	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 d.d'„ZeZd/d(„Ze	 	 	 	 	 	 	 	 d0d)„«       Zˆ xZS )1r   zresources.CompletionsÚcompletionszresources.ChatÚchatzresources.EditsÚeditszresources.EmbeddingsÚ
embeddingszresources.FilesÚfileszresources.ImagesÚimageszresources.AudioÚaudiozresources.ModerationsÚmoderationszresources.ModelsÚmodelszresources.FineTuningÚfine_tuningzresources.FineTunesÚ
fine_tuneszresources.BetaÚbetaÚOpenAIWithRawResponseÚwith_raw_responseÚstrÚapi_keyú
str | NoneÚorganizationNF©	r1   r3   Úbase_urlÚtimeoutÚmax_retriesÚdefault_headersÚdefault_queryÚhttp_clientÚ_strict_response_validationc       	   
     óæ  •— |€t         j                  j                  d«      }|€t        d«      ‚|| _        |€t         j                  j                  d«      }|| _        |€t         j                  j                  d«      }|€d}t        ‰
| �  t        |||||||	¬«       t        | _
        t        j                  | «      | _        t        j                  | «      | _        t        j                   | «      | _        t        j$                  | «      | _        t        j(                  | «      | _        t        j,                  | «      | _        t        j0                  | «      | _        t        j4                  | «      | _        t        j8                  | «      | _        t        j<                  | «      | _        t        j@                  | «      | _!        t        jD                  | «      | _#        tI        | «      | _%        y)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`
        NÚOPENAI_API_KEYúƒThe 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_BASE_URLúhttps://api.openai.com/v1©Úversionr5   r7   r6   r:   Úcustom_headersÚcustom_queryr;   )&ÚosÚenvironÚgetr   r1   r3   ÚsuperÚ__init__r   r   Ú_default_stream_clsr   ÚCompletionsr"   ÚChatr#   ÚEditsr$   Ú
Embeddingsr%   ÚFilesr&   ÚImagesr'   ÚAudior(   ÚModerationsr)   ÚModelsr*   Ú
FineTuningr+   Ú	FineTunesr,   ÚBetar-   r.   r/   ©Úselfr1   r3   r5   r6   r7   r8   r9   r:   r;   Ú	__class__s             €úP/var/www/html/tokenscope/api/venv/lib/python3.12/site-packages/openai/_client.pyrJ   zOpenAI.__init__>   s”  ø€ ð8 ˆ?Ü—j‘j—n‘nÐ%5Ó6ˆGØˆ?Üð Vóð ð ˆŒàÐÜŸ:™:Ÿ>™>¨/Ó:ˆLØ(ˆÔàÐÜ—z‘z—~‘~Ð&7Ó8ˆHØÐØ2ˆHä‰ÑÜØØ#ØØ#Ø*Ø&Ø(Cð 	ô 		
ô $*ˆÔ ä$×0Ñ0°Ó6ˆÔÜ—N‘N 4Ó(ˆŒ	Ü—_‘_ TÓ*ˆŒ
Ü#×.Ñ.¨tÓ4ˆŒÜ—_‘_ TÓ*ˆŒ
Ü×&Ñ& tÓ,ˆŒÜ—_‘_ TÓ*ˆŒ
Ü$×0Ñ0°Ó6ˆÔÜ×&Ñ& tÓ,ˆŒÜ$×/Ñ/°Ó5ˆÔÜ#×-Ñ-¨dÓ3ˆŒÜ—N‘N 4Ó(ˆŒ	Ü!6°tÓ!<ˆÕó    c                ó   — t        d¬«      S ©NÚcomma)Úarray_formatr
   ©rY   s    r[   Úqsz	OpenAI.qs†   ó   € ô ¨Ô0Ð0r\   c                ó(   — | j                   }dd|› �iS ©NÚAuthorizationzBearer ©r1   ©rY   r1   s     r[   Úauth_headerszOpenAI.auth_headers‹   ó   € ð —,‘,ˆØ 7¨7¨)Ð!4Ð5Ð5r\   c                ó|   •— i t         ‰| �  ¥d| j                  �| j                  n	t        «       i¥| j                  ¥S ©NzOpenAI-Organization©rI   r8   r3   r   Ú_custom_headers©rY   rZ   s    €r[   r8   zOpenAI.default_headers‘   óK   ø€ ð
Ü‰gÑ%ð
à!¸×8IÑ8IÐ8U 4×#4Ò#4Ô[_Ó[añ
ð ×"Ñ"ð
ð 	
r\   ©
r1   r3   r5   r6   r:   r7   r8   Úset_default_headersr9   Úset_default_queryc       
   
     óÀ  — |�|�t        d«      ‚|	�|
�t        d«      ‚| j                  }|�i |¥|¥}n|�|}| j                  }|	�i |¥|	¥}n|
�|
}|xs | j                  }| j	                  |xs | j
                  |xs | j                  |xs t        | j                  «      t        |t        «      r| j                  n||t        |«      r|n| j                  ||¬«      S ©a  
        Create a new client instance re-using the same options given to the current client with optional overriding.

        It should be noted that this does not share the underlying httpx client class which may lead
        to performance issues.
        zPThe `default_headers` and `set_default_headers` arguments are mutually exclusivezLThe `default_query` and `set_default_query` arguments are mutually exclusive)r1   r3   r5   r6   r:   r7   r8   r9   ©Ú
ValueErrorrn   Ú_custom_queryÚ_clientrZ   r1   r3   r0   r5   Ú
isinstancer   r6   r   r7   ©rY   r1   r3   r5   r6   r:   r7   r8   rr   r9   rs   ÚheadersÚparamss                r[   ÚcopyzOpenAI.copyš   ó  € ð( Ð&Ð+>Ð+JÜÐoÓpÐpàÐ$Ð):Ð)FÜÐkÓlÐlà×&Ñ&ˆØÐ&Ø4˜Ð4 OÐ4‰GØ Ð,Ø)ˆGà×#Ñ#ˆØÐ$Ø0˜Ð0 -Ð0‰FØÐ*Ø&ˆFà!Ò1 T§\¡\ˆØ�~‰~ØÒ+˜tŸ|™|Ø%Ò:¨×):Ñ):ØÒ3¤ T§]¡]Ó!3Ü$.¨w¼Ô$A�D—L’LÀwØ#Ü'/°Ô'<™À$×BRÑBRØ#Ø ð ó 	
ð 		
r\   c                óp   — t        | d«      rt        | d«      sy | j                  ry | j                  «        y ©NÚ_has_custom_http_clientÚclose)Úhasattrr‚   rƒ   ra   s    r[   Ú__del__zOpenAI.__del__Ð   s.   € Ü�tÐ6Ô7¼wÀtÈWÔ?Uàà×'Ò'Øà�
‰
�r\   c               óÌ  — t        |«      r|j                  d|«      n|}|j                  dk(  rt        j                  |||¬«      S |j                  dk(  rt        j
                  |||¬«      S |j                  dk(  rt        j                  |||¬«      S |j                  dk(  rt        j                  |||¬«      S |j                  dk(  rt        j                  |||¬«      S |j                  dk(  rt        j                  |||¬«      S |j                  d	k(  rt        j                  |||¬«      S |j                  d
k\  rt        j                  |||¬«      S t        |||¬«      S ©NÚerrori�  )ÚresponseÚbodyi‘  i“  i”  i™  i¦  i­  iô  ©r   rH   Ústatus_coder	   ÚBadRequestErrorÚAuthenticationErrorÚPermissionDeniedErrorÚNotFoundErrorÚConflictErrorÚUnprocessableEntityErrorÚRateLimitErrorÚInternalServerErrorr   ©rY   Úerr_msgrŠ   r‰   Údatas        r[   Ú_make_status_errorzOpenAI._make_status_errorÚ   óI  € ô +5°TÔ*:ˆt�x‰x˜ Ô&ÀˆØ×Ñ 3Ò&Ü×.Ñ.¨wÀÐPTÔUÐUà×Ñ 3Ò&Ü×2Ñ2°7ÀXÐTXÔYÐYà×Ñ 3Ò&Ü×4Ñ4°WÀxÐVZÔ[Ð[à×Ñ 3Ò&Ü×,Ñ,¨W¸xÈdÔSÐSà×Ñ 3Ò&Ü×,Ñ,¨W¸xÈdÔSÐSà×Ñ 3Ò&Ü×7Ñ7¸È(ÐY]Ô^Ð^à×Ñ 3Ò&Ü×-Ñ-¨gÀÈtÔTÐTà×Ñ 3Ò&Ü×2Ñ2°7ÀXÐTXÔYÐYÜ˜g°¸tÔDÐDr\   )r1   r2   r3   r2   r5   ústr | httpx.URL | Noner6   ú%Union[float, Timeout, None, NotGiven]r7   Úintr8   úMapping[str, str] | Noner9   úMapping[str, object] | Noner:   úhttpx.Client | Noner;   ÚboolÚreturnÚNone©r¡   r   ©r¡   zdict[str, str]©r¡   zdict[str, str | Omit])r1   r2   r3   r2   r5   rš   r6   ú!float | Timeout | None | NotGivenr:   rŸ   r7   úint | NotGivenr8   r�   rr   r�   r9   rž   rs   rž   r¡   r   ©r¡   r¢   ©r–   r0   rŠ   Úobjectr‰   zhttpx.Responser¡   r   ©Ú__name__Ú
__module__Ú__qualname__Ú__annotations__r   r   rJ   Úpropertyr   rb   ri   r8   r~   Úwith_optionsr…   r˜   Ú__classcell__©rZ   s   @r[   r   r   +   s&  ø… Ø&Ó&Ø
ÓØÓØ$Ó$ØÓØÓØÓØ&Ó&ØÓØ%Ó%Ø#Ó#Ø
ÓØ,Ó,ð ƒLØÓð
 #Ø#'Ø+/Ø9BØ.Ø48Ø59à+/ð -2ñ)F=ð ðF=ð !ð	F=ð
 )ðF=ð 7ðF=ð ðF=ð 2ðF=ð 3ðF=ð )ðF=ð( &*ð)F=ð* 
õ+F=ðP Øò1ó ó ð1ð Øò6ó ó ð6ð Øô
ó ó ð
ð #Ø#'Ø+/Ø5>Ø+/Ø&/Ø48Ø8<Ø59Ø9=ñ0
ð ð0
ð !ð	0
ð
 )ð0
ð 3ð0
ð )ð0
ð $ð0
ð 2ð0
ð 6ð0
ð 3ð0
ð 7ð0
ð 
ó0
ðh €Lóð ðEàðEð ð	Eð
 !ðEð 
òEó ôEr\   r   c                  óÄ  ‡ — e Zd ZU ded<   ded<   ded<   ded<   d	ed
<   ded<   ded<   ded<   ded<   ded<   ded<   ded<   ded<   ded<   ded<   dddeedddd d!œ		 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 d*ˆ fd"„Zeed+d#„«       «       Z	eed,d$„«       «       Z
eed-ˆ fd%„«       «       Zdddededdddd&œ
	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 d.d'„ZeZd/d(„Ze	 	 	 	 	 	 	 	 d0d)„«       Zˆ xZS )1r   zresources.AsyncCompletionsr"   zresources.AsyncChatr#   zresources.AsyncEditsr$   zresources.AsyncEmbeddingsr%   zresources.AsyncFilesr&   zresources.AsyncImagesr'   zresources.AsyncAudior(   zresources.AsyncModerationsr)   zresources.AsyncModelsr*   zresources.AsyncFineTuningr+   zresources.AsyncFineTunesr,   zresources.AsyncBetar-   ÚAsyncOpenAIWithRawResponser/   r0   r1   r2   r3   NFr4   c       	   
     óæ  •— |€t         j                  j                  d«      }|€t        d«      ‚|| _        |€t         j                  j                  d«      }|| _        |€t         j                  j                  d«      }|€d}t        ‰
| �  t        |||||||	¬«       t        | _
        t        j                  | «      | _        t        j                  | «      | _        t        j                   | «      | _        t        j$                  | «      | _        t        j(                  | «      | _        t        j,                  | «      | _        t        j0                  | «      | _        t        j4                  | «      | _        t        j8                  | «      | _        t        j<                  | «      | _        t        j@                  | «      | _!        t        jD                  | «      | _#        tI        | «      | _%        y)a  Construct a new async 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`
        Nr=   r>   r?   r@   rA   rB   )&rF   rG   rH   r   r1   r3   rI   rJ   r   r   rK   r   ÚAsyncCompletionsr"   Ú	AsyncChatr#   Ú
AsyncEditsr$   ÚAsyncEmbeddingsr%   Ú
AsyncFilesr&   ÚAsyncImagesr'   Ú
AsyncAudior(   ÚAsyncModerationsr)   ÚAsyncModelsr*   ÚAsyncFineTuningr+   ÚAsyncFineTunesr,   Ú	AsyncBetar-   rµ   r/   rX   s             €r[   rJ   zAsyncOpenAI.__init__  sž  ø€ ð8 ˆ?Ü—j‘j—n‘nÐ%5Ó6ˆGØˆ?Üð Vóð ð ˆŒàÐÜŸ:™:Ÿ>™>¨/Ó:ˆLØ(ˆÔàÐÜ—z‘z—~‘~Ð&7Ó8ˆHØÐØ2ˆHä‰ÑÜØØ#ØØ#Ø*Ø&Ø(Cð 	ô 		
ô $/ˆÔ ä$×5Ñ5°dÓ;ˆÔÜ×'Ñ'¨Ó-ˆŒ	Ü×)Ñ)¨$Ó/ˆŒ
Ü#×3Ñ3°DÓ9ˆŒÜ×)Ñ)¨$Ó/ˆŒ
Ü×+Ñ+¨DÓ1ˆŒÜ×)Ñ)¨$Ó/ˆŒ
Ü$×5Ñ5°dÓ;ˆÔÜ×+Ñ+¨DÓ1ˆŒÜ$×4Ñ4°TÓ:ˆÔÜ#×2Ñ2°4Ó8ˆŒÜ×'Ñ'¨Ó-ˆŒ	Ü!;¸DÓ!AˆÕr\   c                ó   — t        d¬«      S r^   r
   ra   s    r[   rb   zAsyncOpenAI.qsX  rc   r\   c                ó(   — | j                   }dd|› �iS re   rg   rh   s     r[   ri   zAsyncOpenAI.auth_headers]  rj   r\   c                ó|   •— i t         ‰| �  ¥d| j                  �| j                  n	t        «       i¥| j                  ¥S rl   rm   ro   s    €r[   r8   zAsyncOpenAI.default_headersc  rp   r\   rq   c       
   
     óÀ  — |�|�t        d«      ‚|	�|
�t        d«      ‚| j                  }|�i |¥|¥}n|�|}| j                  }|	�i |¥|	¥}n|
�|
}|xs | j                  }| j	                  |xs | j
                  |xs | j                  |xs t        | j                  «      t        |t        «      r| j                  n||t        |«      r|n| j                  ||¬«      S ru   rv   r{   s                r[   r~   zAsyncOpenAI.copyl  r   r\   c                óÒ   — t        | d«      rt        | d«      sy | j                  ry 	 t        j                  «       j	                  | j                  «       «       y # t        $ r Y y w xY wr�   )r„   r‚   ÚasyncioÚget_running_loopÚcreate_taskrƒ   Ú	Exceptionra   s    r[   r…   zAsyncOpenAI.__del__¢  sY   € Ü�tÐ6Ô7¼wÀtÈWÔ?Uàà×'Ò'Øð	Ü×$Ñ$Ó&×2Ñ2°4·:±:³<Õ@øÜò 	Ùð	ús   ¨1A Á	A&Á%A&c               óÌ  — t        |«      r|j                  d|«      n|}|j                  dk(  rt        j                  |||¬«      S |j                  dk(  rt        j
                  |||¬«      S |j                  dk(  rt        j                  |||¬«      S |j                  dk(  rt        j                  |||¬«      S |j                  dk(  rt        j                  |||¬«      S |j                  dk(  rt        j                  |||¬«      S |j                  d	k(  rt        j                  |||¬«      S |j                  d
k\  rt        j                  |||¬«      S t        |||¬«      S r‡   r‹   r•   s        r[   r˜   zAsyncOpenAI._make_status_error¯  r™   r\   )r1   r2   r3   r2   r5   rš   r6   r›   r7   rœ   r8   r�   r9   rž   r:   úhttpx.AsyncClient | Noner;   r    r¡   r¢   r£   r¤   r¥   )r1   r2   r3   r2   r5   rš   r6   r¦   r:   rÍ   r7   r§   r8   r�   rr   r�   r9   rž   rs   rž   r¡   r   r¨   r©   r«   r³   s   @r[   r   r   ý   s1  ø… Ø+Ó+Ø
ÓØÓØ)Ó)ØÓØ!Ó!ØÓØ+Ó+Ø!Ó!Ø*Ó*Ø(Ó(Ø
ÓØ1Ó1ð ƒLØÓð
 #Ø#'Ø+/Ø9BØ.Ø48Ø59à04ð -2ñ)FBð ðFBð !ð	FBð
 )ðFBð 7ðFBð ðFBð 2ðFBð 3ðFBð .ðFBð( &*ð)FBð* 
õ+FBðP Øò1ó ó ð1ð Øò6ó ó ð6ð Øô
ó ó ð
ð #Ø#'Ø+/Ø5>Ø04Ø&/Ø48Ø8<Ø59Ø9=ñ0
ð ð0
ð !ð	0
ð
 )ð0
ð 3ð0
ð .ð0
ð $ð0
ð 2ð0
ð 6ð0
ð 3ð0
ð 7ð0
ð 
ó0
ðh €Lóð ðEàðEð ð	Eð
 !ðEð 
òEó ôEr\   r   c                  ó   — e Zd Zdd„Zy)r.   c                ód  — t        j                  |j                  «      | _        t        j                  |j                  «      | _        t        j
                  |j                  «      | _        t        j                  |j                  «      | _        t        j                  |j                  «      | _
        t        j                  |j                  «      | _        t        j                  |j                  «      | _        t        j                  |j                   «      | _        t        j"                  |j$                  «      | _        t        j&                  |j(                  «      | _        t        j*                  |j,                  «      | _        t        j.                  |j0                  «      | _        y ©N)r   ÚCompletionsWithRawResponser"   ÚChatWithRawResponser#   ÚEditsWithRawResponser$   ÚEmbeddingsWithRawResponser%   ÚFilesWithRawResponser&   ÚImagesWithRawResponser'   ÚAudioWithRawResponser(   ÚModerationsWithRawResponser)   ÚModelsWithRawResponser*   ÚFineTuningWithRawResponser+   ÚFineTunesWithRawResponser,   ÚBetaWithRawResponser-   ©rY   Úclients     r[   rJ   zOpenAIWithRawResponse.__init__Ó  s  € Ü$×?Ñ?À×@RÑ@RÓSˆÔÜ×1Ñ1°&·+±+Ó>ˆŒ	Ü×3Ñ3°F·L±LÓAˆŒ
Ü#×=Ñ=¸f×>OÑ>OÓPˆŒÜ×3Ñ3°F·L±LÓAˆŒ
Ü×5Ñ5°f·m±mÓDˆŒÜ×3Ñ3°F·L±LÓAˆŒ
Ü$×?Ñ?À×@RÑ@RÓSˆÔÜ×5Ñ5°f·m±mÓDˆŒÜ$×>Ñ>¸v×?QÑ?QÓRˆÔÜ#×<Ñ<¸V×=NÑ=NÓOˆŒÜ×1Ñ1°&·+±+Ó>ˆ�	r\   N)rÞ   r   r¡   r¢   ©r¬   r­   r®   rJ   © r\   r[   r.   r.   Ò  s   „ ô?r\   r.   c                  ó   — e Zd Zdd„Zy)rµ   c                ód  — t        j                  |j                  «      | _        t        j                  |j                  «      | _        t        j
                  |j                  «      | _        t        j                  |j                  «      | _        t        j                  |j                  «      | _
        t        j                  |j                  «      | _        t        j                  |j                  «      | _        t        j                  |j                   «      | _        t        j"                  |j$                  «      | _        t        j&                  |j(                  «      | _        t        j*                  |j,                  «      | _        t        j.                  |j0                  «      | _        y rÐ   )r   ÚAsyncCompletionsWithRawResponser"   ÚAsyncChatWithRawResponser#   ÚAsyncEditsWithRawResponser$   ÚAsyncEmbeddingsWithRawResponser%   ÚAsyncFilesWithRawResponser&   ÚAsyncImagesWithRawResponser'   ÚAsyncAudioWithRawResponser(   ÚAsyncModerationsWithRawResponser)   ÚAsyncModelsWithRawResponser*   ÚAsyncFineTuningWithRawResponser+   ÚAsyncFineTunesWithRawResponser,   ÚAsyncBetaWithRawResponser-   rÝ   s     r[   rJ   z#AsyncOpenAIWithRawResponse.__init__ã  s  € Ü$×DÑDÀV×EWÑEWÓXˆÔÜ×6Ñ6°v·{±{ÓCˆŒ	Ü×8Ñ8¸¿¹ÓFˆŒ
Ü#×BÑBÀ6×CTÑCTÓUˆŒÜ×8Ñ8¸¿¹ÓFˆŒ
Ü×:Ñ:¸6¿=¹=ÓIˆŒÜ×8Ñ8¸¿¹ÓFˆŒ
Ü$×DÑDÀV×EWÑEWÓXˆÔÜ×:Ñ:¸6¿=¹=ÓIˆŒÜ$×CÑCÀF×DVÑDVÓWˆÔÜ#×AÑAÀ&×BSÑBSÓTˆŒÜ×6Ñ6°v·{±{ÓCˆ�	r\   N)rÞ   r   r¡   r¢   rß   rà   r\   r[   rµ   rµ   â  s   „ ôDr\   rµ   ),Ú
__future__r   rF   rÈ   Útypingr   r   Útyping_extensionsr   ÚhttpxÚ r   r	   Ú_qsr   Ú_typesr   r   r   r   r   r   r   Ú_utilsr   r   Ú_versionr   Ú
_streamingr   r   r   r   Ú_base_clientr   r   r   Ú__all__r   r   r.   rµ   r   r    rà   r\   r[   ú<module>rû      s�   ðõ #ã 	Û ß !Ý &ã ç $Ý ÷÷ ñ ÷ )Ý !Ý (Ý 2ß 4ß LÑ Lò
€ôOEˆ]ô OEôdRE�.ô RE÷j?ñ ?÷ Dñ Dð  
€à�r\   