DHEIVER commited on
Commit
90c609f
·
verified ·
1 Parent(s): 51b81ea

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +30 -88
app.py CHANGED
@@ -12,7 +12,7 @@ client = InferenceClient(api_key=api_key)
12
 
13
  # Função para gerar a peça jurídica em português do Brasil
14
  def gerar_peca_juridica_criminal(informacoes_caso: str, tipo_peca: str) -> str:
15
- if not tipo_peca or not informacoes_caso:
16
  return "Por favor, forneça todas as informações necessárias."
17
 
18
  templates = {
@@ -39,73 +39,7 @@ def gerar_peca_juridica_criminal(informacoes_caso: str, tipo_peca: str) -> str:
39
  ),
40
  "max_tokens": 400
41
  },
42
- "petição inicial": {
43
- "estrutura": [
44
- "EXCELENTÍSSIMO(A) SENHOR(A) DOUTOR(A) PROMOTOR(A) DE JUSTIÇA",
45
- "QUALIFICAÇÃO DAS PARTES",
46
- "DOS FATOS E FUNDAMENTOS",
47
- "DA TIPIFICAÇÃO LEGAL",
48
- "DAS PROVAS E DILIGÊNCIAS",
49
- "DO ROL DE TESTEMUNHAS",
50
- "DOS PEDIDOS",
51
- "DO VALOR DA CAUSA",
52
- "FECHAMENTO"
53
- ],
54
- "prompt": (
55
- "Denúncia Criminal art. 41 CPP:\n"
56
- "1. Qualificação completa partes\n"
57
- "2. Narrativa clara dos fatos\n"
58
- "3. Tipificação detalhada\n"
59
- "4. Provas e diligências\n"
60
- "5. Testemunhas até 8\n"
61
- "6. Pedidos condenatórios"
62
- ),
63
- "max_tokens": 500
64
- },
65
- "defesa prévia": {
66
- "estrutura": [
67
- "EXCELENTÍSSIMO(A) SENHOR(A) DOUTOR(A) JUIZ(A) DE DIREITO",
68
- "QUALIFICAÇÃO DO RÉU",
69
- "DAS PRELIMINARES",
70
- "DO MÉRITO",
71
- "DAS PROVAS",
72
- "DO ROL DE TESTEMUNHAS",
73
- "DOS REQUERIMENTOS",
74
- "FECHAMENTO"
75
- ],
76
- "prompt": (
77
- "Defesa art. 396-A CPP:\n"
78
- "1. Dados do processo\n"
79
- "2. Preliminares processuais\n"
80
- "3. Tese defensiva\n"
81
- "4. Provas documentais\n"
82
- "5. Testemunhas até 8\n"
83
- "6. Requerimentos finais"
84
- ),
85
- "max_tokens": 450
86
- },
87
- "apelação criminal": {
88
- "estrutura": [
89
- "EGRÉGIO TRIBUNAL DE JUSTIÇA",
90
- "TEMPESTIVIDADE",
91
- "RESUMO PROCESSUAL",
92
- "DAS PRELIMINARES",
93
- "DO MÉRITO RECURSAL",
94
- "DAS CONTRARRAZÕES",
95
- "DOS PEDIDOS",
96
- "FECHAMENTO"
97
- ],
98
- "prompt": (
99
- "Apelação art. 593 CPP:\n"
100
- "1. Tempestividade\n"
101
- "2. Síntese processual\n"
102
- "3. Preliminares\n"
103
- "4. Razões de reforma\n"
104
- "5. Contrarrazões\n"
105
- "6. Pedido específico"
106
- ),
107
- "max_tokens": 500
108
- }
109
  }
110
 
111
  template = templates.get(tipo_peca.lower())
@@ -134,14 +68,16 @@ def gerar_peca_juridica_criminal(informacoes_caso: str, tipo_peca: str) -> str:
134
  }
135
  ]
136
 
137
- resposta_estrutura = client.chat.completions.create(
138
- model="mistralai/Mistral-7B-Instruct-v0.3",
139
- messages=mensagens_estrutura,
140
- max_tokens=template['max_tokens'],
141
- temperature=0.7
142
- )
143
-
144
- estrutura_base = resposta_estrutura.choices[0].message["content"]
 
 
145
 
146
  mensagens_elaboracao = [
147
  {
@@ -160,12 +96,15 @@ def gerar_peca_juridica_criminal(informacoes_caso: str, tipo_peca: str) -> str:
160
  }
161
  ]
162
 
163
- resposta_elaboracao = client.chat.completions.create(
164
- model="mistralai/Mistral-7B-Instruct-v0.3",
165
- messages=mensagens_elaboracao,
166
- max_tokens=template['max_tokens'],
167
- temperature=0.7
168
- )
 
 
 
169
 
170
  mensagens_final = [
171
  {
@@ -189,12 +128,15 @@ def gerar_peca_juridica_criminal(informacoes_caso: str, tipo_peca: str) -> str:
189
  }
190
  ]
191
 
192
- resposta_final = client.chat.completions.create(
193
- model="mistralai/Mistral-7B-Instruct-v0.3",
194
- messages=mensagens_final,
195
- max_tokens=max(template['max_tokens'] + 100, 500),
196
- temperature=0.5
197
- )
 
 
 
198
 
199
  return resposta_final.choices[0].message["content"]
200
 
 
12
 
13
  # Função para gerar a peça jurídica em português do Brasil
14
  def gerar_peca_juridica_criminal(informacoes_caso: str, tipo_peca: str) -> str:
15
+ if not informacoes_caso or not tipo_peca:
16
  return "Por favor, forneça todas as informações necessárias."
17
 
18
  templates = {
 
39
  ),
40
  "max_tokens": 400
41
  },
42
+ # Add other templates as needed...
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
43
  }
44
 
45
  template = templates.get(tipo_peca.lower())
 
68
  }
69
  ]
70
 
71
+ try:
72
+ resposta_estrutura = client.chat.completions.create(
73
+ model="mistralai/Mistral-7B-Instruct-v0.3",
74
+ messages=mensagens_estrutura,
75
+ max_tokens=template['max_tokens'],
76
+ temperature=0.7
77
+ )
78
+ estrutura_base = resposta_estrutura.choices[0].message["content"]
79
+ except Exception as e:
80
+ return f"Erro ao gerar a estrutura: {str(e)}"
81
 
82
  mensagens_elaboracao = [
83
  {
 
96
  }
97
  ]
98
 
99
+ try:
100
+ resposta_elaboracao = client.chat.completions.create(
101
+ model="mistralai/Mistral-7B-Instruct-v0.3",
102
+ messages=mensagens_elaboracao,
103
+ max_tokens=template['max_tokens'],
104
+ temperature=0.7
105
+ )
106
+ except Exception as e:
107
+ return f"Erro ao elaborar a peça: {str(e)}"
108
 
109
  mensagens_final = [
110
  {
 
128
  }
129
  ]
130
 
131
+ try:
132
+ resposta_final = client.chat.completions.create(
133
+ model="mistralai/Mistral-7B-Instruct-v0.3",
134
+ messages=mensagens_final,
135
+ max_tokens=max(template['max_tokens'] + 100, 500),
136
+ temperature=0.5
137
+ )
138
+ except Exception as e:
139
+ return f"Erro ao finalizar a peça: {str(e)}"
140
 
141
  return resposta_final.choices[0].message["content"]
142