La proliferación de agentes de IA autónomos en entornos comerciales presenta un problema fundamental de la computación distribuida: cómo garantizar la confianza y la fiabilidad en sistemas que interactúan directamente con transacciones de valor. Esto implica no solo la seguridad de los datos y las operaciones, sino también la consistencia del estado y la resistencia a fallos en un contexto de tráfico impredecible. La solución de AgentFlo aborda esto mediante una arquitectura de defensa en profundidad y un diseño de datos centrado en la persistencia y la verificación, permitiendo que los modelos de IA propongan acciones, pero que las políticas deterministas las decidan.

Históricamente, los sistemas transaccionales han dependido de garantías ACID y mecanismos de consenso para asegurar la integridad. Con la introducción de agentes de IA, el desafío se amplifica al tener que integrar la naturaleza probabilística de los modelos con la necesidad determinista de las reglas de negocio y la seguridad. La arquitectura de AgentFlo busca cerrar esta brecha, permitiendo la autonomía del agente dentro de límites estrictamente definidos por políticas y datos verificados.

Arquitectura del Sistema

La arquitectura de AgentFlo se basa en Amazon Bedrock AgentCore y una infraestructura serverless de AWS. La entrada de solicitudes se gestiona a través de AWS Fargate, que realiza una primera capa de filtrado, incluyendo la detección de inyección de prompts y la gestión de opt-outs. La autenticación de usuarios se realiza mediante identificadores como números de teléfono para WhatsApp, y se aplican controles de acceso basados en identidad para clientes empresariales.

El núcleo de la lógica del agente reside en AgentCore, donde AgentCore Gateway aplica políticas de autorización granulares utilizando Cedar, un lenguaje de políticas de código abierto. Estas políticas controlan el acceso a herramientas y datos, y se integran con Amazon Bedrock Guardrails para la detección de ataques, filtrado de contenido y bloqueo de información sensible. Después de que el modelo genera una respuesta, filtros de privacidad post-respuesta bloquean la divulgación inadvertida de tokens y afirmaciones de precios no verificadas. La gestión de secretos se realiza a través de AWS Secrets Manager con pipelines CI/CD autenticadas por OIDC, asegurando que las credenciales nunca se almacenen en el código del agente.

La fiabilidad de los datos se logra mediante una arquitectura de tres capas: gestión de estado conversacional con Amazon DynamoDB, bases de conocimiento específicas del comerciante en Amazon Bedrock Knowledge Bases (respaldadas por Amazon S3), y descubrimiento semántico de productos utilizando embeddings vectoriales almacenados en Amazon S3. DynamoDB, con un diseño de dos tablas, mantiene la continuidad de la sesión y carga el contexto basado en la intención detectada. Las bases de conocimiento permiten a los agentes acceder a información empresarial actualizada, mientras que los embeddings vectoriales en Amazon Aurora facilitan la búsqueda de productos por lenguaje natural. La observabilidad se implementa con AgentCore Observability, que captura trazas estructuradas de cada interacción del agente, enviándolas a Amazon CloudWatch para monitoreo en tiempo real y depuración. Amazon Data Firehose se utiliza para capturar todas las interacciones de mensajes a Amazon S3 para el seguimiento de costos y la mejora continua del agente.

