# configuration_easyformer.py from transformers import PretrainedConfig class EasyFormerConfig(PretrainedConfig): model_type = "transformer" def __init__( self, vocab_size=8000, d_model=192, n_layer=5, n_head=4, ctx=128, dropout=0.1, **kwargs, ): super().__init__(**kwargs) self.vocab_size = vocab_size self.d_model = d_model self.n_layer = n_layer self.n_head = n_head self.ctx = ctx self.dropout = dropout # --- HF-совместимые property --- @property def num_hidden_layers(self): return self.n_layer @property def hidden_size(self): return self.d_model @property def num_attention_heads(self): return self.n_head @property def intermediate_size(self): return 2 * self.d_model @property def max_position_embeddings(self): return self.ctx @property def num_key_value_heads(self): return self.n_head @property def head_dim(self): return self.d_model // max(1, self.n_head)