zhifu gao
2024-04-24 861147c7308b91068ffa02724fdf74ee623a909e
funasr/register.py
@@ -3,6 +3,7 @@
from dataclasses import dataclass
import re
@dataclass
class RegisterTables:
    model_classes = {}
@@ -39,9 +40,12 @@
                col_widths = [max(len(str(item)) for item in col) for col in zip(*data)]
            
                for row in data:
                    print("| " + " | ".join(str(item).ljust(width) for item, width in zip(row, col_widths)) + " |")
                    print(
                        "| "
                        + " | ".join(str(item).ljust(width) for item, width in zip(row, col_widths))
                        + " |"
                    )
        print("\n")
    def register(self, register_tables_key: str, key=None):
        def decorator(target_class):
@@ -66,10 +70,14 @@
            # doc = target_class.__doc__
            class_file = inspect.getfile(target_class)
            class_line = inspect.getsourcelines(target_class)[1]
            pattern = r'^.+/funasr/'
            class_file = re.sub(pattern, 'funasr/', class_file)
            pattern = r"^.+/funasr/"
            class_file = re.sub(pattern, "funasr/", class_file)
            # meata_data = [f"{target_class.__name__}", f"{class_file}:{class_line}"]
            meata_data = [f"{registry_key}", f"{target_class.__name__}", f"{class_file}:{class_line}"]
            meata_data = [
                f"{registry_key}",
                f"{target_class.__name__}",
                f"{class_file}:{class_line}",
            ]
            registry_meta[registry_key] = meata_data
            # print(f"Registering class: {class_file}:{class_line} - {target_class.__name__} as {registry_key}")
            return target_class
@@ -81,4 +89,3 @@
import funasr