Update app.py
Browse files
app.py
CHANGED
|
@@ -53,8 +53,6 @@ DICAS_OAB_MELHORADO = {
|
|
| 53 |
HISTORICO = []
|
| 54 |
CORRECAO_CACHE = {}
|
| 55 |
|
| 56 |
-
# Funções auxiliares (processamento de arquivos) permanecem iguais, omitidas por brevidade
|
| 57 |
-
|
| 58 |
def estruturar_prompt_analise(caso, peticao, modo_treinamento=False):
|
| 59 |
"""Estrutura o prompt apenas para a análise da petição."""
|
| 60 |
base_prompt = f"""
|
|
@@ -89,7 +87,7 @@ def estruturar_prompt_analise(caso, peticao, modo_treinamento=False):
|
|
| 89 |
5. Não penalize por informações ausentes no caso original, mas alerte se a omissão compromete a petição.
|
| 90 |
6. A frase "Nestes termos, pede deferimento" com vírgula é incorreta; corrija para "Nestes termos pede deferimento" e penalize com -0,2 ponto, destacando o erro formal.
|
| 91 |
7. A petição deve finalizar com "Local e data.\nADVOGADO.\nOAB." sem identificação do aluno (nome, número ou estado na OAB); se houver identificação específica (ex.: "OAB/SP" ou "12345"), zere a nota (0,0) e explique o motivo.
|
| 92 |
-
|
| 93 |
**Instruções Especiais para Análise Avançada:**
|
| 94 |
- **Competência**: Avalie o foro indicado com base no Art. 46 do CPC (domicílio do réu) ou Art. 101, I do CDC (domicílio do autor em relações de consumo); penalize erros com -0,10 ponto e justifique com jurisprudência (ex.: STJ, REsp 1.234.567).
|
| 95 |
- **Consistência Fática**: Compare cada fato narrado na petição com o caso; destaque omissões ou distorções com base no Art. 319, III, CPC.
|
|
@@ -168,11 +166,11 @@ def pos_corrigir_peticao(peticao_corrigida):
|
|
| 168 |
# Garantir a correção da vírgula
|
| 169 |
if "Nestes termos, pede deferimento" in peticao_corrigida:
|
| 170 |
peticao_corrigida = peticao_corrigida.replace("Nestes termos, pede deferimento", "Nestes termos pede deferimento")
|
| 171 |
-
|
| 172 |
# Garantir o pedido de juntada da guia de custas
|
| 173 |
if "juntada da guia de custas" not in peticao_corrigida.lower():
|
| 174 |
peticao_corrigida = peticao_corrigida.replace("Nestes termos pede deferimento", "Requer a juntada da guia de custas devidamente recolhida.\nNestes termos pede deferimento")
|
| 175 |
-
|
| 176 |
# Garantir o fechamento formal correto
|
| 177 |
if not peticao_corrigida.strip().endswith("Local e data.\nADVOGADO.\nOAB."):
|
| 178 |
linhas = peticao_corrigida.split('\n')
|
|
@@ -183,11 +181,11 @@ def pos_corrigir_peticao(peticao_corrigida):
|
|
| 183 |
else:
|
| 184 |
linhas.extend(["Local e data.", "ADVOGADO.", "OAB."])
|
| 185 |
peticao_corrigida = "\n".join(linhas)
|
| 186 |
-
|
| 187 |
# Garantir opção por audiência explícita
|
| 188 |
if "audiência de conciliação" not in peticao_corrigida.lower():
|
| 189 |
peticao_corrigida = peticao_corrigida.replace("Nestes termos pede deferimento", "Requer a designação de audiência de conciliação, nos termos do Art. 319, VII, CPC.\nNestes termos pede deferimento")
|
| 190 |
-
|
| 191 |
return peticao_corrigida
|
| 192 |
|
| 193 |
def chamar_api(prompt):
|
|
@@ -473,5 +471,12 @@ def validar_peticao_basica(peticao):
|
|
| 473 |
problemas.append("⚠️ Fechamento formal ausente.")
|
| 474 |
return problemas
|
| 475 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 476 |
app = interface_gradio()
|
| 477 |
-
app.launch()
|
|
|
|
| 53 |
HISTORICO = []
|
| 54 |
CORRECAO_CACHE = {}
|
| 55 |
|
|
|
|
|
|
|
| 56 |
def estruturar_prompt_analise(caso, peticao, modo_treinamento=False):
|
| 57 |
"""Estrutura o prompt apenas para a análise da petição."""
|
| 58 |
base_prompt = f"""
|
|
|
|
| 87 |
5. Não penalize por informações ausentes no caso original, mas alerte se a omissão compromete a petição.
|
| 88 |
6. A frase "Nestes termos, pede deferimento" com vírgula é incorreta; corrija para "Nestes termos pede deferimento" e penalize com -0,2 ponto, destacando o erro formal.
|
| 89 |
7. A petição deve finalizar com "Local e data.\nADVOGADO.\nOAB." sem identificação do aluno (nome, número ou estado na OAB); se houver identificação específica (ex.: "OAB/SP" ou "12345"), zere a nota (0,0) e explique o motivo.
|
| 90 |
+
|
| 91 |
**Instruções Especiais para Análise Avançada:**
|
| 92 |
- **Competência**: Avalie o foro indicado com base no Art. 46 do CPC (domicílio do réu) ou Art. 101, I do CDC (domicílio do autor em relações de consumo); penalize erros com -0,10 ponto e justifique com jurisprudência (ex.: STJ, REsp 1.234.567).
|
| 93 |
- **Consistência Fática**: Compare cada fato narrado na petição com o caso; destaque omissões ou distorções com base no Art. 319, III, CPC.
|
|
|
|
| 166 |
# Garantir a correção da vírgula
|
| 167 |
if "Nestes termos, pede deferimento" in peticao_corrigida:
|
| 168 |
peticao_corrigida = peticao_corrigida.replace("Nestes termos, pede deferimento", "Nestes termos pede deferimento")
|
| 169 |
+
|
| 170 |
# Garantir o pedido de juntada da guia de custas
|
| 171 |
if "juntada da guia de custas" not in peticao_corrigida.lower():
|
| 172 |
peticao_corrigida = peticao_corrigida.replace("Nestes termos pede deferimento", "Requer a juntada da guia de custas devidamente recolhida.\nNestes termos pede deferimento")
|
| 173 |
+
|
| 174 |
# Garantir o fechamento formal correto
|
| 175 |
if not peticao_corrigida.strip().endswith("Local e data.\nADVOGADO.\nOAB."):
|
| 176 |
linhas = peticao_corrigida.split('\n')
|
|
|
|
| 181 |
else:
|
| 182 |
linhas.extend(["Local e data.", "ADVOGADO.", "OAB."])
|
| 183 |
peticao_corrigida = "\n".join(linhas)
|
| 184 |
+
|
| 185 |
# Garantir opção por audiência explícita
|
| 186 |
if "audiência de conciliação" not in peticao_corrigida.lower():
|
| 187 |
peticao_corrigida = peticao_corrigida.replace("Nestes termos pede deferimento", "Requer a designação de audiência de conciliação, nos termos do Art. 319, VII, CPC.\nNestes termos pede deferimento")
|
| 188 |
+
|
| 189 |
return peticao_corrigida
|
| 190 |
|
| 191 |
def chamar_api(prompt):
|
|
|
|
| 471 |
problemas.append("⚠️ Fechamento formal ausente.")
|
| 472 |
return problemas
|
| 473 |
|
| 474 |
+
def calcular_progresso():
|
| 475 |
+
total_correcoes = len(HISTORICO)
|
| 476 |
+
if total_correcoes == 0:
|
| 477 |
+
return "Nenhuma correção realizada até o momento."
|
| 478 |
+
else:
|
| 479 |
+
return f"Total de correções realizadas: {total_correcoes}"
|
| 480 |
+
|
| 481 |
app = interface_gradio()
|
| 482 |
+
app.launch()
|