Arquitetura baseada em Streamlit + LangGraph para conversar com um documento .docx e gerar comentários editoriais de múltiplos agentes.
- recebe upload de
.docxou.pdf; - detecta sumário/seções para orientar os tópicos;
- seleciona apenas trechos relevantes por pergunta (janela de contexto menor);
- extrai o texto e executa agentes especializados com
LangGraph; - responde às perguntas do usuário sobre o documento;
- mostra os comentários gerados por agente;
- exporta um novo
.docxcom comentários inseridos (quando a entrada for DOCX) (sem alterar o texto original).
Prompts em src/editorial_docx/prompts/:
metadados.mdsinopse_abstract.mdestrutura.mdtabelas_figuras.mdreferencias.mdconformidade_estilos.mdcoordenador.md
Edite .env:
OPENAI_API_KEY=sk-...
OPENAI_MODEL=gpt-4o-minipython -m pip install -e .
streamlit run streamlit_app.pystreamlit_app.py: interface de chat e visualização dos comentários.src/editorial_docx/graph_chat.py: grafo dos agentes e coordenação da resposta.src/editorial_docx/docx_utils.py: leitura do DOCX e aplicação dos comentários.src/editorial_docx/llm.py: inicialização do modelo OpenAI via.env.src/editorial_docx/models.py: modelos de dados de comentários e resposta.
python -m pip install -e .
streamlit run streamlit_app.py
Para processar um arquivo diretamente (sem abrir o Streamlit):
PYTHONPATH=src python -m editorial_docx "testes/arquivo.docx"
-
_output.docx (para entrada DOCX);
-
_output.relatorio.json (comentários em JSON).
-
streamlit_app.py: interface de chat e visualização dos comentários.
-
src/editorial_docx/graph_chat.py: grafo dos agentes e coordenação da resposta.
-
src/editorial_docx/docx_utils.py: leitura do DOCX e aplicação dos comentários.
-
src/editorial_docx/llm.py: inicialização do modelo OpenAI via .env.
-
src/editorial_docx/models.py: modelos de dados de comentários e resposta.
Para entrada PDF, o app gera relatório de comentários em JSON com referência de página/bloco.