File size: 976 Bytes
f084f22
e3bf24a
 
 
 
 
f084f22
e3bf24a
 
a4f826e
e3bf24a
 
 
 
f084f22
8b38c34
e3bf24a
f084f22
 
 
 
 
e3bf24a
 
 
 
 
 
f084f22
 
e3bf24a
 
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
import gradio as gr
from clients import send_request
import json
import ast
import cv2
import numpy as np
def save_non_abuse_class(top_classes):
    top_class_json = json.loads(json.dumps(top_classes['message']))
    top_class_json = ast.literal_eval(top_class_json)
    return dict(list(top_class_json.items())[:3])
        
        
    
    
def prediction(img):
    top_classes = send_request(img_input=img, url='http://54.169.176.200/')
    print(top_classes)
    save_class = save_non_abuse_class(top_classes)
    prediction_str = "\n".join([f"{index+1}. {property} : {round(value*100,2)}%" for index, (property, value) in enumerate(save_class.items())])
    return prediction_str


with gr.Blocks(css="footer{display:none !important}") as demo:
    with gr.Row():
        prediction_output = gr.Textbox(placeholder="result", label="Prediction")
        gr.Interface(prediction, inputs="image", outputs=prediction_output)




if __name__ == "__main__":
    demo.launch()