File size: 810 Bytes
fe8155f
 
 
 
 
 
 
16da45f
fe8155f
 
 
 
 
 
88c246f
fe8155f
 
 
79fa065
fe8155f
 
45852b2
3c11d30
fe8155f
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
import gradio as gr
import onnxruntime 
from transformers import AutoTokenizer
import torch, json

token = AutoTokenizer.from_pretrained('distilroberta-base')

types = ['Toxic','Severe_toxic','Obscene','Threat','Insult','Identity_hate']

inf_session = onnxruntime.InferenceSession('classifier-quantized.onnx')
input_name = inf_session.get_inputs()[0].name
output_name = inf_session.get_outputs()[0].name

def classify(review):
    input_ids = token(review)['input_ids'][:512]
    logits = inf_session.run([output_name], {input_name: [input_ids]})[0]
    logits = torch.FloatTensor(logits)
    probs = torch.sigmoid(logits)[0]
    return dict(zip(types, map(float, probs))) 


label = gr.outputs.Label(num_top_classes=5)
iface = gr.Interface(fn=classify, inputs="text", outputs=label)
iface.launch(inline=False)