luanpoppe commited on
Commit
113d947
·
1 Parent(s): 9d333bd

fix: contextuals com gemini

Browse files
_utils/gerar_relatorio_modelo_usuario/utils.py CHANGED
@@ -47,7 +47,8 @@ def validate_many_chunks_in_one_request(
47
  import re
48
 
49
  pattern = (
50
- r"\[([\d.\-]+)\]\s*---\s*\[([^]]+)\]\s*---\s*\[([^]]+)\]\s*</chunk_context>"
 
51
  )
52
  # pattern = r"\[(\d+|[-.]+)\] --- (.+?) --- (.+?)</chunk_context>" # Funciona para quando a resposta do LLM não vem com "document_id" escrito
53
  matches = re.findall(pattern, context, re.DOTALL)
 
47
  import re
48
 
49
  pattern = (
50
+ # r"\[([\d.\-]+)\]\s*---\s*\[([^]]+)\]\s*---\s*\[([^]]+)\]\s*</chunk_context>"
51
+ r"\[*([\d.\-]+)\]*\s*---\s*\[*([^]]+)\]*\s*---\s*\[*([^]]+)\]*\s*</chunk_context>"
52
  )
53
  # pattern = r"\[(\d+|[-.]+)\] --- (.+?) --- (.+?)</chunk_context>" # Funciona para quando a resposta do LLM não vem com "document_id" escrito
54
  matches = re.findall(pattern, context, re.DOTALL)
tests/gerar_relatorio_modelo_usuario/fixture_lista_respostas_contextuals.py CHANGED
@@ -800,116 +800,67 @@ lista_respostas_contextuals = [
800
  ]
801
 
802
  lista_respostas_contextuals_cenario_02 = [
803
- """<final_output>
804
- <chunk_context>
805
- [427371469] --- [Processo 8005705-82.2024.8.05.0001] --- [Este chunk apresenta informações iniciais sobre o processo, incluindo a classe, o órgão julgador e a última distribuição. Ele estabelece o contexto do caso, que envolve a busca de Janilde Novaes Franco da Mota pelo pagamento de diferenças salariais referentes ao Piso Nacional do Magistério, conforme descrito no resumo do processo.]
806
- </chunk_context>
807
- <chunk_context>
808
- [427371469] --- [Processo nº 8005705-82.2024.8.05.0001] --- [Neste chunk, são fornecidos detalhes sobre a impetração do mandado de segurança coletivo, destacando a legitimidade da autora e a necessidade de implementação do piso salarial. Ele se relaciona com a argumentação da autora sobre a desnecessidade de filiação à AFPEB para a execução do título coletivo, um ponto central no processo.]
809
- </chunk_context>
810
- <chunk_context>
811
- [427371469] --- [Processo nº 8005705-82.2024.8.05.0001] --- [Este chunk discute a concessão da justiça gratuita e a liquidação coletiva do mandado de segurança, enfatizando a busca da autora por valores retroativos. Ele se conecta ao resumo ao abordar a questão da liquidação prévia e a argumentação sobre a necessidade de comprovação da condição de beneficiário do título.]
812
- </chunk_context>
813
- <chunk_context>
814
- [427371469] --- [Processo nº 8005705-82.2024.8.05.0001] --- [Neste trecho, são apresentadas as premissas fixadas pela relatora sobre a desnecessidade de filiação à AFPEB e a implementação do piso nacional. Ele se alinha com a defesa da autora, que argumenta que todos os profissionais do magistério têm direito ao piso, independentemente da associação.]
815
- </chunk_context>
816
- <chunk_context>
817
- [427371469] --- [Processo nº 8005705-82.2024.8.05.0001] --- [Este chunk aborda a questão da correção monetária e juros de mora, detalhando os índices aplicáveis. Ele é relevante para o resumo, pois estabelece os parâmetros financeiros que serão utilizados na execução da sentença, um aspecto crucial para a autora.]
818
- </chunk_context>
819
- <chunk_context>
820
- [427371469] --- [Processo nº 8005705-82.2024.8.05.0001] --- [Neste trecho, discute-se a liquidez do título e a ausência de litispendência em relação à ação coletiva. Ele se relaciona com a argumentação da autora sobre a possibilidade de execução individual do título coletivo, um ponto importante no processo.]
821
- </chunk_context>
822
- <chunk_context>
823
- [427371469] --- [Processo nº 8005705-82.2024.8.05.0001] --- [Este chunk detalha as diferenças salariais a serem pagas, incluindo a correção monetária e os juros. Ele é fundamental para o entendimento do cálculo das diferenças salariais que a autora busca, conforme mencionado no resumo do processo.]
824
- </chunk_context>
825
- <chunk_context>
826
- [427371469] --- [Processo nº 8005705-82.2024.8.05.0001] --- [Neste trecho, a autora apresenta a comprovação de sua condição de beneficiária do título, reforçando seu direito ao piso nacional. Ele se conecta ao resumo ao evidenciar a argumentação da autora sobre a paridade vencimental e a necessidade de comprovação.]
827
- </chunk_context>
828
- <chunk_context>
829
- [427371469] --- [Processo nº 8005705-82.2024.8.05.0001] --- [Este chunk discute as condições para a aposentadoria e a paridade vencimental, abordando a legislação pertinente. Ele é relevante para o caso, pois esclarece os direitos da autora em relação ao seu benefício e como isso se relaciona com o piso nacional.]
830
- </chunk_context>
831
- <chunk_context>
832
- [427371469] --- [Processo nº 8005705-82.2024.8.05.0001] --- [Neste trecho, são apresentadas as condições para a aposentadoria e os direitos dos servidores, incluindo a paridade. Ele se relaciona com a argumentação da autora sobre a necessidade de garantir a paridade vencimental para os aposentados.]
833
- </chunk_context>
834
- <chunk_context>
835
- [427371469] --- [Processo nº 8005705-82.2024.8.05.0001] --- [Este chunk aborda a concessão de aposentadorias e pensões, detalhando os direitos dos servidores. Ele é importante para o entendimento do contexto legal que envolve a demanda da autora por diferenças salariais.]
836
- </chunk_context>
837
- <chunk_context>
838
- [427371469] --- [Processo nº 8005705-82.2024.8.05.0001] --- [Neste trecho, discute-se a revisão dos proventos de aposentadoria e a paridade. Ele se conecta ao resumo ao abordar a importância da paridade para os servidores aposentados e como isso impacta a demanda da autora.]
839
- </chunk_context>
840
- <chunk_context>
841
- [427371469] --- [Processo nº 8005705-82.2024.8.05.0001] --- [Este chunk detalha as condições para a aposentadoria e os direitos dos servidores, incluindo a paridade. Ele é relevante para o caso, pois esclarece os direitos da autora em relação ao seu benefício e como isso se relaciona com o piso nacional.]
842
- </chunk_context>
843
- <chunk_context>
844
- [427371469] --- [Processo nº 8005705-82.2024.8.05.0001] --- [Neste trecho, a autora reafirma seu pedido de gratuidade de justiça e a total procedência da demanda. Ele se relaciona com o resumo ao enfatizar a importância da assistência judiciária para a autora na busca por seus direitos.]
845
- </chunk_context>
846
- <chunk_context>
847
- [427371469] --- [Processo nº 8005705-82.2024.8.05.0001] --- [Este chunk finaliza com o pedido da autora, incluindo a citação do réu e a atribuição do valor da causa. Ele é crucial para o entendimento do que a autora busca no processo e como isso se alinha com o resumo do caso.]
848
- </chunk_context>
849
- </final_output>""",
850
- """
851
- <final_output>
852
- 1. <chunk_context>
853
- [4309874] --- [Mandado de Segurança Coletivo] --- [Este trecho aborda a decisão do Tribunal de Justiça da Bahia sobre a competência para julgar mandados de segurança contra atos de Secretários de Estado, destacando a importância da paridade vencimental para os professores aposentados, o que se relaciona diretamente ao pedido da autora por diferenças salariais referentes ao Piso Nacional do Magistério.]
854
  </chunk_context>
855
- 2. <chunk_context>
856
- [22380004] --- [Mandado de Segurança Coletivo] --- [Neste trecho, é discutida a omissão do Estado em cumprir a legislação que estabelece o Piso Nacional do Magistério, evidenciando a situação de ilegalidade que a autora busca corrigir através do mandado de segurança, reforçando a temática central do processo sobre a implementação do piso salarial.]
857
  </chunk_context>
858
- 3. <chunk_context>
859
- [4309874] --- [Mandado de Segurança Coletivo] --- [Aqui, é detalhada a necessidade de assegurar que os vencimentos dos professores sejam pagos conforme o Piso Nacional do Magistério, conforme a Lei 11.738/2008, o que é um dos fundamentos do pedido da autora no processo, alinhando-se com a busca por justiça salarial.]
860
  </chunk_context>
861
- 4. <chunk_context>
862
- [4309874] --- [Mandado de Segurança Coletivo] --- [Este trecho menciona a atualização do piso salarial e a necessidade de que os vencimentos dos professores sejam ajustados anualmente, o que é crucial para entender a base legal que sustenta o pedido da autora por diferenças salariais retroativas.]
863
  </chunk_context>
864
- 5. <chunk_context>
865
- [4309874] --- [Mandado de Segurança Coletivo] --- [Neste segmento, é discutido que a remuneração dos professores deve ser composta pelo vencimento básico e não por outras vantagens, o que é um ponto central na argumentação da autora para garantir que seus proventos sejam ajustados ao piso nacional, conforme a legislação vigente.]
866
  </chunk_context>
867
- 6. <chunk_context>
868
- [4309874] --- [Mandado de Segurança Coletivo] --- [Aqui, é abordada a questão da proporcionalidade do pagamento do piso salarial em relação à carga horária dos professores, um aspecto que a autora utiliza para justificar a necessidade de revisão de seus vencimentos, reforçando a argumentação sobre a aplicação correta da lei.]
869
  </chunk_context>
870
- 7. <chunk_context>
871
- [4309874] --- [Mandado de Segurança Coletivo] --- [Este trecho detalha a situação de um servidor paradigma e a comparação entre seu vencimento atual e o piso nacional, evidenciando a diferença que a autora busca corrigir, o que é fundamental para a compreensão do impacto financeiro do pedido no processo.]
872
  </chunk_context>
873
- 8. <chunk_context>
874
- [4309874] --- [Mandado de Segurança Coletivo] --- [Neste segmento, é feita uma análise comparativa entre os vencimentos de diferentes servidores, destacando a necessidade de que todos os professores, independentemente do regime de pagamento, recebam pelo menos o valor do piso nacional, o que é um ponto central na demanda da autora.]
875
  </chunk_context>
876
- 9. <chunk_context>
877
- [4309874] --- [Mandado de Segurança Coletivo] --- [Aqui, é discutido o direito dos professores a receberem o piso nacional, enfatizando a ilegalidade de qualquer pagamento inferior, o que está diretamente relacionado ao pedido da autora por diferenças salariais e à proteção dos direitos dos servidores.]
878
  </chunk_context>
879
  10. <chunk_context>
880
- [4309874] --- [Mandado de Segurança Coletivo] --- [Este trecho menciona a necessidade de que o Estado da Bahia cumpra a legislação federal sobre o piso salarial, reforçando a argumentação da autora sobre a obrigação do ente público em garantir os direitos dos professores, o que é um aspecto crucial do processo.]
881
  </chunk_context>
882
  11. <chunk_context>
883
- [4309874] --- [Mandado de Segurança Coletivo] --- [Neste segmento, é abordada a questão da modulação de efeitos da lei que estabelece o piso salarial, o que é relevante para entender as implicações temporais do pedido da autora e a necessidade de pagamento retroativo das diferenças salariais.]
884
  </chunk_context>
885
  12. <chunk_context>
886
- [4309874] --- [Mandado de Segurança Coletivo] --- [Aqui, a autora solicita a concessão da segurança para garantir que todos os substituídos recebam o piso nacional, o que é um pedido central do processo e reflete a busca por justiça e equidade salarial entre os professores.]
887
  </chunk_context>
888
  13. <chunk_context>
889
- [4309874] --- [Mandado de Segurança Coletivo] --- [Este trecho detalha os pedidos da autora, incluindo a obrigação de reajustar os vencimentos e pagar as diferenças salariais, o que é fundamental para entender a extensão da demanda e a urgência da situação enfrentada pelos professores.]
890
  </chunk_context>
891
  14. <chunk_context>
892
- [4309874] --- [Mandado de Segurança Coletivo] --- [Neste segmento, é discutida a gratuidade da justiça, um aspecto importante para a autora, que busca assegurar que a falta de recursos não impeça o acesso à justiça, refletindo a vulnerabilidade da classe de professores aposentados.]
893
  </chunk_context>
894
  15. <chunk_context>
895
- [4309874] --- [Mandado de Segurança Coletivo] --- [Aqui, é mencionado o pedido para que o Estado apresente os assentamentos funcionais do impetrante, o que é uma solicitação relevante para a comprovação dos direitos da autora e a fundamentação do pedido de diferenças salariais.]
896
  </chunk_context>
897
  16. <chunk_context>
898
- [4309874] --- [Mandado de Segurança Coletivo] --- [Este trecho aborda a urgência do caso e a determinação de que a decisão seja cumprida imediatamente, o que destaca a gravidade da situação enfrentada pelos professores e a necessidade de uma resposta rápida do judiciário.]
899
  </chunk_context>
900
  17. <chunk_context>
901
- [4309874] --- [Mandado de Segurança Coletivo] --- [Neste segmento, é discutido o despacho que ciência ao órgão de representação judicial do Estado, o que é um passo processual importante que demonstra a formalidade e a seriedade do pedido da autora.]
902
  </chunk_context>
903
  18. <chunk_context>
904
- [4309874] --- [Mandado de Segurança Coletivo] --- [Aqui, é apresentado um comprovante de inscrição e situação cadastral, que pode ser relevante para a identificação e formalização do pedido da autora, refletindo a necessidade de documentação adequada no processo.]
905
  </chunk_context>
906
  19. <chunk_context>
907
- [4309874] --- [Mandado de Segurança Coletivo] --- [Este trecho menciona a situação cadastral da associação dos funcionários públicos, que pode ser relevante para entender a representação legal da autora e a legitimidade do pedido no contexto do mandado de segurança.]
908
  </chunk_context>
909
  20. <chunk_context>
910
- [4309874] --- [Mandado de Segurança Coletivo] --- [Neste segmento, é discutido o agravo em recurso especial interposto pelo Estado da Bahia, o que ilustra a continuidade do litígio e a resistência do ente público em cumprir a legislação sobre o piso salarial, refletindo a complexidade do caso.]
911
- </chunk_context>
912
- </final_output>"""
913
  ]
914
 
915
 
 
800
  ]
