File size: 703 Bytes
9fd1204
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
import argparse
from typing import TYPE_CHECKING, Any, Dict


if TYPE_CHECKING:
    from finetrainers.args import BaseArgs


class ArgsConfigMixin:
    def add_args(self, parser: argparse.ArgumentParser):
        raise NotImplementedError("ArgsConfigMixin::add_args should be implemented by subclasses.")

    def map_args(self, argparse_args: argparse.Namespace, mapped_args: "BaseArgs"):
        raise NotImplementedError("ArgsConfigMixin::map_args should be implemented by subclasses.")

    def validate_args(self, args: "BaseArgs"):
        raise NotImplementedError("ArgsConfigMixin::validate_args should be implemented by subclasses.")

    def to_dict(self) -> Dict[str, Any]:
        return {}