o
    i                     @   s|   d Z ddlmZ ddlmZ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mZmZ G d
d deZdS )zACode generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.   )BaseSDK    )modelsutils)HookContext)OptionalNullableUNSET)get_security_from_env)unmarshal_json_response)AnyMappingOptionalc                   @   s  e Zd ZdZedddddeej dee	 dee
 deee	e	f  dejf
d	d
Zedddddeej dee	 dee
 deee	e	f  dejf
ddZeddddde	deej dee	 dee
 deee	e	f  dejfddZeddddde	deej dee	 dee
 deee	e	f  dejfddZeddddde	deej dee	 dee
 deee	e	f  dejfddZeddddde	deej dee	 dee
 deee	e	f  dejfddZeeeddddde	dee	 dee	 deej dee	 dee
 deee	e	f  dejfddZeeeddddde	dee	 dee	 deej dee	 dee
 deee	e	f  dejfddZeddddde	deej dee	 dee
 deee	e	f  dejfddZeddddde	deej dee	 dee
 deee	e	f  dejfdd Zeddddde	deej dee	 dee
 deee	e	f  dejfd!d"Zeddddde	deej dee	 dee
 deee	e	f  dejfd#d$ZdS )%ModelszModel Management APIN)retries
server_url
timeout_mshttp_headersr   r   r   r   returnc                C   sd  d}d}|du r| j j}|dur|}n| ||}| jdd||dddddd|| j j|d}|tkr;| j jtur;| j j}d}t|tj	rI|g d	f}| j
t| j |pQd
dg t| j jtjd|g d|d}	d}
t|	ddrsttj|	S t|	ddrttj|	}
t|
|	t|	ddrt|	}td|	|t|	ddrt|	}td|	|td|	a  List Models

        List all models available to the user.

        :param retries: Override the default retry configuration for this method
        :param server_url: Override the default server URL for this method
        :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
        :param http_headers: Additional headers to set or replace on requests.
        NGETz
/v1/modelsFT
user-agentapplication/jsonmethodpathbase_urlurl_variablesrequestrequest_body_requiredrequest_has_path_paramsrequest_has_query_paramsuser_agent_headeraccept_header_valuer   securityr   429500502503504 list_models_v1_models_getconfigr   operation_idoauth2_scopessecurity_source4224XX5XXhook_ctxr   error_status_codesretry_config200r2   r3   *API error occurredr4   Unexpected response received)sdk_configurationr   _get_url_build_requestr#   r   r8   
isinstancer   RetryConfig
do_requestr   r	   r   Securitymatch_responser
   	ModelListHTTPValidationErrorDataHTTPValidationErrorstream_to_textSDKErrorselfr   r   r   r   r   r   reqr8   http_resresponse_datahttp_res_text rP   W/var/www/html/karishye-ai-python/venv/lib/python3.10/site-packages/mistralai/models_.pylist   sr   
	

zModels.listc                   sx  d}d}|du r| j j}|dur|}n| ||}| jdd||dddddd|| j j|d}|tkr<| j jtur<| j j}d}t|tj	rJ|g d	f}| j
t| j |pRd
dg t| j jtjd|g d|dI dH }	d}
t|	ddrwttj|	S t|	ddrttj|	}
t|
|	t|	ddrt|	I dH }td|	|t|	ddrt|	I dH }td|	|td|	r   )r=   r   r>   _build_request_asyncr#   r   r8   r@   r   rA   do_request_asyncr   r	   r   rC   rD   r
   rE   rF   rG   stream_to_text_asyncrI   rJ   rP   rP   rQ   
list_asynca   st   
	zModels.list_asyncmodel_idc                C   p  d}d}|du r| j j}|dur|}n| ||}tj|d}| jdd|||ddddd|| j j|d	}	|tkrA| j jturA| j j}d}
