Automatice las aplicaciones web heredadas con la herramienta de navegación AgentCore de Amazon Bedrock

Las empresas de servicios sanitarios, manufactureros, minoristas y financieros luchan por automatizar aplicaciones web heredadas que exigen una interacción similar a la humana más allá de lo que la automatización robótica de procesos (RPA) estándar puede proporcionar a escala. La herramienta de navegador Amazon Bedrock AgentCore, combinada con Strands Agents, aborda esta brecha con un servicio de navegador totalmente administrado que permite a los agentes de IA controlar estas interfaces heredadas a través de sesiones seguras y aisladas. Dado que la mayoría de las empresas todavía ejecutan cargas de trabajo críticas con tecnología heredada y que la mayoría de esos sistemas exponen solo HTML representado por middleware del lado del servidor en lugar de API modernas, la entrada manual de datos en gran volumen sigue siendo un importante centro de costos y una barrera para la transformación digital.

Considere un escenario familiar para empresas de todos los sectores: una gran compañía de seguros procesa decenas de miles de cambios operativos anualmente en sistemas de administración de pólizas heredados, incluidas modificaciones de planes, ajustes de reclamaciones, actualizaciones de cobertura y endosos. Con personal dedicado que navega por complejas interfaces web generadas por middleware heredado del lado del servidor, la organización enfrenta importantes pérdidas anuales debido únicamente a errores manuales. Cada cambio requiere navegar por flujos de trabajo de varios pasos, ingresar datos en múltiples pantallas y validarlos según las reglas comerciales. Estas tareas consumen miles de horas. Este patrón se repite en todas las industrias donde las aplicaciones web heredadas siguen siendo la columna vertebral de las operaciones comerciales críticas.

La herramienta de navegador Amazon Bedrock AgentCore aborda estas limitaciones proporcionando un servicio de navegador basado en la nube totalmente administrado que los agentes de IA utilizan para interactuar con interfaces web heredadas a través de sesiones de navegador seguras y aisladas. La herramienta de navegador utiliza la integración de Playwright a través de conexiones Chrome DevTools Protocol (CDP) basadas en WebSocket, para que los agentes de IA puedan interactuar con aplicaciones web heredadas independientemente de su pila de tecnología subyacente. La herramienta del navegador ejecuta una instancia de Chromium administrada en la nube. La aplicación heredada de destino debe ser accesible a través de HTTP o HTTPS, independientemente del navegador para el que fue diseñada originalmente.

En combinación con Strands Agents para una orquestación basada en modelos, las organizaciones pueden implementar flujos de trabajo de automatización sofisticados que escalan desde automatizaciones de un solo paso hasta flujos de trabajo complejos de múltiples agentes. La solución se integra con los modelos básicos (FM) de Amazon Bedrock a través del tiempo de ejecución de Amazon Bedrock AgentCore, lo que proporciona seguridad aislada de sesiones con controles de AWS Identity and Access Management (IAM) y pistas de auditoría completas. Esto puede ayudar a las empresas a modernizar los flujos de trabajo críticos y, al mismo tiempo, respaldar sus requisitos de cumplimiento normativo y preservar la supervisión humana.

En esta publicación, analizamos una implementación de referencia de un trabajador digital impulsado por IA creado con Amazon Bedrock AgentCore Browser Tool y Strands Agents. Cubrimos la arquitectura, las decisiones clave de diseño y un plan empresarial con la implementación de terraform. El código fuente completo está disponible en GitHub.

Comprender el desafío empresarial y técnico

Las implementaciones de RPA empresarial generalmente enfrentan tres desafíos técnicos importantes que los enfoques de automatización tradicionales luchan por abordar. Estos son la complejidad de la integración de aplicaciones web heredadas, los requisitos de cumplimiento normativo en industrias reguladas y las limitaciones de escalabilidad que impiden una implementación de producción exitosa.

Complejidad de las aplicaciones web heredadas

Volviendo al escenario de nuestra compañía de seguros, el sistema de administración de pólizas, como muchas aplicaciones heredadas en todas las industrias, se creó hace décadas en middleware del lado del servidor que genera HTML, CSS y JavaScript para el navegador. Estos sistemas carecen de API REST modernas, lo que requiere soluciones de automatización para interactuar a través de interfaces web diseñadas originalmente para usuarios humanos. Las aplicaciones presentan flujos de trabajo complejos de varios pasos, validación dinámica de formularios y administración de estado dependiente de la sesión que los robots RPA tradicionales no pueden navegar de manera confiable. Las lagunas en la documentación después de décadas de modificaciones crean una complejidad adicional, ya que la lógica empresarial crítica existe sólo en el conocimiento institucional en lugar de en las especificaciones accesibles del sistema.

