Source code for minestudio.inference.filter.base_filter
'''
Date: 2024-11-25 07:36:18
LastEditors: caishaofei caishaofei@stu.pku.edu.cn
LastEditTime: 2024-11-25 12:33:00
FilePath: /MineStudio/minestudio/inference/filter/base_filter.py
'''
from abc import abstractmethod
from typing import List, Dict, Generator
[docs]
class EpisodeFilter:
"""
Base class for episode filters.
Filters are used to process episodes generated by an EpisodeGenerator.
"""
def __init__(self):
"""
Initializes the EpisodeFilter.
"""
pass
[docs]
def filter(self, episode_generator: Generator) -> Generator:
"""
Filters an episode generator.
This method should be overridden by subclasses to implement specific filtering logic.
By default, it returns the original generator without any filtering.
:param episode_generator: A generator that yields episodes.
:type episode_generator: Generator
:returns: A generator that yields filtered episodes.
:rtype: Generator
"""
return episode_generator