t	|t
jrO|g d
f}
| jt| j |pWddg t| j jtjd|	g d|
d}d}t
|ddryttj|S t
|ddrttj|}t||t
|ddrt
|}td||t
|ddrt
|}td||td|a  Retrieve Model

        Retrieve information about a model.

        :param model_id: The ID of the model to retrieve.
        :param retries: Override the default retry configuration for this method
        :param server_url: Override the default server URL for this method
        :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
        :param http_headers: Additional headers to set or replace on requests.
        NrW   r   /v1/models/{model_id}FTr   r   r   r$   r*   'retrieve_model_v1_models__model_id__getr,   r1   r5   r9   r2   r3   r:   r;   r4   r<   )r=   r   r>   r   &RetrieveModelV1ModelsModelIDGetRequestr?   r#   r   r8   r@   r   rA   rB   r   r	   rC   rD   r
   FRetrieveModelV1ModelsModelIDGetResponseRetrieveModelV1ModelsModelIDGetrF   rG   rH   rI   rK   rW   r   r   r   r   r   r   r   rL   r8   rM   rN   rO   rP   rP   rQ   retrieve   s~   
	

zModels.retrievec                     d}d}|du r| j j}|dur|}n| ||}tj|d}| jdd|||ddddd|| j j|d	}	|tkrB| j jturB| j j}d}
t	|t
jrP|g d
f}
| jt| j |pXddg t| j jtjd|	g d|
dI dH }d}t
|ddr}ttj|S t
|ddrttj|}t||t
|ddrt
|I dH }td||t
|ddrt
|I dH }td||td|rY   )r=   r   r>   r   r]   rS   r#   r   r8   r@   r   rA   rT   r   r	   rC   rD   r
   r^   rF   rG   rU   rI   r_   rP   rP   rQ   retrieve_async  s   
	zModels.retrieve_asyncc                C   rX   a  Delete Model

        Delete a fine-tuned model.

        :param model_id: The ID of the model to delete.
        :param retries: Override the default retry configuration for this method
        :param server_url: Override the default server URL for this method
        :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
        :param http_headers: Additional headers to set or replace on requests.
        NrZ   DELETEr[   FTr   r   r   r$   r*   (delete_model_v1_models__model_id__deleter,   r1   r5   r9   r2   r3   r:   r;   r4   r<   )r=   r   r>   r   'DeleteModelV1ModelsModelIDDeleteRequestr?   r#   r   r8   r@   r   rA   rB   r   r	   rC   rD   r
   DeleteModelOutrF   rG   rH   rI   r_   rP   rP   rQ   deletek  sx   
	

zModels.deletec                   ra   rc   )r=   r   r>   r   rf   rS   r#   r   r8   r@   r   rA   rT   r   r	   rC   rD   r
   rg   rF   rG   rU   rI   r_   rP   rP   rQ   delete_async  sz   
	zModels.delete_async)namedescriptionr   r   r   r   rj   rk   c                   s\  d}d}	|du r| j j}|dur|}n| ||	}tj|tj||dd | jdd||	 ddddd|| j j fd	d
|d}
|tkrL| j j	turL| j j	}d}t
|tjrZ|g df}| jt| j |pbddg t| j jtjd|
ddg|d}t|ddrttj|S t|ddrt|}td||t|ddrt|}td||td|)  Update Fine Tuned Model

        Update a model name or description.

        :param model_id: The ID of the model to update.
        :param name:
        :param description:
        :param retries: Override the default retry configuration for this method
        :param server_url: Override the default server URL for this method
        :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
        :param http_headers: Additional headers to set or replace on requests.
        Nrj   rk   rW   update_ft_model_inPATCH!/v1/fine_tuning/models/{model_id}Tr   r   c                         t  jdddtjS NFjsonr   serialize_request_bodyro   r   UpdateFTModelInrP   r   rP   rQ   <lambda>S      zModels.update.<locals>.<lambda>r   r   r   r   r   r   r   r    r!   r"   r   r#   get_serialized_bodyr   r$   r*   3jobs_api_routes_fine_tuning_update_fine_tuned_modelr,   r3   r4   r5   r9   r:   r;   r<   )r=   r   r>   r   2JobsAPIRoutesFineTuningUpdateFineTunedModelRequestrw   r?   r#   r   r8   r@   r   rA   rB   r   r	   rC   rD   r
   3JobsAPIRoutesFineTuningUpdateFineTunedModelResponserH   rI   rK   rW   rj   rk   r   r   r   r   r   r   rL   r8   rM   rO   rP   rx   rQ   update  sz   

	