801
 
802
  lista_respostas_contextuals_cenario_02 = [
803
+ """
804
+ 1. <chunk_context>
805
+ 458615055 --- Carvalho & Matos --- Este trecho apresenta a réplica do autor à contestação do Estado da Bahia, especificamente abordando questões preliminares como gratuidade da justiça e a natureza da GAPM, além de refutar alegações sobre a aplicação da Súmula 37 do STF e o acúmulo da GAPM com a GFPM. O autor reitera que a GAPM é uma gratificação genérica e que a Lei 7.145/1997 previa a implementação das referências IV e V.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
806
  </chunk_context>
807
+ 2. <chunk_context>
808
+ 467429558 - Pág. 1 --- SENTENÇA --- Este trecho corresponde à sentença proferida pela juíza Regianne Yukie Tiba Xavier, que julga procedente a ação ordinária de cobrança movida por Armando Alves Ferreira contra o Estado da Bahia. A sentença, datada de 07/10/2024, é um dos pontos cruciais do processo, conforme destacado no resumo geral.
809
  </chunk_context>
810
+ 3. <chunk_context>
811
+ 467429558 - Pág. 2 --- SENTENÇA --- Esta parte da sentença detalha a alegação do autor, que busca a elevação da GAPM para as referências IV e V e o pagamento retroativo. A juíza apresenta um resumo da ação, incluindo a contestação do Estado, e estabelece as questões prévias a serem analisadas, como a gratuidade da justiça e a competência do Juizado Especial.
812
  </chunk_context>
813
+ 4. <chunk_context>
814
+ 467429558 - Pág. 3 --- SENTENÇA --- A sentença continua a análise das questões prévias, abordando a questão da competência do Juizado Especial em relação ao valor da causa, citando jurisprudência do STJ. A juíza estabelece os parâmetros legais para as limitações do juízo quanto ao valor da causa, o que é relevante para o andamento do processo no Juizado Especial da Fazenda Pública.
815
  </chunk_context>
816
+ 5. <chunk_context>
817
+ 467429558 - Pág. 4 --- SENTENÇA --- A sentença aborda a questão da prescrição, definindo o período em que as parcelas retroativas podem ser cobradas, com base na Súmula 85 do STJ. Em seguida, a juíza inicia a análise do mérito da ação, reiterando o objeto da demanda: a elevação da GAPM para as referências IV e V e o pagamento retroativo.
818
  </chunk_context>
819
+ 6. <chunk_context>
820
+ 467429558 - Pág. 5 --- SENTENÇA --- A sentença analisa a legislação que instituiu a GAPM (Lei Estadual 7.145/1997) e sua regulamentação, destacando que a Lei 12.566/2012 estabeleceu as regras para o acesso às referências IV e V da gratificação. A juíza demonstra como a lei estadual restringiu a concessão da GAPM aos servidores em efetivo exercício.
821
  </chunk_context>
822
+ 7. <chunk_context>
823
+ 467429558 - Pág. 6 --- SENTENÇA --- A sentença argumenta que a restrição da Lei Estadual 12.566/2012 é contrária aos princípios da integralidade e paridade. A juíza cita jurisprudência do Tribunal de Justiça da Bahia para sustentar que a GAPM é uma gratificação genérica, devida a todos os policiais militares, inclusive os inativos.
824
  </chunk_context>
825
+ 8. <chunk_context>
826
+ 467429558 - Pág. 7 --- SENTENÇA --- A sentença apresenta ementas de acórdãos do Tribunal de Justiça da Bahia que corroboram a tese do autor, reforçando a ideia de que a GAPM deve ser estendida aos inativos. A juíza demonstra que a GAPM é uma gratificação de caráter geral, e que a lei estadual não pode restringir o direito dos inativos.
827
  </chunk_context>
828
+ 9. <chunk_context>
829
+ 467429558 - Pág. 8 --- SENTENÇA --- A sentença continua a apresentar jurisprudência do TJBA que sustenta a tese do autor, reforçando a ideia de que a GAPM deve ser estendida aos inativos. A juíza analisa a alegação de afronta ao art. 169 da Constituição Federal, concluindo que não impedimento legal ou constitucional à pretensão do autor.
830
  </chunk_context>
831
  10. <chunk_context>
832
+ 467429558 - Pág. 9 --- SENTENÇA --- A sentença julga procedentes os pedidos do autor, declarando o direito à elevação da GAPM e ao pagamento retroativo, respeitando a prescrição quinquenal. A juíza define os índices de juros e correção monetária a serem aplicados. A sentença é o ponto central do processo, conforme destacado no resumo.
833
  </chunk_context>
834
  11. <chunk_context>
835
+ 476211827 - Pág. 1 --- CERTIDÃO DE PUBLICAÇÃO --- Este trecho corresponde à certidão de publicação da sentença no Diário da Justiça Eletrônico, datada de 01/12/2024. A certidão atesta que a sentença foi disponibilizada em 08/10/2024, e que o prazo para recurso começou a correr a partir do primeiro dia útil subsequente.
836
  </chunk_context>
837
  12. <chunk_context>
838
+ 476211827 - Pág. 2 --- CERTIDÃO DE PUBLICAÇÃO --- Este trecho apresenta o teor da sentença que foi publicada no Diário da Justiça Eletrônico. A sentença é a mesma que foi analisada anteriormente, com a decisão da juíza Regianne Yukie Tiba Xavier.
839
  </chunk_context>
840
  13. <chunk_context>
841
+ 476211827 - Pág. 3 --- CERTIDÃO DE PUBLICAÇÃO --- Este trecho apresenta o teor da sentença que foi publicada no Diário da Justiça Eletrônico. A sentença é a mesma que foi analisada anteriormente, com a decisão da juíza Regianne Yukie Tiba Xavier.
842
  </chunk_context>
843
  14. <chunk_context>
844
+ 476211827 - Pág. 4 --- CERTIDÃO DE PUBLICAÇÃO --- Este trecho apresenta o teor da sentença que foi publicada no Diário da Justiça Eletrônico. A sentença é a mesma que foi analisada anteriormente, com a decisão da juíza Regianne Yukie Tiba Xavier.
845
  </chunk_context>
846
  15. <chunk_context>
847
+ 476211827 - Pág. 5 --- CERTIDÃO DE PUBLICAÇÃO --- Este trecho apresenta o teor da sentença que foi publicada no Diário da Justiça Eletrônico. A sentença é a mesma que foi analisada anteriormente, com a decisão da juíza Regianne Yukie Tiba Xavier.
848
  </chunk_context>
849
  16. <chunk_context>
850
+ 476211827 - Pág. 6 --- CERTIDÃO DE PUBLICAÇÃO --- Este trecho apresenta o teor da sentença que foi publicada no Diário da Justiça Eletrônico. A sentença é a mesma que foi analisada anteriormente, com a decisão da juíza Regianne Yukie Tiba Xavier.
851
  </chunk_context>
852
  17. <chunk_context>
853
+ 467430968 - Pág. 1 --- SENTENÇA --- Este trecho corresponde à reedição da sentença original, sem alterações no conteúdo, datada de 07/10/2024. A reedição da sentença é a última movimentação processual, conforme destacado no resumo.
854
  </chunk_context>
855
  18. <chunk_context>
856
+ 467430968 - Pág. 2 --- SENTENÇA --- Este trecho corresponde à reedição da sentença original, sem alterações no conteúdo, datada de 07/10/2024. A reedição da sentença é a última movimentação processual, conforme destacado no resumo.
857
  </chunk_context>
858
  19. <chunk_context>
859
+ 467430968 - Pág. 3 --- SENTENÇA --- Este trecho corresponde à reedição da sentença original, sem alterações no conteúdo, datada de 07/10/2024. A reedição da sentença é a última movimentação processual, conforme destacado no resumo.
860
  </chunk_context>
861
  20. <chunk_context>
862
+ 467430968 - Pág. 4 --- SENTENÇA --- Este trecho corresponde à reedição da sentença original, sem alterações no conteúdo, datada de 07/10/2024. A reedição da sentença é a última movimentação processual, conforme destacado no resumo.
863
+ </chunk_context>"""
 
864
  ]
