import os os.environ['TF_ENABLE_ONEDNN_OPTS'] = '0' import tensorflow as tf import gradio as gr import pandas as pd import pickle from keras.utils import pad_sequences max_len = 200 # Load the tokenizer with open('tokenizer.pickle', 'rb') as handle: tokenizer = pickle.load(handle) # Load the pre-trained model model = tf.keras.models.load_model('toxic.h5') arr = ["toxic", "severe_toxic", "obscene", "threat", "insult", "identity_hate"] def score_comment(comment): sequences = tokenizer.texts_to_sequences([comment]) inp = pad_sequences(sequences, maxlen=max_len) results = model.predict(inp) text = '' for i in range(len(arr)): text += '{}: {}\n'.format(arr[i], results[0][i] > 0.5) return text # Update the Gradio interface to use the latest syntax inputs = gr.Textbox(lines=2, placeholder='Comment to score') outputs = gr.Textbox() interface = gr.Interface(fn=score_comment, inputs=inputs, outputs=outputs) # Launch the interface interface.launch(share=True)