| import gradio as gr |
|
|
| from custom_theme import CustomMinimalTheme |
| from service.oral.oral_service import oral_exercise |
| from service.written.written_service import written_exercise |
| from utils.instructions import ORAL_QUIZ, TRANSCRIPTION_EXERCISE, QA_DRILL, PRONUNCIATION_PRACTICE |
|
|
| with gr.Blocks(theme=CustomMinimalTheme()) as demo: |
| with gr.Tabs(): |
| with gr.TabItem("🗣️ Oral Quiz"): |
| oral_exercise( |
| "data/oral_quiz/audio", "data/oral_quiz/expected_result", ORAL_QUIZ) |
|
|
| with gr.TabItem("✍️ Transcription Exercise"): |
| written_exercise("data/transcription_exercise/audio", |
| "data/transcription_exercise/expected_result", TRANSCRIPTION_EXERCISE) |
|
|
| with gr.TabItem("🗣️ Pronunciation Practice"): |
| oral_exercise("data/pronunciation_practice/audio", |
| "data/pronunciation_practice/expected_result", PRONUNCIATION_PRACTICE) |
|
|
| with gr.TabItem("🗣️ Q&A Drill"): |
| oral_exercise("data/q&a_drill/audio", "data/q&a_drill/expected_result", QA_DRILL) |
|
|
| if __name__ == "__main__": |
| demo.launch(show_api=False) |
|
|