ahadjawaid commited on
Commit
1ea8a0d
1 Parent(s): b4aef1f

Initial Commit

Browse files
app.py ADDED
@@ -0,0 +1,28 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import gradio as gr
2
+ from transformers import AutoModelForSequenceClassification, AutoTokenizer
3
+ from torch.nn.functional import softmax
4
+
5
+
6
+ class TextEmotionDetector:
7
+ def __init__(self, model_path):
8
+ self.model = AutoModelForSequenceClassification.from_pretrained(model_path)
9
+ self.tokenizer = AutoTokenizer.from_pretrained(model_path)
10
+ self.label_key = {0: 'surprise', 1: 'anger', 2: 'love', 3: 'joy', 4: 'fear', 5: 'sadness'}
11
+
12
+ def inference(self, text):
13
+ embedding = self.tokenizer(text, return_tensors="pt")
14
+ logits = self.model(input_ids=embedding['input_ids'], attention_mask=embedding['attention_mask'],
15
+ token_type_ids=embedding['token_type_ids'])['logits']
16
+
17
+ probabilities = softmax(logits)
18
+ predication = { self.label_key[i]: float(prob) for i, prob in enumerate(probabilities[0]) }
19
+
20
+ return predication
21
+
22
+ detector = TextEmotionDetector("emotion-nlp-model")
23
+
24
+ text = gr.inputs.Textbox(lines=1, placeholder="Please enter text")
25
+ label = gr.outputs.Label()
26
+ interface = gr.Interface(fn=detector.inference, inputs=text, outputs=label, title="Text Emotion Classifier")
27
+
28
+ interface.launch(inline=False)
emotion-nlp-model/added_tokens.json ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ {
2
+ "[MASK]": 128000
3
+ }
emotion-nlp-model/config.json ADDED
@@ -0,0 +1,51 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "_name_or_path": "microsoft/deberta-v3-small",
3
+ "architectures": [
4
+ "DebertaV2ForSequenceClassification"
5
+ ],
6
+ "attention_probs_dropout_prob": 0.1,
7
+ "hidden_act": "gelu",
8
+ "hidden_dropout_prob": 0.1,
9
+ "hidden_size": 768,
10
+ "id2label": {
11
+ "0": "LABEL_0",
12
+ "1": "LABEL_1",
13
+ "2": "LABEL_2",
14
+ "3": "LABEL_3",
15
+ "4": "LABEL_4",
16
+ "5": "LABEL_5"
17
+ },
18
+ "initializer_range": 0.02,
19
+ "intermediate_size": 3072,
20
+ "label2id": {
21
+ "LABEL_0": 0,
22
+ "LABEL_1": 1,
23
+ "LABEL_2": 2,
24
+ "LABEL_3": 3,
25
+ "LABEL_4": 4,
26
+ "LABEL_5": 5
27
+ },
28
+ "layer_norm_eps": 1e-07,
29
+ "max_position_embeddings": 512,
30
+ "max_relative_positions": -1,
31
+ "model_type": "deberta-v2",
32
+ "norm_rel_ebd": "layer_norm",
33
+ "num_attention_heads": 12,
34
+ "num_hidden_layers": 6,
35
+ "pad_token_id": 0,
36
+ "pooler_dropout": 0,
37
+ "pooler_hidden_act": "gelu",
38
+ "pooler_hidden_size": 768,
39
+ "pos_att_type": [
40
+ "p2c",
41
+ "c2p"
42
+ ],
43
+ "position_biased_input": false,
44
+ "position_buckets": 256,
45
+ "relative_attention": true,
46
+ "share_att_key": true,
47
+ "torch_dtype": "float32",
48
+ "transformers_version": "4.26.0",
49
+ "type_vocab_size": 0,
50
+ "vocab_size": 128100
51
+ }
emotion-nlp-model/pytorch_model.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:deb7f817c92bba709bb086fc30a5ecd7763b2919a47b6af383e979452bfa9a21
3
+ size 567637241
emotion-nlp-model/special_tokens_map.json ADDED
@@ -0,0 +1,9 @@
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "bos_token": "[CLS]",
3
+ "cls_token": "[CLS]",
4
+ "eos_token": "[SEP]",
5
+ "mask_token": "[MASK]",
6
+ "pad_token": "[PAD]",
7
+ "sep_token": "[SEP]",
8
+ "unk_token": "[UNK]"
9
+ }
emotion-nlp-model/spm.model ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:c679fbf93643d19aab7ee10c0b99e460bdbc02fedf34b92b05af343b4af586fd
3
+ size 2464616
emotion-nlp-model/tokenizer.json ADDED
The diff for this file is too large to render. See raw diff
 
emotion-nlp-model/tokenizer_config.json ADDED
@@ -0,0 +1,17 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "bos_token": "[CLS]",
3
+ "cls_token": "[CLS]",
4
+ "do_lower_case": false,
5
+ "eos_token": "[SEP]",
6
+ "mask_token": "[MASK]",
7
+ "model_max_length": 1000000000000000019884624838656,
8
+ "name_or_path": "microsoft/deberta-v3-small",
9
+ "pad_token": "[PAD]",
10
+ "sep_token": "[SEP]",
11
+ "sp_model_kwargs": {},
12
+ "special_tokens_map_file": null,
13
+ "split_by_punct": false,
14
+ "tokenizer_class": "DebertaV2Tokenizer",
15
+ "unk_token": "[UNK]",
16
+ "vocab_type": "spm"
17
+ }
emotion-nlp-model/training_args.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:dbb46604b1d3ded3d4fd466034994c74113d9910bf996689d5096139ca71847c
3
+ size 3451
requirements.txt ADDED
@@ -0,0 +1,2 @@
 
 
 
1
+ torch==1.13.1
2
+ transformers==4.26.0