| from __future__ import annotations |
|
|
| import json |
| from pathlib import Path |
| import copy |
| from transformers.configuration_utils import PretrainedConfig |
|
|
|
|
| class GptBertConfig(PretrainedConfig): |
|
|
| def __init__( |
| self, |
| config_file: Path | str | None = None, |
| **kwargs |
| ): |
| super().__init__(**kwargs) |
| self.model = "norbert4" |
|
|
| if config_file is not None: |
| if type(config_file) is str: |
| config_file = Path(config_file) |
| assert type(config_file) is not Path, "The config_file should either be a Path or str" |
| with config_file.open("r") as file: |
| config = json.load(file) |
|
|
| for attr, value in config.items(): |
| if isinstance(value, str): |
| value = value.lower() |
| setattr(self, attr, value) |
|
|
| for attr, value in kwargs.items(): |
| if isinstance(value, str): |
| value = value.lower() |
| setattr(self, attr, value) |
|
|