|
|
|
from fastai.text.all import* |
|
import gradio as gr |
|
|
|
learn = load_learner('nlp_model.pkl') |
|
|
|
labels = learn.dls.vocab |
|
emotion_labels = labels[1] |
|
|
|
examples = ["I can't believe you lied to me again! This is unacceptable!", |
|
"Got a surprise gift today, feeling overjoyed!"] |
|
|
|
|
|
|
|
def classify_text(text): |
|
pred,pred_idx,probs = learn.predict(text) |
|
return {emotion_labels[i]: float(probs[i]) for i in range(len(emotion_labels))} |
|
|
|
interface = gr.Interface( |
|
fn=classify_text, |
|
inputs=gr.components.Textbox( |
|
placeholder="Enter Text here", |
|
label='Input text', |
|
lines=5 |
|
), |
|
outputs=gr.components.Label( |
|
num_top_classes=4, |
|
label='Emotion in the Text' |
|
), |
|
title="Emotion Classifier", |
|
theme='soft' |
|
) |
|
|
|
interface.launch() |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|