Update spoken_module.py
Browse files- spoken_module.py +8 -9
spoken_module.py
CHANGED
|
@@ -8,17 +8,16 @@ from app_utils import (
|
|
| 8 |
convert_to_wav, transcribe_audio, generate_feedback, generate_example_response
|
| 9 |
)
|
| 10 |
|
| 11 |
-
def spoken_dashboard():
|
| 12 |
with gr.Column() as spoken_panel:
|
| 13 |
gr.Markdown("""
|
| 14 |
<div id="header" style="text-align: center;">
|
| 15 |
<img src="file/images/chatter_owl.png" width="120">
|
| 16 |
<h2>π¦ Meet <strong>Chatter the Owl</strong></h2>
|
| 17 |
-
<p>
|
| 18 |
</div>
|
| 19 |
""")
|
| 20 |
|
| 21 |
-
nickname_box = gr.Textbox(label="π€ Your Nickname", placeholder="Enter your name...")
|
| 22 |
language_dropdown = gr.Dropdown(label="π Select Your Language", choices=list(LANG_CODES.keys()), value="English")
|
| 23 |
|
| 24 |
goal_dropdown = gr.Dropdown(
|
|
@@ -53,13 +52,13 @@ def spoken_dashboard():
|
|
| 53 |
example_box = gr.Textbox(label="π£ Suggested Improvement", visible=True, placeholder="Click to generate improved speech...")
|
| 54 |
history_table = gr.Dataframe(headers=["π Timestamp", "π Language", "π Transcript (Preview)", "π Feedback (Preview)"])
|
| 55 |
|
| 56 |
-
def fetch_last_transcript(
|
| 57 |
-
if not
|
| 58 |
return None
|
| 59 |
-
sessions = fetch_user_sessions(
|
| 60 |
return sessions[-1].transcript if sessions else None
|
| 61 |
|
| 62 |
-
def tutor_feedback(audio_file, language,
|
| 63 |
if not audio_file:
|
| 64 |
return "", "No audio received.", None, "", []
|
| 65 |
|
|
@@ -90,7 +89,7 @@ def spoken_dashboard():
|
|
| 90 |
|
| 91 |
audio_input.change(
|
| 92 |
fn=tutor_feedback,
|
| 93 |
-
inputs=[audio_input, language_dropdown,
|
| 94 |
outputs=[transcript_box, feedback_box, audio_output, hidden_transcript, history_table],
|
| 95 |
show_progress="minimal"
|
| 96 |
)
|
|
@@ -103,4 +102,4 @@ def spoken_dashboard():
|
|
| 103 |
inputs=[hidden_transcript, language_dropdown],
|
| 104 |
outputs=example_box)
|
| 105 |
|
| 106 |
-
return spoken_panel
|
|
|
|
| 8 |
convert_to_wav, transcribe_audio, generate_feedback, generate_example_response
|
| 9 |
)
|
| 10 |
|
| 11 |
+
def spoken_dashboard(nickname):
|
| 12 |
with gr.Column() as spoken_panel:
|
| 13 |
gr.Markdown("""
|
| 14 |
<div id="header" style="text-align: center;">
|
| 15 |
<img src="file/images/chatter_owl.png" width="120">
|
| 16 |
<h2>π¦ Meet <strong>Chatter the Owl</strong></h2>
|
| 17 |
+
<p>Choose a language and goal, and speak! Iβll help you grow as a communicator.</p>
|
| 18 |
</div>
|
| 19 |
""")
|
| 20 |
|
|
|
|
| 21 |
language_dropdown = gr.Dropdown(label="π Select Your Language", choices=list(LANG_CODES.keys()), value="English")
|
| 22 |
|
| 23 |
goal_dropdown = gr.Dropdown(
|
|
|
|
| 52 |
example_box = gr.Textbox(label="π£ Suggested Improvement", visible=True, placeholder="Click to generate improved speech...")
|
| 53 |
history_table = gr.Dataframe(headers=["π Timestamp", "π Language", "π Transcript (Preview)", "π Feedback (Preview)"])
|
| 54 |
|
| 55 |
+
def fetch_last_transcript(n):
|
| 56 |
+
if not n:
|
| 57 |
return None
|
| 58 |
+
sessions = fetch_user_sessions(n)
|
| 59 |
return sessions[-1].transcript if sessions else None
|
| 60 |
|
| 61 |
+
def tutor_feedback(audio_file, language, goal, focus_areas):
|
| 62 |
if not audio_file:
|
| 63 |
return "", "No audio received.", None, "", []
|
| 64 |
|
|
|
|
| 89 |
|
| 90 |
audio_input.change(
|
| 91 |
fn=tutor_feedback,
|
| 92 |
+
inputs=[audio_input, language_dropdown, goal_dropdown, focus_checkboxes],
|
| 93 |
outputs=[transcript_box, feedback_box, audio_output, hidden_transcript, history_table],
|
| 94 |
show_progress="minimal"
|
| 95 |
)
|
|
|
|
| 102 |
inputs=[hidden_transcript, language_dropdown],
|
| 103 |
outputs=example_box)
|
| 104 |
|
| 105 |
+
return spoken_panel
|