calvesca commited on
Commit
b0a23b3
·
verified ·
1 Parent(s): 0bd62e5

Upload folder using huggingface_hub

Browse files
Files changed (1) hide show
  1. app.py +4 -69
app.py CHANGED
@@ -1,73 +1,8 @@
1
  import gradio as gr
2
- from transformers import GPT2Tokenizer, GPT2LMHeadModel
3
- import torch
4
 
5
- # Carregar o tokenizer e o modelo ajustado
6
- tokenizer = GPT2Tokenizer.from_pretrained('modelo_treinado')
7
- model = GPT2LMHeadModel.from_pretrained('modelo_treinado')
8
 
9
- # Configurar o dispositivo para GPU se disponível
10
- device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')
11
- model.to(device)
12
 
13
- # Função para gerar notas de release
14
- def gerar_nota_release(feature_description_prompt, max_new_tokens=50, num_return_sequences=1):
15
- # Definir o template com um placeholder para a descrição da funcionalidade
16
- template = """É hora de atualizar o seu íon Itaú.
17
- {}
18
- Atualize o app já e aproveite!"""
19
-
20
- # Formatar o template com o placeholder para o prompt
21
- prompt = template.format(feature_description_prompt)
22
-
23
- # Tokenizar o prompt de entrada
24
- inputs = tokenizer.encode(prompt, return_tensors='pt').to(device)
25
-
26
- # Obter o comprimento do prompt
27
- prompt_length = inputs.shape[1]
28
-
29
- # Gerar texto
30
- outputs = model.generate(
31
- inputs,
32
- max_new_tokens=max_new_tokens,
33
- num_return_sequences=num_return_sequences,
34
- no_repeat_ngram_size=2,
35
- do_sample=True,
36
- top_k=50,
37
- top_p=0.95,
38
- temperature=0.7,
39
- eos_token_id=tokenizer.eos_token_id,
40
- pad_token_id=tokenizer.eos_token_id,
41
- )
42
-
43
- # Decodificar e retornar o texto gerado
44
- notas = []
45
- for i in range(num_return_sequences):
46
- # Decodificar a sequência gerada
47
- output = outputs[i]
48
- texto_completo = tokenizer.decode(output, skip_special_tokens=True)
49
-
50
- # Extrair apenas a parte gerada após o prompt
51
- texto_gerado = texto_completo[len(prompt):].strip()
52
-
53
- # Montar a nota de release completa
54
- nota_release = template.format(feature_description_prompt + ' ' + texto_gerado)
55
- notas.append(nota_release)
56
- return notas[0]
57
-
58
- # Definir a função para o chat
59
- def chat_model(feature_description):
60
- return gerar_nota_release(feature_description)
61
-
62
- # Criar a interface do Gradio
63
- chat_interface = gr.Interface(
64
- fn=chat_model,
65
- inputs=gr.Textbox(lines=2, placeholder="Digite a descrição da funcionalidade..."),
66
- outputs=gr.Textbox(),
67
- title="Chat para Geração de Notas de Release",
68
- description="Digite uma descrição de funcionalidade e o modelo gerará uma nota de release de acordo com o modelo treinado.",
69
- )
70
-
71
- # Executar a interface
72
- if __name__ == "__main__":
73
- chat_interface.launch(share=True)
 
1
  import gradio as gr
 
 
2
 
3
+ def greet(name):
4
+ return "Hello " + name + "!"
 
5
 
6
+ demo = gr.Interface(fn=greet, inputs="textbox", outputs="textbox")
 
 
7
 
8
+ demo.launch(share=True) # Share your demo with just 1 extra parameter 🚀