File size: 2,226 Bytes
7f4441c 59a89e4 7f4441c 5e95e64 7f4441c 59a89e4 c558203 5e95e64 1746c02 cbfbd5b 59a89e4 1746c02 cbfbd5b c558203 59a89e4 c558203 7f4441c 17411ab c558203 17411ab 1746c02 59a89e4 c558203 1746c02 c558203 59a89e4 c558203 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 |
import gradio as gr
# μνλ₯Ό κ΄λ¦¬νλ μ μ λ³μ
submitted_question = ""
recordings = {}
comments = {}
# μ μλμ μ§λ¬Έ μ
λ ₯ λ°κΈ°
def teacher_question(question):
global submitted_question
submitted_question = question
recordings[submitted_question] = []
comments[submitted_question] = []
return question
# νμλ€μ μμ± λ
Ήμ λ° μ μ₯
def record_student_voice(voice):
global submitted_question
if submitted_question:
recordings[submitted_question].append(voice)
return f"Voice recorded successfully for question: {submitted_question}"
else:
return "Please submit a question first."
# λκΈ μ μ₯
def write_comment(comment):
global submitted_question
if submitted_question:
comments[submitted_question].append(comment)
return f"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, value=lambda: submitted_question)
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_display = gr.Textbox(label="Question", interactive=False, value=lambda: submitted_question)
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)
demo.launch()
|