luanpoppe commited on
Commit
0872b76
·
1 Parent(s): c80083e

feat: adicionar mais opções de prompts ao gerar ementa

Browse files
_utils/gerar_documento_utils/GerarDocumento.py CHANGED
@@ -329,3 +329,49 @@ class GerarDocumento:
329
  )
330
 
331
  return documento_gerado
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
329
  )
330
 
331
  return documento_gerado
332
+
333
+ async def gerar_ementa_final(
334
+ self,
335
+ llm_ultimas_requests: str,
336
+ prompt_primeira_etapa: str,
337
+ context_primeiro_prompt: str,
338
+ ):
339
+
340
+ llm = self.select_model_for_last_requests(llm_ultimas_requests) # type: ignore
341
+ prompt_instance = Prompt()
342
+
343
+ documento_gerado = await self.checar_se_resposta_vazia_do_documento_final(
344
+ llm_ultimas_requests, prompt_primeira_etapa
345
+ )
346
+
347
+ texto_final_juntando_as_etapas = ""
348
+ resposta_primeira_etapa = documento_gerado
349
+ texto_final_juntando_as_etapas += resposta_primeira_etapa
350
+ self.axiom_instance.send_axiom(f"RESULTADO ETAPA 1: {resposta_primeira_etapa}")
351
+
352
+ if self.prompt_gerar_documento_etapa_2:
353
+ self.axiom_instance.send_axiom("GERANDO DOCUMENTO - COMEÇANDO ETAPA 2")
354
+ prompt_etapa_2 = prompt_instance.create_and_invoke_prompt(
355
+ self.prompt_gerar_documento_etapa_2,
356
+ dynamic_dict={"context": context_primeiro_prompt},
357
+ )
358
+ documento_gerado = llm.invoke(prompt_etapa_2).content
359
+ resposta_segunda_etapa = documento_gerado
360
+ texto_final_juntando_as_etapas += (
361
+ f"\n\nresposta_segunda_etapa:{resposta_segunda_etapa}"
362
+ )
363
+ self.axiom_instance.send_axiom(f"RESULTADO ETAPA 2: {documento_gerado}")
364
+
365
+ if self.prompt_gerar_documento_etapa_3:
366
+ self.axiom_instance.send_axiom("GERANDO DOCUMENTO - COMEÇANDO ETAPA 3")
367
+ prompt_etapa_3 = prompt_instance.create_and_invoke_prompt(
368
+ self.prompt_gerar_documento_etapa_3,
369
+ dynamic_dict={
370
+ "context": f"{resposta_primeira_etapa}\n\n{resposta_segunda_etapa}"
371
+ },
372
+ )
373
+ documento_gerado = llm.invoke(prompt_etapa_3).content
374
+ texto_final_juntando_as_etapas += f"\n\n{documento_gerado}"
375
+ self.axiom_instance.send_axiom(f"RESULTADO ETAPA 3: {documento_gerado}")
376
+
377
+ return texto_final_juntando_as_etapas
gerar_documento/views.py CHANGED
@@ -167,9 +167,12 @@ class GerarEmentaView(AsyncAPIView):
167
  input_variables=["context"],
168
  template=obj.prompt_gerar_documento,
169
  )
170
- texto_da_parte = await gerar_documento_instance.checar_se_resposta_vazia_do_documento_final(
171
- obj.llm_ultimas_requests,
172
- prompt_template.format(context=text),
 
 
 
173
  )
174
 
175
  texto_completo += texto_da_parte
@@ -271,9 +274,10 @@ class GerarEmentaComPDFProprioView(AsyncAPIView):
271
  input_variables=["context"],
272
  template=serializer_obj.prompt_gerar_documento,
273
  )
274
- texto_da_parte = await gerar_documento_instance.checar_se_resposta_vazia_do_documento_final(
275
  serializer_obj.llm_ultimas_requests,
276
  prompt_template.format(context=text),
 
277
  )
278
 
279
  texto_completo += texto_da_parte
 
167
  input_variables=["context"],
168
  template=obj.prompt_gerar_documento,
169
  )
170
+ texto_da_parte = (
171
+ await gerar_documento_instance.gerar_ementa_final(
172
+ obj.llm_ultimas_requests,
173
+ prompt_template.format(context=text),
174
+ text,
175
+ )
176
  )
177
 
178
  texto_completo += texto_da_parte
 
274
  input_variables=["context"],
275
  template=serializer_obj.prompt_gerar_documento,
276
  )
277
+ texto_da_parte = await gerar_documento_instance.gerar_ementa_final(
278
  serializer_obj.llm_ultimas_requests,
279
  prompt_template.format(context=text),
280
+ text,
281
  )
282
 
283
  texto_completo += texto_da_parte