Los mecanismos de autenticación agravan el problema. Algunas aplicaciones heredadas requieren autenticación multifactor (MFA), algunas usan inicio de sesión único (SSO) propietario y muchas dependen de tokens de sesión con reglas de vencimiento impredecibles. Los robots RPA basados ​​en reglas tienen dificultades en este aspecto, razón por la cual las implementaciones de producción terminan con una larga cola de intervenciones manuales. En nuestro escenario de seguros, los operadores navegan por una compleja interfaz web para realizar modificaciones en el plan. Actualizan los montos de cobertura, ajustan los beneficiarios y procesan respaldos, cada uno de los cuales requiere múltiples pantallas y pasos de validación que un frágil robot basado en reglas no puede manejar de manera confiable cuando la interfaz de usuario se presenta de manera diferente a lo esperado.

Requisitos de cumplimiento y auditoría

Las industrias reguladas deben implementar pistas de auditoría integrales que capturen la identidad del usuario, las marcas de tiempo, las modificaciones de datos y las interacciones del sistema para GDPR, HIPAA y regulaciones financieras. La implementación técnica requiere sistemas de registro inmutables, transmisión de datos cifrados y controles de acceso basados ​​en roles que los sistemas RPA tradicionales no pueden proporcionar sin un amplio desarrollo personalizado. Las regulaciones financieras exigen la retención de registros a prueba de manipulaciones durante seis años con acceso inmediato durante los últimos 90 días. Estos requisitos requieren arquitecturas de registro sofisticadas de las que carecen la mayoría de los sistemas RPA.

Cada modificación de política en este escenario debe ser rastreable. Eso significa capturar quién inició el cambio, qué se cambió, cuándo y si se aprobó. Un trabajador digital impulsado por IA debe proporcionar el mismo nivel de auditabilidad que un operador humano, si no más.

Escalabilidad y fragilidad

Las soluciones tradicionales de RPA enfrentan limitaciones arquitectónicas fundamentales que impiden el éxito a escala empresarial. La automatización basada en la interfaz de usuario crea dependencias frágiles en los diseños de pantalla, el posicionamiento de los elementos y el tiempo de las aplicaciones que se rompen con las actualizaciones menores del sistema. La naturaleza basada en reglas de la RPA tradicional no puede manejar excepciones, contenido dinámico o toma de decisiones cognitivas necesarias para procesos comerciales complejos. Las limitaciones de rendimiento agravan estos problemas. Los robots de RPA tradicionales requieren máquinas virtuales o sistemas físicos dedicados, lo que genera una sobrecarga de recursos y restricciones de escala. La gestión de sesiones se vuelve compleja cuando se manejan múltiples procesos simultáneos y los mecanismos de recuperación de errores se limitan a escenarios predefinidos en lugar de una resolución adaptativa de problemas.

Para nuestra compañía de seguros, la organización procesa decenas de miles de cambios de planes anualmente. Ampliar la RPA tradicional para manejar volúmenes máximos, como períodos de inscripción, cambios regulatorios y procesamiento de fin de año manteniendo la confiabilidad, resultó poco práctico. La organización necesitaba un enfoque que pudiera escalar de manera elástica y recuperarse de manera inteligente cuando una página se muestra en un estado inesperado.

Arquitectura de la solución

Abordar estos desafíos requiere una automatización que pueda manejar interfaces web con mucho JavaScript, aislar sesiones entre procesos, exponer el control programático a través de API, registrar cada interacción de manera inmutable, ceder a un humano cuando la confianza es baja y escalar elásticamente. La implementación de referencia cumple estos requisitos a través de un pequeño conjunto de componentes con responsabilidades de alcance estricto. Estos incluyen una aplicación React de una sola página para el operador, un proxy de terminación TLS que resuelve una limitación específica del navegador, un trabajador de Python que ejecuta Strands Agents en el tiempo de ejecución de Amazon Bedrock AgentCore y el entorno de navegador administrado proporcionado por la herramienta de navegador Amazon Bedrock AgentCore. Amazon Cognito registra al operador y emite el JWT que fluye a través de la pila. La arquitectura está diseñada para ayudar a aumentar el retorno de la inversión en automatización manteniendo al mismo tiempo la seguridad, el cumplimiento y la supervisión humana.

