giseldo commited on
Commit
d769d0e
·
verified ·
1 Parent(s): 05dea1f

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +28 -29
app.py CHANGED
@@ -64,7 +64,7 @@ def pesquisar_videos_youtube(consulta, num_resultados=5):
64
 
65
  ######### YOUTUBE FIM #########
66
 
67
- ######### CREWA AI INICIO #########
68
 
69
  deepseek_api_key = os.getenv("DEEPSEEK_API_KEY")
70
 
@@ -82,14 +82,9 @@ def processar_topicos(topicos_str):
82
  def executar_equipe_interface(disciplina, assunto, topicos_str, horas, dias):
83
 
84
  topicos = processar_topicos(topicos_str)
85
-
86
  solicitacao = f"Disciplina: {disciplina}\nAssunto: {assunto}\nTópicos: {topicos}\n"
87
-
88
- yield "Buscando vídeos no YouTube...", gr.update(value=10)
89
  entradaYoutube = pesquisar_videos_youtube(solicitacao)
90
-
91
- # Motivação
92
- yield "Criando mensagem motivacional...", gr.update(value=30)
93
  agentMotivador = Agent(
94
  role='Motivador',
95
  goal='Escrever uma mensagem motivacional para o estudante.',
@@ -97,6 +92,7 @@ def executar_equipe_interface(disciplina, assunto, topicos_str, horas, dias):
97
  llm=modelo,
98
  verbose=False
99
  )
 
