Ferramenta para busca de temas associados a um recurso especial
Contextualização
Como funciona?
Como o sistema está organizado?
Tecnologias Envolvidas
Manual do Usuário
Manual do Desenvolvedor (1/2) - Instalação e Execução da Interface
Manual do Desenvolvedor (2/2) - Instalação e Execução do Back-end
Extremamente relevantes para garantir o justo curso do processo legal e o direito à ampla defesa, os recursos são utilizados para contestar decisões judiciais. No contexto jurídico brasileiro, recursos especiais são uma categoria à parte desses mecanismos expressa na Constituição Federal vigente e regulamentada pelo Código de Processo Civil de 2015. São de competência do Superior Tribunal de Justiça (STJ), cuja função é tornar uniforme a interpretação da lei federal.
Emitir um recurso especial requer que a decisão contestada tenha passado, anteriormente, por todas as instâncias ordinárias, isto é, seja emitida por um tribunal de segunda instância. O tribunal de origem deve verificar – antes de encaminhar ao STJ – se o recurso é válido e atende aos requisitos; para isso, deve consultar os "temas", que representam decisões já estabelecidas pelo STJ.
Os temas são importantes consolidações da jurisprudência; as interpretações estabelecidas que representam facilitam o entendimento das leis e servem de referência para futuras decisões de todos os tribunais do país.
O analista judiciário anexa uma lista de temas e um arquivo do caso; o BuscaTema, então, retorna alguns desses temas juntamente com a probabilidade de cada um descrever a situação do caso. Para o profissional, a ferramenta representa agilidade através da automação; uma grande quantidade de tempo que seria despendida nessa tarefa pode ser direcionada a tarefas mais importantes. O recurso não anula a necessidade de avaliação humana, mas agiliza e direciona o profissional.
Em versões futuras, a ferramenta permitirá o acompanhamento do processo de análise por parte do analista.
Dois servidores são utilizados: o primeiro gerencia os pedidos para análise e o segundo é de fato o responsável pelo processamento computacional.
A aplicação consiste em duas partes: uma Single-Page Application (SPA) escrita em React, um framework javascript, e um servidor intermediário, em Flask, uma biblioteca python. O processamento referente a casos judiciais acontece em um terceiro módulo, que ainda não faz parte desse repositório.
No momento, o servidor intermediário armazena os arquivos enviados pelo usuário e envia uma resposta hard-coded. A aplicação que de fato processa os documentos está sendo refinada e a integração está prevista para acontecer em breve. A ideia, no entanto, é manter as interfaces para que não sejam necessárias modificações adicionais.
Devem ser utilizadas as versões mais recentes do Node.JS e Python que tenham suporte ativo.
Com a interface gráfica e o servidor do BuscaTema já em funcionamento, você deve enviar o arquivo do caso e a lista de temas que será utilizada pela aplicação.
Após arrastar os arquivos correspondentes até os campos, ou selecioná-los entre os arquivos de seu computador, a tela ficará assim:
Clique em ENVIAR e receberá, rapidamente, a lista com alguns temas juntamente com a probabilidade de estarem relacionados ao texto do caso:
O desenvolvedor deverá seguir as etapas abaixo para executar o front-end em sua máquina. Os passos foram descritos considerando um sistema baseado em Unix 03:
-
Clonar e acessar este repositório:
git clone https://github.com/MLRG-CEFET-RJ/buscatema
cd buscatema
-
Instalar o Node.js caso não o possua. Recomenda-se a última versão LTS
-
Acessar a pasta ui:
cd ui
-
Instalar os módulos necessários:
npm i
-
Inicializar a interface:
npm start
É importante que o back-end esteja em execução na porta 5000 para que a resposta da requisição seja corretamente recebida.
O desenvolvedor deverá seguir as etapas abaixo para executar o back-end em sua máquina. Os passos foram descritos considerando um sistema baseado em Unix 03:
-
Instalar o python caso não possua
-
Acessar a pasta backend:
cd backend
-
Instalar os módulos necessários:
pip install -r requirements.txt
-
Inicializar o back-end:
py app.py
(Opcional) Utilize o módulo venv para manter o conjunto de dependências desse projeto isoladas de seu ambiente Python local:
-
Criar, antes de instalar os módulos necessários, um ambiente isolado:
python -m venv busca-env
-
Ativar o ambiente:
source busca-env/bin/activate
-
Seguir normalmente do passo 2 ao passo 4