El modelo etiqueta la intención. El código decide, actúa y verifica. Elige una parte. Cambia a la vista de producción para ver qué reemplaza a cada mock.
Elige una parte del dibujo o un botón de arriba.
Página del cliente
Real El código decide
Muestra el chat y la lista de cargos. Llama a POST /api/v1/chat. El banco define el nombre y el color de acento.
- En la demo
- Una página estática que sirve el proceso FastAPI. Toma la marca de la configuración.
- En producción
- La misma página, con la marca del banco.
Evidencia: docs/build/decisions/006-frontend.md · sentinel-ai-core/app/static
Acceso y sesión
Mock El código decide
Comprueba quién es el cliente. Cada llamada a una herramienta está ligada a esta sesión. El modelo nunca ve el id del cliente.
- En la demo
- Usuarios de prueba con un acceso de prueba fijo. Prueban el diseño de la sesión, no una verificación de identidad real.
- En producción
- El proveedor de identidad del banco.
Evidencia: docs/architecture/mocks.md · sentinel-ai-core/app/session
Enmascaramiento
Real El código decide
Enmascara los identificadores personales del texto del cliente antes de cualquier llamada al modelo.
- En la demo
- El código de producción en app/privacy.
- En producción
- El mismo código.
Evidencia: docs/build/decisions/004-pii-lifecycle.md · sentinel-ai-core/app/privacy
Orquestador + router
Real El modelo etiqueta
Un LLM con instrucciones etiqueta la intención. No decide nada más. Una línea base de palabras clave responde el turno cuando el modelo falla.
- En la demo
- GLM 5.3 Flash en Fireworks AI con llamadas reales. La línea base de palabras clave es el respaldo de cada turno.
- En producción
- Los mismos pesos en Azure AI Foundry o Databricks.
Simulación 81.8% de 308 de exactitud de intención del enrutador LLM. evidence/evaluation-runs/2024Q4-eval-v8/summary.json · candidates.router_v2.intent.accuracy
Simulación 69.2% de 308 de exactitud de intención de la línea base de palabras clave. evidence/evaluation-runs/2024Q4-eval-v8/summary.json · candidates.baseline.intent.accuracy
Evidencia: docs/build/decisions/016-router-models.md · evidence/evaluation-runs/2024Q4-eval-v8/summary.json · sentinel-ai-core/app/ai
Registros y logs
Real El código decide
Escribe un registro por cada turno, encadenado para que se note cualquier cambio.
- En la demo
- Líneas JSON hacia Log Analytics en el enlace público.
- En producción
- Los mismos registros.
Evidencia: sentinel-ai-core/app/observability
Motor de políticas
Real El código decide
Permite, rechaza o traspasa. Devuelve un id de regla en cada decisión. Una solicitud de explicación recibe la decisión guardada.
- En la demo
- El código de producción. Los valores de las reglas (plazo, umbrales de fraude y de monto) los escribió el equipo y están identificados como sintéticos.
- En producción
- El mismo código con la política que apruebe el banco.
Suite de pruebas 0/42 ataques con un resultado inseguro. evidence/adversarial/20261005T014816Z/summary.json · totals.unsafe_outcome_rate
Suite de pruebas 38 de 42 bloqueados por el código de producción. evidence/adversarial/20261005T014816Z/summary.json · totals.blocked_verified
Evidencia: docs/build/decisions/021-dispute-policy-sources.md · evidence/adversarial/20261005T014816Z/summary.json · sentinel-ai-core/app/policy
Confirmar + releer
Real El código decide
Pide al cliente que confirme el cargo. Tras la acción, vuelve a leer el caso del almacén y lo dice solo cuando el caso existe.
- En la demo
- El código de producción.
- En producción
- El mismo código.
Evidencia: docs/architecture/specification.md · sentinel-ai-core/app/orchestrator
Herramientas de sesión
Real El código decide
Lee cargos y abre una disputa solo para la cuenta de la sesión. Ninguna herramienta recibe un id de cliente del modelo.
- En la demo
- El código de producción. Lee el mock de Gold en el enlace público.
- En producción
- El mismo código, sobre el Gold real.
Evidencia: sentinel-ai-core/app/tools
Vista del asesor
Mock Decide una persona
Muestra el paquete del traspaso: la solicitud, los datos verificados, las acciones que el sistema intentó y la traza de cada paso.
- En la demo
- Un usuario asesor de demostración con una vista de tickets de solo lectura.
- En producción
- Un asesor humano. Los tickets llegan al CRM del banco por una cola.
Evidencia: docs/build/decisions/015-handoff-delivery.md · docs/architecture/mocks.md
Almacén de casos
Mock El código decide
Guarda sesiones, estado de la conversación, casos de disputa y tickets de traspaso. Un reinicio los conserva.
- En la demo
- SQLite, con los mismos modelos. Registra el caso. Ningún sistema del banco lo recibe.
- En producción
- PostgreSQL, y el sistema de disputas del banco.
Evidencia: docs/architecture/mocks.md · sentinel-ai-core/app/models/dispute_case.py
Almacén Gold
Mock El código decide
Guarda los cargos de cada cliente, sin identificadores personales.
- En la demo
- En el enlace público, un almacén en memoria identificado. En una ejecución local, la vista DuckDB sin datos personales con datos sintéticos.
- En producción
- Gold en Databricks.
Evidencia: docs/architecture/mocks.md · docs/build/decisions/023-pii-gold-handling.md · sentinel-ai-core/app/tools/gold.py
Bronze, Silver, Gold
Real El código decide
Convierte las tablas sin procesar en la vista Gold sin datos personales.
- En la demo
- Código real ejecutado localmente en DuckDB. Los datos son el conjunto sintético.
- En producción
- El mismo paquete en Azure Databricks.
Evidencia: sentinel-data-engine