Skip to content

rguaracho/TCC-Segmentation

Repository files navigation

Development of an Automatic Segmentation Model for Legal Documents

Este repositório reúne o código do projeto de formatura (TCC II) da disciplina PCS3560, intitulado “Development of an Automatic Segmentation Model for Legal Documents”.
O objetivo do trabalho é segmentar e rotular automaticamente contratos jurídicos extensos, a partir apenas do texto simples, usando um modelo bi-encoder e um LLM para geração de rótulos silver.

Estrutura geral

  • bi-encoder/ — código do modelo principal de segmentação e rotulação.
  • LLM_data_augmentation/ — scripts para geração automática de anotações silver com LLM.
  • LLM_eval/ — scripts/notebooks para avaliação da qualidade das anotações produzidas pelo LLM.
  • pre_processing/ — preparação dos contratos brutos (limpeza, tokenização por linha etc.).
  • retriever/ — componente de recuperação/busca de trechos de contrato.
  • visualization/ — notebooks e utilitários para inspeção de segmentos e resultados.
  • cost_estimation/, logs/ — experimentos auxiliares e artefatos de execução.

Modelo bi-encoder

O modelo de segmentação é um bi-encoder hierárquico em duas etapas:

  1. Um encoder de sentenças baseado em XLM-RoBERTa gera embeddings para cada linha do contrato.
  2. Um BiLSTM sobre a sequência de linhas estima, para cada posição, a probabilidade de início de segmento e os rótulos de seção (por exemplo: título do contrato, preâmbulo, artigo, assinatura, anexos).

O diretório bi-encoder/ contém o código de treinamento, inferência e os principais modelos utilizados nos experimentos descritos na monografia.

LLM para data augmentation

A pasta LLM_data_augmentation/ contém os prompts e scripts usados para:

  • gerar rótulos silver a partir dos contratos originais;
  • converter as respostas do LLM para o formato de dataset de segmentação.

A avaliação dessas anotações está em LLM_eval/.

Avaliação e notebooks

Os notebooks de avaliação dos modelos estão distribuídos principalmente em LLM_eval/ e bi-encoder/test.ipynb.
Eles reproduzem os resultados apresentados na monografia.

Dataset

O projeto utiliza um conjunto privado de contratos jurídicos, não público.
Por motivos de confidencialidade e de proteção de dados:

  • os arquivos de contratos e suas anotações não estão incluídos neste repositório;
  • scripts que dependem diretamente dos dados assumem uma estrutura de pastas compatível, mas que não é versionada aqui.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published