+
    i                        R t ^ RIHt ^ RIt^ RIHt ^ RIHt ^ RIH	t
  ! R R]P                  4      t ! R R	4      tR# )
z=Maintains set of LLM models that can be instantiated by name.)annotationsN)Callable)
text_model)modelc                      ] tR t^tRtRtRtR# )	ModelNameechotext N)__name__
__module____qualname____firstlineno__
ECHO_MODEL
TEXT_MODEL__static_attributes__r
       ~/Users/igloo/.openclaw/workspace/scratch/fb_ad_env/lib/python3.14/site-packages/google/generativeai/notebook/model_registry.pyr   r      s    JJr   r   c                  D    ] tR t^tRt]P                  tR tR R lt	Rt
R# )ModelRegistryz-Registry that instantiates and caches models.c                	    / V n         \        P                  \        P                  \        P
                  \        P                  /V n        R # )N)	_model_cacher   r   	model_lib	EchoModelr   r   	TextModel_model_constructors)selfs   &r   __init__ModelRegistry.__init__#   s7    FH  )"5"5  *"6"6\
 r   c                    V ^8  d   QhRRRR/# )   
model_namer   returnzmodel_lib.AbstractModelr
   )formats   "r   __annotate__ModelRegistry.__annotate__*   s     - -I -2I -r   c                    WP                   9  d&   V P                  V,          ! 4       V P                   V&   V P                   V,          # )zGiven `model_name`, return the corresponding Model instance.

Model instances are cached and reused for the same `model_name`.

Args:
  model_name: The name of the model.

Returns:
  The corresponding model instance for `model_name`.
r   r   )r   r!   s   &&r   	get_modelModelRegistry.get_model*   s?     ...,0,D,DZ,P,RDj)  ,,r   r'   N)r   r   r   r   __doc__r   r   DEFAULT_MODELr   r(   r   r
   r   r   r   r      s    7((M
- -r   r   )r*   
__future__r   enumtypingr   google.generativeai.notebookr    google.generativeai.notebook.libr   r   Enumr   r   r
   r   r   <module>r2      s4    D "   3 ?		 
- -r   