from transformers import PretrainedConfig class TheoBertBaseConfig(PretrainedConfig): model_type = "theo_bert_base" def __init__( self, vocab_size=30522, n_layer=12, n_head=8, n_embd=768, seq_len=256, rope_base=10000, rope_cache_factor=10, pad_token_id=0, unk_token_id=100, cls_token_id=101, sep_token_id=102, mask_token_id=103, tokenizer_name="google-bert/bert-base-uncased", **kwargs, ): self.vocab_size = vocab_size self.n_layer = n_layer self.n_head = n_head self.n_embd = n_embd self.seq_len = seq_len self.rope_base = rope_base self.rope_cache_factor = rope_cache_factor self.tokenizer_name = tokenizer_name # Compatibility aliases expected by downstream tooling. self.hidden_size = n_embd self.num_hidden_layers = n_layer self.num_attention_heads = n_head self.max_position_embeddings = seq_len self.rope_cache_seq_len = seq_len * rope_cache_factor super().__init__( pad_token_id=pad_token_id, unk_token_id=unk_token_id, cls_token_id=cls_token_id, sep_token_id=sep_token_id, mask_token_id=mask_token_id, **kwargs, )