Sadihsn/StackOverflow_Question_Classifier
0
1import gradio as gr2import onnxruntime as rt3from transformers import AutoTokenizer4import torch, json5 6tokenizer = AutoTokenizer.from_pretrained("distilroberta-base")7 8with open("path_files/tags_types_encoded.json", "r") as fp:9 encode_tags_types = json.load(fp)10 11Tags = list(encode_tags_types.keys())12 13inf_session = rt.InferenceSession("path_files/Question-classifier-quantized.onnx")14input_name = inf_session.get_inputs()[0].name15output_name = inf_session.get_outputs()[0].name16 17def classify_Question_tags(Summary):18 input_ids = tokenizer(Summary)['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(Tags, map(float, probs))) 23 24label = gr.outputs.Label(num_top_classes=5)25iface = gr.Interface(fn=classify_Question_tags, inputs="text", outputs=label)26iface.launch(inline=False)27 28#End