joeyanuff commited on
Commit
e7262bc
1 Parent(s): dd90ceb

formality and translation removal

Browse files
Files changed (1) hide show
  1. app.py +81 -44
app.py CHANGED
@@ -7,16 +7,21 @@ from langchain.chains import LLMChain
7
  import datetime
8
 
9
  NUM_WORDS_DEFAULT = 0
10
- FORMALITY_DEFAULT = "Casual"
11
  TEMPERATURE_DEFAULT = 0.5
12
  EMOTION_DEFAULT = "N/A"
13
- TRANSLATE_TO_DEFAULT = "Don't translate"
14
  LITERARY_STYLE_DEFAULT = "Poetry"
15
  CHARACTER_DEFAULT = "The Old Lady Who Swallowed A Fly"
 
 
 
 
 
16
  PROMPT_TEMPLATE = PromptTemplate(
17
- input_variables=["original_words", "num_words", "formality", "emotions", "translate_to", "literary_style", "character"],
18
- template="Express {num_words} in a {formality} manner, "
19
- "{emotions}{translate_to}{literary_style}{character} the following: \n{original_words}\n",
20
  )
21
 
22
 
@@ -33,10 +38,15 @@ def set_openai_api_key(api_key, openai_api_key, temperature, llm_chain):
33
  return openai_api_key, llm_chain
34
 
35
 
36
- def transform_text(desc, openai_api_key, temperature, llm_chain, num_words, formality,
37
- anticipation_level, joy_level, trust_level,
38
- fear_level, surprise_level, sadness_level, disgust_level, anger_level,
39
- translate_to, literary_style, character):
 
 
 
 
 
40
  if not openai_api_key or openai_api_key == "":
41
  return "<pre>Please paste your OpenAI API key (see https://beta.openai.com)</pre>"
42
 
