File size: 2,491 Bytes
7f4441c 4b559b2 c558203 cbfbd5b 7f4441c 5e95e64 7f4441c a8345a1 c558203 5e95e64 1746c02 cbfbd5b 1746c02 cbfbd5b c558203 7f4441c 17411ab c558203 17411ab 1746c02 c558203 1746c02 c558203 17411ab c558203 0846800 c558203 0846800 17411ab |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 |
import gradio as gr
# μ μ₯λ μμ± νμΌμ κ΄λ¦¬νλ λμ
λ리
recordings = {}
# μ μ₯λ λκΈμ κ΄λ¦¬νλ λμ
λ리
comments = {}
# μ μλμ΄ μ μΆν μ§λ¬Έμ μ μ₯νλ λ³μ
submitted_question = ""
# μ μλμ μ§λ¬Έ μ
λ ₯ λ°κΈ°
def teacher_question(question):
global submitted_question
submitted_question = question
return question
# νμλ€μ μμ± λ
Ήμ λ° μ μ₯
def record_student_voice(voice):
global submitted_question
if submitted_question:
if submitted_question in recordings:
recordings[submitted_question].append(voice)
else:
recordings[submitted_question] = [voice]
return "Voice recorded successfully for question: " + submitted_question
else:
return "Please submit a question first."
# λκΈ μ μ₯
def write_comment(comment):
global submitted_question
if submitted_question:
if submitted_question in comments:
comments[submitted_question].append(comment)
else:
comments[submitted_question] = [comment]
return "Comment added successfully for question: " + submitted_question
else:
return "Please submit a question first."
# Gradio μΈν°νμ΄μ€ μ μ
with gr.Blocks() as demo:
with gr.Tab("Teacher's Question"):
question_input = gr.Textbox(lines=2, placeholder="Enter your question here...", label="Teacher's Question")
submit_question = gr.Button("Submit")
output_question = gr.Textbox(label="Submitted Question")
submit_question.click(teacher_question, inputs=question_input, outputs=output_question)
with gr.Tab("Record Voice"):
question_display = gr.Textbox(label="Question", interactive=False)
voice_input = gr.Audio(type="numpy", label="Record your voice")
submit_voice = gr.Button("Submit Voice")
output_voice = gr.Textbox(label="Status")
submit_voice.click(record_student_voice, inputs=[voice_input], outputs=output_voice)
with gr.Tab("Write Comment"):
comment_input = gr.Textbox(placeholder="Your comment", label="Comment")
submit_comment = gr.Button("Submit Comment")
output_comment = gr.Textbox(label="Status")
submit_comment.click(write_comment, inputs=[comment_input], outputs=output_comment)
def update_question_display():
return submitted_question
demo.load(update_question_display, outputs=question_display)
demo.launch()
|