o
    Ղi 	                     @   sh   d Z ddlmZmZmZmZmZmZmZm	Z	 ddl
mZ ddlmZ G dd deZG dd deZd	S )
z
Agent and ChatMessage models
    )ColumnStringTextBooleanIntegerFloat
ForeignKeyJSON)relationship)	BaseModelc                   @   s  e Zd ZdZdZeedddZeeddZ	eeddd	Z
eedd
d	Zeedd	ZeeeddddZeeedddZeeeddddZeedd	Zeedd	Zeedd	ZeeddZeeddZedZeeddZeeddZeeddZeeddZeedddZ dS )Agentz:
    Agent model
    Represents an AI agent/assistant
    agents   FnullableT2   chat)defaultonlinezpublic.tenants.idr   indexpublic.users.idzpublic.models.id
   gffffff?i   Model)r   r   N)!__name__
__module____qualname____doc____tablename__r   r   namer   descriptiontypestatusr   runningr   r   	tenant_id
created_bymodel_idmax_iterationsr   temperature
max_tokenssystem_promptwelcome_messager
   modelr	   knowledge_basesactionsskillsquick_actionsuse_reranker r2   r2   8/lsinfo/ai/hellotax_ai/base_platform/app/models/agent.pyr   	   s,    r   c                   @   sr   e Zd ZdZdZeeedddZeeedddZ	ee
dddd	Zee
d
ddZeeddZeeddZdS )ChatMessagezU
    Chat Message model
    Represents a message in a conversation with an agent
    chat_messagesz	agents.idFr   r   T$   r      N)r   r   r   r   r   r   r   r   agent_iduser_idr   conversation_idroler   contentr	   sourcesr2   r2   r2   r3   r4   0   s    r4   N)r   
sqlalchemyr   r   r   r   r   r   r   r	   sqlalchemy.ormr
   app.models.baser   r   r4   r2   r2   r2   r3   <module>   s    ('