O modelo rotula a intenção. O código decide, age e verifica. Selecione uma parte. Mude para a visão de produção para ver o que substitui cada mock.
Selecione uma parte do desenho ou um botão acima.
Página do cliente
Real O código decide
Mostra o chat e a lista de cobranças. Chama POST /api/v1/chat. O banco define o nome e a cor de destaque.
- Na demo
- Uma página estática servida pelo processo FastAPI. Ela pega a marca da configuração.
- Em produção
- A mesma página, com a marca do banco.
Evidências: docs/build/decisions/006-frontend.md · sentinel-ai-core/app/static
Login e sessão
Mock O código decide
Comprova quem é o cliente. Cada chamada a uma ferramenta está vinculada a esta sessão. O modelo nunca vê o id do cliente.
- Na demo
- Usuários de teste com um login de teste fixo. Provam o desenho da sessão, não uma verificação de identidade real.
- Em produção
- O provedor de identidade do banco.
Evidências: docs/architecture/mocks.md · sentinel-ai-core/app/session
Mascaramento
Real O código decide
Mascara os identificadores pessoais do texto do cliente antes de qualquer chamada ao modelo.
- Na demo
- O código de produção em app/privacy.
- Em produção
- O mesmo código.
Evidências: docs/build/decisions/004-pii-lifecycle.md · sentinel-ai-core/app/privacy
Orquestrador + router
Real O modelo rotula
Um LLM com instruções rotula a intenção. Não decide mais nada. Uma linha de base de palavras-chave responde o turno quando o modelo falha.
- Na demo
- GLM 5.3 Flash no Fireworks AI com chamadas reais. A linha de base de palavras-chave é o reserva de cada turno.
- Em produção
- Os mesmos pesos no Azure AI Foundry ou no Databricks.
Simulação 81,8% de 308 de acurácia de intenção do roteador LLM. evidence/evaluation-runs/2024Q4-eval-v8/summary.json · candidates.router_v2.intent.accuracy
Simulação 69,2% de 308 de acurácia de intenção da linha de base de palavras-chave. evidence/evaluation-runs/2024Q4-eval-v8/summary.json · candidates.baseline.intent.accuracy
Evidências: docs/build/decisions/016-router-models.md · evidence/evaluation-runs/2024Q4-eval-v8/summary.json · sentinel-ai-core/app/ai
Registros e logs
Real O código decide
Grava um registro para cada turno, encadeado para que qualquer mudança apareça.
- Na demo
- Linhas JSON para o Log Analytics no link público.
- Em produção
- Os mesmos registros.
Evidências: sentinel-ai-core/app/observability
Motor de políticas
Real O código decide
Permite, recusa ou transfere. Devolve um id de regra a cada decisão. Um pedido de explicação recebe a decisão guardada.
- Na demo
- O código de produção. Os valores das regras (prazo, limites de fraude e de valor) foram escritos pela equipe e estão identificados como sintéticos.
- Em produção
- O mesmo código com a política que o banco aprovar.
Suíte de testes 0/42 ataques com resultado inseguro. evidence/adversarial/20261005T014816Z/summary.json · totals.unsafe_outcome_rate
Suíte de testes 38 de 42 bloqueados pelo código de produção. evidence/adversarial/20261005T014816Z/summary.json · totals.blocked_verified
Evidências: docs/build/decisions/021-dispute-policy-sources.md · evidence/adversarial/20261005T014816Z/summary.json · sentinel-ai-core/app/policy
Confirmar + reler
Real O código decide
Pede ao cliente que confirme a cobrança. Depois da ação, relê o caso do armazém e só o diz quando o caso existe.
- Na demo
- O código de produção.
- Em produção
- O mesmo código.
Evidências: docs/architecture/specification.md · sentinel-ai-core/app/orchestrator
Ferramentas de sessão
Real O código decide
Lê cobranças e abre uma disputa só para a conta da sessão. Nenhuma ferramenta recebe um id de cliente do modelo.
- Na demo
- O código de produção. Ele lê o mock do Gold no link público.
- Em produção
- O mesmo código, sobre o Gold real.
Evidências: sentinel-ai-core/app/tools
Visão do atendente
Mock Uma pessoa decide
Mostra o pacote da transferência: o pedido, os fatos verificados, as ações que o sistema tentou e o rastro de cada passo.
- Na demo
- Um usuário atendente de demonstração com uma visão de tickets somente leitura.
- Em produção
- Um atendente humano. Os tickets chegam ao CRM do banco por uma fila.
Evidências: docs/build/decisions/015-handoff-delivery.md · docs/architecture/mocks.md
Armazém de casos
Mock O código decide
Guarda sessões, estado da conversa, casos de disputa e tickets de transferência. Uma reinicialização os mantém.
- Na demo
- SQLite, com os mesmos modelos. Registra o caso. Nenhum sistema do banco o recebe.
- Em produção
- PostgreSQL, e o sistema de disputas do banco.
Evidências: docs/architecture/mocks.md · sentinel-ai-core/app/models/dispute_case.py
Armazém Gold
Mock O código decide
Guarda as cobranças de cada cliente, sem identificadores pessoais.
- Na demo
- No link público, um armazém em memória identificado. Em uma execução local, a visão DuckDB sem dados pessoais com dados sintéticos.
- Em produção
- Gold no Databricks.
Evidências: docs/architecture/mocks.md · docs/build/decisions/023-pii-gold-handling.md · sentinel-ai-core/app/tools/gold.py
Bronze, Silver, Gold
Real O código decide
Transforma as tabelas brutas na visão Gold sem dados pessoais.
- Na demo
- Código real executado localmente no DuckDB. Os dados são o conjunto sintético.
- Em produção
- O mesmo pacote no Azure Databricks.
Evidências: sentinel-data-engine