o
    PL
jq                     @   sj   d Z ddlmZ ddlmZ ddlmZ ddlmZ G dd deZ	e	dd	d
ddddddd	Z
ee
 dS )zNous Portal provider profile.    )Anynous_portal_tags)register_provider)ProviderProfilec                   @   sn   e Zd ZdZdddedB deeef fddZddd	d
edB dede	eeef eeef f fddZ
dS )NousProfileuD   Nous Portal — product tags, reasoning with Nous-specific omission.N)
session_idr   returnc                K   s
   dt  iS )Ntagsr   )selfr   context r   I/home/kuhnn/.hermes/hermes-agent/plugins/model-providers/nous/__init__.pybuild_extra_body   s   
zNousProfile.build_extra_bodyF)reasoning_configsupports_reasoningr   r   c                K   sV   i }|r'|dur t |}|ddu r	 |i fS ||d< |i fS ddd|d< |i fS )z<Nous: passes full reasoning_config, but OMITS when disabled.NenabledF	reasoningTmedium)r   effort)dictget)r   r   r   r   
extra_bodyrcr   r   r   build_api_kwargs_extras   s   z#NousProfile.build_api_kwargs_extras)__name__
__module____qualname____doc__strr   r   r   booltupler   r   r   r   r   r   
   s"    

r   nous)znous-portalnousresearch)NOUS_API_KEYzNous Researchu%   Nous Research — Hermes model familyzhttps://nousresearch.com/)zhermes-3-405bzhermes-3-70bz%https://inference.nousresearch.com/v1oauth_device_code)	namealiasesenv_varsdisplay_namedescription
signup_urlfallback_modelsbase_url	auth_typeN)r   typingr   agent.portal_tagsr   	providersr   providers.baser   r   r"   r   r   r   r   <module>   s$    