Este tutorial guiará você passo a passo no uso completo do framework, desde a configuração inicial até operações avançadas. O framework permite processar diversos tipos de documentos (PDF, DOCX, texto, imagens) e gerar documentação estruturada.
- Python 3.9+
- Dependências instaladas (veja INSTALACAO.md)
- Conhecimento básico de linha de comando
Edite o arquivo de configuração para definir seu fluxo de trabalho:
# config.yaml
extractors:
pdf:
enabled: true
ocr_fallback: true # Usa OCR se texto não extraível
docx:
enabled: true
text:
enabled: true
image:
enabled: true
languages: ['por', 'eng'] # Idiomas para OCR
chunking:
strategy: semantic
max_tokens: 512
overlap: 0.2
min_lines: 5
summarization:
enabled: true
model: facebook/bart-large-cnn
max_length: 150
output:
format: markdown
directory: docs_output
include_metadata: trueprojeto/
├── documentos/ # Arquivos de entrada
├── config.yaml # Configuração
└── src/ # Código fonte
Coloque seus arquivos na pasta documentos/. Exemplo:
- manual.pdf
- contrato.docx
- relatorio.txt
- diagrama.png
python src/main.py --config config.yamlOs arquivos processados serão gerados em docs_output/:
docs_output/
├── manual_0001.md
├── manual_0002.md
├── contrato_0001.md
└── diagrama_0001.md
O sistema divide documentos mantendo contexto:
# Exemplo de chunking
from src.core.chunking import SemanticChunker
chunker = SemanticChunker(max_tokens=512, overlap=0.2)
chunks = chunker.chunk_text(long_document)Gere resumos com modelos de NLP:
from src.core.summarizer import Summarizer
summarizer = Summarizer(model_name="facebook/bart-large-cnn")
summary = summarizer.summarize(text, max_length=150)from src.core.pipeline import DocumentPipeline
pipeline = DocumentPipeline(config_path="config.yaml")
pipeline.process_directory("documentos/")Processe código-fonte para gerar documentação:
python src/main.py --input src/ --output docs_code/Extraia cláusulas importantes de documentos legais:
# config-contratos.yaml
chunking:
strategy: fixed
size: 200
summarization:
enabled: trueUse o script batch_process.py para grandes volumes:
python batch_process.py --dir documentos_lote/ --config config.yaml| Problema | Solução |
|---|---|
| Falha na extração PDF | Instale pdfminer.six e ative OCR |
| Chunks muito pequenos | Aumente min_lines no config.yaml |
| Sumarização lenta | Use modelo menor como t5-small |
| Codificação inválida | Especifique encoding no config.yaml |
Verifique os logs em tempo real:
tail -f processing.log- Use ambiente virtual para evitar conflitos
- Teste configurações em pequenos lotes primeiro
- Use cache para processamentos recorrentes
- Atualize periodicamente as dependências
- Valide saídas com scripts de teste
- Explore EXEMPLOS.md para casos avançados
- Consulte REFERENCIA.md para detalhes técnicos
- Reporte problemas no repositório do projeto