Transformers
JonusNattapong commited on
Commit
fcd9d64
·
verified ·
1 Parent(s): 80bdc03

Create configuration_openthaiwilai.py

Browse files
Files changed (1) hide show
  1. configuration_openthaiwilai.py +56 -0
configuration_openthaiwilai.py ADDED
@@ -0,0 +1,56 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ from transformers import PretrainedConfig
2
+
3
+
4
+ class OpenThaiWilaiConfig(PretrainedConfig):
5
+ model_type = "OpenThaiWilai"
6
+
7
+ attribute_map = {
8
+ "num_experts": "num_experts",
9
+ "top_k": "top_k",
10
+ "num_hidden_layers": "num_layers"
11
+ }
12
+
13
+ def __init__(
14
+ self,
15
+ vocab_size=50000,
16
+ hidden_size=768,
17
+ num_layers=6,
18
+ num_heads=8,
19
+ num_experts=4,
20
+ top_k=2,
21
+ max_position_embeddings=512,
22
+ intermediate_size=3072,
23
+ eos_token_id=None,
24
+ bos_token_id=None,
25
+ pad_token_id=None,
26
+ **kwargs
27
+ ):
28
+ if top_k > num_experts:
29
+ raise ValueError(
30
+ f"top_k ({top_k}) cannot be greater than num_experts ({num_experts})"
31
+ )
32
+
33
+ super().__init__(
34
+ pad_token_id=pad_token_id,
35
+ bos_token_id=bos_token_id,
36
+ eos_token_id=eos_token_id,
37
+ **kwargs
38
+ )
39
+
40
+ self.vocab_size = vocab_size
41
+ self.hidden_size = hidden_size
42
+ self.num_layers = num_layers
43
+ self.num_heads = num_heads
44
+ self.num_experts = num_experts
45
+ self.top_k = top_k
46
+ self.max_position_embeddings = max_position_embeddings
47
+ self.intermediate_size = intermediate_size
48
+
49
+ self.num_hidden_layers = num_layers
50
+
51
+ def to_dict(self):
52
+ output = super().to_dict()
53
+ output["num_experts"] = self.num_experts
54
+ output["top_k"] = self.top_k
55
+ output["num_hidden_layers"] = self.num_layers
56
+ return output