Ë
    ³«Žjš  ã                   óN   — d dl Z d dlmZ d dlmZ  G d„ de j
                  «      Zy)é    N)ÚList)Údataset_itemc                   ór   — e Zd ZdZej
                  deej                     deej                     fd„«       Z	y)ÚBaseDatasetSamplera„  
    Defines the BaseDatasetSampler for sampling dataset items.

    This is an abstract base class that provides the definition
    for dataset sampling. It requires implementation of the `sample`
    method in subclasses, which specifies the sampling logic tailored
    to specific needs.

    Methods in this class are enforced to be redefined in any
    concrete implementation.

    Ú	data_itemÚreturnc                  ó   — y)aé  
        Samples and filters a list of dataset items according to a specific implementation.

        Args:
            data_item (List[dataset_item.DatasetItem]): A list of DatasetItem objects to be
                sampled and filtered.

        Returns:
            List[dataset_item.DatasetItem]: A list of DatasetItem objects resulting
                from the sampling process.

        Raises:
            NotImplementedError: If the method is not implemented in a subclass.
        N© )Úselfr   s     ú†/Users/manta/Documents/Projects/TheRoad-I1/backend/.venv/lib/python3.12/site-packages/opik/evaluation/samplers/base_dataset_sampler.pyÚsamplezBaseDatasetSampler.sample   s   € ð$ 	ó    N)
Ú__name__Ú
__module__Ú__qualname__Ú__doc__ÚabcÚabstractmethodr   r   ÚDatasetItemr   r
   r   r   r   r      sG   „ ñð 	×ÑðØ˜l×6Ñ6Ñ7ðà	ˆl×&Ñ&Ñ	'òó ñr   r   )r   Útypingr   Úopik.api_objects.datasetr   ÚABCr   r
   r   r   Ú<module>r      s    ðÛ 
Ý õ 2ô ˜Ÿ™õ  r   