JuanJoseMV commited on
Commit
db1702e
·
1 Parent(s): 33f9b9a

Adding components

Browse files
Files changed (1) hide show
  1. app.py +49 -12
app.py CHANGED
@@ -14,7 +14,7 @@ from NeuralTextGenerator import BertTextGenerator
14
 
15
  # generator = pipeline("sentiment-analysis")
16
 
17
- print('dfg')
18
  model_name = "JuanJoseMV/BERT_text_gen" #"dbmdz/bert-base-italian-uncased"
19
  en_model = BertTextGenerator(model_name)
20
  tokenizer = en_model.tokenizer
@@ -24,8 +24,41 @@ device = model.device
24
  en_model.tokenizer.add_special_tokens({'additional_special_tokens': ['[POSITIVE-0]', '[POSITIVE-1]', '[POSITIVE-2]','[NEGATIVE-0]', '[NEGATIVE-1]', '[NEGATIVE-2]']})
25
  en_model.model.resize_token_embeddings(len(en_model.tokenizer))
26
 
27
- def classify(sentiment):
28
- parameters = {'n_sentences': 1,
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
29
  'batch_size': 2,
30
  'avg_len':30,
31
  'max_len':50,
@@ -33,9 +66,9 @@ def classify(sentiment):
33
  'generation_method':'parallel',
34
  'sample': True,
35
  'burnin': 450,
36
- 'max_iter': 100,
37
  'top_k': 100,
38
- 'seed_text': f"[{sentiment}-0] [{sentiment}-1] [{sentiment}-2] Ronaldo",
39
  # 'verbose': True
40
  }
41
  sents = en_model.generate(**parameters)
@@ -45,14 +78,18 @@ def classify(sentiment):
45
  gen_text += f'- GENERATED TWEET #{i}: {s}\n'
46
 
47
  return gen_text
 
48
 
49
- demo = gr.Blocks()
50
 
51
- with demo:
52
- gr.Markdown()
53
- inputs = gr.Radio(["POSITIVE", "NEGATIVE"], label="Sentiment to generate") # gr.Dropdown(["POSITIVE", "NEGATIVE"], label="Sentiment to generate")
54
- output = gr.Textbox(label="Generated tweet")
55
- b1 = gr.Button("Generate")
56
- b1.click(classify, inputs=inputs, outputs=output)
 
 
 
 
57
 
58
  demo.launch()
 
14
 
15
  # generator = pipeline("sentiment-analysis")
16
 
17
+ # print('dfg')
18
  model_name = "JuanJoseMV/BERT_text_gen" #"dbmdz/bert-base-italian-uncased"
19
  en_model = BertTextGenerator(model_name)
20
  tokenizer = en_model.tokenizer
 
24
  en_model.tokenizer.add_special_tokens({'additional_special_tokens': ['[POSITIVE-0]', '[POSITIVE-1]', '[POSITIVE-2]','[NEGATIVE-0]', '[NEGATIVE-1]', '[NEGATIVE-2]']})
25
  en_model.model.resize_token_embeddings(len(en_model.tokenizer))
26
 
27
+ # def classify(sentiment):
28
+ # parameters = {'n_sentences': 1,
29
+ # 'batch_size': 2,
30
+ # 'avg_len':30,
31
+ # 'max_len':50,
32
+ # # 'std_len' : 3,
33
+ # 'generation_method':'parallel',
34
+ # 'sample': True,
35
+ # 'burnin': 450,
36
+ # 'max_iter': 100,
37
+ # 'top_k': 100,
38
+ # 'seed_text': f"[{sentiment}-0] [{sentiment}-1] [{sentiment}-2] Ronaldo",
39
+ # # 'verbose': True
40
+ # }
41
+ # sents = en_model.generate(**parameters)
42
+ # gen_text = ''
43
+
44
+ # for i, s in enumerate(sents):
45
+ # gen_text += f'- GENERATED TWEET #{i}: {s}\n'
46
+
47
+ # return gen_text
48
+
49
+ # demo = gr.Blocks()
50
+
51
+ # with demo:
52
+ # gr.Markdown()
53
+ # inputs = gr.Radio(["POSITIVE", "NEGATIVE"], label="Sentiment to generate") # gr.Dropdown(["POSITIVE", "NEGATIVE"], label="Sentiment to generate")
54
+ # output = gr.Textbox(label="Generated tweet")
55
+ # b1 = gr.Button("Generate")
56
+ # b1.click(classify, inputs=inputs, outputs=output)
57
+
58
+
59
+
60
+ def sentence_builder(n_sentences, max_iter, sentiment, seed_text):
61
+ parameters = {'n_sentences': n_sentences,
62
  'batch_size': 2,
63
  'avg_len':30,
64
  'max_len':50,
 
66
  'generation_method':'parallel',
67
  'sample': True,
68
  'burnin': 450,
69
+ 'max_iter': max_iter,
70
  'top_k': 100,
71
+ 'seed_text': f"[{sentiment}-0] [{sentiment}-1] [{sentiment}-2] {seed_text}",
72
  # 'verbose': True
73
  }
74
  sents = en_model.generate(**parameters)
 
78
  gen_text += f'- GENERATED TWEET #{i}: {s}\n'
79
 
80
  return gen_text
81
+ # return f"""The {quantity} {animal}s from {" and ".join(countries)} went to the {place} where they {" and ".join(activity_list)} until the {"morning" if morning else "night"}"""
82
 
 
83
 
84
+ demo = gr.Interface(
85
+ sentence_builder,
86
+ [
87
+ gr.Slider(1, 15, value=2, label="Num. Tweets", info="Number of tweets to be generated."),
88
+ gr.Slider(50, 500, value=100, label="Max. iter", info="Maximum number of iterations for the generation."),
89
+ gr.Radio(["POSITIVE", "NEGATIVE"], label="Sentiment to generate"),
90
+ gr.Textbox('', label="Seed text", info="Seed text for the generation.")
91
+ ],
92
+ "text",
93
+ )
94
 
95
  demo.launch()