Ë
    uPêjÒ
  ã                   óh   — d dl mZmZmZ d dlZd dlZerd dlmZ d dl	m
Z
 d dlmZmZ  G d„ d«      Zy)é    )ÚTYPE_CHECKINGÚAnyÚUnionN)ÚLogging)ÚCustomStreamWrapper)ÚModelResponseÚTextCompletionResponsec                   ó  — e Zd ZU dZej
                  dz  ed<   dedej                  ddde	dd	d
e
dede
ez  deded   fd„Zdedej                  ddde	dd	d
e
dede
ez  deded   fd„Zd„ Zd„ Zd„ Zd„ Zdedz  fd„Zdefd„Zdefd„Zy)ÚBaseLLMNÚ_client_sessionÚmodelÚresponseÚmodel_responser   ÚstreamÚlogging_objÚLiteLLMLoggingObjÚoptional_paramsÚapi_keyÚdataÚmessagesÚreturn)r   r   c                 ó   — |S ©z^
        Helper function to process the response across sync + async completion calls
        © ©Úselfr   r   r   r   r   r   r   r   r   Úprint_verboseÚencodings               úV/home/oem/CyberBrain26-unified/.venv/lib/python3.12/site-packages/litellm/llms/base.pyÚprocess_responsezBaseLLM.process_response   ó
   € ð" Ðó    r	   )r	   r   c                 ó   — |S r   r   r   s               r   Ú process_text_completion_responsez(BaseLLM.process_text_completion_response$   r!   r"   c                 ór   — t         j                  rt         j                  }|S t        j                  «       }|S ©N)ÚlitellmÚclient_sessionÚhttpxÚClient)r   r   s     r   Úcreate_client_sessionzBaseLLM.create_client_session7   s1   € Ü×!Ò!Ü%×4Ñ4ˆOð Ðô $Ÿl™l›nˆOàÐr"   c                 ór   — t         j                  rt         j                  }|S t        j                  «       }|S r&   )r'   Úaclient_sessionr)   ÚAsyncClient)r   Ú_aclient_sessions     r   Úcreate_aclient_sessionzBaseLLM.create_aclient_session?   s6   € Ü×"Ò"Ü&×6Ñ6Ðð  Ðô  %×0Ñ0Ó2ÐàÐr"   c                 ól   — t        | d«      r(| j                  �| j                  j                  «        y y y )Nr   )Úhasattrr   Úclose)r   s    r   Ú__exit__zBaseLLM.__exit__G   s3   € Ü�4Ð*Ô+°×0DÑ0DÐ0PØ× Ñ ×&Ñ&Õ(ð 1QÐ+r"   c              ƒ   ón   K  — t        | d«      r#| j                  j                  «       ƒ d {  –—†  y y 7 Œ­w)Nr/   )r2   r/   Úaclose)r   Úexc_typeÚexc_valÚexc_tbs       r   Ú	__aexit__zBaseLLM.__aexit__K   s1   è ø€ Ü�4Ð+Ô,Ø×'Ñ'×.Ñ.Ó0×0Ñ0ð -Ø0ús   ‚*5¬3­5c                  ó   — y r&   r   ©r   ÚargsÚkwargss      r   Úvalidate_environmentzBaseLLM.validate_environmentO   ó   € Ør"   c                  ó   — y r&   r   r<   s      r   Ú
completionzBaseLLM.completionR   r@   r"   c                  ó   — y r&   r   r<   s      r   Ú	embeddingzBaseLLM.embeddingU   r@   r"   )Ú__name__Ú
__module__Ú__qualname__r   r)   r*   Ú__annotations__ÚstrÚResponseÚboolÚdictÚlistr   r    r$   r+   r0   r4   r:   r   r?   rB   rD   r   r"   r   r   r      s;  … Ø+/€O�U—\‘\ DÑ(Ó/ðàðð —.‘.ðð (ð	ð
 ðð )ðð ðð ðð �S‰jðð ðð 
Ð5Ñ	6óð&àðð —.‘.ðð 1ð	ð
 ðð )ðð ðð ðð �S‰jðð ðð 
Ð>Ñ	?óò&ò ò)ò1ð°s¸T±zó ð¨Só ð¨Cô r"   r   )Útypingr   r   r   r)   r'   Ú*litellm.litellm_core_utils.litellm_loggingr   r   Ú,litellm.litellm_core_utils.streaming_handlerr   Úlitellm.types.utilsr   r	   r   r   r"   r   ú<module>rR      s)   ðç ,Ñ ,ã ã áÝWÝPßI÷Hò Hr"   