示例#1
0
    def prepare_callbacks(*,
                          mode: str,
                          stage: str = None,
                          resume: str = None,
                          out_prefix: str = None,
                          **kwargs) -> Dict[str, Callback]:
        """
        Runner callbacks method to handle different runs logic.

        :param args: console args
        :param mode: train/infer
        :param stage: training stage name
        :param resume: path to checkpoint (used for checkpoint callback)
        :param **kwargs: callbacks params
        :return: OrderedDict with callbacks
        """
        callbacks = OrderedDict()

        for key, value in kwargs.items():
            callback = Registry.get_callback(**value)
            callbacks[key] = callback

        for key, value in callbacks.items():
            # @TODO: remove hack
            if resume is not None and hasattr(value, "resume"):
                value.resume = resume
            if out_prefix is not None and hasattr(value, "out_prefix"):
                value.out_prefix = out_prefix

        return callbacks
示例#2
0
    def get_callbacks(self, stage: str) -> "List[Callback]":
        callbacks_params = (self.stages_config[stage].get(
            "callbacks_params", {}))

        callbacks = []
        for key, value in callbacks_params.items():
            callback = Registry.get_callback(**value)
            callbacks.append(callback)

        return callbacks