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()