DHEIVER commited on
Commit
c1275f1
·
verified ·
1 Parent(s): 947bfcc

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +38 -88
app.py CHANGED
@@ -40,17 +40,15 @@ class GeradorTrilhaAprendizado:
40
  analise += "\n\n" + recursos
41
 
42
  return (
43
- gr.Textbox.update(value=transcricao, visible=True),
44
- gr.Textbox.update(value=analise, visible=True),
45
- gr.Markdown.update(visible=True, value="✅ Trilha gerada com sucesso!"),
46
- gr.Button.update(interactive=True)
47
  )
48
  except Exception as e:
49
  return (
50
- gr.Textbox.update(value=f"Erro: {str(e)}", visible=True),
51
- gr.Textbox.update(value="Não foi possível gerar a análise.", visible=True),
52
- gr.Markdown.update(visible=True, value="❌ Ocorreu um erro"),
53
- gr.Button.update(interactive=True)
54
  )
55
 
56
  def _gerar_recursos(self) -> str:
@@ -72,11 +70,7 @@ class GeradorTrilhaAprendizado:
72
  """
73
 
74
  def criar_interface():
75
- with gr.Blocks(theme=gr.themes.Soft(
76
- primary_hue="blue",
77
- secondary_hue="purple",
78
- neutral_hue="gray"
79
- )) as app:
80
  gr.Markdown("""
81
  # 🎓 Gerador de Trilha de Aprendizado
82
 
@@ -84,86 +78,42 @@ def criar_interface():
84
  """)
85
 
86
  with gr.Row():
87
- with gr.Column(scale=2):
88
- # Componentes de entrada
89
- with gr.Group():
90
- gr.Markdown("### 📝 Entrada")
91
- audio_input = gr.Audio(
92
- type="filepath",
93
- label="Áudio",
94
- sources=["microphone", "upload"],
95
- )
96
-
97
- with gr.Row():
98
- nome_trilha = gr.Textbox(
99
- label="Nome da Trilha",
100
- placeholder=" um nome para sua trilha",
101
- scale=2
102
- )
103
- nivel = gr.Dropdown(
104
- choices=["iniciante", "intermediário", "avançado"],
105
- value="intermediário",
106
- label="Nível de Dificuldade",
107
- scale=1
108
- )
109
-
110
- incluir_recursos = gr.Checkbox(
111
- label="Incluir Recursos Recomendados",
112
- value=True,
113
- info="Adicionar recursos de aprendizado curados à sua trilha"
114
- )
115
-
116
- processar_btn = gr.Button(
117
- "🚀 Gerar Trilha de Aprendizado",
118
- variant="primary",
119
- scale=2
120
- )
121
-
122
- # Componentes de saída
123
- with gr.Column(scale=2):
124
- with gr.Group():
125
- gr.Markdown("### 📊 Resultado")
126
- status = gr.Markdown(visible=False)
127
-
128
- with gr.Accordion("Transcrição do Áudio", open=False):
129
- transcricao = gr.Textbox(
130
- label="O que entendemos",
131
- lines=4,
132
- visible=False
133
- )
134
-
135
- analise = gr.Textbox(
136
- label="Sua Trilha de Aprendizado",
137
- lines=10,
138
- visible=False
139
- )
140
 
141
- # Manipuladores de eventos
142
  processar_btn.click(
143
  fn=GeradorTrilhaAprendizado().processar_audio,
144
  inputs=[audio_input, nome_trilha, nivel, incluir_recursos],
145
- outputs=[transcricao, analise, status, processar_btn],
146
- api_name="gerar_trilha"
147
  )
148
-
149
- # Exemplos
150
- gr.Examples(
151
- examples=[
152
- ["audio_exemplo.mp3", "Programação Python", "iniciante", True],
153
- ["audio_exemplo2.mp3", "Ciência de Dados", "intermediário", True],
154
- ],
155
- inputs=[audio_input, nome_trilha, nivel, incluir_recursos],
156
- outputs=[transcricao, analise, status, processar_btn],
157
- cache_examples=True,
158
- )
159
-
160
- # Informações adicionais
161
- gr.Markdown("""
162
- ### 📌 Dicas
163
- - Fale claramente e descreva seus objetivos de aprendizado em detalhes
164
- - Mencione qualquer experiência prévia no assunto
165
- - Inclua áreas específicas em que deseja focar
166
- """)
167
 
168
  return app
169
 
 
40
  analise += "\n\n" + recursos
41
 
42
  return (
43
+ transcricao,
44
+ analise,
45
+ "✅ Trilha gerada com sucesso!"
 
46
  )
47
  except Exception as e:
48
  return (
49
+ f"Erro: {str(e)}",
50
+ "Não foi possível gerar a análise.",
51
+ "❌ Ocorreu um erro"
 
52
  )
53
 
54
  def _gerar_recursos(self) -> str:
 
70
  """
71
 
72
  def criar_interface():
73
+ with gr.Blocks(theme=gr.themes.Soft()) as app:
 
 
 
 
74
  gr.Markdown("""
75
  # 🎓 Gerador de Trilha de Aprendizado
76
 
 
78
  """)
79
 
80
  with gr.Row():
81
+ with gr.Column():
82
+ audio_input = gr.Audio(
83
+ type="filepath",
84
+ label="Áudio",
85
+ sources=["microphone", "upload"]
86
+ )
87
+
88
+ nome_trilha = gr.Textbox(
89
+ label="Nome da Trilha",
90
+ placeholder="Dê um nome para sua trilha"
91
+ )
92
+
93
+ nivel = gr.Dropdown(
94
+ choices=["iniciante", "intermediário", "avançado"],
95
+ value="intermediário",
96
+ label="Nível de Dificuldade"
97
+ )
98
+
99
+ incluir_recursos = gr.Checkbox(
100
+ label="Incluir Recursos Recomendados",
101
+ value=True
102
+ )
103
+
104
+ processar_btn = gr.Button("🚀 Gerar Trilha de Aprendizado")
105
+
106
+ with gr.Row():
107
+ with gr.Column():
108
+ status = gr.Markdown()
109
+ transcricao = gr.Textbox(label="Transcrição do Áudio", lines=4)
110
+ analise = gr.Textbox(label="Sua Trilha de Aprendizado", lines=10)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
111
 
 
112
  processar_btn.click(
113
  fn=GeradorTrilhaAprendizado().processar_audio,
114
  inputs=[audio_input, nome_trilha, nivel, incluir_recursos],
115
+ outputs=[transcricao, analise, status]
 
116
  )
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
117
 
118
  return app
119