o
    àejõ5  ã                
   @  sX  U d dl mZ d dl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mZ ddlmZ ddlmZmZ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&m'Z' ddl(m)Z)m*Z* ddl+m,Z,m-Z-m.Z. ddl/m0Z0m1Z1m2Z2m3Z3m4Z4m5Z5m6Z6m7Z7m8Z8m9Z9m:Z:m;Z;m<Z<m=Z=m>Z>m?Z?m@Z@mAZAmBZBmCZC ddlDmEZEmFZFmGZG ddlHmIZJ ddlKmLZL ddlMmNZNmOZO g d¢ZPejQsÌddlRmSZS ddlTmUZVmWZXmYZY ddlZm[Z[ ddl\m]Z]m^Z^ ddl_m`Z`maZa ddlbT ddlcmdZdmeZe eJƒ  efƒ ZgePD ]Zheh id¡�szdegeh _jW �q  ekelf�y   Y �q w �q d dlZd dlZmd dlnZoddlDm,Z,m-Z- dapdeqd< dardeqd < dasdeqd!< datdeqd"< daudeqd#< dZvd$eqd%< e,awd&eqd'< e-axd(eqd)< dayd*eqd+< dazd,eqd-< da{d.eqd/< emj|d0 Z}e ~e}ej €d1¡¡a�d2eqd3< ej €d4¡a‚deqd5< ej €d6¡aƒdeqd7< ej €d8¡a„deqd9< dZ…d:eqd;< da†deqd<< dZ‡d=eqd>< G d?d@„ d@eƒZˆG dAdB„ dBeˆe]ƒZ‰G dCdD„ dDeˆe`ƒZŠG dEdF„ dFe2ƒZ‹dXdIdJ„ZŒdXdKdL„Z�dXdMdN„ZŽdadOeqdP< dYdRdS„Z�dZdUdV„Z�ddWl‘m’Z’m“Z“m”Z”m•Z•m–Z–m—Z—m˜Z˜m™Z™mšZšm›Z›mœZœm�Z�mžZžmŸZŸm Z m¡Z¡m¢Z¢m£Z£m¤Z¤m¥Z¥m¦Z¦m§Z§ dS )[é    )ÚannotationsN)Úoverrideé   )Útypes)Ú	NOT_GIVENÚOmitÚNoneTypeÚNotGivenÚ	TransportÚProxiesTypesÚomitÚ	not_given)Úfile_from_path)	ÚClientÚOpenAIÚStreamÚTimeoutr
   ÚAsyncClientÚAsyncOpenAIÚAsyncStreamÚRequestOptions)ÚDefaultHttpx2ClientÚDefaultAsyncHttpx2ClientÚnormalize_httpx_url)Ú	BaseModel)Ú	__title__Ú__version__)ÚAPIResponseÚAsyncAPIResponse)ÚDEFAULT_TIMEOUTÚDEFAULT_MAX_RETRIESÚDEFAULT_CONNECTION_LIMITS)ÚAPIErrorÚ
OAuthErrorÚOpenAIErrorÚConflictErrorÚNotFoundErrorÚAPIStatusErrorÚRateLimitErrorÚAPITimeoutErrorÚBadRequestErrorÚAPIConnectionErrorÚAuthenticationErrorÚInternalServerErrorÚPermissionDeniedErrorÚLengthFinishReasonErrorÚWebSocketQueueFullErrorÚUnprocessableEntityErrorÚAPIResponseValidationErrorÚInvalidWebhookSignatureErrorÚContentFilterFinishReasonErrorÚWebSocketConnectionClosedError)ÚDefaultHttpxClientÚDefaultAioHttpClientÚDefaultAsyncHttpxClient)Úsetup_logging)ÚHttpxBinaryResponseContent)ÚReconnectingEventÚReconnectingOverrides)5r   r   r   r   r
   r   r	   r   r   r   r   r$   r"   r'   r)   r+   r2   r*   r,   r#   r.   r&   r%   r1   r(   r-   r/   r4   r3   r   r   r   r   r   r   r   r   ÚBedrockOpenAIÚAsyncBedrockOpenAIr   r   r   r    r!   r6   r8   r7   r   r   r;   r<   r0   r5   )Ú	resources)ÚazureÚbedrockÚpydantic_function_tool)ÚVERSION)ÚAzureOpenAIÚAsyncAzureOpenAI)r=   r>   )Ú*)ÚAssistantEventHandlerÚAsyncAssistantEventHandlerÚ__Úopenai)r   r    ú
