Ë
    uPêjo  ã                  óð   — d dl mZ d dlZd dlmZmZ d dlmZmZm	Z	 d dl
Z
d dlmZ d dlmZ er1d dlmZ d dlmZ d d	lmZ d d
lmZ d dlmZ ddlmZ eZeZeZeZeZeZneZeZeZeZeZeZ G d„ de«      Zy)é    )ÚannotationsN)ÚABCÚabstractmethod)ÚTYPE_CHECKINGÚAnyÚFinal)Ú$ContainerCreateOptionalRequestParams)ÚGenericLiteLLMParams)ÚLogging)ÚContainerFileListResponse)ÚContainerListResponse)ÚContainerObject)ÚDeleteContainerResulté   ©ÚBaseLLMExceptionc                  óp  — e Zd Zd„ Zed„ «       Zedd„«       Ze	 	 	 	 	 	 dd„«       Ze	 d	 	 	 	 	 dd„«       Z	e	 	 	 	 	 	 dd„«       Z
e	 	 	 	 	 	 	 	 	 	 dd„«       Ze	 	 	 	 	 	 dd	„«       Ze	 	 	 	 d	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dd
„«       Ze	 	 	 	 	 	 dd„«       Ze	 	 	 	 	 	 	 	 	 	 dd„«       Ze	 	 	 	 	 	 dd„«       Ze	 	 	 	 	 	 	 	 	 	 dd„«       Ze	 	 	 	 	 	 d d„«       Ze	 	 	 	 d	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 d!d„«       Ze	 	 	 	 	 	 d"d„«       Ze	 	 	 	 	 	 	 	 	 	 	 	 d#d„«       Ze	 	 	 	 	 	 d$d„«       Z	 	 	 	 	 	 	 	 d%d„Zy)&ÚBaseContainerConfigc                 ó   — y ©N© ©Úselfs    út/home/oem/CyberBrain26-unified/.venv/lib/python3.12/site-packages/litellm/llms/base_llm/containers/transformation.pyÚ__init__zBaseContainerConfig.__init__+   s   € Øó    c                ó  — | j                   j                  «       D ��ci c]`  \  }}|j                  d«      sJ|j                  d«      s9t        |t        j
                  t        j                  t        t        f«      s|�||“Œb c}}S c c}}w )NÚ__Ú_abc)	Ú__dict__ÚitemsÚ
startswithÚ
isinstanceÚtypesÚFunctionTypeÚBuiltinFunctionTypeÚclassmethodÚstaticmethod)ÚclsÚkÚvs      r   Ú
get_configzBaseContainerConfig.get_config.   s€   € ð Ÿ™×*Ñ*Ó,÷
á��1Ø—<‘< Ô%Ø—L‘L Ô(ÜØä×&Ñ&Ü×-Ñ-ÜÜ ð	ôð �ð ˆq‰Dó
ð 	
ùó 
s   žA%Bc                 ó   — y r   r   r   s    r   Úget_supported_openai_paramsz/BaseContainerConfig.get_supported_openai_paramsA   s   € àr   c                 ó   — y r   r   )r   Ú container_create_optional_paramsÚdrop_paramss      r   Úmap_openai_paramsz%BaseContainerConfig.map_openai_paramsE   s   € ð 	r   Nc                ó   — i S r   r   )r   ÚheadersÚapi_keys      r   Úvalidate_environmentz(BaseContainerConfig.validate_environmentM   s	   € ð ˆ	r   c                ó$   — |€d}t        |«      ‚|S )zmGet the complete url for the request.

        OPTIONAL - Some providers need `model` in `api_base`.
        zapi_base is required)Ú
