o
    ?ß±ir  ã                   @   s˜   d Z ddlZddlmZ dedefdd„Zded	edefd
d„ZeddƒZ	 eddƒZ		 eddƒZ
	 ede	ƒZ	 ede	ƒZ	 eG dd„ dƒƒZeƒ ZdS )zFeature flags.é    N)Ú	dataclassÚvalueÚreturnc                 C   s   |   ¡ dv S )zParse string to a boolean.)ÚtrueÚ1ÚyesÚy)Úlower)r   © r
   úO/data/cameron/vidgen/cosmos-predict2.5/cosmos_predict2/_src/imaginaire/flags.pyÚ_parse_bool   s   r   ÚnameÚdefaultc                 C   s   t j | d¡}|s|S t|ƒS )z(Get a boolean flag from the environment.Ú )ÚosÚenvironÚgetr   )r   r   r   r
   r
   r   Ú	_get_bool   s   r   ZCOSMOS_TRAININGTZCOSMOS_INTERNALFZCOSMOS_SMOKEZCOSMOS_VERBOSEZCOSMOS_EXPERIMENTAL_CHECKPOINTSc                   @   sJ   e Zd ZU eZeed< eZeed< e	Z
eed< eZeed< eZeed< dS )ÚFlagsÚinternalÚtrainingÚsmokeÚverboseÚexperimental_checkpointsN)Ú__name__Ú
__module__Ú__qualname__ÚINTERNALr   ÚboolÚ__annotations__ÚTRAININGr   ÚSMOKEr   ÚVERBOSEr   ÚEXPERIMENTAL_CHECKPOINTSr   r
   r
   r
   r   r   6   s   
 r   )Ú__doc__r   Údataclassesr   Ústrr   r   r   r    r   r!   r"   r#   r   ÚFLAGSr
   r
   r
   r   Ú<module>   s&   