zModels.updatec                   sp  d}d}	|du r| j j}|dur|}n| ||	}tj|tj||dd | jdd||	 ddddd|| j j fd	d
|d}
|tkrM| j j	turM| j j	}d}t
|tjr[|g df}| jt| j |pcddg t| j jtjd|
ddg|dI dH }t|ddrttj|S t|ddrt|I dH }td||t|ddrt|I dH }td||td|)rl   Nrm   rn   rp   rq   Tr   r   c                      rr   rs   ru   rP   rx   rP   rQ   ry     rz   z%Models.update_async.<locals>.<lambda>r{   r$   r*   r}   r,   r3   r4   r5   r9   r:   r;   r<   )r=   r   r>   r   r~   rw   rS   r#   r   r8   r@   r   rA   rT   r   r	   rC   rD   r
   r   rU   rI   r   rP   rx   rQ   update_async}  s|   

	zModels.update_asyncc                C   F  d}d}|du r| j j}|dur|}n| ||}tj|d}| jdd|||ddddd|| j j|d	}	|tkrA| j jturA| j j}d}
t	|t
jrO|g d
f}
| jt| j |pWddg t| j jtjd|	ddg|
d}t
|ddrwttj|S t
|ddrt
|}td||t
|ddrt
|}td||td|a  Archive Fine Tuned Model

        Archive a fine-tuned model.

        :param model_id: The ID of the model to archive.
        :param retries: Override the default retry configuration for this method
        :param server_url: Override the default server URL for this method
        :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
        :param http_headers: Additional headers to set or replace on requests.
        NrZ   POST)/v1/fine_tuning/models/{model_id}/archiveFTr   r   r   r$   r*   4jobs_api_routes_fine_tuning_archive_fine_tuned_modelr,   r3   r4   r5   r9   r:   r;   r<   )r=   r   r>   r   3JobsAPIRoutesFineTuningArchiveFineTunedModelRequestr?   r#   r   r8   r@   r   rA   rB   r   r	   rC   rD   r
   ArchiveFTModelOutrH   rI   rK   rW   r   r   r   r   r   r   r   rL   r8   rM   rO   rP   rP   rQ   archive  l   
	

zModels.archivec                   Z  d}d}|du r| j j}|dur|}n| ||}tj|d}| jdd|||ddddd|| j j|d	}	|tkrB| j jturB| j j}d}
t	|t
jrP|g d
f}
| jt| j |pXddg t| j jtjd|	ddg|
dI dH }t
|ddr{ttj|S t
|ddrt
|I dH }td||t
|ddrt
|I dH }td||td|r   )r=   r   r>   r   r   rS   r#   r   r8   r@   r   rA   rT   r   r	   rC   rD   r
   r   rU   rI   r   rP   rP   rQ   archive_async0  n   
	zModels.archive_asyncc                C   r   a  Unarchive Fine Tuned Model

        Un-archive a fine-tuned model.

        :param model_id: The ID of the model to unarchive.
        :param retries: Override the default retry configuration for this method
        :param server_url: Override the default server URL for this method
        :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
        :param http_headers: Additional headers to set or replace on requests.
        NrZ   rd   r   FTr   r   r   r$   r*   6jobs_api_routes_fine_tuning_unarchive_fine_tuned_modelr,   r3   r4   r5   r9   r:   r;   r<   )r=   r   r>   r   5JobsAPIRoutesFineTuningUnarchiveFineTunedModelRequestr?   r#   r   r8   r@   r   rA   rB   r   r	   rC   rD   r
   UnarchiveFTModelOutrH   rI   r   rP   rP   rQ   	unarchive  r   zModels.unarchivec                   r   r   )r=   r   r>   r   r   rS   r#   r   r8   r@   r   rA   rT   r   r	   rC   rD   r
   r   rU   rI   r   rP   rP   rQ   unarchive_async  r   zModels.unarchive_async)__name__
__module____qualname____doc__r   r   r   rA   r   strintr   r   rE   rR   rV   r^   r`   rb   rg   rh   ri   r   r   r   r   r   r   r   r   r   rP   rP   rP   rQ   r      s   
U
V
`
`
]
]	

d	

d
W
W
Wr   N)r   basesdkr   	mistralair   r   mistralai._hooksr   mistralai.typesr   r   mistralai.utilsr	   'mistralai.utils.unmarshal_json_responser
   typingr   r   r   r   rP   rP   rP   rQ   <module>   s    