Tazin commited on
Commit
f3edf3e
1 Parent(s): fc0e2a0

Add application file

Browse files
app.py ADDED
@@ -0,0 +1,27 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import gradio as gr
2
+ import onnxruntime as rt
3
+ from transformers import AutoTokenizer
4
+ import torch, json
5
+
6
+ tokenizer = AutoTokenizer.from_pretrained("distilroberta-base")
7
+
8
+ with open("genre_types_encoded.json", "r") as fp:
9
+ encode_genre_types = json.load(fp)
10
+
11
+ genres = list(encode_genre_types.keys())
12
+
13
+ inf_session = rt.InferenceSession('imdb-classifier-quantized.onnx')
14
+ input_name = inf_session.get_inputs()[0].name
15
+ output_name = inf_session.get_outputs()[0].name
16
+
17
+ def imdb_genre(description):
18
+ input_ids = tokenizer(description)['input_ids'][:512]
19
+ logits = inf_session.run([output_name], {input_name: [input_ids]})[0]
20
+ logits = torch.FloatTensor(logits)
21
+ probs = torch.sigmoid(logits)[0]
22
+ return dict(zip(genres, map(float, probs)))
23
+
24
+ label = gr.outputs.Label(num_top_classes=5)
25
+ iface = gr.Interface(fn=imdb_genre, inputs="text", outputs=label)
26
+ iface.launch(inline=False)
27
+
genre_types_encoded.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"Action": 0, "Adventure": 1, "Drama": 2, "Fantasy": 3, "Horror": 4, "Mystery": 5, "Thriller": 6, "Animation": 7, "Comedy": 8, "Crime": 9, "Sci-Fi": 10, "Romance": 11, "History": 12, "War": 13, "Family": 14, "Biography": 15, "Reality-TV": 16, "Documentary": 17, "Music": 18, "Sport": 19}
imdb-classifier-quantized.onnx ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:089065acc32db2f73e8e4acd11b3a6f96d5a06071ce337b1671c36118db1f12b
3
+ size 82479871
requirements.txt ADDED
@@ -0,0 +1,4 @@
 
 
 
 
 
1
+ gradio==3.17.0
2
+ onnxruntime==1.14.0
3
+ torch==1.13.1
4
+ transformers==4.26.0