str | NoneÚapi_keyÚadmin_api_keyÚorganizationÚprojectÚwebhook_secretzstr | _httpx.URL | NoneÚbase_urlúfloat | Timeout | NoneÚtimeoutÚintÚmax_retriesú_t.Mapping[str, str] | NoneÚdefault_headersú_t.Mapping[str, object] | NoneÚdefault_queryz_httpx.Client | NoneÚhttp_client)rJ   r@   úamazon-bedrockÚOPENAI_API_TYPEz_ApiType | NoneÚapi_typeÚOPENAI_API_VERSIONÚapi_versionÚAZURE_OPENAI_ENDPOINTÚazure_endpointÚAZURE_OPENAI_AD_TOKENÚazure_ad_tokenz"_azure.AzureADTokenProvider | NoneÚazure_ad_token_providerÚ_bedrock_api_keyz$_bedrock.BedrockTokenProvider | NoneÚbedrock_token_providerc                      s’  e Zd Zeed.dd„ƒƒZejd/dd„ƒZeed.dd	„ƒƒZejd/d
d	„ƒZeed.dd„ƒƒZejd/dd„ƒZeed.dd„ƒƒZ	e	jd/dd„ƒZ	eed.dd„ƒƒZ
e
jd/dd„ƒZ
eed0‡ fdd„ƒƒZejd1‡ fdd„ƒZeed2dd„ƒƒZejd3dd„ƒZeed4dd „ƒƒZejd5d!d „ƒZeed6d#d$„ƒƒZejd7d%d$„ƒZeed8d'd(„ƒƒZejd9d)d(„ƒZeed:‡ fd+d,„ƒƒZejd;d-d,„ƒZ‡  ZS )<Ú_ModuleClientÚreturnrK   c                 C  ó   t S ©N©rL   ©Úself© rn   úO/var/www/html/choboyeo/PHP/venv/lib/python3.10/site-packages/openai/__init__.pyrL   ´   ó   z_ModuleClient.api_keyÚvalueÚNonec                 C  ó   |a d S rj   rk   ©rm   rq   rn   rn   ro   rL   ¹   ó   c                 C  ri   rj   ©rM   rl   rn   rn   ro   rM   ¿   rp   z_ModuleClient.admin_api_keyc                 C  rs   rj   rv   rt   rn   rn   ro   rM   Ä   ru   c                 C  ri   rj   ©rN   rl   rn   rn   ro   rN   Ê   rp   z_ModuleClient.organizationc                 C  rs   rj   rw   rt   rn   rn   ro   rN   Ï   ru   c                 C  ri   rj   ©rO   rl   rn   rn   ro   rO   Õ   rp   z_ModuleClient.projectc                 C  rs   rj   rx   rt   rn   rn   ro   rO   Ú   ru   c                 C  ri   rj   ©rP   rl   rn   rn   ro   rP   à   rp   z_ModuleClient.webhook_secretc                 C  rs   rj   ry   rt   rn   rn   ro   rP   å   ru   ú
_httpx.URLc                   s   t d urtt ƒS tƒ j S rj   )rQ   Ú_normalize_httpx_urlÚsuperrl   ©Ú	__class__rn   ro   rQ   ë   s   z_ModuleClient.base_urlÚurlú_httpx.URL | strc                   s   |t ƒ _d S rj   )r|   rQ   )rm   r   r}   rn   ro   rQ   ó   s   rR   c                 C  ri   rj   ©rS   rl   rn   rn   ro   rS   ÷   rp   z_ModuleClient.timeoutc                 C  rs   rj   r�   rt   rn   rn   ro   rS   ü   ru   rT   c                 C  ri   rj   ©rU   rl   rn   rn   ro   rU     rp   z_ModuleClient.max_retriesc                 C  rs   rj   r‚   rt   rn   rn   ro   rU     ru   rV   c                 C  ri   rj   ©rW   rl   rn   rn   ro   Ú_custom_headers  rp   z_ModuleClient._custom_headersc                 C  rs   rj   rƒ   rt   rn   rn   ro   r„     ru   rX   c                 C  ri   rj   ©rY   rl   rn   rn   ro   Ú_custom_query  rp   z_ModuleClient._custom_queryc                 C  rs   rj   r…   rt   rn   rn   ro   r†     ru   ú_httpx.Clientc                   s   t ptƒ jS rj   )rZ   r|   Ú_clientrl   r}   rn   ro   rˆ   #  s   z_ModuleClient._clientc                 C  rs   rj   )rZ   rt   rn   rn   ro   rˆ   (  ru   ©rh   rK   ©rq   rK   rh   rr   )rh   rz   )r   r€   rh   rr   )rh   rR   )rq   rR   rh   rr   )rh   rT   )rq   rT   rh   rr   )rh   rV   )rq   rV   rh   rr   )rh   rX   )rq   rX   rh   rr   )rh   r‡   )rq   r‡   rh   rr   )Ú__name__Ú
__module__Ú__qualname__Úpropertyr   rL   ÚsetterrM   rN   rO   rP   rQ   rS   rU   r„   r†   rˆ   Ú__classcell__rn   rn   r}   ro   rg   °   sp    rg   c                   @  s   e Zd ZdS )Ú_AzureModuleClientN)r‹   rŒ   r�   rn   rn   rn   ro   r‘   /  s    r‘   c                      sV   e Zd Zeeddd„ƒƒZejddd„ƒZed‡ fd	d
„ƒZed‡ fdd„ƒZ‡  Z	S )Ú_BedrockModuleClientrh   rK   c                 C  s   t d urt S tS rj   )rL   re   rl   rn   rn   ro   rL   4  s   z_BedrockModuleClient.api_keyrq   rr   c                 C  rs   rj   )re   rt   rn   rn   ro   rL   9  ru   Ústrc                   s   t d urt S tƒ  ¡ S rj   )rL   r|   Ú_refresh_api_keyrl   r}   rn   ro   r”   ?  s   
z%_BedrockModuleClient._refresh_api_keyú!_bedrock._LegacyAuthConfigurationc                   s   t d urdt fS tƒ  ¡ S )NÚbearer)rL   r|   Ú_legacy_auth_configurationrl   r}   rn   ro   r—   F  s   
z/_BedrockModuleClient._legacy_auth_configurationr‰   rŠ   )rh   r“   )rh   r•   )
r‹   rŒ   r�   rŽ   r   rL   r�   r”   r—   r�   rn   rn   r}   ro   r’   3  s    r’   c                      s   e Zd Zd‡ fdd„Z‡  ZS )Ú _AmbiguousModuleClientUsageErrorrh   rr   c                   s   t ƒ  d¡ d S )Nz”Ambiguous use of module client; please set `openai.api_type` or the `OPENAI_API_TYPE` environment variable to `openai`, `azure`, or `amazon-bedrock`)r|   Ú__init__rl   r}   rn   ro   r™   N  s   ÿz)_AmbiguousModuleClientUsageError.__init__©rh   rr   )r‹   rŒ   r�   r™   r�   rn   rn   r}   ro   r˜   M  s    r˜   rh   Úboolc                   C  s   t j d¡d uS )NÚOPENAI_API_KEY)Ú_osÚenvironÚgetrn   rn   rn   ro   Ú_has_openai_credentialsT  s   r    c                   C  s   t d uptj d¡d uS )NÚAZURE_OPENAI_API_KEY)ra   r�   rž   rŸ   rn   rn   rn   ro   Ú_has_azure_credentialsX  s   r¢   c                   C  s    t j d¡d uptd uptd uS )Nrb   )r�   rž   rŸ   rc   rd   rn   rn   rn   ro   Ú_has_azure_ad_credentials\  s
   ÿýr£   zOpenAI | Nonerˆ   r   c                  C  s&  t d u r‘td u rtj d¡atd u rtj d¡atd u r"tj d¡atd u rTtƒ } t	ƒ }t
