
    h
                        d dl mZmZ d dlmZmZ d dlmZ  G d de      Z G d de      Z G d d	e      Z	 G d
 de      Z
 G d de      Z G d de      Z G d de      Z G d de      Z G d de      Z G d de      Zy)    )	BaseModelField)OptionalList)datetimec                       e Zd ZU eed<   dZee   ed<   eed<    edd      Zee	   ed<   dZ
ee	   ed<    ed	d
      Ze	ed<   y)ThreadCreateRequeststore_idN	branch_iduser_id   
max_lengthtitledescriptiongeneral2   defaultr   thread_type)__name__
__module____qualname__int__annotations__r   r   r   r   strr   r        >/var/www/html/hubwallet-dev/src/marketing/apps/hwGpt/schema.pyr	   r	      sN    M#Ix}#L #6E8C=6!%K#%Y2>K>r   r	   c                   ~    e Zd ZU  edd      Zee   ed<   dZee   ed<    edd      Z	ee   ed<   dZ
ee   ed<   y)	ThreadUpdateRequestNr   r   r   r   r   r   is_archived)r   r   r   r   r   r   r   r   r   r   r"   boolr   r   r   r!   r!      sH     #6E8C=6!%K#%!&t!;K#;"&K$&r   r!   c                       e Zd ZU eed<   eed<   dZee   ed<   eed<   dZee   ed<   dZ	ee   ed<   eed<   e
ed	<   e
ed
<   eed<   eed<   dZee   ed<   y)ThreadResponseidr
   Nr   r   r   r   r   	is_activer"   
created_at
updated_atmessage_count)r   r   r   r   r   r   r   r   r   r   r#   r   r*   r   r   r   r%   r%      sf    GM#Ix}#LE8C=!%K#%O#'M8C='r   r%   c                       e Zd ZU eed<   eed<    edd      Zeed<   eed<    edd	
      Zeed<    edd      Z	e
e   ed<    edd      Ze
e   ed<   y)MessageCreateRequest	thread_idr   .   r   rolecontenttextr   r   message_typeN  	image_urld   
model_used)r   r   r   r   r   r   r/   r   r2   r4   r   r6   r   r   r   r,   r,   '   s]    NLcb)D#)Lf<L#<$Tc:Ix}: %ds ;J;r   r,   c                   ~    e Zd ZU dZee   ed<    edd      Zee   ed<    edd      Z	ee   ed<   dZ
ee   ed<   y)	MessageUpdateRequestNr0   r   r   r2   r3   r4   
is_deleted)r   r   r   r0   r   r   r   r   r2   r4   r9   r#   r   r   r   r8   r8   1   sH    !GXc]!"'"<L(3-<$Tc:Ix}:!%J%r   r8   c                       e Zd ZU eed<   eed<   eed<   eed<   eed<   eed<   dZee   ed<   dZee   ed	<   dZ	ee   ed
<   e
ed<   e
ed<   eed<   y)MessageResponser&   r-   r   r/   r0   r2   Nr4   tokens_usedr6   r(   r)   r9   )r   r   r   r   r   r   r4   r   r<   r6   r   r#   r   r   r   r;   r;   8   s]    GNL
IL#Ix}#!%K#% $J$r   r;   c                   2    e Zd ZU eed<   ee   ed<   eed<   y)ThreadWithMessagesResponsethreadmessagestotal_messagesN)r   r   r   r%   r   r   r;   r   r   r   r   r>   r>   H   s    ?##r   r>   c                   <    e Zd ZU ee   ed<   eed<   eed<   eed<   y)ThreadListResponsethreadstotal_threadspage	page_sizeN)r   r   r   r   r%   r   r   r   r   r   rC   rC   O   s    .!!
INr   rC   c                   d    e Zd ZU eed<   eed<   eed<   dZee   ed<    edd      Z	ee   ed<   y)	ChatCompletionRequestr-   r   messageNsystem_promptzAzure OpenAI model to use)r   model)
r   r   r   r   r   r   rK   r   r   rL   r   r   r   rI   rI   W   s5    NLL#'M8C=' 3NOE8C=Or   rI   c                   h    e Zd ZU eed<   eed<   eed<   eed<   eed<   dZe	e   ed<   dZ
e	e   ed<   y)	ChatCompletionResponsesuccessrJ   r-   user_messageassistant_messageNr<   r6   )r   r   r   r#   r   r   r   r;   r<   r   r6   r   r   r   rN   rN   `   s9    MLN!!&&!%K#% $J$r   rN   N)pydanticr   r   typingr   r   r   r	   r!   r%   r,   r8   r;   r>   rC   rI   rN   r   r   r   <module>rT      s    % ! ?) ?') '(Y ( <9 <&9 &i    PI P%Y %r   