carlosh10 commited on
Commit
8a456a8
·
verified ·
1 Parent(s): cd260b1

feat: Adiciona documentacao completa do Agente CBMGO - NT-01/2025

Browse files
Files changed (1) hide show
  1. README.md +161 -3
README.md CHANGED
@@ -1,3 +1,161 @@
1
- ---
2
- license: apache-2.0
3
- ---
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ license: apache-2.0
3
+ language:
4
+ - pt
5
+ tags:
6
+ - cbmgo
7
+ - bombeiros
8
+ - incendio
9
+ - prevencao
10
+ - rag
11
+ - llm
12
+ - agente
13
+ pipeline_tag: text-generation
14
+ ---
15
+
16
+ # Agente CBMGO - Sistema Inteligente de Prevencao de Incendio
17
+
18
+ Agente completo para apoio a Responsaveis Tecnicos (RT) no processo de elaboracao, revisao e protocolo de projetos de prevencao e combate a incendio conforme NT-01/2025 do CBMGO.
19
+
20
+ ---
21
+
22
+ ## Visao Geral
23
+
24
+ O Agente CBMGO e uma suite de modulos integrados 100% dentro do ecossistema Hugging Face, cobrindo consulta as Normas Tecnicas (RAG normativo), classificacao de ocupacao e grupo/divisao, calculo de exigencias (extintores, hidrantes, SPDA), geracao de memorial descritivo, auditoria de projetos (memorial x prancha), assistente CAD (scripts AutoCAD/Revit) e preparacao e validacao de pacote SIAPI.
25
+
26
+ ---
27
+
28
+ ## Arquitetura dos Modulos
29
+
30
+ | Modulo | Produto HF | Repositorio |
31
+ |---|---|---|
32
+ | Normas e regras | Dataset | cbmgo/normas-nt01 |
33
+ | Classificador de Ocupacao | Model | cbmgo/llama3-8b-ocupacao |
34
+ | RAG Normativo | Space | cbmgo/rag-normas |
35
+ | Motor de Regras | Dataset | cbmgo/regras-declarativas |
36
+ | Calculadora de Incendio | Space | cbmgo/calculadora-incendio |
37
+ | Gerador de Memorial | Model | cbmgo/memorial-generator |
38
+ | Auditor de Projetos | Space | cbmgo/auditor-projetos |
39
+ | Assistente CAD/BIM | Space | cbmgo/cad-assistant |
40
+ | Submissao SIAPI | Space | cbmgo/submissao-assistida |
41
+
42
+ ---
43
+
44
+ ## Fluxo Operativo (usuario RT)
45
+
46
+ 1. rag-normas - Consulta NT-01/2025 (artigo, paragrafo, Anexo)
47
+ 2. calculadora - Lotacao, extintores, hidrantes, SPDA
48
+ 3. classificador - Grupo, Divisao, exigencias legais
49
+ 4. memorial-generator - Gera texto estruturado + checklist
50
+ 5. auditor-projetos - Compara memorial x prancha, erros/alertas
51
+ 6. cad-assistant - Gera script .scr (AutoCAD) / Dynamo (Revit)
52
+ 7. submissao-assistida - Monta pacote, renomeia, valida para SIAPI
53
+ 8. Protocolo humano - RT protocola no SIAPI
54
+
55
+ ---
56
+
57
+ ## Estrutura do Repositorio
58
+
59
+ CERCON/
60
+ - README.md
61
+ - app.py
62
+ - requirements.txt
63
+ - modules/ (rag_normas.py, classificador.py, calculadora.py, memorial_generator.py, auditor.py, cad_assistant.py, submissao.py)
64
+ - data/ (chunks.jsonl, embeds.faiss, regras_declarativas.json)
65
+ - scripts/ (build_chunks.py, build_embeddings.py, generate_synthetic.py)
66
+
67
+ ---
68
+
69
+ ## Inicio Rapido
70
+
71
+ Instalacao: pip install -r requirements.txt
72
+ Execucao local: python app.py
73
+
74
+ ---
75
+
76
+ ## Modulos - Detalhes
77
+
78
+ ### 1. RAG Normativo (modules/rag_normas.py)
79
+
80
+ Usa sentence-transformers/all-mpnet-base-v2 para embeddings e FAISS para busca vetorial. Recebe query, busca os chunks mais relevantes da NT-01/2025 e retorna texto com referencia ao artigo/paragrafo.
81
+
82
+ ### 2. Classificador de Ocupacao (modules/classificador.py)
83
+
84
+ Usa cbmgo/llama3-8b-ocupacao (fine-tune Llama-3.1 8B via LoRA). Recebe descricao da edificacao e retorna JSON com grupo, divisao e lista de exigencias conforme NT-01/2025 Tabela 1.
85
+
86
+ ### 3. Calculadora de Incendio (modules/calculadora.py)
87
+
88
+ Calcula extintores (quantidade, capacidade, distancia maxima), hidrantes (sistema, vazao, reserva de incendio), SPDA e iluminacao de emergencia conforme Anexo B da NT-01/2025 usando pandas e sympy.
89
+
90
+ ### 4. Gerador de Memorial (modules/memorial_generator.py)
91
+
92
+ Usa cbmgo/memorial-generator (fine-tune Mistral-7B-Instruct). Gera memorial descritivo completo + checklist a partir dos dados do projeto e exigencias classificadas.
93
+
94
+ ### 5. Auditor de Projetos (modules/auditor.py)
95
+
96
+ Compara memorial com regras declarativas. Para cada regra satisfeita verifica presenca da exigencia no texto. Retorna lista de erros criticos, alertas e status apto/inapto para protocolo.
97
+
98
+ ### 6. Assistente CAD (modules/cad_assistant.py)
99
+
100
+ Gera scripts .scr para AutoCAD e codigo Python para Dynamo/Revit API. Posiciona extintores, sinalizacao de saida de emergencia, rotas de fuga e pontos de hidrante conforme layout do projeto.
101
+
102
+ ### 7. Submissao SIAPI (modules/submissao.py)
103
+
104
+ Monta pacote padrao CBMGO: renomeia arquivos conforme padrao do corpo de bombeiros, valida presenca dos documentos obrigatorios (memorial, planta baixa, formulario RT) e gera relatorio JSON de aptidao para protocolo no SIAPI.
105
+
106
+ ---
107
+
108
+ ## Dataset de Regras Declarativas
109
+
110
+ Arquivo data/regras_declarativas.json com regras SE-ENTAO conformes NT-01/2025:
111
+ - Regra 1: Ocupacao comercial com area maior que 750m2 exige extintores, hidrantes e sinalizacao de emergencia
112
+ - Regra 2: Edificacao com altura maior que 12m exige iluminacao de emergencia
113
+ - Regra 3: Edificacao com area maior que 1000m2 exige SPDA (Sistema de Protecao contra Descargas Atmosfericas)
114
+ - Regra 4: Uso industrial com area maior que 2000m2 exige chuveiros automaticos e reservatorio de incendio
115
+
116
+ ---
117
+
118
+ ## Fine-Tune dos Modelos
119
+
120
+ Classificador cbmgo/llama3-8b-ocupacao:
121
+ - Base: meta-llama/Llama-3.1-8B-Instruct
122
+ - Tecnica: LoRA 8-bit via trl/SFTTrainer
123
+ - Dataset: cbmgo/dataset-sintetico (2000 exemplos) ou cbmgo/dataset-real (300-500 projetos)
124
+ - Hardware: 1x A10 GPU (HF PRO), treino menor que 3 horas
125
+
126
+ Memorial Generator cbmgo/memorial-generator:
127
+ - Base: mistralai/Mistral-7B-Instruct-v0.3
128
+ - Pares de treinamento: prompt com dados do projeto -> memorial descritivo completo
129
+ - Hardware: 1x A10 GPU
130
+
131
+ ---
132
+
133
+ ## Roadmap
134
+
135
+ | Semana | Entrega |
136
+ |---|---|
137
+ | 1 | Datasets normas-nt01 e regras-declarativas |
138
+ | 2 | Spaces rag-normas e calculadora-incendio |
139
+ | 3 | Fine-tune llama3-8b-ocupacao |
140
+ | 4 | Space memorial-generator |
141
+ | 5 | Spaces auditor-projetos e cad-assistant |
142
+ | 6 | Space submissao-assistida e integracao final |
143
+
144
+ ---
145
+
146
+ ## Seguranca e Versionamento
147
+
148
+ - git-lfs para arquivos grandes (modelos, indices FAISS)
149
+ - Tags semanticas: v1.0, v1.1-norma-rev, etc.
150
+ - Campo data_vigencia em cada dataset para controle de norma vigente
151
+ - Auditoria: cada conclusao registra hash do modelo e commit da norma utilizada
152
+
153
+ ---
154
+
155
+ ## Licenca
156
+
157
+ Apache 2.0 - Consulte o arquivo LICENSE.
158
+
159
+ ---
160
+
161
+ Desenvolvido para apoio tecnico de Responsaveis Tecnicos (RT) em projetos de PSCIP conforme NT-01/2025 CBMGO.