Ë
    ümxi  ã                  óâ   — d Z ddlmZ ddlZddlZddlmZ  ej                  d¬«       G d„ d«      «       Zej                   G d	„ d
«      «       Z	 G d„ dej                  «      Z G d„ de«      Zy)zAbstract interface for models.é    )ÚannotationsN)ÚSequenceT)Úfrozenc                  ó<   — e Zd ZU dZdZded<   dZded<   dZded<   y)	ÚModelArgumentsa  Common arguments for models.

    Attributes:
      model: The model string to use. If None a default model will be selected.
      temperature: The temperature. Must be greater-than-or-equal-to zero.
      candidate_count: Number of candidates to return.
    Nz
str | NoneÚmodelzfloat | NoneÚtemperaturez
int | NoneÚcandidate_count)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   Ú__annotations__r	   r
   © ó    ú]/home/htdocs/ttos/venv/lib/python3.12/site-packages/google/generativeai/notebook/lib/model.pyr   r      s'   … ñð €Eˆ:ÓØ $€K�Ó$Ø"&€O�ZÔ&r   r   c                  ó&   — e Zd ZU dZded<   ded<   y)ÚModelResultsz0Results from calling AbstractModel.call_model().ÚstrÚmodel_inputzSequence[str]Útext_resultsN)r   r   r   r   r   r   r   r   r   r   &   s   … á:àÓØÔr   r   c                  ó@   — e Zd Zej                  	 d	 	 	 	 	 dd„«       Zy)ÚAbstractModelNc                 ó   — y)zExecutes the model.Nr   )Úselfr   Ú
model_argss      r   Ú
call_modelzAbstractModel.call_model/   s   � r   ©N©r   r   r   zModelArguments | NoneÚreturnr   )r   r   r   ÚabcÚabstractmethodr   r   r   r   r   r   .   s5   „ Ø×ÑàDHð"Øð"Ø,Að"à	ò"ó ñ"r   r   c                  ó&   — e Zd ZdZ	 d	 	 	 	 	 dd„Zy)Ú	EchoModelzTModel that returns the original input.

    This is primarily used for testing.
    Nc                óL   — |r|j                   nd }|€d}t        ||g|z  ¬«      S )Né   )r   r   )r
   r   )r   r   r   r
   s       r   r   zEchoModel.call_model<   s9   € ñ 9C˜*×4Ò4ÈˆØÐ"ØˆOÜØ#Ø%˜¨Ñ8ô
ð 	
r   r   r   )r   r   r   r   r   r   r   r   r$   r$   6   s+   „ ñð EIð	
Øð	
Ø,Að	
à	ô	
r   r$   )r   Ú
__future__r   r!   ÚdataclassesÚtypingr   Ú	dataclassr   r   ÚABCr   r$   r   r   r   ú<module>r,      sw   ðñ %Ý "ã 
Û Ý ð €×Ñ˜dÔ#÷'ð 'ó $ð'ð ×Ñ÷ ð  ó ð ô"�C—G‘Gô "ô
�õ 
r   