
    Ki                          S SK r S SKJrJrJrJr  S SKJr	  S SKJr
  S SKJr  S SKJr  S SKJr   " S	 S
\ R                   5      r " S S\ R"                  5      rg! \ a	    \" S5      ef = f)    NzHPlease install the Open AI SDK to use this feature: 'pip install openai')WrappedBetaWrappedChatWrappedEmbeddingsWrappedResponses)r   )r   )r   )r   )Clientc                   @   ^  \ rS rSr% Sr\\S'   S\4U 4S jjrSrU =r	$ )AzureOpenAI   z]
A wrapper around the Azure OpenAI SDK that automatically sends LLM usage events to PostHog.

_ph_clientposthog_clientc                   > [         TU ]  " S0 UD6  Xl        [        U SS5      U l        [        U SS5      U l        [        U SS5      U l        [        U SS5      U l        U R                  b  [        X R                  5      U l	        U R
                  b  [        X R
                  5      U l        U R                  b  [        X R                  5      U l        U R                  b  [        X R                  5      U l        gga  
Args:
    api_key: Azure OpenAI API key.
    posthog_client: If provided, events will be captured via this client instead
                    of the global posthog.
    **openai_config: Any additional keyword args to set on Azure OpenAI (e.g. azure_endpoint="xxx").
chatN
embeddingsbeta	responses )super__init__r   getattr_original_chat_original_embeddings_original_beta_original_responsesr   r   r   r   r   r   r   r   selfr   kwargs	__class__s      d/var/www/html/dynamic-report/venv/lib/python3.13/site-packages/posthog/ai/openai/openai_providers.pyr   AzureOpenAI.__init__   s     	"6"( &dFD9$+D,$E!%dFD9#*4d#C  *#D*=*=>DI$$0/6O6OPDO*#D*=*=>DI##/-d4L4LMDN 0    	r   r   r   r   r   r   r   r   r   
__name__
__module____qualname____firstlineno____doc__PostHogClient__annotations__r   __static_attributes____classcell__r   s   @r   r	   r	      s$     N} N Nr!   r	   c                   @   ^  \ rS rSr% Sr\\S'   S\4U 4S jjrSrU =r	$ )AsyncAzureOpenAI;   zd
An async wrapper around the Azure OpenAI SDK that automatically sends LLM usage events to PostHog.
r   r   c                   > [         TU ]  " S0 UD6  Xl        [        U SS5      U l        [        U SS5      U l        [        U SS5      U l        [        U SS5      U l        U R                  b  [        X R                  5      U l	        U R
                  b  [        X R
                  5      U l        U R                  b  [        X R                  5      U l        U R                  b  [        X R                  5      U l        ggr   )r   r   r   r   r   r   r   r   AsyncWrappedChatr   AsyncWrappedEmbeddingsr   AsyncWrappedBetar   AsyncWrappedResponsesr   r   s      r   r   AsyncAzureOpenAI.__init__B   s     	"6"( &dFD9$+D,$E!%dFD9#*4d#C  *(/B/BCDI$$04T;T;TUDO*(/B/BCDI ##/249Q9QRDN 0r!   r"   r#   r-   s   @r   r/   r/   ;   s$     S} S Sr!   r/   )openaiImportErrorModuleNotFoundErrorposthog.ai.openai.openair   r   r   r   posthog.ai.openai.openai_asyncr4   r2   r3   r5   posthog.clientr   r)   r	   r/   r   r!   r   <module>r=      st     K J V T 2#N&$$ #NL$Sv.. $Sq  
R s   A A*