o
    *j                     @   s   d dl mZ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
deddigd	fd
edefddZe
dd
efddZdS )    )	APIRouterBody)	BaseModel)Request)(pipeline_output_to_service_base64_output)call_pipeline_with_jsonz/callusagezcopy body from describe)Zexamplesrequestbodyc                    sB   | j jj}| j jj}|  I dH }t|||}t|d |}|S )a%  Inference general interface.

    For image, video, audio etc binary data, need encoded with base64.

    Args:
        request (Request): The request object.
        request_info (ModelScopeRequest): The post body.

    Returns:
        ApiResponse: For binary field, encoded with base64
    NZ	task_name)appstateZpipelinepipeline_infojsonr   r   )r	   r
   Zpipeline_servicer   Zrequest_jsonresultoutput r   k/var/www/html/Deteccion_Ine/venv/lib/python3.10/site-packages/modelscope/server/api/routers/model_router.py	inference   s   

r   z	/describec                    s&   i }| j jj|d< | j jj|d< |S )NZschemasample)r   r   r   Zpipeline_sample)r	   infor   r   r   describe(   s
   r   N)Zfastapir   r   Zpydanticr   Zstarlette.requestsr   Zmodelscope.utils.input_outputr   r   Zrouterpostr   getr   r   r   r   r   <module>   s"    