Add monologue mode (no conversational agent)
Browse files
app.py
CHANGED
|
@@ -284,7 +284,7 @@ class ChatWrapper:
|
|
| 284 |
|
| 285 |
def __call__(
|
| 286 |
self, api_key: str, inp: str, history: Optional[Tuple[str, str]], chain: Optional[ConversationChain],
|
| 287 |
-
trace_chain: bool, speak_text: bool, express_chain: Optional[LLMChain],
|
| 288 |
num_words, formality, anticipation_level, joy_level, trust_level,
|
| 289 |
fear_level, surprise_level, sadness_level, disgust_level, anger_level,
|
| 290 |
translate_to, literary_style
|
|
@@ -305,7 +305,10 @@ class ChatWrapper:
|
|
| 305 |
# Set OpenAI key
|
| 306 |
import openai
|
| 307 |
openai.api_key = api_key
|
| 308 |
-
|
|
|
|
|
|
|
|
|
|
| 309 |
|
| 310 |
output = transform_text(output, express_chain, num_words, formality, anticipation_level, joy_level,
|
| 311 |
trust_level,
|
|
@@ -421,6 +424,7 @@ with gr.Blocks(css=".gradio-container {background-color: lightgray}") as block:
|
|
| 421 |
tools_list_state = gr.State(TOOLS_DEFAULT_LIST)
|
| 422 |
trace_chain_state = gr.State(False)
|
| 423 |
speak_text_state = gr.State(False)
|
|
|
|
| 424 |
|
| 425 |
# Pertains to Express-inator functionality
|
| 426 |
num_words_state = gr.State(NUM_WORDS_DEFAULT)
|
|
@@ -501,13 +505,9 @@ with gr.Blocks(css=".gradio-container {background-color: lightgray}") as block:
|
|
| 501 |
speak_text_cb.change(update_foo, inputs=[speak_text_cb, speak_text_state],
|
| 502 |
outputs=[speak_text_state])
|
| 503 |
|
| 504 |
-
|
| 505 |
-
|
| 506 |
-
|
| 507 |
-
value=FORMALITY_DEFAULT)
|
| 508 |
-
formality_radio.change(update_foo,
|
| 509 |
-
inputs=[formality_radio, formality_state],
|
| 510 |
-
outputs=[formality_state])
|
| 511 |
|
| 512 |
with gr.Tab("Translate to"):
|
| 513 |
translate_to_radio = gr.Radio(label="Translate to:", choices=[
|
|
@@ -526,6 +526,14 @@ with gr.Blocks(css=".gradio-container {background-color: lightgray}") as block:
|
|
| 526 |
inputs=[translate_to_radio, translate_to_state],
|
| 527 |
outputs=[translate_to_state])
|
| 528 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 529 |
with gr.Tab("Lit style"):
|
| 530 |
literary_style_radio = gr.Radio(label="Literary style:", choices=[
|
| 531 |
LITERARY_STYLE_DEFAULT, "Prose", "Summary", "Outline", "Bullets", "Poetry", "Haiku", "Limerick", "Joke",
|
|
@@ -614,7 +622,7 @@ with gr.Blocks(css=".gradio-container {background-color: lightgray}") as block:
|
|
| 614 |
</center>""")
|
| 615 |
|
| 616 |
message.submit(chat, inputs=[openai_api_key_textbox, message, history_state, chain_state, trace_chain_state,
|
| 617 |
-
speak_text_state,
|
| 618 |
express_chain_state, num_words_state, formality_state,
|
| 619 |
anticipation_level_state, joy_level_state, trust_level_state, fear_level_state,
|
| 620 |
surprise_level_state, sadness_level_state, disgust_level_state, anger_level_state,
|
|
@@ -623,7 +631,7 @@ with gr.Blocks(css=".gradio-container {background-color: lightgray}") as block:
|
|
| 623 |
outputs=[chatbot, history_state, audio_html, tmp_aud_file, message])
|
| 624 |
|
| 625 |
submit.click(chat, inputs=[openai_api_key_textbox, message, history_state, chain_state, trace_chain_state,
|
| 626 |
-
speak_text_state,
|
| 627 |
express_chain_state, num_words_state, formality_state,
|
| 628 |
anticipation_level_state, joy_level_state, trust_level_state, fear_level_state,
|
| 629 |
surprise_level_state, sadness_level_state, disgust_level_state, anger_level_state,
|
|
|
|
| 284 |
|
| 285 |
def __call__(
|
| 286 |
self, api_key: str, inp: str, history: Optional[Tuple[str, str]], chain: Optional[ConversationChain],
|
| 287 |
+
trace_chain: bool, speak_text: bool, monologue: bool, express_chain: Optional[LLMChain],
|
| 288 |
num_words, formality, anticipation_level, joy_level, trust_level,
|
| 289 |
fear_level, surprise_level, sadness_level, disgust_level, anger_level,
|
| 290 |
translate_to, literary_style
|
|
|
|
| 305 |
# Set OpenAI key
|
| 306 |
import openai
|
| 307 |
openai.api_key = api_key
|
| 308 |
+
if not monologue:
|
| 309 |
+
output, hidden_text = run_chain(chain, inp, capture_hidden_text=trace_chain)
|
| 310 |
+
else:
|
| 311 |
+
output, hidden_text = inp, None
|
| 312 |
|
| 313 |
output = transform_text(output, express_chain, num_words, formality, anticipation_level, joy_level,
|
| 314 |
trust_level,
|
|
|
|
| 424 |
tools_list_state = gr.State(TOOLS_DEFAULT_LIST)
|
| 425 |
trace_chain_state = gr.State(False)
|
| 426 |
speak_text_state = gr.State(False)
|
| 427 |
+
monologue_state = gr.State(False) # Takes the input and repeats it back to the user, optionally transforming it.
|
| 428 |
|
| 429 |
# Pertains to Express-inator functionality
|
| 430 |
num_words_state = gr.State(NUM_WORDS_DEFAULT)
|
|
|
|
| 505 |
speak_text_cb.change(update_foo, inputs=[speak_text_cb, speak_text_state],
|
| 506 |
outputs=[speak_text_state])
|
| 507 |
|
| 508 |
+
monologue_cb = gr.Checkbox(label="Translate/restate what you enter (no conversational agent)", value=False)
|
| 509 |
+
monologue_cb.change(update_foo, inputs=[monologue_cb, monologue_state],
|
| 510 |
+
outputs=[monologue_state])
|
|
|
|
|
|
|
|
|
|
|
|
|
| 511 |
|
| 512 |
with gr.Tab("Translate to"):
|
| 513 |
translate_to_radio = gr.Radio(label="Translate to:", choices=[
|
|
|
|
| 526 |
inputs=[translate_to_radio, translate_to_state],
|
| 527 |
outputs=[translate_to_state])
|
| 528 |
|
| 529 |
+
with gr.Tab("Formality"):
|
| 530 |
+
formality_radio = gr.Radio(label="Formality:",
|
| 531 |
+
choices=[FORMALITY_DEFAULT, "Casual", "Polite", "Honorific"],
|
| 532 |
+
value=FORMALITY_DEFAULT)
|
| 533 |
+
formality_radio.change(update_foo,
|
| 534 |
+
inputs=[formality_radio, formality_state],
|
| 535 |
+
outputs=[formality_state])
|
| 536 |
+
|
| 537 |
with gr.Tab("Lit style"):
|
| 538 |
literary_style_radio = gr.Radio(label="Literary style:", choices=[
|
| 539 |
LITERARY_STYLE_DEFAULT, "Prose", "Summary", "Outline", "Bullets", "Poetry", "Haiku", "Limerick", "Joke",
|
|
|
|
| 622 |
</center>""")
|
| 623 |
|
| 624 |
message.submit(chat, inputs=[openai_api_key_textbox, message, history_state, chain_state, trace_chain_state,
|
| 625 |
+
speak_text_state, monologue_state,
|
| 626 |
express_chain_state, num_words_state, formality_state,
|
| 627 |
anticipation_level_state, joy_level_state, trust_level_state, fear_level_state,
|
| 628 |
surprise_level_state, sadness_level_state, disgust_level_state, anger_level_state,
|
|
|
|
| 631 |
outputs=[chatbot, history_state, audio_html, tmp_aud_file, message])
|
| 632 |
|
| 633 |
submit.click(chat, inputs=[openai_api_key_textbox, message, history_state, chain_state, trace_chain_state,
|
| 634 |
+
speak_text_state, monologue_state,
|
| 635 |
express_chain_state, num_words_state, formality_state,
|
| 636 |
anticipation_level_state, joy_level_state, trust_level_state, fear_level_state,
|
| 637 |
surprise_level_state, sadness_level_state, disgust_level_state, anger_level_state,
|