
    BThv                         d dl mZ d dlmZ d dlmZ d dlmZ d dl	m
Z
mZ e G d de             Ze G d d	e             Ze G d
 de             Ze G d de             Zy)    )	dataclass)List)ChatCompletionModel)BaseDataclass)MessageUsagec                   ,    e Zd ZU eed<   eed<   eed<   y)ChatCompletionChoiceindexmessagefinish_reasonN)__name__
__module____qualname__int__annotations__r   str     /var/www/catia.catastroantioquia-mas.com/valormas/lib/python3.12/site-packages/pinecone_plugins/assistant/models/chat_completion.pyr
   r
   
   s    Jr   r
   c                   R    e Zd ZU eed<   ee   ed<   eed<   eed<   ede	fd       Z
y)ChatCompletionResponseidchoicesmodelusagechat_completion_modelc                 0    | |j                   |j                  D cg c]A  }t        |j                  t	        j
                  |j                        |j                        C c}|j                  t        j
                  |j                              S c c}w )N)r   r   r   )r   r   r   r   )r   r   r
   r   r   from_openapir   r   r   r   r   )clsr   choices      r   r   z#ChatCompletionResponse.from_openapi   s    $'' $9#@#@B   *292F2Fv~~2V8>8L8LN B (--$$%:%@%@A
 	
Bs   AB
N)r   r   r   r   r   r   r
   r   classmethodOpenAPIChatCompletionModelr   r   r   r   r   r      s7    G&''JL	
1K 	
 	
r   r   c                   B    e Zd ZU eed<   eed<   eed<   edefd       Z	y)StreamingChatCompletionChoicer   deltar   dc                      | |j                  d      t        j                  |j                  d            |j                  d            S )Nr   r&   r   )r   r&   r   )getr   	from_dict)r    r'   s     r   r*   z'StreamingChatCompletionChoice.from_dict+   s<    %%.##AEE'N3%%0
 	
r   N)
r   r   r   r   r   r   r   r"   dictr*   r   r   r   r%   r%   %   s+    JN
$ 
 
r   r%   c                   H    e Zd ZU eed<   ee   ed<   eed<   edefd       Z	y)StreamingChatCompletionChunkr   r   r   r'   c           	           | |j                  d      |j                  dg       D cg c]  }t        j                  |       c}|j                  d            S c c}w )Nr   r   r   )r   r   r   )r)   r%   r*   )r    r'   choice_datas      r   r*   z&StreamingChatCompletionChunk.from_dict:   sQ    uuT{]^]b]bclnp]qrk2<<[Ir%%.
 	
rs   A
N)
r   r   r   r   r   r   r%   r"   r+   r*   r   r   r   r-   r-   4   s1    G/00J
$ 
 
r   r-   N)dataclassesr   typingr   Gpinecone_plugins.assistant.data.core.client.model.chat_completion_modelr   r#   0pinecone_plugins.assistant.models.core.dataclassr   (pinecone_plugins.assistant.models.sharedr   r   r
   r   r%   r-   r   r   r   <module>r5      s    ! 6 J C =   
] 
 
& 
M 
 
 
= 
 
r   