AyaGL commited on
Commit
a5dbd2b
·
verified ·
1 Parent(s): 4d1c1cf

Update configuration_steerling.py

Browse files
Files changed (1) hide show
  1. configuration_steerling.py +108 -0
configuration_steerling.py ADDED
@@ -0,0 +1,108 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ from transformers import PretrainedConfig
2
+
3
+
4
+ class SteerlingConfig(PretrainedConfig):
5
+ model_type = "steerling"
6
+
7
+ def __init__(
8
+ self,
9
+ vocab_size=100284,
10
+ interpretable=True,
11
+ n_layers=32,
12
+ n_head=32,
13
+ n_embd=4096,
14
+ n_kv_heads=4,
15
+ block_size=4096,
16
+ diff_block_size=64,
17
+ use_rms_norm=True,
18
+ norm_eps=1e-05,
19
+ norm_order="post",
20
+ use_qk_norm=True,
21
+ use_rope=True,
22
+ rope_base=500000.0,
23
+ rope_full_precision=True,
24
+ clip_qkv=10.0,
25
+ mlp_type="swiglu",
26
+ activation="gelu",
27
+ mlp_ratio=4,
28
+ intermediate_size=None,
29
+ use_bias=False,
30
+ weight_sharing=True,
31
+ mask_token_id=100280,
32
+ endofchunk_token_id=100279,
33
+ n_concepts=33732,
34
+ n_unknown_concepts=101196,
35
+ concept_dim=4096,
36
+ use_attention_known=False,
37
+ use_attention_unknown=False,
38
+ topk_known=32,
39
+ topk_known_features=32,
40
+ unknown_topk=128,
41
+ use_unknown=True,
42
+ apply_topk_to_unknown=True,
43
+ topk_on_logits=False,
44
+ factorize_unknown=True,
45
+ factorize_rank=256,
46
+ use_epsilon_correction=True,
47
+ concept_block_size=4096,
48
+ pad_multiple=16,
49
+ store_unknown_weights=False,
50
+ inject_layer=16,
51
+ inject_alpha=1.0,
52
+ start_header_id=100281,
53
+ end_header_id=100282,
54
+ eot_id=100283,
55
+ **kwargs,
56
+ ):
57
+ self.interpretable = interpretable
58
+ self.n_layers = n_layers
59
+ self.n_head = n_head
60
+ self.n_embd = n_embd
61
+ self.n_kv_heads = n_kv_heads
62
+ self.block_size = block_size
63
+ self.diff_block_size = diff_block_size
64
+ self.use_rms_norm = use_rms_norm
65
+ self.norm_eps = norm_eps
66
+ self.norm_order = norm_order
67
+ self.use_qk_norm = use_qk_norm
68
+ self.use_rope = use_rope
69
+ self.rope_base = rope_base
70
+ self.rope_full_precision = rope_full_precision
71
+ self.clip_qkv = clip_qkv
72
+ self.mlp_type = mlp_type
73
+ self.activation = activation
74
+ self.mlp_ratio = mlp_ratio
75
+ self.intermediate_size = intermediate_size
76
+ self.use_bias = use_bias
77
+ self.weight_sharing = weight_sharing
78
+ self.mask_token_id = mask_token_id
79
+ self.endofchunk_token_id = endofchunk_token_id
80
+ self.n_concepts = n_concepts
81
+ self.n_unknown_concepts = n_unknown_concepts
82
+ self.concept_dim = concept_dim
83
+ self.use_attention_known = use_attention_known
84
+ self.use_attention_unknown = use_attention_unknown
85
+ self.topk_known = topk_known
86
+ self.topk_known_features = topk_known_features
87
+ self.unknown_topk = unknown_topk
88
+ self.use_unknown = use_unknown
89
+ self.apply_topk_to_unknown = apply_topk_to_unknown
90
+ self.topk_on_logits = topk_on_logits
91
+ self.factorize_unknown = factorize_unknown
92
+ self.factorize_rank = factorize_rank
93
+ self.use_epsilon_correction = use_epsilon_correction
94
+ self.concept_block_size = concept_block_size
95
+ self.pad_multiple = pad_multiple
96
+ self.store_unknown_weights = store_unknown_weights
97
+ self.inject_layer = inject_layer
98
+ self.inject_alpha = inject_alpha
99
+ self.start_header_id = start_header_id
100
+ self.end_header_id = end_header_id
101
+ self.eot_id = eot_id
102
+ super().__init__(
103
+ vocab_size=vocab_size,
104
+ pad_token_id=kwargs.pop("pad_token_id", 100277),
105
+ bos_token_id=kwargs.pop("bos_token_id", 100278),
106
+ eos_token_id=kwargs.pop("eos_token_id", 100257),
107
+ **kwargs,
108
+ )