import gradio as gr import tensorflow as tf import pandas as pd from tensorflow.keras.layers import TextVectorization model = tf.keras.models.load_model('toxic-detect.h5') df = pd.read_csv('train.csv') X = df.comment_text vectorizer = TextVectorization(max_tokens=200000, output_sequence_length=1800, output_mode='int') vectorizer.adapt(X.values) def evaluate_comment(Comment): processed_Comment = vectorizer([Comment]) res = model.predict(processed_Comment) text = '' for i, col in enumerate(df.columns[2:]): text += '{}: \t\t{}\n'.format(col.upper(), '🆘🆘🆘'.upper() if res[0][i] > 0.5 else '😄😄😄'.upper()) return text interface = gr.Interface(fn = evaluate_comment, title='ToxClass', inputs = gr.inputs.Textbox(lines = 4, label='Comment', placeholder='Comment to evaluate'), outputs = gr.Textbox(lines=4, label='Evaluation'), description="An NLP model that classifies level of toxicity of the sentence.") interface.launch()