CoolFace
Apppublic

robometer/rewardeval_ui

sourceHugging Faceupdated 7mo agoView on Hugging Face
4likes
base_pref.cpython-311.pyc30 linesDownload Raw Back to __pycache__
1�

2�TiW3��V�ddlmZmZddlZddlmZmZddlm	Z	Gd�de	��Z4dS)�)�Dict�AnyN)�PreferenceSample�5Trajectory)�RFMBaseSamplerc�>�eZdZdZdeeefdefd�Zd�Z	d�Z6dS)�BaseQualityPreferenceSampleraBase class for quality preference samplers.7 8    Subclasses should implement `_generate_all_sample_indices` to define how9    trajectories are paired. This base class provides the common `_generate_sample_from_indices`10    method that loads and processes the trajectories.11    �sample_idx_info�returnc�H�|d}|d}|j|}|j|}|d|d|d|d|dd�}|�d	���|�d	��|d	<|�||���}|d|d|d|d|dd�}|�d	���|�d	��|d	<|�||���}	t|dd
��}12t	||	|13���}|S)z-Generate a single sample from stored indices.�chosen_traj_idx�rejected_traj_idx�
quality_label�data_source�task�id�frames)rrrr�14video_path�partial_successN)�traj�metadata�data_gen_strategy�quality_preference)�chosen_trajectory�rejected_trajectoryr)�dataset�get�_get_traj_from_data�getattrr)�selfr15�16chosen_idx�rejected_idx�chosen_traj�
rejected_traj�chosen_metadatar�rejected_metadatarr�samples            �;/scr/aliang80/reward_fm/rfm/data/samplers/eval/base_pref.py�_generate_sample_from_indicesz:BaseQualityPreferenceSampler._generate_sample_from_indicess|��$�%6�7�17�&�':�;���l�:�.����\�2�
�)��9�&�}�5���'��d�#�%�h�/�18�19���?�?�,�-�-�9�1<���AR�1S�1S�O�-�.� �4�4��$�5�20�21��+�?�;�(��7�!�&�)���%�'��1�22�23�����.�/�/�;�3@�3D�3D�EV�3W�3W��/�0�"�6�6��&�7�24�25��26$�D�*=�?S�T�T��"�/� 3�/�27�28�29���
�c�*�t|j��S�N)�len�sample_indices)r s r(�__len__z$BaseQualityPreferenceSampler.__len__Es���4�&�'�'�'r*c�B�|�|j|��Sr,)r)r.)r �idxs  r(�__getitem__z(BaseQualityPreferenceSampler.__getitem__Hs���1�1�$�2E�c�2J�K�K�Kr*N)�__name__�30__module__�__qualname__�__doc__r�strrrr)r/r2�r*r(r	r		sm��������2�T�#�s�(�^�2�P`�2�2�2�2�h(�(�(�L�L�L�L�Lr*r	)�typingrr�numpy�np�rfm.data.dataset_typesrr�rfm.data.samplers.baserr	r8r*r(�<module>r>s���������������?�?�?�?�?�?�?�?�1�1�1�1�1�1�@L�@L�@L�@L�@L�>�@L�@L�@L�@L�@Lr*