100
  taskMotivador = Task(
101
  description = (
102
  "Escreva uma mensagem motivacional para o estudante, formatada em Markdown.\n\n"
@@ -110,10 +106,9 @@ def executar_equipe_interface(disciplina, assunto, topicos_str, horas, dias):
110
  agent=agentMotivador,
111
  expected_output='Mensagem motivacional em markdown.'
112
  )
 
113
  saidaMotivador = agentMotivador.execute_task(taskMotivador)
114
 
115
- # Guia de Estudos
116
- yield "Gerando guia de estudos...", gr.update(value=50)
117
  agentGuia = Agent(
118
  role="Especialista em Guia de Estudos",
119
  goal="Criar um guia de estudos estruturado, explicativo e didático sobre um determinado assunto.",
@@ -121,6 +116,7 @@ def executar_equipe_interface(disciplina, assunto, topicos_str, horas, dias):
121
  llm=modelo,
122
  verbose=False
123
  )
 
124
  taskGuia = Task(
125
  description = (
126
  f"Crie um Guia de Estudos para {disciplina}, abordando {assunto} e os tópicos {topicos}. "
@@ -145,10 +141,9 @@ def executar_equipe_interface(disciplina, assunto, topicos_str, horas, dias):
145
  agent=agentGuia,
146
  expected_output='Guia de estudos em markdown'
147
  )
 
148
  saidaGuia = agentGuia.execute_task(taskGuia)
149
 
150
- # Plano de Estudos
151
- yield "Criando plano de estudos...", gr.update(value=70)
152
  agentPlano = Agent(
153
  role="Especialista em Plano de Estudos",
154
  goal="Criar um plano de estudos eficiente para que o aluno aprenda de maneira organizada.",
@@ -189,10 +184,9 @@ def executar_equipe_interface(disciplina, assunto, topicos_str, horas, dias):
189
  agent=agentPlano,
190
  expected_output='Plano de estudos estruturado em markdown'
191
  )
 
192
  saidaPlano = agentPlano.execute_task(taskPlano)
193
 
194
- # Curadoria de Vídeos
195
- yield "Organizando vídeos do YouTube...", gr.update(value=90)
196
  agentYoutube = Agent(
197
  role='Especialista em Curadoria de Vídeos Educacionais',
198
  goal='Organizar e formatar vídeos educacionais encontrados no YouTube para aprendizado eficiente.',
@@ -200,6 +194,7 @@ def executar_equipe_interface(disciplina, assunto, topicos_str, horas, dias):
200
  llm=modelo,
201
  verbose=False
202
  )
 
203
  taskYoutube = Task(
204
  description = (
205
  f"Lista do Youtube: {entradaYoutube} "
@@ -219,37 +214,42 @@ def executar_equipe_interface(disciplina, assunto, topicos_str, horas, dias):
219
  agent=agentYoutube,
220
  expected_output="Lista de vídeos organizados em Markdown."
221
  )
 
222
  saidaYoutube = agentYoutube.execute_task(taskYoutube)
223
 
224
- yield "Processo concluído!", gr.update(value=100)
 
 
 
225
 
226
- saidaCompleta = f"""
227
- # 🎯 Motivação
228
- {saidaMotivador}
229
 
230
  ---
231
 
232
- # 📖 Guia de Estudos
233
- {saidaGuia}
 
234
 
235
  ---
236
 
237
- # 📅 Plano de Estudos
238
- {saidaPlano}
 
239
 
240
  ---
241
 
242
- # 🎥 Vídeos Educacionais
243
- {saidaYoutube}
244
- """
 
245
 
246
- yield saidaCompleta, gr.update(value=100)
247
 
248
- ######### CREWA AI FIM #########
249
 
250
  with gr.Blocks() as demo:
251
  gr.Markdown("# 📚 Gerador de Material de Estudos")
252
- gr.Markdown("## Ajuste do original do [Kleber Galvão](https://huggingface.co/spaces/GalvaoFilho/KMData) ")
253
  with gr.Row():
254
  with gr.Column():
255
  disciplina = gr.Textbox(label="Disciplina", value="Matemática")
@@ -258,12 +258,11 @@ with gr.Blocks() as demo:
258
  horas = gr.Textbox(label="Tempo diário", value="2 horas")
259
  dias = gr.Textbox(label="Quantos dias", value="5 dias")
260
  gerar_button = gr.Button("Gerar Material")
261
- progress = gr.Slider(minimum=0, maximum=100, step=1, value=0, label="Progresso", interactive=False)
262
  with gr.Column():
263
  resultado = gr.Markdown(label="Material Completo (Markdown)")
264
 
265
  gerar_button.click(fn=executar_equipe_interface,
266
  inputs=[disciplina, assunto, topicos_str, horas, dias],
267
- outputs=[resultado, progress])
268
 
269
  demo.launch()
 
64
 
65
  ######### YOUTUBE FIM #########
66
 
67
+ ######### CREWAAI INICIO #########
68
 
69
  deepseek_api_key = os.getenv("DEEPSEEK_API_KEY")
70
 
 
82
  def executar_equipe_interface(disciplina, assunto, topicos_str, horas, dias):
83
 
84
  topicos = processar_topicos(topicos_str)
 
85
  solicitacao = f"Disciplina: {disciplina}\nAssunto: {assunto}\nTópicos: {topicos}\n"
 
 
86
  entradaYoutube = pesquisar_videos_youtube(solicitacao)
87
+
 
 
88
  agentMotivador = Agent(
89
  role='Motivador',
90
  goal='Escrever uma mensagem motivacional para o estudante.',
 
92
  llm=modelo,
93
  verbose=False
94
  )
95
+
96
  taskMotivador = Task(
97
  description = (
98
  "Escreva uma mensagem motivacional para o estudante, formatada em Markdown.\n\n"
 
106
  agent=agentMotivador,
107
  expected_output='Mensagem motivacional em markdown.'
108
  )
109
+
110
  saidaMotivador = agentMotivador.execute_task(taskMotivador)
111
 
 
 
112
  agentGuia = Agent(
113
  role="Especialista em Guia de Estudos",
114
  goal="Criar um guia de estudos estruturado, explicativo e didático sobre um determinado assunto.",
 
116
  llm=modelo,
117
  verbose=False
118
  )
119
+
120
  taskGuia = Task(
121
  description = (
122
  f"Crie um Guia de Estudos para {disciplina}, abordando {assunto} e os tópicos {topicos}. "
 
141
  agent=agentGuia,
142
  expected_output='Guia de estudos em markdown'
143
  )
144
+
145
  saidaGuia = agentGuia.execute_task(taskGuia)
146
 
 
 
147
  agentPlano = Agent(
148
  role="Especialista em Plano de Estudos",
149
  goal="Criar um plano de estudos eficiente para que o aluno aprenda de maneira organizada.",
 
184
  agent=agentPlano,
185
  expected_output='Plano de estudos estruturado em markdown'
186
  )
187
+
188
  saidaPlano = agentPlano.execute_task(taskPlano)
189
 
 
 
190
  agentYoutube = Agent(
191
  role='Especialista em Curadoria de Vídeos Educacionais',
192
  goal='Organizar e formatar vídeos educacionais encontrados no YouTube para aprendizado eficiente.',
 
194
  llm=modelo,
195
  verbose=False
196
  )
197
+
198
  taskYoutube = Task(
199
  description = (
200
  f"Lista do Youtube: {entradaYoutube} "
 
214
  agent=agentYoutube,
215
  expected_output="Lista de vídeos organizados em Markdown."
216
  )
217
+
218
  saidaYoutube = agentYoutube.execute_task(taskYoutube)
219
 
220
+ saidaCompleta = """
221
+ # Material de estudo
222
+
223
+ ## 🎯 Motivação
224
 
225
+ {}
 
 
226
 
227
  ---
228
 
229
+ ## 📖 Guia de Estudos
230
+
231
+ {}
232
 
233
  ---
234
 
235
+ ## 📅 Plano de Estudos
236
+
237
+ {}
238
 
239
  ---
240
 
241
+ ## 🎥 Vídeos Educacionais
242
+
243
+ {}
244
+ """.format(saidaMotivador, saidaGuia, saidaPlano, saidaYoutube)
245
 
246
+ return saidaCompleta
247
 
248
+ ######### CREWAAI FIM #########
249
 
250
  with gr.Blocks() as demo:
251
  gr.Markdown("# 📚 Gerador de Material de Estudos")
252
+ gr.Markdown("## Pequeno ajuste no original do [Kleber Galvão](https://huggingface.co/spaces/GalvaoFilho/KMData) ")
253
  with gr.Row():
254
  with gr.Column():
255
  disciplina = gr.Textbox(label="Disciplina", value="Matemática")
 
258
  horas = gr.Textbox(label="Tempo diário", value="2 horas")
259
  dias = gr.Textbox(label="Quantos dias", value="5 dias")
260
  gerar_button = gr.Button("Gerar Material")
 
261
  with gr.Column():
262
  resultado = gr.Markdown(label="Material Completo (Markdown)")
263
 
264
  gerar_button.click(fn=executar_equipe_interface,
265
  inputs=[disciplina, assunto, topicos_str, horas, dias],
266
+ outputs=[resultado])
267
 
268
  demo.launch()