JohnJumon's picture
Update app.py
2e9243a verified
raw
history blame
996 Bytes
import gradio as gr
from transformers import pipeline
accuracy_classifier = pipeline(task="audio-classification", model="JohnJumon/pronunciation_accuracy")
fluency_classifier = pipeline(task="audio-classification", model="JohnJumon/fluency_accuracy")
prosodic_classifier = pipeline(task="audio-classification", model="JohnJumon/prosodic_accuracy")
def pronunciation_scoring(audio):
accuracy = accuracy_classifier(audio)
fluency = fluency_classifier(audio)
prosodic = prosodic_classifier(audio)
result = {
'accuracy': accuracy,
'fluency': fluency,
'prosodic': prosodic
}
for category, scores in result.items():
max_score_label = max(scores, key=lambda x: x['score'])['label']
result[category] = max_score_label
return result
gradio_app = gr.Interface(
pronunciation_scoring,
inputs=gr.Audio(sources=["microphone"]),
outputs=gr.Label(label="Result"),
title="Pronunciation Scoring",
)
if __name__ == "__main__":
gradio_app.launch()