adrianoL commited on
Commit
402eb16
·
verified ·
1 Parent(s): f8b814f

Create app.py

Browse files
Files changed (1) hide show
  1. app.py +34 -0
app.py ADDED
@@ -0,0 +1,34 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Importa a biblioteca Gradio para criação de interfaces gráficas interativas e a biblioteca transformers para carregamento do modelo
2
+ import gradio as gr
3
+ from transformers import pipeline
4
+
5
+ # Define a função que processa o texto e retorna a nota da redação
6
+ def mostrar_resultado(texto):
7
+ # Verifica se o texto possui pelo menos 400 caracteres
8
+ if len(texto) < 400:
9
+ return 'O texto precisa ter no mínimo 400 caracteres'
10
+
11
+ # Realiza a classificação e converte o rótulo em uma nota de 0 a 1000
12
+ nota = int(classificador(texto)[0]['label']) * 10 # Multiplica por 10 para ajustar ao valor de 0 a 1000
13
+ return nota
14
+
15
+ # Inicializa o pipeline de classificação de texto com o modelo específico no Hugging Face
16
+ classificador = pipeline(
17
+ 'text-classification',
18
+ model='adrianoL/distilbert-pt-cased-redacao-nota-modelo', # Nome do modelo customizado
19
+ framework='tf' # Define o uso do TensorFlow
20
+ )
21
+
22
+ # Cria a interface gráfica com Gradio
23
+ app = gr.Interface(
24
+ fn=mostrar_resultado, # Função que será chamada ao clicar no botão
25
+ inputs=gr.Textbox(label='Digite o texto'), # Entrada de texto para o usuário
26
+ outputs=gr.Textbox(label='Nota da redação'), # Saída com a nota gerada pelo modelo
27
+ title='Insira um texto para receber uma nota entre 0 e 1000' # Título da interface
28
+ )
29
+
30
+ # Lança a aplicação em um servidor local
31
+ if __name__ == "__main__":
32
+ app.launch(share=True)
33
+
34
+