Team Ai
Apppublic

delsj/function-gemma

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

2LIi����ddlZddlmZmZddlmZ	ddlmZddlm	Z	Gd�d�Z
y#e3$rddlmZddlm	Z	Y�wxYw)�N)�Any�Literal)�	DataFrame)�TrackioMedia)�	MEDIA_DIRc���eZdZdZdZ							ddeedzdeeedzdedzdeeedzde	ee	zd	e	d4e5ddzfd�Zded
e	fd�Zddedede
fd�Zedeed
eefd��Zddedede
fd�Zy)�Tablea�6    Initializes a Table object.7 8    Tables can be used to log tabular data including images, numbers, and text.9 10    Args:11        columns (`list[str]`, *optional*):12            Names of the columns in the table. Optional if `data` is provided. Not13            expected if `dataframe` is provided. Currently ignored.14        data (`list[list[Any]]`, *optional*):15            2D row-oriented array of values. Each value can be a number, a string16            (treated as Markdown and truncated if too long), or a `Trackio.Image` or17            list of `Trackio.Image` objects.18        dataframe (`pandas.DataFrame`, *optional*):19            DataFrame used to create the table. When set, `data` and `columns`20            arguments are ignored.21        rows (`list[list[Any]]`, *optional*):22            Currently ignored.23        optional (`bool` or `list[bool]`, *optional*, defaults to `True`):24            Currently ignored.25        allow_mixed_types (`bool`, *optional*, defaults to `False`):26            Currently ignored.27        log_mode: (`Literal["IMMUTABLE", "MUTABLE", "INCREMENTAL"]` or `None`, *optional*, defaults to `"IMMUTABLE"`):28            Currently ignored.29    z
trackio.tableN�columns�data�	dataframe�rows�optional�allow_mixed_types�log_mode)�	IMMUTABLE�MUTABLE�INCREMENTALc�\�|�#|�t|�|_yt�|_y||_y�N)rr)�selfr30rrr
rrrs        �8/usr/local/lib/python3.12/dist-packages/trackio/table.py�__init__zTable.__init__+s)����+/�+;�	�$��D�I���D�I�!�D�I��returnc��|jD]L}||jd��j�ry||jd��j�s�Lyy)zVCheck if dataframe contains any TrackioMedia objects or lists of TrackioMedia objects.c�"�t|t�Sr)�31isinstancer��xs r�<lambda>z*Table._has_media_objects.<locals>.<lambda>?s��j��L�.IrTc�l�t|t�xr#t|�dkDxrt|dt�S)Nr)r�list�lenrrs rr z*Table._has_media_objects.<locals>.<lambda>Ds3��j��D�1�7��A���32�7�"�1�Q�4��6�7rF)r33�apply�any)rr�cols   r�_has_media_objectszTable._has_media_objects<s_���$�$�C���~�#�#�$I�J�N�N�P���#����7��34���
��%�r�project�run�stepc35��|j}|j|�s|jd��S|j�}|jD]�}|j36D]�}|j||f}t|t�r2|j|||�|j�|j||f<t|t�s�gt|�dkDs�vt|dt�s��|D�	cgc]}	|	j|||���c}	|D�	cgc]}	|	j���c}	|j||f<����|jd��Scc}	wcc}	w)zQConvert dataframe to dict format, processing any TrackioMedia objects if present.�records)�orientr)
rr'�to_dict�copyr37�index�atrr�_save�_to_dictr"r#)38rr(r)r*�df�processed_dfr&�idx�value�vs39          r�
_process_datazTable._process_dataMs"��
�Y�Y���&�&�r�*��:�:�Y�:�/�/��w�w�y���'�'�C�#�)�)��$����S��1���e�\�2��K�K���d�3�05���0@�L�O�O�C��H�-��u�d�+��E�40�Q��"�5��8�\�:�:?�@�%�Q�Q�W�W�W�c�4�0�%�@�GL�0M�u�!�����u�0M�L�O�O�C��H�-�*�(��#�#�9�#�5�5��A��0Ms�)E	�41E�42table_datac���ttjdd��}dtdtfd�}g}|D�]/}i}|j�D�]\}}t
|t�r |jd�dk(r||�||<�7t
|t�rgt|�dkDrYt
|dt�rF|djd�dk(r/d	d43j|D�cgc]44}||���c}�zdz||<��t
|t�rCt|�|kDr5|d|}	|jd
d�jdd�}45d|	�d|46�d�||<��|||<��|j|���2|Scc}w)a47        Converts stored table data to display format for UI rendering.48 49        Note:50            This does not use the `self.data` attribute, but instead uses the51            `table_data` parameter, which is what the UI receives.52 53        Args:54            table_data (`list[dict]`):55                List of dictionaries representing table rows (from stored `_value`).56 57        Returns:58            `list[dict]`: Table data with images converted to markdown syntax and long59            text truncated.60        �TRACKIO_TABLE_TRUNCATE_LENGTH�250�61image_datarc�n�|jdd�}|jdd�}t|z}d|�d|�d�S)N�	file_path��captionz<img src="/gradio_api/file=z" alt="z" />)�getr)r>�
relative_pathrB�
absolute_paths    r�convert_image_to_markdownz:Table.to_display_format.<locals>.convert_image_to_markdownwsA��&�N�N�;��;�M� �n�n�Y��3�G�%�
�5�M�0���w�w�i�t�T�Tr�_typez
trackio.imagerz'<div style="display: flex; gap: 10px;">rAz</div>N�<z&lt;�>z&gt;zU<details style="display: inline;"><summary style="display: inline; cursor: pointer;">u�…<span><em>(truncated, click to expand)</em></span></summary><div style="margin-top: 10px; padding: 10px; background: #f5f5f5; border-radius: 4px; max-height: 400px; overflow: auto;"><pre style="white-space: pre-wrap; word-wrap: break-word; margin: 0;">z</pre></div></details>)
�int�os�getenv�dict�str�itemsrrCr"r#�join�replace�append)r:�truncate_lengthrF�processed_data�row�
processed_row�keyr7�item�	truncated�	full_texts           r�to_display_formatzTable.to_display_formatds���"�b�i�i�(G��O�P��	U�$�	U�3�	U����C��M�!�i�i�k�62��U��e�T�*�u�y�y��/A�_�/T�)B�5�)I�M�#�&��u�d�+��E�63�Q��"�5��8�T�2��a����W�-��@�B��'�'�u�"U�u�t�#<�T�#B�u�"U�V�W�"�#�"�#�&�64 ��s�+��E�65�_�0L� %�&6�� 7�I� %�
�
�c�6� :� B� B�3�� O�I�N�NW�[�Ya�aj�`k�l%�&�"�#�&�*/�M�#�&�7*�8
�!�!�-�0�=�>���##Vs�E)c�F�|j|||�}|j|d�S)aZ66        Converts the table to a dictionary representation.67 68        Args:69            project (`str`):70                Project name for saving media files.71            run (`str`):72                Run name for saving media files.73            step (`int`, *optional*, defaults to `0`):74                Step number for saving media files.75        )rG�_value)r9�TYPE)rr(r)r*rs     rr3zTable._to_dict�s,���!�!�'�3��5���Y�Y��76�	77r)NNNNTFr)r)�__name__�78__module__�__qualname__�__doc__r^r"rNrr�boolrrr'rJr9�staticmethodrMr[r3�rrr	r	s���4�D�%)�'+�&*�'+�&*�"'�JU�"��c��T�!�"��4��9�o��$�"��t�#�	"�79�4��9�o��$�"���d��#�
"� �"��?�@�4�G�"�"�I��$��"6�S�6�s�6�#�6�.�8�d�4�j�8�T�$�Z�8��8�t80��81�#�82�S�83rr	)rK�typingrr�pandasr�trackio.media.mediar�
trackio.utilsr�ImportError�media.media�utilsr	rerr�<module>rms<��	��� �0�'�a84�a85��� �(�� �s�+�?�?