Figura 1: Arquitectura de la solución

Los pasos numerados en el diagrama trazan el flujo de un extremo a otro:

Cargar interfaz de usuario. El navegador del usuario carga la interfaz de chat de React desde Amazon CloudFront, respaldada por un depósito privado de Amazon Simple Storage Service (Amazon S3) que aloja los activos estáticos de la interfaz de usuario. Iniciar sesión en OIDC. El usuario se autentica a través de Amazon Cognito (configurado con SPA y clientes de aplicaciones de máquina a máquina) a través del flujo de inicio de sesión estándar de OpenID Connect (OIDC). WSS. El navegador abre una conexión WebSocket a través de un AWS Application Load Balancer (ALB) que finaliza TLS mediante un certificado de AWS Certificate Manager (ACM). HTTP simple. El ALB reenvía la conexión WebSocket a un proxy inverso NGINX que se ejecuta como una tarea de AWS Fargate en una subred privada. El proxy extrae el JWT de la cadena de consulta y lo prepara para el siguiente salto. Portador de autenticación WSS. El proxy NGINX reenvía la conexión al tiempo de ejecución de Amazon Bedrock AgentCore con el JWT en el encabezado de Autorización. El tiempo de ejecución de AgentCore valida el token a través de su autorizador JWT y lo enruta al contenedor del agente del navegador que ejecuta Strands Agents, VisualBrowserTool y el controlador human-in-the-loop. Invocar modelo. El agente llama a un modelo básico con capacidad de visión en Amazon Bedrock para analizar capturas de pantalla y determinar la siguiente acción del navegador. CDP/WSS (Dramaturgo). El agente controla una instancia aislada de Chrome en la herramienta de navegador AgentCore de Amazon Bedrock a través del protocolo Chrome DevTools. El navegador navega por las aplicaciones web heredadas de destino en la red del cliente. PonerObjeto. El agente almacena transcripciones de sesiones y capturas de pantalla en un depósito de Amazon S3, genera una URL prefirmada para cada captura de pantalla y transmite la URL al navegador del usuario a través de la conexión WebSocket existente. Obtener URL prefirmada. El navegador del usuario recupera la imagen de la captura de pantalla directamente desde S3 utilizando la URL prefirmada y la muestra en la interfaz de usuario del chat junto con el rastreo de razonamiento del agente. Los bytes de imagen no viajan a través del WebSocket. Sólo la URL de corta duración lo hace.

La infraestructura de soporte incluye Amazon Elastic Container Registry (Amazon ECR) (que aloja la puerta de enlace NGINX y las imágenes del contenedor del agente de navegador) y Amazon CloudWatch (registro de auditoría y observabilidad).

Amazon Bedrock AgentCore Browser Tool proporciona un servicio de navegador totalmente administrado y basado en la nube. Los agentes de IA interactúan con interfaces web heredadas a través de sesiones de navegador seguras y aisladas. Cada sesión se ejecuta en un entorno aislado y dedicado con su propia CPU, memoria y sistema de archivos. Cuando se completa una sesión, se finaliza el entorno y se desinfecta el estado.

Los agentes se conectan a través de Playwright a través de CDP basado en WebSocket para el control programático de aplicaciones web, incluidas interfaces con mucho JavaScript, formularios dinámicos y flujos de trabajo de varios pasos, independientemente de la pila de tecnología subyacente.

Tres capacidades abordan directamente los desafíos descritos anteriormente:

Los perfiles del navegador persisten en el estado de autenticación entre sesiones. Autentíquese una vez o haga que un operador humano realice el inicio de sesión inicial a través de visualización en vivo y las sesiones posteriores se reanuden ya iniciadas, aliviando los flujos repetidos de SSO y MFA. La configuración de proxy enruta el tráfico a través de la infraestructura de proxy corporativa con enrutamiento basado en dominio y credenciales en AWS Secrets Manager, lo que hace que las aplicaciones heredadas internas detrás de redes corporativas o portales con IP permitidas sean accesibles. La grabación de sesiones captura las interacciones del navegador, incluidos los clics, las entradas de formularios y la navegación de páginas, y las almacena en Amazon S3. Combinado con el registro de AWS CloudTrail, esto respalda los requisitos de seguimiento de auditoría de las regulaciones financieras.

