|
import gradio as gr |
|
import torch |
|
from transformers import pipeline |
|
|
|
app_title = "Portuguese Hate Speech Detection" |
|
|
|
app_description = """ |
|
This app detects hate speech on Portuguese text using multiple models. You can either introduce your own sentences by filling in "Text" or click on one of the examples provided below. |
|
""" |
|
|
|
model_list = [ |
|
"knowhate/HateBERTimbau", |
|
"knowhate/HateBERTimbau-youtube", |
|
"knowhate/HateBERTimbau-twitter", |
|
"knowhate/HateBERTimbau-yt-tt", |
|
] |
|
|
|
|
|
|
|
|
|
|
|
def predict(chosen_model): |
|
|
|
|
|
model_pipeline = pipeline("text-classification", model=chosen_model) |
|
for prediction in model_pipeline: |
|
label = model_pipeline['label'] |
|
return label |
|
|
|
inputs = [ |
|
gr.Textbox(label="Text", value= "As pessoas tem que perceber que ser 'panasca' não é deixar de ser homem, é deixar de ser humano kkk"), |
|
gr.Dropdown(label="Model", choices=model_list, value=model_list[1]) |
|
] |
|
|
|
outputs = [ |
|
gr.Label(label="Result"), |
|
] |
|
|
|
|
|
gr.Interface(fn=predict, inputs=inputs, outputs=outputs, title=app_title, |
|
description=app_description).launch() |