Team Ai
Apppublic

Shivam249/function-gemma

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

2jUIi=(���dZddlZddlmZddlZddlZ	ddlm	Z	ddl3mZddlm
Z
ddlmZddd	d4�Zej+�D��cic]\}}||��5c}}Zej.�Zdedzfd�Zd
ej4fd�Zd
ej4fd�Zed��dedzddfd��Zed��dedzddfd��Zdefd�Z	d%dedededzde ee!effd�Z"dedejFfd�Z$de!edzdedefd�Z%de!edede
fd �Z&d!e!edzdede!edzfd"�Z'd#e(dede!edzfd$�Z)y#e$rddl	Z	ddlmZddlm
Z
ddlmZY��%wxYwcc}}w)&z$Shared functions for the Trackio UI.�N)�	lru_cache)�
SQLiteStorage)�ColoredCheckboxGroup)�RunSelection�Username�Created�Group)�	_Username�_Created�_Group�returnc�0�tjjd�}tj�}tj6�ry|rLtjtj��}d|�d�}|�d|�d|�d|�d|��}|Sd	|�d|�d|��}|Sy)7N�TRACKIO_DATASET_IDzO&#10024; Persistent Storage is enabled, logs are stored directly in this Space.a$New changes are synced every 5 min <span class='info-container'><input type='checkbox' class='info-checkbox' id='upgrade-info'><label for='upgrade-info' class='info-icon'>&#9432;</label><span class='info-expandable'> To avoid losing data between syncs, <a href='https://huggingface.co/spaces/z�/settings' class='accent-link'>click here</a> to open this Space's settings and add Persistent Storage. Make sure data is synced prior to enabling.</span></span>z&#x21bb; Backed up z5 min ago to <a href='https://huggingface.co/datasets/z&' target='_blank' class='accent-link'>z</a> | zG&#x21bb; Not backed up yet to <a href='https://huggingface.co/datasets/)	�os�environ�get�utils�	get_space�persistent_storage_enabled�get_sync_statusr�
get_scheduler)�8dataset_id�space_id�sync_status�upgrade_message�infos     �9/usr/local/lib/python3.12/dist-packages/trackio/ui/fns.py�get_project_infors������� 4�5�J���� �H��'�'�)�`���+�+�M�,G�,G�,I�J��A�BJ�AK�Kl�m���"�(��
�5j�ku�jv�w]�^h�]i�ip�q@�pA�B�D���]�]g�\h�iO�PZ�O[�[b�cr�bs�t�D�����requestc	��tj�}|jjd�x}rd}n+d}|jjd�x}r|}n	|r|dnd}t	j9d||d|t
���S)N�projectFT�selected_projectr�Project)�label�choices�value�allow_custom_value�interactiver)r�get_projects�query_paramsr�gr�Dropdownr)r �projectsr"r)r#s     rr*r*/s����)�)�+�H��&�&�*�*�9�5�5�w�5�����&�3�3�7�7�8J�K�K��K�&�G�%-�h�q�k�4�G�
�;�;������
�
�
�rc��d}t|d�r'|jr|jjd�}d|��}d|��}d|��}d|��}|r |d|��z
}|d|��z
}|d|��z
}|d|��z
}tjd|fd	|fd10|fd|fg��S)
Nr+�write_tokenz?selected_project=zmedia?selected_project=zruns?selected_project=zfiles?selected_project=z
&write_token=�MetricszMedia & Tables�Runs�Files)r')�hasattrr+rr,�Navbar)�11project_ddr r0�metrics_url�	media_url�runs_url�	files_urls       r�update_navbar_valuer;Ds����K��w��'�G�,@�,@��*�*�.�.�}�=��&�z�l�3�K�)�*��6�I�'�12�|�4�H�)�*��6�I����{�m�4�4���}�[�M�2�2�	��m�K�=�1�1���}�[�M�2�2�	�
�9�9�
��$�
�y�)�
�X��
�i� �	13��r� )�maxsize�hf_tokenc�Z�tjd�dk(�r
|�td��tj	|�}tjd�}tjd�}|dD�cgc]}|d��	}}||dk7r||vrtd	��|d14d}|dd
k(rqd}|d
dD]V}|dddk(r|dd|�d|��k(rd|dvrd}n0|dddk(s|dddk(s�@|dd|k(s�Ld|dvs�Td}n|std��y|ddk7rtd��yycc}w)a15    Checks to see if the provided hf_token is valid and has write access to the Space16    that Trackio is running in. If the hf_token is valid or if Trackio is not running17    on a Space, this function does nothing. Otherwise, it raises a PermissionError.18    �SYSTEM�spacesNz:Expected a HF_TOKEN to be provided when logging to a Space�SPACE_AUTHOR_NAME�SPACE_REPO_NAME�orgs�nameznExpected the provided hf_token to be the user owner of the space, or be a member of the org owner of the space�auth�accessToken�role�fineGrainedF�scoped�entity�type�space�/z19repo.write�permissionsT�user�orgzaExpected the provided hf_token with fine grained permissions to provide write access to the space�writez;Expected the provided hf_token to provide write permissions�r�getenv�PermissionError�HfApi�whoami)	r>�who�20owner_name�	repo_name�orD�access_token�matched�items	         r�check_hf_token_has_write_accessr_^s���21�y�y���h�&���!�L��
��l�l�8�$���Y�Y�2�3�22��I�I�/�0�	�$'�v�;�/�;�a��&�	�;��/���V��$��4�)?�!�A��
��6�{�=�1�����=�0��G�$�]�3�H�=����N�6�*�g�5��X��v�.�Z�L��)��2M�M�$��]�(;�;�"�G���X��v�.�&�8���>�&�1�U�:��X��v�.�*�<�$��]�(;�;�"�G��#>�$�%�w����23�&�
!�W�
,�!�M��
�-�W'��0s�-D(�oauth_tokenc��tjd�dk(sy|�td��tj	|�}|d}tjd�}||k(ry|dD]}|d|k(s�|dd	k(s�ytd24��)a25    Checks to see if the oauth token provided via Gradio's OAuth is valid and has write access26    to the Space that Trackio is running in. If the oauth token is valid or if Trackio is not running27    on a Space, this function does nothing. Otherwise, it raises a PermissionError.28    r@rANz8Expected an oauth to be provided when logging to a SpacerErBrD�	roleInOrgrRzhExpected the oauth token to be the user owner of the space, or be a member of the org owner of the spacerS)r`rX�	user_namerYrQs     r�"check_oauth_token_has_write_accessrd�s����9�9�X��(�*�����F�29�	30��,�,�{�31#�C��F��I����.�/�J��J����6�{���v�;�*�$��[�)9�W�)D����r��rr"c�p�|rtj|�ni}t�}|j�D]!}|j	|j���#|j
d�|D�cgc]}tj||���}}dgt|�z}tj|dd��Scc}w)NrT)r&r'r))r�get_all_run_configs�set�values�update�keys�discard�CONFIG_COLUMN_MAPPINGSr�sortedr,r-)r"�configsrj�config�keyr&s      r�get_group_by_fieldsrq�s���<C�m�/�/��8��G��5�D��.�.�"�����F�K�K�M�"�#��L�L���<@�A�D�S�"�&�&�s�C�0�D�D�A��f�v�d�|�#�G�
�;�;�������Bs�-B3�32config_key�filter_textc��|r|siS|}tj||�}tj|�}i}|j	�D]F\}}|r||vr�
|j|d�}|�d|��}	|j|	g�j
|��H|D]}	||	j��tt|j	�d����}33|34S)N�Nonez: c�(�|dj�S)Nr)�lower)�kvs r�<lambda>z&group_runs_by_config.<locals>.<lambda>�s��r�!�u�{�{�}r)rp)35�CONFIG_COLUMN_MAPPINGS_REVERSErrrf�items�36setdefault�append�sort�dictrm)r"rrrs�display_keyrn�groups�run_namero�37group_namer%�
sorted_groupss           r�group_runs_by_configr��s����*��	��K�/�3�3�J�38�K�J��/�/��8�G�#%�F�#�M�M�O���&��;�h�6���Z�Z�39�F�3�40��-�r�*��.�����%��$�+�+�H�5�,����u�
�����������4L�M�N�M��r�	selectionc
��tj�}td|j|jtt
|j��D�cgc]}||t
|�z��c}dt
|j��d�d�|��Scc}w)N�Runs (�)�r&r'�colorsr%�)r�get_color_paletterr&�selected�range�len)r��kwargs�
color_palette�is    r�run_checkbox_updater��s����+�+�-�M����!�!�� � �;@��Y�EV�EV�AW�;X�41�;X�a�M�!�c�-�0�0�1�;X�42��s�9�,�,�-�.�a�0�
�����43s�B	�
selected_runsc�0�|j|xsg�|S�N)�select)r�r�s  r�handle_run_checkbox_changer��s�����]�(�b�)��r�44group_runsc	�d�tj�}t|j�D��cic]\}}||��45}}}|D�cgc]#}||j	|d�t|�z��%}}tj||j�}t|||dt|��d���Scc}}wcc}w)Nrr�r�r�)	rr��	enumerater&rr��ordered_subsetr�r)r�r�r�r��run�choice_indicesr��subsets        r�group_checkbox_updater��s����+�+�-�M�+4�Y�5F�5F�+G�H�+G���C�c�1�f�+G�N�H����C�	�n�(�(��a�0�3�}�3E�E�F�����
!�
!�*�i�.@�.@�
A�F������s�:��'�q�)�	���
I��s�
B'�(B-�group_selectedc�n�|j|xsg|xsg�|t|xsg|�t|�fSr�)�
replace_groupr�r�)r�r�r�s   r�handle_group_checkbox_changer��sB��46���J�,�"�n�.B��C���j�.�B�	�:��I�&��r�47select_allc��|rt|xsg�ng}|j|xsg|�|t|xsg|�t|�fSr�)�listr�r�r�)r�r�r��targets    r�handle_group_toggler�sP��48(2�T�*�"��
#�r�F�
���J�,�"�f�5���j�.�B�	�:��I�&��rr�)*�__doc__r�	functoolsr�gradior,�huggingface_hub�hf�
trackio.utilsr�trackio.sqlite_storager�&trackio.ui.components.colored_checkboxr� trackio.ui.helpers.run_selectionr�ImportError�sqlite_storage�ui.components.colored_checkbox�ui.helpers.run_selectionrlr{rzrV�strr�Requestr*r;r_rdrqrr�r��
CheckboxGroupr�r�r�r��boolr�)�k�vs00r�<module>r�s ��*�	����	6�!�4�K�=������494J�3O�3O�3Q�!R�3Q�4�1�a�!�Q�$�3Q�!R��	����50��
�#��*�
� �"�*�*��*�R�Z�Z��4�2��4�c�D�j�4�T�4��4�n�2���C�$�J��4����4��� >B��
��!��03�d�51��	�#�t�C�y�.���*52�<�53�b�>N�>N�54����9�t�#��0<������S�	��&2����$55���I��$�56��57��S�	�D� �58�������S�	�D� ���u�6��,�C�5�5�	6��"Ss�D5�
E�5E�E