ValueError)r   Úapi_baseÚlitellm_paramsÚmsgs       r   Úget_complete_urlz$BaseContainerConfig.get_complete_urlU   s   € ð ÐØ/ˆCÜ˜S“/Ð!Øˆr   c                 ó   — y)z{Transform the container creation request.

        Returns:
            dict: Request data for container creation.
        Nr   )r   ÚnameÚ(container_create_optional_request_paramsr:   r4   s        r   Ú"transform_container_create_requestz6BaseContainerConfig.transform_container_create_requestd   ó   € ð 	r   c                 ó   — y)z*Transform the container creation response.Nr   ©r   Úraw_responseÚlogging_objs      r   Ú#transform_container_create_responsez7BaseContainerConfig.transform_container_create_responses   ó   € ð 	r   c                 ó   — y)z¢Transform the container list request into a URL and params.

        Returns:
            tuple[str, dict]: (url, params) for the container list request.
        Nr   )r   r9   r:   r4   ÚafterÚlimitÚorderÚextra_querys           r   Ú transform_container_list_requestz4BaseContainerConfig.transform_container_list_request|   s   € ð  	r   c                 ó   — y)z&Transform the container list response.Nr   rC   s      r   Ú!transform_container_list_responsez5BaseContainerConfig.transform_container_list_responseŽ   rG   r   c                 ó   — y)z¯Transform the container retrieve request into a URL and data/params.

        Returns:
            tuple[str, dict]: (url, params) for the container retrieve request.
        Nr   ©r   Úcontainer_idr9   r:   r4   s        r   Ú$transform_container_retrieve_requestz8BaseContainerConfig.transform_container_retrieve_request—   rA   r   c                 ó   — y)z*Transform the container retrieve response.Nr   rC   s      r   Ú%transform_container_retrieve_responsez9BaseContainerConfig.transform_container_retrieve_response¦   rG   r   c                 ó   — y)z¢Transform the container delete request into a URL and data.

        Returns:
            tuple[str, dict]: (url, data) for the container delete request.
        Nr   rQ   s        r   Ú"transform_container_delete_requestz6BaseContainerConfig.transform_container_delete_request¯   rA   r   c                 ó   — y)z(Transform the container delete response.Nr   rC   s      r   Ú#transform_container_delete_responsez7BaseContainerConfig.transform_container_delete_response¾   rG   r   c	                 ó   — y)z¬Transform the container file list request into a URL and params.

        Returns:
            tuple[str, dict]: (url, params) for the container file list request.
        Nr   )	r   rR   r9   r:   r4   rI   rJ   rK   rL   s	            r   Ú%transform_container_file_list_requestz9BaseContainerConfig.transform_container_file_list_requestÇ   s   € ð" 	r   c                 ó   — y)z+Transform the container file list response.Nr   rC   s      r   Ú&transform_container_file_list_responsez:BaseContainerConfig.transform_container_file_list_responseÚ   rG   r   c                 ó   — y)z²Transform the container file content request into a URL and params.

        Returns:
            tuple[str, dict]: (url, params) for the container file content request.
        Nr   )r   rR   Úfile_idr9   r:   r4   s         r   Ú(transform_container_file_content_requestz<BaseContainerConfig.transform_container_file_content_requestã   s   € ð 	r   c                 ó   — y)zrTransform the container file content response.

        Returns:
            bytes: The raw file content.
        Nr   rC   s      r   Ú)transform_container_file_content_responsez=BaseContainerConfig.transform_container_file_content_responseó   s   € ð 	r   c                ó$   — ddl m}  ||||¬«      ‚)Nr   r   )Ústatus_codeÚmessager4   )Úchat.transformationr   )r   Úerror_messagerd   r4   r   s        r   Úget_error_classz#BaseContainerConfig.get_error_class   s   € õ 	;áØ#Ø!Øô
ð 	
r   )ÚreturnÚlist)r0   r	   r1   Úboolri   Údictr   )r4   rl   r5   ú
str | Noneri   rl   )r9   rm   r:   rl   ri   Ústr)
r>   rn   r?   rl   r:   r
   r4   rl   ri   rl   )rD   úhttpx.ResponserE   ÚLiteLLMLoggingObjri   r   )NNNN)r9   rn   r:   r
   r4   rl   rI   rm   rJ   ú
int | NonerK   rm   rL   údict[str, Any] | Noneri   útuple[str, dict])rD   ro   rE   rp   ri   r   )
rR   rn   r9   rn   r:   r
   r4   rl   ri   rs   )rD   ro   rE   rp   ri   r   )rR   rn   r9   rn   r:   r
   r4   rl   rI   rm   rJ   rq   rK   rm   rL   rr   ri   rs   )rD   ro   rE   rp   ri   r   )rR   rn   r_   rn   r9   rn   r:   r
   r4   rl   ri   rs   )rD   ro   rE   rp   ri   Úbytes)rg   rn   rd   Úintr4   zdict | httpx.Headersri   r   )Ú__name__Ú
__module__Ú__qualname__r   r'   r,   r   r.   r2   r6   r<   r@   rF   rM   rO   rS   rU   rW   rY   r[   r]   r`   rb   rh   r   r   r   r   r   *   s  „ òð ñ
ó ð
ð$ òó ðð ðà*Nðð ðð 
ò	ó ðð ð #ðàðð ðð 
ò	ó ðð ðàðð ðð 
ò	ó ðð ðàðð 37ðð -ð	ð
 ðð 
òó ðð ðà$ðð 'ðð 
ò	ó ðð ð !Ø Ø Ø-1ðàðð -ðð ð	ð
 ðð ðð ðð +ðð 
òó ðð" ðà$ðð 'ðð 
ò	ó ðð ðàðð ðð -ð	ð
 ðð 
òó ðð ðà$ðð 'ðð 
ò	ó ðð ðàðð ðð -ð	ð
 ðð 
òó ðð ðà$ðð 'ðð 
ò	ó ðð ð !Ø Ø Ø-1ðàðð ðð -ð	ð
 ðð ðð ðð ðð +ðð 
òó ðð$ ðà$ðð 'ðð 
#ò	ó ðð ðàðð ðð ð	ð
 -ðð ðð 
òó ðð ð
à$ð
ð 'ð
ð 
ò	
ó ð
ð
àð
ð ð
ð &ð	
ð
 
ô
r   r   )Ú
__future__r   r$   Úabcr   r   Útypingr   r   r   ÚhttpxÚlitellm.types.containers.mainr	   Úlitellm.types.routerr
   Ú*litellm.litellm_core_utils.litellm_loggingr   Ú_LiteLLMLoggingObjr   Ú_ContainerFileListResponser   Ú_ContainerListResponser   Ú_ContainerObjectr   Ú_DeleteContainerResultrf   r   Ú_BaseLLMExceptionrp   r   r   r   r   ú<module>r†      s’   ðÝ "ã ß #ß ,Ñ ,ã å NÝ 5áÝXõõõ Rõõ Là*ÐØ(ÐØ&€OØ2ÐØ2ÐØ :ÑàÐØÐØ€OØÐØÐØ #Ðôb
˜#õ b
r   