Volviendo a nuestro ejemplo de seguros, la herramienta de navegación navega por el sistema de administración de pólizas exactamente como lo haría un operador humano. Inicia sesión con un estado de sesión persistente en el perfil, ingresa modificaciones en múltiples pantallas y envía cambios, todo dentro de una sesión segura y aislada que produce un registro de auditoría completo y reproducible.

Modelos de base de Amazon Bedrock y orquestación de Strands Agents

Amazon Bedrock proporciona el modelo básico multimodal que impulsa el ciclo de decisión del agente. La implementación de referencia utiliza un modelo básico con capacidad de visión en Amazon Bedrock a través de inferencia entre regiones para analizar capturas de pantalla del estado actual del navegador y decidir qué acción tomar a continuación. Esta es la capacidad principal que diferencia la solución de la RPA tradicional. El modelo ve la página, razona sobre lo que hay en la pantalla y determina la siguiente acción del navegador, ya sea un clic, un relleno, un desplazamiento o una pausa para la confirmación humana.

Strands Agents es el marco de orquestación que convierte las decisiones del modelo en llamadas a herramientas concretas. En lugar de seguir un guión fijo, el modelo impulsa su propio comportamiento a través de un bucle ReAct (Razón + Actuación). El modelo toma una captura de pantalla, analiza la página visualmente, decide qué herramienta llamar, la ejecuta, observa el resultado y repite. El marco admite múltiples patrones de orquestación, incluidos agentes como herramientas para delegación jerárquica, gráficos para flujos de trabajo estructurados y patrones de colaboración para procesos complejos de varios pasos.

Cuando un operador proporciona instrucciones en lenguaje natural como “abra la póliza n.° 12345, actualice el monto de la cobertura a $500 000 y envíela para su aprobación”, el modelo las descompone en acciones secuenciales del navegador. Después de cada acción, el modelo toma una captura de pantalla, interpreta visualmente el estado de la nueva página y decide el siguiente paso. Si aparece un cuadro de diálogo de confirmación inesperadamente o un campo se valida de manera diferente a lo previsto, el modelo pasa por el nuevo estado en lugar de fallar. Esto alivia la fragilidad que hace que la RPA tradicional no sea práctica a escala.

Aplicado a nuestro escenario de seguros, una única instrucción en lenguaje natural puede impulsar un flujo de trabajo completo de modificación del plan. El modelo navega visualmente hasta la política correcta, identifica los campos del formulario en la captura de pantalla, ingresa cambios en varias pantallas, maneja solicitudes de validación inesperadas y las envía para su aprobación. Ningún ser humano necesita escribir un guión para cada paso o mantener selectores frágiles a medida que evoluciona la interfaz de usuario.

Integración humana en el circuito

El operador ve la automatización tal como sucede. El agente transmite rastros de razonamiento y capturas de pantalla a la interfaz de chat en tiempo real. Cuando el modelo determina que necesita intervención humana antes, por ejemplo, confirmando que se abrió la política correcta antes de enviar un cambio, llama a la herramienta handoff_to_user, que pausa la automatización y presenta al operador una pregunta y la captura de pantalla actual.

La sesión del navegador permanece activa mientras el agente espera una respuesta (hasta 300 segundos de forma predeterminada). El operador puede aprobar, rechazar, proporcionar instrucciones adicionales o pedirle al agente que pruebe un enfoque diferente. Una vez que llega la respuesta, el modelo reanuda el ciclo ReAct con la entrada del operador. Se necesita una nueva captura de pantalla para evaluar el estado actual y continúa desde allí. Si el operador no responde dentro del tiempo de espera, el modelo decide si vuelve a intentarlo, intenta un enfoque alternativo o aborta sin problemas.

En el contexto de nuestro flujo de trabajo de seguros, esto significa que el trabajador digital hace una pausa antes de acciones críticas como presentar una modificación del plan, confirmar un cambio de beneficiario o procesar un endoso que excede un umbral. Esto le da al operador la oportunidad de verificar la precisión en la pantalla antes de que el cambio se vuelva permanente. El operador mantiene el control sin necesidad de realizar cada paso manualmente.

