游雁
2024-11-01 53a06e3c1a3ceee769ac3d69510cdcdc26736652
funasr/register.py
@@ -3,9 +3,11 @@
from dataclasses import dataclass
import re
@dataclass
class RegisterTables:
    """Registry system for classes."""
    model_classes = {}
    frontend_classes = {}
    specaug_classes = {}
@@ -46,6 +48,7 @@
    def register(self, register_tables_key: str, key: str = None) -> callable:
        """Decorator to register a class."""
        def decorator(target_class):
            if not hasattr(self, register_tables_key):
                setattr(self, register_tables_key, {})
@@ -55,7 +58,7 @@
            registry_key = key if key is not None else target_class.__name__
            if registry_key in registry:
                raise ValueError(f"Key {registry_key} already exists in {register_tables_key}")
                print(f"Key {registry_key} already exists in {register_tables_key}, re-register")
            registry[registry_key] = target_class
@@ -78,4 +81,5 @@
        return decorator
tables = RegisterTables()