|
|
import gradio as gr |
|
|
from transformers import pipeline |
|
|
|
|
|
|
|
|
accent_classifier = pipeline("audio-classification", model="Yactayo/AccentClassifier") |
|
|
|
|
|
def classify_accent(audio_path): |
|
|
try: |
|
|
results = accent_classifier(audio_path) |
|
|
top_result = results[0] |
|
|
label = top_result["label"] |
|
|
score = round(top_result["score"] * 100, 2) |
|
|
return f"{label} ({score}%)" |
|
|
except Exception as e: |
|
|
return f"Error: {str(e)}" |
|
|
|
|
|
|
|
|
with gr.Blocks() as demo: |
|
|
gr.Markdown("## ๐๏ธ ุชุตููู ุงูููุฌุงุช ุจุงุณุชุฎุฏุงู
AI") |
|
|
|
|
|
with gr.Row(): |
|
|
audio_input = gr.Audio(type="filepath", label="๐ ุณุฌู ุฃู ุญู
ูู ู
ูู ุตูุชู", sources=["upload", "microphone"]) |
|
|
output_text = gr.Textbox(label="ุงูููุฌุฉ ุงูู
ุชููุนุฉ") |
|
|
|
|
|
analyze_btn = gr.Button("๐ ุชุญููู ุงูููุฌุฉ") |
|
|
analyze_btn.click(fn=classify_accent, inputs=audio_input, outputs=output_text) |
|
|
|
|
|
|
|
|
if __name__ == "__main__": |
|
|
demo.launch() |
|
|
|