File size: 1,135 Bytes
1361040
 
 
 
90ff4ab
 
1361040
a058b69
 
 
1361040
 
a058b69
 
1361040
 
 
4829bea
 
 
 
dcf1192
1361040
 
 
72ef52b
903663a
82dd379
 
1361040
 
3b5af6e
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 transformers import AutoTokenizer
import torch
from fastai.text.all import *
from blurr.text.data.all import *
from blurr.text.modeling.all import *

# Define the path to your model and dataloaders
model_path = "origin-classifier-stage-2.pkl"
dls_path = "dls_origin-classifier_v1.pkl"

learner_inf = load_learner(model_path)
dls = torch.load(dls_path)

class_label_mapping = {label: idx for idx, label in enumerate(learner_inf.dls.vocab)}

def predict_text(text):
    prediction = learner_inf.blurr_predict(text)[0]
    predicted_class_index = prediction['class_index']
    predicted_class_label = list(class_label_mapping.keys())[list(class_label_mapping.values()).index(predicted_class_index)]
    predicted_class_probability = prediction['probs'][predicted_class_index]
    return {predicted_class_label: float(predicted_class_probability)}

iface = gr.Interface(
    fn=predict_text,
    inputs="text",
    outputs=gr.outputs.JSON(label="Predicted Class and Probability"),
    title="Food Origin Classification App",
    description="Enter a Recipe, and it will predict the class label.",
)

iface.launch()