from dataclasses import dataclass, make_dataclass def fields(raw_class): return [v for k, v in raw_class.__dict__.items() if k[:2] != "__" and k[-2:] != "__"] @dataclass class ColumnContent: name: str type: str auto_eval_column_dict = [] auto_eval_column_dict.append(["model", ColumnContent, ColumnContent("Model", "markdown")]) auto_eval_column_dict.append(["buzz_accuracy", ColumnContent, ColumnContent("Buzz Accuracy ⬆️", "number")]) auto_eval_column_dict.append(["win_rate_human", ColumnContent, ColumnContent("Win Rate (Human Teams)", "number")]) auto_eval_column_dict.append(["win_rate_model", ColumnContent, ColumnContent("Win Rate (Model Teams)", "number")]) AutoEvalColumn = make_dataclass("AutoEvalColumn", auto_eval_column_dict, frozen=True)