Seguridad y cumplimiento

La arquitectura proporciona aislamiento de sesiones, controles de IAM para la gestión de acceso y sesiones efímeras donde el estado se borra después de cada uso. La implementación de referencia utiliza Amazon Cognito como proveedor de identidad, con Microsoft Entra ID y Okta compatibles mediante el intercambio de la URL de descubrimiento de OIDC. Los proveedores de OIDC alineados con los estándares trabajan con la misma superficie de configuración.

Para nuestra compañía de seguros, esto significa que cada modificación de la póliza realizada por el trabajador digital es totalmente rastreable, con grabaciones de sesiones almacenadas en Amazon S3 y acciones registradas a través de Amazon CloudWatch. Esto respalda los requisitos de retención de las regulaciones financieras.

Tutorial de implementación

La implementación de referencia se envía como un trabajador de Python creado en Strands Agents, implementado en el tiempo de ejecución de Amazon Bedrock AgentCore. El agente utiliza el SDK de la herramienta de navegador AgentCore para crear sesiones de navegador aisladas a través de la clase base Strands AgentCoreBrowser. El código fuente completo está disponible en el repositorio de GitHub.

Cómo el agente controla el navegador

El siguiente diagrama traza una instrucción de un solo operador a través del ciclo de automatización completo. El operador emite un comando en lenguaje natural, el agente inicia una sesión de navegador y el modelo básico ingresa en un ciclo de ReAct. Realiza capturas de pantalla, analiza visualmente el estado de la página, decide la siguiente acción, la ejecuta a través de Playwright y repite hasta completar la tarea.

Diagrama de flujo de chat que rastrea la instrucción de un operador a través del bucle ReAct de captura de pantalla, análisis, acción y repetición del agente.

Figura 2: Flujo de chat, desde las instrucciones del operador hasta el bucle ReAct

Cuando el modelo determina que necesita confirmación humana antes de un paso crítico, como enviar un formulario o confirmar una selección de registros, pausa la automatización y presenta al operador la captura de pantalla actual y una pregunta. El operador responde y el modelo se reanuda.

Flujo humano en el circuito donde el agente hace una pausa y le presenta al operador una captura de pantalla y una pregunta antes de un paso crítico.

Figura 3: Human-in-the-loop, donde el agente hace una pausa para tomar una decisión del operador

Decisiones clave de diseño

Vale la pena destacar dos opciones de implementación porque afectan directamente la confiabilidad de la producción:

Aislamiento del bucle de eventos. El agente del navegador se ejecuta junto con un servidor WebSocket que transmite actualizaciones al operador. El modelo de subprocesos de la herramienta del navegador ascendente interfiere con el bucle de eventos del servidor, lo que provoca que las conexiones se interrumpan después de unos 15 segundos. La implementación de referencia anula esto para que las operaciones del navegador se ejecuten en su propio bucle aislado, manteniendo estable la conexión del operador durante toda la sesión. Consulte visual_browser_tool.py para ver la implementación completa.

Localizadores semánticos sobre selectores CSS. Los robots RPA tradicionales se rompen cuando los elementos de la interfaz de usuario se mueven o cambian de nombre. La herramienta semantic_action adopta un enfoque diferente. El modelo describe lo que ve (“haga clic en el botón Enviar”) y la herramienta lo asigna a la API de localización semántica de Playwright mediante una coincidencia difusa que no distingue entre mayúsculas y minúsculas. Esto hace que la automatización sea resistente a las variaciones menores de la interfaz de usuario comunes en las aplicaciones heredadas. Éste es exactamente el problema de fragilidad que la solución se propuso resolver. Consulte semantic_action_tool.py para ver la implementación completa.

Implementación y pruebas

Toda la solución se implementa con una única pila de Terraform. Los siguientes pasos lo llevarán desde git clone a una URL de chat que funcione.

Requisitos previos

Debes tener lo siguiente:

Una cuenta de AWS con acceso al modelo de Amazon Bedrock habilitado para un modelo de base con capacidad de visión. Interfaz de línea de comandos de AWS (AWS CLI) v2 configurada con credenciales. Ventana acoplable 24+. Terraforma 1.5+. Nodo 20+ e hilo. Pitón 3.12.

Desplegar

