Team Ai
Apppublic

WalisonCruz/function-gemma

sourceHugging Faceupdated 10mo agoView on Hugging Face
0likes
run.cpython-312.pyc73 linesDownload Raw Back to __pycache__
1�

267Ei�!���ddlZddlZddlZddlmZmZddlZddlmZmZddl	m3Z4ddlmZddl
mZddlmZddlmZdd	lmZmZdd5lmZdZGd�d
�Zy)�N)�datetime�timezone)�Client�handle_file)�utils)�	Histogram)�TrackioMedia)�
SQLiteStorage)�Table)�LogEntry�UploadEntry)�_get_default_namespaceg�?c���eZdZ				ddedededzdedzdedzdedzdedzfd	�Zd6edzfd�Zd�Zd
�Z			dde7dzdedzdefd�Zde
de8dzd9efd�Zdede10dzfd�Zddede11dzfd�Zd�Zy)�RunN�url�project�client�name�group�config�space_idc��||_||_tj�|_d|_||_||_|xs)tjtj|�|�|_||_
tj|xsi�|_t!|jt"�r1|jD]"}|j%d�s�t'd|�d���|j)�|jd<t+j,t.j0�j3�|jd<|j|jd<g|_g|_tj8�|_d|_tj>|j@��|_d	|j12_!|j13jE�y)14N�_zConfig key 'zD' is reserved (keys starting with '_' are reserved for internal use)�	_Username�_Created�_GroupF)�targetT)#rr�	threading�Lock�_client_lock�_client_thread�_client�	_space_idr�generate_readable_namer15�get_runsrr�to_json_safer�16isinstance�dict�17startswith�18ValueError�
_get_usernamer�nowr�utc�	isoformat�_queued_logs�_queued_uploads�Event�19_stop_flag�_config_logged�Thread�_init_client_background�daemon�start)	�selfrrrrrrr�keys	         �6/usr/local/lib/python3.12/dist-packages/trackio/run.py�__init__zRun.__init__so��������%�N�N�,���"������!����20�E�8�8��"�"�7�+�X�21��	���22��(�(���2�6����d�k�k�4�(��{�{���>�>�#�&�$�&�s�e�+o�p���#�$(�#5�#5�#7����K� �"*�,�,�x�|�|�"<�"F�"F�"H����J�� $�23�24����H��,.���24���#�/�/�+���#���'�.�.�d�6R�6R�S���%)����"����!�!�#��returnc�6�	t�S#t$rYywxYw)zBGet the current HuggingFace username if logged in, otherwise None.N)r�	Exception�r8s r:r+zRun._get_username?s"��	�)�+�+���	��	�s�	�	�c��|jj�rt|j�dkD�r�|jj�st	j25t�|j5|j�26	ddd�y|jrn|jj�}|jj�|jjd|tjj���|jrn|jj�}|jj�|jjd|tjj���ddd�|jj�s��nt|j�dkDr���yy#1swY�AxYw)z,Send batched logs every BATCH_SEND_INTERVAL.rNz	/bulk_log)�api_name�logs�hf_tokenz/bulk_upload_media)rB�uploadsrD)r2�is_set�lenr/�time�sleep�BATCH_SEND_INTERVALr r"�copy�clear�predict�huggingface_hubr�	get_tokenr0)r8�logs_to_send�uploads_to_sends   r:�
_batch_senderzRun._batch_senderFsQ���/�/�(�(�*�c�$�2C�2C�.D�q�.H��?�?�)�)�+��27�28�.�/��"�"��<�<�'��#�"��$�$�#'�#4�#4�#9�#9�#;�L��%�%�+�+�-��L�L�(�(�!,�)�!0�!6�!6�!@�!@�!B�)��29�'�'�&*�&:�&:�&?�&?�&A�O��(�(�.�.�0��L�L�(�(�!5� /�!0�!6�!6�!@�!@�!B�)��#�	�/�/�(�(�*�c�$�2C�2C�.D�q�.H�#�"�s�3F>�30C4F>�>Gc�J�|j�Ptj�}|D]7}	t|jd��}|j315||_ddd�n|j�y#1swY�xYw#t$rYnwxYw|��itjd|z���)NF)�verboseg�������?)32r"r�fiborrr r?rHrIrR)r8�fib�sleep_coefficientrs    r:r5zRun._init_client_background`s����<�<���*�*�,�C�%(�!��#�D�H�H�e�<�F��*�*�'-���+��
&)�	
����+�*��!�����$�0��J�J�s�%6�6�7s)�#A:�33A.�A:�.A7	�3A:�:	B�B�step�
relative_path�use_run_namec���|j|r|jnd||t|�d�}|j5|jj|�ddd�y#1swYyxYw)a�34        Queues a media file for upload to a Space.35 36        Args:37            file_path:38                The path to the file to upload.39            step (`int` or `None`, *optional*):40                The step number associated with this upload.41            relative_path (`str` or `None`, *optional*):42                The relative path within the project's files directory. Used when43                uploading files via `trackio.save()`.44            use_run_name (`bool`, *optional*):45                Whether to use the run name for the uploaded file. This is set to46                `False` when uploading files via `trackio.save()`.47        N)r�runrXrY�
uploaded_file)rrrr r0�append)r8�	file_pathrXrYrZ�upload_entrys      r:�
_queue_uploadzRun._queue_uploadqsV��.�|�|� ,�4�9�9�$��*�(��3�%48���
�
�� � �'�'��5��
�
�s�A�A$�valuec���|j|j|j|�|jr |j	|j�|�|j
�S)zK49        Serialize media in metrics and upload to space if needed.50        )�_saverrr#ra�_get_absolute_file_path�_to_dict)r8rbrXs   r:�_process_mediazRun._process_media�sI��	���D�L�L�$�)�)�T�2��>�>����u�<�<�>��E��~�~��r<�51table_dictc��|jsy|jdg�}|D]�}|j�D]�}t|t�rE|jd�dvr2|jd�}|s�:ddlm}||z}|j||��Xt|t�s�i|D]X}	t|	t�s�|	jd�dvs�(|	jd�}|s�<ddlm}||z}|j||��Z����y)z_52        Scan a serialized table for media objects and queue them for upload to space.53        N�_value�_type)z
trackio.imagez
trackio.videoz
trackio.audior_r)�	MEDIA_DIR)	r#�get�valuesr'r(�
trackio.utilsrlra�list)54r8rhrX�55table_data�rowrbr_rl�
absolute_path�items56          r:�_scan_and_queue_media_uploadsz!Run._scan_and_queue_media_uploads�s����~�~���^�^�H�b�1�57��C�������e�T�*�u�y�y��/A�F�0�58!&�	�	�+� 6�I� �;�(1�I�(=�
��*�*�=�$�?���t�,� %��%�d�D�1�d�h�h�w�6G�L�7�59)-����(=�I�(� C�09�I�0E�
� $� 2� 2�=�$� G�!&�&�r<�metricsc��g}i}|j�D]I\}}|tjvs|jd�rd|��}|j	|�|||<�E|||<�K|rtjd|�d��|}|j�D]�\}}	t|	t�rA|	j|j|j|��||<|j|||��Wt|	t�r|	j�||<�{t|	t�s��|j|	|�||<��tj |�}d}60|j"s2|j$r&tj&|j$�}61d|_|j|j|||62d�}|j(5|j*j	|�ddd�y#1swYyxYw)N�__zReserved keys renamed: u → '__{key}')rr\rXT)rr\rvrXr)�itemsr�
RESERVED_KEYSr)r^�warnings�warnr'rrfrrrurr	rg�serialize_valuesr3rr&r r/)r8rvrX�renamed_keys�new_metrics�k�v�new_keyr9rb�
config_to_log�	log_entrys            r:�logzRun.log�s��������M�M�O�D�A�q��E�'�'�'�1�<�<��+=��q�c�(���#�#�A�&�'(��G�$�!"��A��
$���M�M�3�L�>�AQ�R�S���!�-�-�/�J�C���%��'�$�~�~� �L�L�d�i�i�d� .� �����2�2�7�3�<��F��E�9�-�$�~�~�/�����E�<�0�#�2�2�5�$�?����*��(�(��1���
��"�"�t�{�{�!�.�.�t�{�{�;�M�"&�D���|�|��9�9���#�63�	��
�
����$�$�Y�/��
�
�s�.G�Gc���|jj�tjdtz�|j64�&t
d�|j65j�yy)zCleanup when run is finished.�Nz:* Run finished. Uploading logs to Trackio (please wait...))r2�setrHrIrJr!�print�joinr@s r:�finishz66Run.finish�sP���������67�68�1�*�*�+����*��N�O����$�$�&�+r<)NNNN)NT)N)�__name__�69__module__�__qualname__�strrr(r;r+rRr5�int�boolrar	rgrur�r��r<r:rrs�� � �"�#�($�
�($��($���
�	($�70�D�j�($��T�z�
($��t��($���*�($�T�s�T�z���4�*%)�!�6��D�j�6��T�z�	6�71�6�@ �L� ��d�72� �t� �!H��!H�C�$�J�!H�F*0�4�*0�s�T�z�*0�X'r<r)rrHr{rrrN�
gradio_clientrr�trackior�trackio.histogramr�
trackio.mediar	�trackio.sqlite_storager73�
trackio.tabler�trackio.typehintsrr
rorrJrr�r<r:�<module>r�s>�����'��-��'�&�0��3�0���]'�]'r<