o
    Õ‚ýi/  ã                   @   sp   d Z ddlmZ ddlmZmZ ddlmZ G dd„ deƒZG dd„ deƒZG d	d
„ d
eƒZ	G dd„ deƒZ
dS )z
Agent schemas
é    )Ú	BaseModel)ÚOptionalÚList)Údatetimec                   @   sò   e Zd ZU dZeed< dZee ed< dZeed< dZ	eed< d	Z
eed
< dZee ed< dZeed< dZeed< dZeed< dZee ed< dZee ed< g Zeee  ed< g Zeee  ed< g Zeee  ed< dZeee  ed< dS )Ú	AgentBasezBase agent schemaÚnameNÚdescriptionÚchatÚtypeÚonlineÚstatusFÚrunningÚmodel_idé
   Úmax_iterationsgffffffæ?Útemperaturei   Ú
max_tokensÚsystem_promptÚwelcome_messageÚknowledge_basesÚactionsÚskillsÚquick_actions)Ú__name__Ú
__module__Ú__qualname__Ú__doc__ÚstrÚ__annotations__r   r   r
   r   r   Úboolr   Úintr   r   Úfloatr   r   r   r   r   r   r   r   Údict© r#   r#   ú9/lsinfo/ai/hellotax_ai/base_platform/app/schemas/agent.pyr   	   s"   
 r   c                   @   ó   e Zd ZdZdS )ÚAgentCreatezSchema for creating an agentN)r   r   r   r   r#   r#   r#   r$   r&      s    r&   c                   @   s  e Zd ZU dZdZee ed< dZee ed< dZ	ee ed< dZ
ee ed< dZee ed< dZee ed< dZee ed	< dZee ed
< dZee ed< dZee ed< dZee ed< dZeee  ed< dZeee  ed< dZeee  ed< dZeee  ed< dS )ÚAgentUpdatezSchema for updating an agentNr   r   r
   r   r   r   r   r   r   r   r   r   r   r   r   )r   r   r   r   r   r   r   r   r   r
   r   r   r   r   r    r   r   r!   r   r   r   r   r   r   r   r   r"   r#   r#   r#   r$   r'   !   s"   
 r'   c                   @   s8   e Zd ZU dZeed< eed< eed< G dd„ dƒZdS )ÚAgentResponsezSchema for agent responseÚidÚ
created_atÚ
updated_atc                   @   r%   )zAgentResponse.ConfigTN)r   r   r   Úfrom_attributesr#   r#   r#   r$   ÚConfig:   s    r-   N)r   r   r   r   r    r   r   r-   r#   r#   r#   r$   r(   4   s   
 r(   N)r   Úpydanticr   Útypingr   r   r   r   r&   r'   r(   r#   r#   r#   r$   Ú<module>   s    