Spaces:
Runtime error
Runtime error
Update app.py
Browse files
app.py
CHANGED
@@ -42,12 +42,18 @@ def similar(a, b):
|
|
42 |
return SequenceMatcher(None, a, b).ratio()
|
43 |
|
44 |
def compare(chosen_word, path):
|
45 |
-
|
46 |
user = predict(path)
|
47 |
-
coeff =
|
48 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
49 |
|
50 |
|
51 |
-
word_choice = gr.inputs.Dropdown(list(df['replica'].unique()), label="Choose a word")
|
52 |
|
53 |
gr.Interface(fn=compare, inputs=[word_choice, gr.inputs.Audio(source='microphone', type='filepath', optional=True)], outputs= 'text').launch(debug=True)
|
|
|
42 |
return SequenceMatcher(None, a, b).ratio()
|
43 |
|
44 |
def compare(chosen_word, path):
|
45 |
+
etalons = [list(val.split('.')) for val in df.loc[df['replica'] == chosen_word, 'transcription'].values]
|
46 |
user = predict(path)
|
47 |
+
coeff = 0.0
|
48 |
+
idx=0
|
49 |
+
for i in range(len(etalons)):
|
50 |
+
new_coeff = similar(user, etalons[i])
|
51 |
+
if new_coeff > coeff:
|
52 |
+
coeff = new_coeff
|
53 |
+
idx=i
|
54 |
+
return f'Коэффицент схожести вашего произношения и произношения носителя {coeff}. Чем ближе коэффицент к единице, тем лучше.' + '\nВаше произношение: [' + ''.join(user) + ']\nПроизноешение носителя: [' + ''.join(etalons[idx]) + ']'
|
55 |
|
56 |
|
57 |
+
word_choice = gr.inputs.Dropdown(sorted(list(df['replica'].unique()), label="Choose a word"))
|
58 |
|
59 |
gr.Interface(fn=compare, inputs=[word_choice, gr.inputs.Audio(source='microphone', type='filepath', optional=True)], outputs= 'text').launch(debug=True)
|