O que pipeline-de-materiais-didaticos faz?
Habilidade Codex para limpar, paginar, ordenar e mesclar materiais didáticos em Word/PDF, gerando edições do aluno e do professor.
Visão Geral
Esta habilidade automatiza a criação de materiais didáticos limpos e organizados a partir de arquivos fonte (Word, PDF). O processo:
- Limpeza: Remove metadados, comentários e formatações desnecessárias dos arquivos fonte.
- Paginação: Adiciona numeração de páginas consistente e insere quebras de página onde necessário.
- Ordenação: Organiza capítulos e seções de acordo com uma ordem predefinida ou baseada em metadados.
- Mesclagem: Combina todos os materiais processados em dois arquivos finais:
- Edição do Aluno: Contém o conteúdo limpo com espaços para respostas e atividades.
- Edição do Professor: Inclui respostas, anotações e orientações adicionais.
Pré-requisitos
- Python 3.8+ com bibliotecas
python-docx,PyPDF2,reportlabinstaladas. - Acesso a um ambiente Codex (ou CLI similar) para execução de comandos.
- Arquivos fonte de materiais didáticos em formato Word (.docx) ou PDF.
Instalação
Clone o repositório e instale as dependências:
git clone https://github.com/littleyi22/document-materials-pipeline.git
cd document-materials-pipeline
pip install -r requirements.txt
Uso
Execute o pipeline principal:
python pipeline.py --input ./materiais --output ./resultado --tipo aluno
Parâmetros:
--input: Diretório contendo os arquivos fonte.--output: Diretório onde os arquivos processados serão salvos.--tipo:alunoouprofessorpara definir qual edição gerar.--ordem: (Opcional) Caminho para um arquivo JSON especificando a ordem dos capítulos.
Exemplo de Arquivo de Ordem (ordem.json)
{
"capitulos": [
"introducao",
"capitulo-1",
"capitulo-2",
"conclusao"
]
}
Estrutura do Projeto
document-materials-pipeline/
├── pipeline.py # Script principal
├── requirements.txt # Dependências Python
├── ordem.json # Exemplo de ordem (opcional)
├── materiais/ # Diretório com arquivos fonte
│ ├── capitulo-1.docx
│ ├── capitulo-2.pdf
│ └── ...
└── resultado/ # Diretório de saída
├── edicao-aluno.docx
└── edicao-professor.docx
Configuração
As opções de configuração podem ser ajustadas no arquivo config.yaml (se existir) ou via variáveis de ambiente:
INPUT_DIR: Diretório de entrada.OUTPUT_DIR: Diretório de saída.EDICAO_TIPO:alunoouprofessor.ORDEM_ARQUIVO: Caminho para o arquivo de ordem.
Limitações
- A habilidade depende da qualidade dos arquivos fonte; arquivos PDF escaneados (não texto) podem não ser processados corretamente.
- A paginação automática pode falhar em layouts muito complexos (ex.: múltiplas colunas).
- Apenas formatos .docx e .pdf são suportados atualmente.
Contribuição
Contribuições são bem-vindas! Sinta-se à vontade para abrir issues ou pull requests no repositório original.
Licença
Este projeto está licenciado sob a licença MIT - consulte o arquivo LICENSE para mais detalhes.