File size: 2,026 Bytes
fc80b92
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
from transformers import PretrainedConfig

class BilmaConfig(PretrainedConfig):
    model_type = "bilma"

    def __init__(
        self,
        weights="MX",
        include_top = True,
        add_head = None,
        pooling = None,
        num_attention_heads: int = 4,
        num_hidden_layers: int = 2,
        seq_max_length: int = 280,
        hidden_size: int = 512,
        vocab_size: int = 29025,
        hidden_dropout_prob: float = 0.1,        
        **kwargs,
    ):
        countries = ["MX"]
        poolings = ["mean", "cls", "max"]
        if weights not in countries:
            raise ValueError(f"`weights` must be one of {countries}, got {weights}.")
        if add_head is not None and include_top == True:
            raise ValueError(f"To add a head, 'include_top' must be False")
        if pooling is not None and include_top == True:
            raise ValueError(f"To specify a pooling, 'include_top' must be False")
        if pooling is not None and pooling not in poolings:
            raise ValueError(f"`pooling` must be one of {poolings}, got {pooling}.")
        if weights is not None:
            self.weights = weights
            self.include_top = include_top
            self.add_head = add_head
            self.pooling = pooling
            self.num_attention_heads = 4
            self.num_hidden_layers = 2
            self.seq_max_length = 280
            self.hidden_size = 512
            self.vocab_size = 29025
            self.hidden_dropout_prob = 0.1
            super().__init__(**kwargs)
            return

        self.weights = weights
        self.include_top = include_top
        self.add_head = add_head
        self.pooling = pooling
        self.num_attention_heads = num_attention_heads
        self.num_hidden_layers = num_hidden_layers
        self.seq_max_length = seq_max_length
        self.hidden_size = hidden_size
        self.vocab_size = vocab_size
        self.hidden_dropout_prob = hidden_dropout_prob        
        super().__init__(**kwargs)