865
 
866
 
tests/gerar_relatorio_modelo_usuario/test_contextual_retriever.py CHANGED
@@ -287,10 +287,13 @@ class TestContextualRetriever:
287
  matches = validate_many_chunks_in_one_request(response, resposta_errada_ids)
288
 
289
  resultado = self.context_retrieval.get_info_from_validated_chunks(matches)
290
- # print("\n\nresultado", resultado)
291
  print("\n\ncontador", contador)
292
  contador += 1
293
  assert all(len(item) == 3 for item in resultado)
 
 
 
294
 
295
  # COMENTADO ABAIXO PARA RODAR APENAS UMA RESPOSTA
296
  # print("lista_respostas[143]: ", lista_respostas[143])
 
287
  matches = validate_many_chunks_in_one_request(response, resposta_errada_ids)
288
 
289
  resultado = self.context_retrieval.get_info_from_validated_chunks(matches)
290
+ print("\n\nresultado", resultado)
291
  print("\n\ncontador", contador)
292
  contador += 1
293
  assert all(len(item) == 3 for item in resultado)
294
+ assert all(isinstance(item[0], int) for item in resultado)
295
+ assert all(isinstance(item[1], str) for item in resultado)
296
+ assert all(isinstance(item[2], str) for item in resultado)
297
 
298
  # COMENTADO ABAIXO PARA RODAR APENAS UMA RESPOSTA
299
  # print("lista_respostas[143]: ", lista_respostas[143])