| | from dataclasses import dataclass, make_dataclass |
| | from enum import Enum |
| |
|
| | import pandas as pd |
| |
|
| | from src.about import Tasks |
| |
|
| | 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 |
| | displayed_by_default: bool |
| | hidden: bool = False |
| | never_hidden: bool = False |
| |
|
| | |
| | auto_eval_column_dict = [] |
| | |
| | auto_eval_column_dict.append(["model", ColumnContent, ColumnContent("Model", "markdown", True, never_hidden=True)]) |
| | |
| | auto_eval_column_dict.append(["average", ColumnContent, ColumnContent("Average", "number", True)]) |
| | for task in Tasks: |
| | auto_eval_column_dict.append([task.name, ColumnContent, ColumnContent(task.value.col_name, "number", True)]) |
| |
|
| | |
| | AutoEvalColumn = make_dataclass("AutoEvalColumn", auto_eval_column_dict, frozen=True) |
| |
|
| | |
| | @dataclass |
| | class ModelDetails: |
| | name: str |
| | display_name: str = "" |
| | symbol: str = "" |
| |
|
| | |
| | COLS = [c.name for c in fields(AutoEvalColumn) if not c.hidden] |
| |
|
| | BENCHMARK_COLS = [t.value.col_name for t in Tasks] |
| |
|
| |
|