ƒ }| r8|s5|r8tƒ ‚td us@td urKtj d¡d urKtƒ ‚|sO|rRdandatdkrjtttttttttttttd�a t S tdkrttttttttttttd	�a t S ttttttttttttd
d�a t S t S )Nr`   rb   r^   r¡   r@   rJ   )r_   ra   rL   rc   rd   rN   rQ   rS   rU   rW   rY   rZ   r[   )rL   rf   rN   rO   rP   rQ   rS   rU   rW   rY   rZ   F)rL   rM   rN   rO   rP   rQ   rS   rU   rW   rY   rZ   Ú_enforce_credentials)rˆ   ra   r�   rž   rŸ   rc   r_   r]   r    r¢   r£   r˜   rd   r‘   rL   rN   rQ   rS   rU   rW   rY   rZ   r’   rf   rO   rP   rg   rM   )Ú
has_openaiÚ	has_azureÚhas_azure_adrn   rn   ro   Ú_load_clientg  sŠ   ÿþôõôr¨   rr   c                   C  s   d a d S rj   )rˆ   rn   rn   rn   ro   Ú_reset_client¼  s   r©   )ÚbetaÚchatÚadminÚaudioÚevalsÚfilesÚimagesÚmodelsÚskillsÚvideosÚbatchesÚuploadsÚrealtimeÚwebhooksÚ	responsesÚ
containersÚ
embeddingsÚcompletionsÚfine_tuningÚmoderationsÚconversationsÚvector_stores)rh   r›   )rh   r   rš   )¨Ú
__future__r   Úosr�   ÚtypingÚ_tÚtyping_extensionsr   Ú r   Ú_typesr   r   r   r	   r
   r   r   r   Ú_utilsr   rˆ   r   r   r   r   r   r   r   r   Ú_httpx2r   r   r   r{   Ú_modelsr   Ú_versionr   r   Ú	_responser   r   Ú
_constantsr   r    r!   Ú_exceptionsr"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   r3   r4   r5   Ú_base_clientr6   r7   r8   Ú_utils._logsr9   Ú_setup_loggingÚ_legacy_responser:   Útypes.websocket_reconnectionr;   r<   Ú__all__ÚTYPE_CHECKINGÚ_utils._resources_proxyr?   Úlibr@   Ú_azurerA   Ú_bedrockrB   ÚversionrC   Ú	lib.azurerD   rE   Úlib.bedrockr=   r>   Úlib._old_apiÚlib.streamingrG   rH   ÚlocalsÚ__localsÚ__nameÚ
startswithrŒ   Ú	TypeErrorÚAttributeErrorÚ_teÚhttpxÚ_httpxrL   Ú__annotations__rM   rN   rO   rP   rQ   rS   rU   rW   rY   rZ   ÚLiteralÚ_ApiTypeÚcastrž   rŸ   r]   r_   ra   rc   rd   re   rf   rg   r‘   r’   r˜   r    r¢   r£   r¨   r©   Ú_module_clientrª   r«   r¬   r­   r®   r¯   r°   r±   r²   r³   r´   rµ   r¶   r·   r¸   r¹   rº   r»   r¼   r½   r¾   r¿   rn   rn   rn   ro   Ú<module>   sŽ   (,X8þý





Ud