import gradio as gr from transformers import AutoModelForSequenceClassification, AutoTokenizer import torch # Carregando o modelo e o tokenizador model_name = "xlm-roberta-base" model = AutoModelForSequenceClassification.from_pretrained(model_name, num_labels=3) tokenizer = AutoTokenizer.from_pretrained(model_name) # Função para análise do texto bíblico def analisar_texto_biblico(texto): inputs = tokenizer(texto, return_tensors="pt", truncation=True, max_length=512) outputs = model(**inputs) probabilities = torch.nn.functional.softmax(outputs.logits, dim=-1) predictions = torch.argmax(probabilities, dim=-1) labels = ["Antigo Testamento", "Novo Testamento", "Não Bíblico"] resultado = labels[predictions.item()] confianca = probabilities[0][predictions.item()].item() return f"Classificação: {resultado}\nConfiança: {confianca:.2f}" # Interface Gradio iface = gr.Interface( fn=analisar_texto_biblico, inputs=gr.Textbox(lines=5, label="Texto Bíblico"), outputs=gr.Textbox(label="Análise"), title="Análise de Texto Bíblico com XLM-RoBERTa", description="Digite um trecho bíblico para análise." ) # Lançar a interface iface.launch()