@@ -45,7 +55,7 @@ def transform_text(desc, openai_api_key, temperature, llm_chain, num_words, form
45
  num_words_prompt = "using up to " + str(num_words) + " words, "
46
 
47
  # Change some arguments to lower case
48
- formality = formality.lower()
49
  anticipation_level = anticipation_level.lower()
50
  joy_level = joy_level.lower()
51
  trust_level = trust_level.lower()
@@ -83,9 +93,9 @@ def transform_text(desc, openai_api_key, temperature, llm_chain, num_words, form
83
  else:
84
  emotions_str = "with emotions of " + ", ".join(emotions[:-1]) + " and " + emotions[-1] + ", "
85
 
86
- translate_to_str = ""
87
- if translate_to != TRANSLATE_TO_DEFAULT:
88
- translate_to_str = "translated to " + translate_to + ", "
89
 
90
  literary_style_str = ""
91
  if literary_style != LITERARY_STYLE_DEFAULT:
@@ -109,19 +119,32 @@ def transform_text(desc, openai_api_key, temperature, llm_chain, num_words, form
109
  elif character == "Humpty-Dumpty":
110
  character_str = "as if written by Humpty Dumpty, "
111
 
 
 
 
 
 
 
 
 
 
 
112
  formatted_prompt = PROMPT_TEMPLATE.format(
113
  original_words=desc,
114
  num_words=num_words_prompt,
115
- formality=formality,
116
  emotions=emotions_str,
117
- translate_to=translate_to_str,
118
  literary_style=literary_style_str,
119
  character=character_str,
120
- )
 
 
 
 
121
 
122
- generated_text = llm_chain.run({'original_words': desc, 'num_words': num_words_prompt, 'formality': formality,
123
- 'emotions': emotions_str, 'translate_to': translate_to_str,
124
- 'literary_style': literary_style_str, 'character': character_str}).strip()
 
125
 
126
  # replace all newlines with <br> in generated_text
127
  generated_text = generated_text.replace("\n", "<br>")
@@ -148,7 +171,7 @@ with block:
148
  temperature_state = gr.State(TEMPERATURE_DEFAULT)
149
  llm_chain_state = gr.State()
150
  num_words_state = gr.State(NUM_WORDS_DEFAULT)
151
- formality_state = gr.State(FORMALITY_DEFAULT)
152
  anticipation_level_state = gr.State(EMOTION_DEFAULT)
153
  joy_level_state = gr.State(EMOTION_DEFAULT)
154
  trust_level_state = gr.State(EMOTION_DEFAULT)
@@ -157,7 +180,7 @@ with block:
157
  sadness_level_state = gr.State(EMOTION_DEFAULT)
158
  disgust_level_state = gr.State(EMOTION_DEFAULT)
159
  anger_level_state = gr.State(EMOTION_DEFAULT)
160
- translate_to_state = gr.State(TRANSLATE_TO_DEFAULT)
161
  literary_style_state = gr.State(LITERARY_STYLE_DEFAULT)
162
  character_state = gr.State(CHARACTER_DEFAULT)
163
 
@@ -184,15 +207,29 @@ with block:
184
  inputs=[num_words_slider, num_words_state],
185
  outputs=[num_words_state])
186
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
187
  # formality_radio = gr.Radio(label="Formality:", choices=["Casual", "Polite", "Honorific"],
188
  # value=FORMALITY_DEFAULT)
 
189
  # formality_radio.change(update_foo,
190
  # inputs=[formality_radio, formality_state],
191
  # outputs=[formality_state])
192
 
193
  # translate_to_radio = gr.Radio(label="Translate to:", choices=[TRANSLATE_TO_DEFAULT, "emojis", "Gen Z slang", "how the stereotypical Karen would say it", "Pirate"], value=TRANSLATE_TO_DEFAULT)
194
 
195
-
196
  # translate_to_radio = gr.Radio(label="Translate to:", choices=[
197
  # TRANSLATE_TO_DEFAULT, "Arabic", "British English", "Chinese (Simplified)", "Chinese (Traditional)",
198
  # "Czech", "Danish", "Dutch", "emojis", "English", "Finnish", "French", "Gen Z slang", "German", "Greek",
@@ -201,25 +238,10 @@ with block:
201
  # "Klingon", "Korean", "Norwegian", "Old English", "Pirate", "Polish", "Portuguese", "Romanian",
202
  # "Russian", "Spanish", "Strange Planet expospeak technical talk", "Swedish", "Thai", "Turkish", "Vietnamese", "Yoda"], value=TRANSLATE_TO_DEFAULT)
203
 
204
- character_radio = gr.Radio(label="As if written by:", choices=["The Old Lady Who Swallowed A Fly", "The Old Woman Who Lived In A Shoe", "Mary Had A Little Lamb", "Humpty-Dumpty"],
205
- value=CHARACTER_DEFAULT)
206
- character_radio.change(update_foo,
207
- inputs=[character_radio, character_state],
208
- outputs=[character_state])
209
-
210
  # translate_to_radio.change(update_foo,
211
  # inputs=[translate_to_radio, translate_to_state],
212
  # outputs=[translate_to_state])
213
-
214
- literary_style_radio = gr.Radio(label="Literary style:", choices=[
215
- LITERARY_STYLE_DEFAULT, "Poetry", "Haiku", "Limerick", "Joke", "Knock-knock"],
216
- value=LITERARY_STYLE_DEFAULT)
217
-
218
- literary_style_radio.change(update_foo,
219
- inputs=[literary_style_radio, literary_style_state],
220
- outputs=[literary_style_state])
221
-
222
-
223
  gr.Examples(
224
  examples=[
225
  "My armpits are sweating gravy",
@@ -293,23 +315,38 @@ with block:
293
 
294
  gr.HTML("<center>Powered by <a href='https://github.com/hwchase17/langchain'>LangChain 🦜️🔗</a></center>")
295
 
 
 
 
 
 
 
 
 
 
296
  submit.click(transform_text,
297
  inputs=[
298
  request, openai_api_key_state, temperature_state, llm_chain_state, num_words_state,
299
- formality_state,
300
  anticipation_level_state, joy_level_state, trust_level_state, fear_level_state,
301
- surprise_level_state, sadness_level_state, disgust_level_state, anger_level_state,
302
- translate_to_state, literary_style_state, character_state],
303
  outputs=[output])
304
 
 
 
 
 
 
 
 
 
 
305
  request.submit(transform_text,
306
  inputs=[
307
  request, openai_api_key_state, temperature_state, llm_chain_state, num_words_state,
308
- formality_state,
309
  anticipation_level_state, joy_level_state, trust_level_state, fear_level_state,
310
  surprise_level_state, sadness_level_state, disgust_level_state, anger_level_state,
311
- translate_to_state, literary_style_state, character_state],
312
- outputs=[output])
313
 
314
  openai_api_key_textbox.change(set_openai_api_key,
315
  inputs=[openai_api_key_textbox, openai_api_key_state, temperature_state,
 
7
  import datetime
8
 
9
  NUM_WORDS_DEFAULT = 0
10
+ # FORMALITY_DEFAULT = "Casual"
11
  TEMPERATURE_DEFAULT = 0.5
12
  EMOTION_DEFAULT = "N/A"
13
+ # TRANSLATE_TO_DEFAULT = "Don't translate"
14
  LITERARY_STYLE_DEFAULT = "Poetry"
15
  CHARACTER_DEFAULT = "The Old Lady Who Swallowed A Fly"
16
+ # PROMPT_TEMPLATE = PromptTemplate(
17
+ # input_variables=["original_words", "num_words", "formality", "emotions", "translate_to", "literary_style", "character"],
18
+ # template="Express {num_words} in a {formality} manner, "
19
+ # "{emotions}{translate_to}{literary_style}{character} the following: \n{original_words}\n",
20
+ # )
21
  PROMPT_TEMPLATE = PromptTemplate(
22
+ input_variables=["original_words", "num_words", "emotions", "literary_style", "character"],
23
+ template="Express {num_words}, "
24
+ "{emotions}{literary_style}{character} the following: \n{original_words}\n",
25
  )
26
 
27
 
 
38
  return openai_api_key, llm_chain
39
 
40
 
41
+ # def transform_text(desc, openai_api_key, temperature, llm_chain, num_words, formality,
42
+ # anticipation_level, joy_level, trust_level,
43
+ # fear_level, surprise_level, sadness_level, disgust_level, anger_level,
44
+ # translate_to, literary_style, character):
45
+
46
+ def transform_text(desc, openai_api_key, temperature, llm_chain, num_words,
47
+ anticipation_level, joy_level, trust_level, fear_level,
48
+ surprise_level, sadness_level, disgust_level, anger_level,
49
+ literary_style, character):
50
  if not openai_api_key or openai_api_key == "":
51
  return "<pre>Please paste your OpenAI API key (see https://beta.openai.com)</pre>"
52
 
 
55
  num_words_prompt = "using up to " + str(num_words) + " words, "
56
 
57
  # Change some arguments to lower case
58
+ # formality = formality.lower()
59
  anticipation_level = anticipation_level.lower()
60
  joy_level = joy_level.lower()
61
  trust_level = trust_level.lower()
 
93
  else:
94
  emotions_str = "with emotions of " + ", ".join(emotions[:-1]) + " and " + emotions[-1] + ", "
95
 
96
+ # translate_to_str = ""
97
+ # if translate_to != TRANSLATE_TO_DEFAULT:
98
+ # translate_to_str = "translated to " + translate_to + ", "
99
 
100
  literary_style_str = ""
101
  if literary_style != LITERARY_STYLE_DEFAULT:
 
119
  elif character == "Humpty-Dumpty":
120
  character_str = "as if written by Humpty Dumpty, "
121
 
122
+ # formatted_prompt = PROMPT_TEMPLATE.format(
123
+ # original_words=desc,
124
+ # num_words=num_words_prompt,
125
+ # formality=formality,
126
+ # emotions=emotions_str,
127
+ # translate_to=translate_to_str,
128
+ # literary_style=literary_style_str,
129
+ # character=character_str,
130
+ # )
131
+
132
  formatted_prompt = PROMPT_TEMPLATE.format(
133
  original_words=desc,
134
  num_words=num_words_prompt,
 
135
  emotions=emotions_str,
 
136
  literary_style=literary_style_str,
137
  character=character_str,
138
+ )
139
+
140
+ # generated_text = llm_chain.run({'original_words': desc, 'num_words': num_words_prompt, 'formality': formality,
141
+ # 'emotions': emotions_str, 'translate_to': translate_to_str,
142
+ # 'literary_style': literary_style_str, 'character': character_str}).strip()
143
 
144
+
145
+ generated_text = llm_chain.run({'original_words': desc, 'num_words': num_words_prompt,
146
+ 'emotions': emotions_str, 'literary_style': literary_style_str,
147
+ 'character': character_str}).strip()
148
 
149
  # replace all newlines with <br> in generated_text
150
  generated_text = generated_text.replace("\n", "<br>")
 
171
  temperature_state = gr.State(TEMPERATURE_DEFAULT)
172
  llm_chain_state = gr.State()
173
  num_words_state = gr.State(NUM_WORDS_DEFAULT)
174
+ # formality_state = gr.State(FORMALITY_DEFAULT)
175
  anticipation_level_state = gr.State(EMOTION_DEFAULT)
176
  joy_level_state = gr.State(EMOTION_DEFAULT)
177
  trust_level_state = gr.State(EMOTION_DEFAULT)
 
180
  sadness_level_state = gr.State(EMOTION_DEFAULT)
181
  disgust_level_state = gr.State(EMOTION_DEFAULT)
182
  anger_level_state = gr.State(EMOTION_DEFAULT)
183
+ # translate_to_state = gr.State(TRANSLATE_TO_DEFAULT)
184
  literary_style_state = gr.State(LITERARY_STYLE_DEFAULT)
185
  character_state = gr.State(CHARACTER_DEFAULT)
186
 
 
207
  inputs=[num_words_slider, num_words_state],
208
  outputs=[num_words_state])
209
 
210
+ character_radio = gr.Radio(label="As if written by:", choices=["The Old Lady Who Swallowed A Fly", "The Old Woman Who Lived In A Shoe", "Mary Had A Little Lamb", "Humpty-Dumpty"],
211
+ value=CHARACTER_DEFAULT)
212
+ character_radio.change(update_foo,
213
+ inputs=[character_radio, character_state],
214
+ outputs=[character_state])
215
+
216
+ literary_style_radio = gr.Radio(label="Literary style:", choices=[
217
+ LITERARY_STYLE_DEFAULT, "Poetry", "Haiku", "Limerick", "Joke", "Knock-knock"],
218
+ value=LITERARY_STYLE_DEFAULT)
219
+
220
+ literary_style_radio.change(update_foo,
221
+ inputs=[literary_style_radio, literary_style_state],
222
+ outputs=[literary_style_state])
223
+
224
  # formality_radio = gr.Radio(label="Formality:", choices=["Casual", "Polite", "Honorific"],
225
  # value=FORMALITY_DEFAULT)
226
+
227
  # formality_radio.change(update_foo,
228
  # inputs=[formality_radio, formality_state],
229
  # outputs=[formality_state])
230
 
231
  # translate_to_radio = gr.Radio(label="Translate to:", choices=[TRANSLATE_TO_DEFAULT, "emojis", "Gen Z slang", "how the stereotypical Karen would say it", "Pirate"], value=TRANSLATE_TO_DEFAULT)
232
 
 
233
  # translate_to_radio = gr.Radio(label="Translate to:", choices=[
234
  # TRANSLATE_TO_DEFAULT, "Arabic", "British English", "Chinese (Simplified)", "Chinese (Traditional)",
235
  # "Czech", "Danish", "Dutch", "emojis", "English", "Finnish", "French", "Gen Z slang", "German", "Greek",
 
238
  # "Klingon", "Korean", "Norwegian", "Old English", "Pirate", "Polish", "Portuguese", "Romanian",
239
  # "Russian", "Spanish", "Strange Planet expospeak technical talk", "Swedish", "Thai", "Turkish", "Vietnamese", "Yoda"], value=TRANSLATE_TO_DEFAULT)
240
 
 
 
 
 
 
 
241
  # translate_to_radio.change(update_foo,
242
  # inputs=[translate_to_radio, translate_to_state],
243
  # outputs=[translate_to_state])
244
+
 
 
 
 
 
 
 
 
 
245
  gr.Examples(
246
  examples=[
247
  "My armpits are sweating gravy",
 
315
 
316
  gr.HTML("<center>Powered by <a href='https://github.com/hwchase17/langchain'>LangChain 🦜️🔗</a></center>")
317
 
318
+ # submit.click(transform_text,
319
+ # inputs=[
320
+ # request, openai_api_key_state, temperature_state, llm_chain_state, num_words_state,
321
+ # formality_state,
322
+ # anticipation_level_state, joy_level_state, trust_level_state, fear_level_state,
323
+ # surprise_level_state, sadness_level_state, disgust_level_state, anger_level_state,
324
+ # translate_to_state, literary_style_state, character_state],
325
+ # outputs=[output])
326
+
327
  submit.click(transform_text,
328
  inputs=[
329
  request, openai_api_key_state, temperature_state, llm_chain_state, num_words_state,
 
330
  anticipation_level_state, joy_level_state, trust_level_state, fear_level_state,
331
+ surprise_level_state, sadness_level_state, disgust_level_state, anger_level_state, literary_style_state, character_state],
 
332
  outputs=[output])
333
 
334
+ # request.submit(transform_text,
335
+ # inputs=[
336
+ # request, openai_api_key_state, temperature_state, llm_chain_state, num_words_state,
337
+ # formality_state,
338
+ # anticipation_level_state, joy_level_state, trust_level_state, fear_level_state,
339
+ # surprise_level_state, sadness_level_state, disgust_level_state, anger_level_state,
340
+ # translate_to_state, literary_style_state, character_state],
341
+ # outputs=[output])
342
+
343
  request.submit(transform_text,
344
  inputs=[
345
  request, openai_api_key_state, temperature_state, llm_chain_state, num_words_state,
 
346
  anticipation_level_state, joy_level_state, trust_level_state, fear_level_state,
347
  surprise_level_state, sadness_level_state, disgust_level_state, anger_level_state,
348
+ literary_style_state, character_state],
349
+ outputs=[output])
350
 
351
  openai_api_key_textbox.change(set_openai_api_key,
352
  inputs=[openai_api_key_textbox, openai_api_key_state, temperature_state,