o
    |!g                     @   s   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	 ddl
mZ ddlmZ ddlmZ zd dlZejd	r;ed dlmZ W n eyO   d dlZY nw G d
d dZG dd dZdS )    N)JSONDecodeError   )ApiError)AsyncClientWrapperSyncClientWrapper)UnprocessableEntityError)HttpValidationError)SupportedLlmModelz1.c                   @   .   e Zd ZdefddZdeje fddZdS )EvalsClientclient_wrapperc                C   
   || _ d S N_client_wrapperselfr    r   d/mnt/skqttb/ctump_chatbot/chatbot/lib/python3.10/site-packages/llama_cloud/resources/evals/client.py__init__      
zEvalsClient.__init__returnc                 C   s   | j jjdtj| j   dd| j  dd}d|j  kr$dk r1n nt	
tjt | S |jdkr@tt	
t| z| }W n tyU   t|j|jd	w t|j|d	)
z
        List supported models.

        ---
        from llama_cloud.client import LlamaCloud

        client = LlamaCloud(
            token="YOUR_TOKEN",
        )
        client.evals.list_supported_models()
        GET/api/v1/evals/models<   headerstimeout   ,    status_codebodyr   httpx_clientrequesturllibparseurljoinget_base_urlget_headersr#   pydanticparse_obj_astypingListr	   jsonr   r   r   r   textr   	_response_response_jsonr   r   r   list_supported_models   s    
z!EvalsClient.list_supported_modelsN)	__name__
__module____qualname__r   r   r/   r0   r	   r6   r   r   r   r   r          r   c                   @   r
   )AsyncEvalsClientr   c                C   r   r   r   r   r   r   r   r   8   r   zAsyncEvalsClient.__init__r   c                    s   | j jjdtj| j   dd| j  ddI dH }d|j  kr(dk r5n nt	
tjt | S |jd	krDtt	
t| z| }W n tyY   t|j|jd
w t|j|d
)z
        List supported models.

        ---
        from llama_cloud.client import AsyncLlamaCloud

        client = AsyncLlamaCloud(
            token="YOUR_TOKEN",
        )
        await client.evals.list_supported_models()
        r   r   r   r   r   Nr   r    r!   r"   r%   r3   r   r   r   r6   ;   s"   
z&AsyncEvalsClient.list_supported_modelsN)	r7   r8   r9   r   r   r/   r0   r	   r6   r   r   r   r   r;   7   r:   r;   )r/   urllib.parser(   json.decoderr   core.api_errorr   core.client_wrapperr   r   !errors.unprocessable_entity_errorr   types.http_validation_errorr   types.supported_llm_modelr	   r-   __version__
startswithImportErrorpydantic.v1v1r   r;   r   r   r   r   <module>   s$   !