o
    h                     @   sd   d dl mZmZmZmZ d dlmZmZ ddlm	Z	m
Z
mZmZ G dd de	ZG dd deZd	S )
    )AnyDictOptionalUnion)RequestParameters_as_dict   )BaseConversationalTaskInferenceProviderMappingTaskProviderHelperfilter_nonec                       s   e Zd Z fddZ  ZS )ScalewayConversationalTaskc                    s   t  jddd d S )Nscalewayhttps://api.scaleway.ai)providerbase_urlsuper__init__self	__class__ c/var/www/html/ai/venv/lib/python3.10/site-packages/huggingface_hub/inference/_providers/scaleway.pyr   	   s   z#ScalewayConversationalTask.__init__)__name__
__module____qualname__r   __classcell__r   r   r   r   r      s    r   c                	       st   e Zd Z fddZdededefddZded	ed
ede	e fddZ
ddeeef de	e defddZ  ZS )ScalewayFeatureExtractionTaskc                    s   t  jdddd d S )Nr   r   zfeature-extraction)r   r   taskr   r   r   r   r   r      s   z&ScalewayFeatureExtractionTask.__init__mapped_modelapi_keyreturnc                 C   s   dS )Nz/v1/embeddingsr   )r   r!   r"   r   r   r   _prepare_route   s   z,ScalewayFeatureExtractionTask._prepare_routeinputs
parametersprovider_mapping_infoc                 C   s   t |}||jd|S )N)inputmodel)r   provider_id)r   r%   r&   r'   r   r   r   _prepare_payload_as_dict   s   z6ScalewayFeatureExtractionTask._prepare_payload_as_dictNresponserequest_paramsc                 C   s   t |d }dd |D S )Ndatac                 S   s   g | ]}|d  qS )	embeddingr   ).0r/   r   r   r   
<listcomp>   s    z>ScalewayFeatureExtractionTask.get_response.<locals>.<listcomp>)r   )r   r,   r-   
embeddingsr   r   r   get_response   s   z*ScalewayFeatureExtractionTask.get_response)N)r   r   r   r   strr$   r   r   r
   r   r+   r   bytesr   r3   r   r   r   r   r   r      s    
,r   N)typingr   r   r   r   !huggingface_hub.inference._commonr   r   _commonr	   r
   r   r   r   r   r   r   r   r   <module>   s
    