← Voltar a RAG — Arquitetura de Ingestion e Retrieval
📋 Cenários de Alteração
RAG — Arquitetura de Ingestion e RetrievalApresentação
4. Cenários de Alteração ao Longo do Tempo
Cenário 1 — Ficheiro Markdown alterado
Exemplo: security_policy.md
| Passo | Ação |
|---|---|
| 1 | Loader lê |
| 2 | Change detector vê hash diferente |
| 3 | Normalizer cria nova versão |
| 4 | Doc pipeline faz diff por secções/chunks |
| 5 | Só chunks alterados são reprocessados |
| 6 | Metadata atualizada |
| 7 | Índice ativo passa para nova versão |
Impactos: vector index parcial, manifest atualizado, queries freshness-aware usam só última versão.
Cenário 2 — PDF substituído por nova versão
Exemplo: expense_policy_v2.pdf
| Passo | Ação |
|---|---|
| 1 | Extrair texto |
| 2 | Fingerprint do texto + metadata |
| 3 | Nova versão lógica do mesmo documento |
| 4 | Re-chunking |
| 5 | Diff aproximado se possível |
| 6 | Marcar anterior como antiga, não apagar |
Nota: PDF é mais complexo — layout pode mudar sem mudar semântica. Usar hash do texto normalizado, não do binário bruto.
Cenário 3 — YAML muda e afeta vários produtos
Exemplo: policies.yaml
| Passo | Ação |
|---|---|
| 1 | Change detector marca mudança |
| 2 | Re-gerar artefactos derivados: docs, SQL seeds, graph relations |
| 3 | Dependency tracker identifica ativos impactados |
Importante: Uma mudança na source of truth pode afetar vários backends ao mesmo tempo.
Cenário 4 — Nova linha numa tabela SQL
Exemplo: Novo incidente
| Passo | Ação |
|---|---|
| 1 | Ingest incremental via updated_at ou watermark |
| 2 | Normalizar para StructuredRecord |
| 3 | Inserir |
| 4 | Atualizar materializações |
| 5 | Opcional: gerar/atualizar documento derivado (postmortems) |
Cenário 5 — Update numa linha SQL
Exemplo: Budget mudou
| Passo | Ação |
|---|---|
| 1 | Identificar pelo business key |
| 2 | Escolher: upsert ou SCD2 |
| 3 | Atualizar dependências |
| 4 | Invalidar caches e métricas associadas |
Cenário 6 — Relação do grafo muda
Exemplo: TEAM_OWNS_SERVICE
| Passo | Ação |
|---|---|
| 1 | Fechar edge antiga |
| 2 | Abrir edge nova |
| 3 | Atualizar projection ativa |
| 4 | Registar mudança para audit trail |
Cenário 7 — Documento apagado
| Passo | Ação |
|---|---|
| 1 | Não apagar logo |
| 2 | Marcar como retired / inactive |
| 3 | Remover de índices ativos |
| 4 | Manter versão histórica |
Cenário 8 — Mudou o chunking strategy
Não é mudança de dados, mas afeta retrieval.
| Passo | Ação |
|---|---|
| 1 | Criar nova index_version |
| 2 | Reprocessar documentos da vista ativa |
| 3 | Manter traço de qual embedding model / chunk policy foi usada |
Cenário 9 — Mudou o embedding model
| Passo | Ação |
|---|---|
| 1 | Não misturar embeddings diferentes na mesma coleção sem controlo |
| 2 | Criar nova coleção ou nova embedding_version |
| 3 | Re-embed total ou progressivo |
Matriz Resumo
| Cenário | Fonte | Tipo | Pipeline | Estratégia |
|---|---|---|---|---|
| 1 | MD | Doc | Document | Version + chunk diff |
| 2 | Doc | Document | Version + re-chunk | |
| 3 | YAML | Misto | Todos | Dependency-driven rebuild |
| 4 | SQL | Structured | SQL | Insert |
| 5 | SQL | Structured | SQL | Upsert / SCD2 |
| 6 | Graph | Graph | Graph | Edge versioning |
| 7 | Qualquer | Qualquer | Qualquer | Soft delete |
| 8 | Config | N/A | Document | Full reindex |
| 9 | Config | N/A | Document | Nova embedding version |
Zona de prática
Sem perguntas. Clica em Editar para adicionar.