| from transformers import PretrainedConfig |
|
|
|
|
| class CobaldParserConfig(PretrainedConfig): |
| model_type = "cobald_parser" |
|
|
| def __init__( |
| self, |
| encoder_model_name: str = None, |
| null_classifier_hidden_size: int = 0, |
| lemma_classifier_hidden_size: int = 0, |
| morphology_classifier_hidden_size: int = 0, |
| dependency_classifier_hidden_size: int = 0, |
| misc_classifier_hidden_size: int = 0, |
| deepslot_classifier_hidden_size: int = 0, |
| semclass_classifier_hidden_size: int = 0, |
| activation: str = 'relu', |
| dropout: float = 0.1, |
| consecutive_null_limit: int = 0, |
| vocabulary: dict[dict[int, str]] = {}, |
| **kwargs |
| ): |
| self.encoder_model_name = encoder_model_name |
| self.null_classifier_hidden_size = null_classifier_hidden_size |
| self.consecutive_null_limit = consecutive_null_limit |
| self.lemma_classifier_hidden_size = lemma_classifier_hidden_size |
| self.morphology_classifier_hidden_size = morphology_classifier_hidden_size |
| self.dependency_classifier_hidden_size = dependency_classifier_hidden_size |
| self.misc_classifier_hidden_size = misc_classifier_hidden_size |
| self.deepslot_classifier_hidden_size = deepslot_classifier_hidden_size |
| self.semclass_classifier_hidden_size = semclass_classifier_hidden_size |
| self.activation = activation |
| self.dropout = dropout |
| |
| |
| self.vocabulary = { |
| column: {int(k): v for k, v in labels.items()} |
| for column, labels in vocabulary.items() |
| } |
| super().__init__(**kwargs) |