git clone && cd cp implementación/terraform/stacks/all/terraform.tfvars.sample implementación/terraform/stacks/all/terraform.tfvars # Editar terraform.tfvars – establecer aws_region, project_name, cognito_domain_prefix terraform -chdir=deployment/terraform/stacks/all init terraform -chdir=despliegue/terraform/stacks/todos aplican

La pila aprovisiona el grupo de usuarios de Cognito, la distribución de CloudFront, los repositorios de ECR, el servicio de proxy ECS, el tiempo de ejecución de AgentCore con el autorizador JWT y el almacenamiento de sesiones de S3. Los aprovisionadores de Terraform crean y envían ambas imágenes de contenedor, compilan la interfaz de usuario de React, la sincronizan con S3 e invalidan CloudFront, todo en una sola pasada. La primera aplicación tarda aproximadamente entre 20 y 30 minutos, la mayor parte de los cuales es la propagación de CloudFront y la creación de imágenes de contenedor.

Prueba la solución

Una vez completada la implementación, Terraform genera la URL de CloudFront. Ábrelo en un navegador, inicia sesión con un usuario de Cognito y prueba un mensaje como:

"Abra https://httpbin.org/forms/post, complete el nombre del cliente con John Smith, elija una pizza mediana, verifique la cobertura de tocino y envíe el formulario".

Debería ver el flujo de seguimiento del razonamiento en el chat, aparecer capturas de pantalla junto a cada paso y un mensaje humano en el circuito antes del envío final. Para escenarios de prueba adicionales, indicaciones de ejemplo y capturas de pantalla de la interfaz de usuario en acción, consulte el archivo README del repositorio.

Limpiar

Para evitar cargos continuos, destruye la infraestructura cuando hayas terminado:

terraform -chdir=despliegue/terraform/stacks/todo destruir

Esto elimina los recursos aprovisionados, incluido el grupo de usuarios de Cognito, la distribución de CloudFront, los repositorios de ECR, los servicios de ECS, el tiempo de ejecución de AgentCore y los depósitos de S3.

Conclusión y próximos pasos

El trabajador digital impulsado por IA que se describe en esta publicación hace que ese caso sea alcanzable. Mientras que la RPA tradicional es frágil porque se acopla a diseños de interfaz de usuario exactos, la combinación de los modelos básicos con capacidad de visión en Amazon Bedrock, la orquestación basada en modelos de Strands Agents y las sesiones de navegador aisladas de AgentCore Browser Tool produce una automatización que razona sobre el estado de la página, se recupera de ramas inesperadas y remite a un humano cuando la confianza es baja. Lo hace sin sacrificar el seguimiento de auditoría que requieren las industrias reguladas.

La implementación de referencia deja espacio para crecer. Si su flujo de trabajo necesita contexto entre sesiones, la memoria Amazon Bedrock AgentCore proporciona recuperación administrada a corto y largo plazo. Si necesita integrar las API REST existentes como herramientas que el agente puede utilizar junto con las acciones de su navegador, Amazon Bedrock AgentCore Gateway lo maneja sin escribir herramientas Strands personalizadas. Para los portales que requieren un comportamiento personalizado del navegador, las extensiones de Chrome se pueden cargar en las sesiones de AgentCore Browser Tool en el momento de la creación. El código fuente completo está disponible en GitHub.

Sobre los autores

Salman Moghal

Salman Moghal

Salman es consultor principal en AWS Professional Services Canada y se especializa en IA agente y arquitectura nativa de la nube. Él diseña y construye los sistemas de inteligencia artificial que modernizan las operaciones en los sectores bancario, de seguros y de servicios financieros.

Brian Tol

Brian Tol

Brian lidera la práctica de modernización de aplicaciones de Norteamérica en AWS Professional Services, donde sus equipos ayudan a los clientes empresariales a acelerar sus transformaciones en la nube utilizando las tecnologías de inteligencia artificial más avanzadas.

Nasar Khan

Nasar Khan

Nasar es consultor de entrega de AWS Professional Services y ayuda a los clientes a diseñar e implementar soluciones de IA agente que convierten ideas ambiciosas en sistemas de producción funcionales. Se especializa en crear arquitecturas autónomas de múltiples agentes en AWS, conectando grandes modelos de lenguaje con herramientas, datos y flujos de trabajo empresariales para resolver problemas comerciales reales a escala.