Flujo de Solicitud con Guardrails de Confianza

  1. 1 Usuario Envía solicitud (ej. WhatsApp)
  2. 2 AWS Fargate Autenticación, detección de prompt injection, gestión de opt-outs
  3. 3 AgentCore Gateway Verificación de identidad, aplicación de políticas Cedar (ej. % descuento, ac...
  4. 4 Amazon Bedrock (Modelo) Razonamiento y propuesta de acción
  5. 5 AgentCore Gateway Ejecución de herramientas (si aplica), aplicación de políticas Cedar
  6. 6 Filtros Post-Respuesta Bloqueo de token disclosure, verificación de precios
  7. 7 Usuario Recibe respuesta

Flujo de Gestión de Datos para Fiabilidad

  1. 1 Usuario/Agente Interacción conversacional
  2. 2 AgentCore Runtime Gestión de sesión
  3. 3 Amazon DynamoDB Almacenamiento de contexto conversacional (estado)
  4. 4 Amazon Bedrock Knowledge Bases Recuperación de conocimiento específico del comerciante (S3)
  5. 5 Amazon Aurora Base de datos de productos
  6. 6 Amazon S3 Vector Embeddings vectoriales para búsqueda semántica de productos
  7. 7 Amazon Data Firehose Captura de interacciones para S3 (observabilidad/costos)
CapaTecnologíaJustificación
orchestration Amazon Bedrock AgentCore Orquestación de agentes de IA, gestión de estado de sesión, ejecución de herramientas y aplicación de políticas.
compute AWS Fargate Ejecución de contenedores serverless para el pre-procesamiento de solicitudes (filtrado de prompt injection, gestión de opt-outs). vs AWS Lambda, Amazon EC2
storage Amazon DynamoDB Base de datos NoSQL para el almacenamiento de estado conversacional y contexto de sesión de los agentes. vs Amazon Aurora, Redis Diseño de dos tablas para continuidad de sesión y carga de contexto.
storage Amazon S3 Almacenamiento de objetos para bases de conocimiento de comerciantes y datos de trazas de observabilidad.
storage Amazon Aurora Base de datos relacional para el catálogo de productos, con generación de embeddings vectoriales. vs Amazon RDS
security Cedar Lenguaje de políticas de código abierto para autorización granular y aplicación de reglas de negocio. vs Open Policy Agent (OPA) Integración con AgentCore Gateway y Amazon Bedrock Guardrails.
security AWS Secrets Manager Gestión segura de credenciales y secretos para evitar su almacenamiento en el código del agente. Integración con pipelines CI/CD autenticadas por OIDC.
observability Amazon CloudWatch Recopilación y visualización de métricas, logs y trazas de agentes para monitoreo y depuración. Dashboards para sesiones activas, tiempos de respuesta, patrones de llamadas a herramientas.
data-processing Amazon Data Firehose Servicio de entrega de streaming de datos para capturar interacciones de mensajes a S3 para análisis de costos y mejora continua. vs Amazon Kinesis Data Streams
{
  "inputText": "I want to buy a red shirt and apply the summer discount.",
  "agentId": "<your-agent-id>",
  "agentAliasId": "<your-agent-alias-id>",
  "sessionId": "<your-session-id>",
  "enableTrace": true,
  "toolConfiguration": {
    "toolGroups": [
      {
        "toolGroupArn": "arn:aws:bedrock:us-east-1:123456789012:agent/ABCDEF0123/tool-group/GHIJKL3456"
      }
    ]
  }
}
Ejemplo de una única llamada a la API de Amazon Bedrock Responses para orquestar múltiples herramientas de forma autónoma en el servidor, eliminando roundtrips al cliente.

Fundamentos Teóricos

El problema de la confianza y la seguridad en sistemas distribuidos tiene raíces profundas en la investigación académica. Los principios de 'defensa en profundidad' (Defense in Depth) son un concepto clásico en seguridad informática, que aboga por múltiples capas de control para proteger un sistema. La implementación de políticas deterministas fuera del bucle de razonamiento del modelo de IA, como se hace con Cedar, refleja el principio de 'separación de preocupaciones' (Separation of Concerns) y la necesidad de un 'núcleo de seguridad mínimo' (Minimal Security Kernel) que sea verificable y robusto, independientemente de la complejidad del componente de IA.

La gestión de estado en conversaciones de larga duración se relaciona con los desafíos de la 'memoria transaccional distribuida' (Distributed Transactional Memory) y la 'consistencia eventual' (Eventual Consistency) en bases de datos distribuidas. El uso de DynamoDB para mantener el contexto conversacional es una aplicación práctica de estos principios, donde la consistencia del estado es crucial para la experiencia del usuario y la integridad de las transacciones. El concepto de 'grounding' de los agentes de IA en datos verificados y actuales se alinea con la investigación en 'sistemas de conocimiento' (Knowledge Systems) y 'razonamiento basado en casos' (Case-Based Reasoning), donde la capacidad de un sistema para tomar decisiones informadas depende directamente de la calidad y relevancia de su base de conocimiento subyacente.