marioluciofjr commited on
Commit
ca0cea3
1 Parent(s): 5c4b08e

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +12 -5
app.py CHANGED
@@ -30,11 +30,15 @@ def transcribe_and_analyze(audio_file):
30
  """
31
  Recebe um arquivo de áudio, transcreve e analisa as emoções presentes.
32
  """
33
- # Transcrevendo o áudio
34
- transcription = transcriber(audio_file)["text"]
 
 
 
 
35
 
36
- # Lista de emoções para a classificação
37
- emotions = ["medo", "rancor", "ódio", "raiva", "felicidade", "amor", "tristeza", "ansiedade", "inveja", "sarcasmo", "vergonha"]
38
 
39
  # Realizando a classificação zero-shot na transcrição
40
  classification = classifier(transcription, emotions, multi_label=True)
@@ -42,7 +46,10 @@ def transcribe_and_analyze(audio_file):
42
  # Formatando os resultados
43
  results = []
44
  for label, score in zip(classification["labels"], classification["scores"]):
45
- results.append(f"{label}: {score:.2f}")
 
 
 
46
 
47
  # Unindo os resultados em uma string
48
  emotion_output = "\n".join(results)
 
30
  """
31
  Recebe um arquivo de áudio, transcreve e analisa as emoções presentes.
32
  """
33
+ # Transcrevendo o áudio em chunks de 30 segundos com sobreposição de 5 segundos
34
+ transcription = transcriber(
35
+ audio_file,
36
+ chunk_length_s=30,
37
+ stride_length_s=5
38
+ )["text"]
39
 
40
+ # Lista atualizada de emoções para a classificação
41
+ emotions = ["alegria", "tristeza", "raiva", "nojo", "medo", "ansiedade", "vergonha", "tédio", "inveja"]
42
 
43
  # Realizando a classificação zero-shot na transcrição
44
  classification = classifier(transcription, emotions, multi_label=True)
 
46
  # Formatando os resultados
47
  results = []
48
  for label, score in zip(classification["labels"], classification["scores"]):
49
+ results.append(f"{label.capitalize()}: {score:.2f}")
50
+
51
+ # Ordenando os resultados por score decrescente
52
+ results.sort(key=lambda x: float(x.split(": ")[1]), reverse=True)
53
 
54
  # Unindo os resultados em uma string
55
  emotion_output = "\n".join(results)