Desde mejorar la experiencia de conversación hasta la asistencia de los agentes, hay muchas maneras en que la inteligencia artificial (IA) generativa y los modelos básicos (FM) pueden ayudar a brindar un soporte mejor y más rápido. Con la creciente disponibilidad y variedad de FM, es difícil experimentar y mantenerse actualizado con los últimos lanzamientos de modelos. Amazon Bedrock es un servicio totalmente administrado que ofrece una selección de potentes FM de empresas líderes en inteligencia artificial, como AI21 Labs, Anthropic, Cohere, Meta, Stability AI y Amazon. Las funciones integrales de Amazon Bedrock le permiten experimentar fácilmente con una variedad de FM principales y adaptarlos de forma privada a sus datos mediante técnicas como el ajuste fino y la generación aumentada de recuperación (RAG).
Agentes de Amazon Bedrock
En julio, AWS anunció Agents Preview para Amazon Bedrock, una nueva forma para que los desarrolladores creen agentes completamente administrados con solo unos pocos clics. Los agentes amplían los FM para realizar tareas comerciales complejas, desde reservar viajes y procesar reclamaciones de seguros hasta crear campañas publicitarias y gestionar inventario, todo sin tener que escribir código. Con agentes totalmente administrados, no tiene que preocuparse por implementar o administrar la infraestructura.
En esta publicación, proporcionamos una guía paso a paso con componentes básicos para crear un bot de servicio al cliente. Para esta solución utilizamos un modelo de generación de texto (Anthropic Claude V2) y agentes para Amazon Bedrock. Proporcionamos una plantilla de AWS CloudFormation para proporcionar los recursos necesarios para crear esta solución. Luego lo guiaremos por los pasos para crear un agente para Amazon Bedrock.
Mensaje de reacción
Los FM determinan cómo se resuelven las tareas solicitadas por los usuarios mediante una técnica llamada ReAct. Es un paradigma general que conecta el pensamiento y la acción con las FM. ReAct pide a los FM que generen rastros de razonamiento verbal y acciones para una tarea. Esto permite que el sistema realice un razonamiento dinámico para crear, mantener y ajustar planes de acción mientras incorpora información adicional al razonamiento. Las indicaciones estructuradas incluyen una secuencia de ejemplos de pregunta-pensamiento-acción-observación.
- La pregunta es la tarea solicitada por el usuario o el problema a resolver.
- El pensamiento es un paso de razonamiento que muestra al FM cómo abordar el problema y determinar la acción a tomar.
- La acción es una API a la que el modelo puede llamar a través de un conjunto permitido de API.
- La observación es el resultado de la realización de la acción.
Componentes en Agentes para Amazon Bedrock
Detrás de escena, los agentes de Amazon Bedrock automatizan la programación y orquestación oportuna de las tareas solicitadas por los usuarios. Puede complementar de forma segura las indicaciones con información específica de la empresa para proporcionar al usuario respuestas en lenguaje natural. El agente divide la tarea solicitada por el usuario en varios pasos y organiza subtareas utilizando FM. Los grupos de acciones son tareas que el agente puede realizar de forma autónoma. Los grupos de acciones están asociados con una función de AWS Lambda y un esquema de API asociado para realizar llamadas a la API. El siguiente diagrama muestra la estructura del agente.
Descripción general de la solución
Utilizamos un caso de uso de un minorista de calzado para crear el robot de servicio al cliente. El robot ayuda a los clientes a comprar zapatos ofreciéndoles opciones en una conversación humana. Los clientes se comunican con el bot en lenguaje natural y llaman a API externas en varios pasos para realizar subtareas. El siguiente diagrama ilustra el flujo de proceso de ejemplo.
El siguiente diagrama muestra una arquitectura general de esta solución.
- Puede crear un agente utilizando FM compatibles con Amazon Bedrock, como Anthropic Claude V2.
- Agregue un esquema de API al agente que reside en un depósito de Amazon Simple Storage Service (Amazon S3) y una función Lambda que contenga la lógica empresarial. (Nota: este es un paso de configuración que se realiza una sola vez).
- El agente utiliza las solicitudes de los clientes para crear un mensaje utilizando el marco ReAct. Luego, el esquema API se utiliza para llamar al código correspondiente en la función Lambda.
- Puede realizar una variedad de tareas, incluido el envío de notificaciones por correo electrónico, la escritura en bases de datos y la activación de API de aplicaciones en las funciones de Lambda.
En esta publicación, utilizamos la función Lambda para recuperar datos del cliente, enumerar los zapatos que coinciden con la actividad preferida del cliente y, finalmente, realizar pedidos. Nuestro código está respaldado por una base de datos SQLite en memoria. Puede utilizar construcciones similares para escribir en un almacén de datos persistente.
requisitos
Para implementar la solución proporcionada en esta publicación, debe tener una cuenta de AWS y acceso a Amazon Bedrock con agentes habilitados (actualmente en versión preliminar). Utilice la plantilla de AWS CloudFormation para crear la pila de recursos necesaria para la solución.
us-east-1 |
![]() |
La plantilla de CloudFormation crea dos roles de IAM. Actualice estos roles para aplicar permisos con privilegios mínimos como se describe en Mejores prácticas de seguridad. Haga clic aquí para conocer qué funciones de IAM están disponibles para su uso con los agentes de Amazon Bedrock.
LambdaBasicExecutionRole
con acceso completo a Amazon S3 y acceso a CloudWatch para iniciar sesión.AmazonBedrockExecutionRoleForAgents
con acceso completo a Amazon S3 y acceso completo a Lambda.
Importante: Los agentes de Amazon Bedrock deben tener el nombre del rol con el prefijo AmazonBedrockExecutionRoleForAgents_*
Configuración de agentes Bedrock
En las siguientes dos secciones, lo guiaremos en la creación y prueba de un agente.
Crear un agente para Amazon Bedrock
Para crear un agente, abra la consola de Amazon Bedrock y seleccione agentes en el área de navegación izquierda. Luego seleccione Crear agente.
Esto inicia el flujo de trabajo de creación del agente.
- Proporcionar detalles del agente: Dale al agente un nombre y una descripción (opcional). Seleccione el rol de servicio creado por la pila de CloudFormation y seleccione Próximo.
- Seleccione un modelo de base: En el Seleccionar modelo En la pantalla seleccionas un modelo. Brinde al agente instrucciones claras y concisas sobre qué tareas realizar y cómo interactuar con los usuarios.
- Agregar grupos de acciones: Una acción es una tarea que el agente puede realizar mediante llamadas API. Una serie de acciones forman un grupo de acciones. Proporciona un esquema de API que define todas las API en el grupo de acciones. Debe proporcionar un esquema de API en formato JSON de esquema OpenAPI. La función Lambda contiene la lógica empresarial necesaria para realizar llamadas API. Debe asociar una función Lambda con cada grupo de acciones.
Asigne al grupo de acciones un nombre y una descripción de la acción. Seleccione la función Lambda, proporcione un archivo de esquema API y seleccione Próximo.
- En el último paso, verifique la configuración del agente y seleccione Crear agente.
Pruebas e implementación de agentes para Amazon Bedrock
- Probar el agente: Después de crear el agente, un cuadro de diálogo muestra la descripción general del agente junto con un borrador de trabajo. La consola de Amazon Bedrock proporciona una interfaz de usuario para probar su agente.
- Insertar: Después de una prueba exitosa, puede implementar su agente. Para implementar un agente en su aplicación, debe crear un alias. Luego, Amazon Bedrock crea automáticamente una versión para este alias.
Las siguientes acciones se realizan utilizando la configuración anterior del agente y el código Lambda proporcionado en esta publicación:
- El agente crea un mensaje a partir de las instrucciones proporcionadas por el desarrollador (por ejemplo, «Usted es un agente que ayuda a los clientes a comprar zapatos»), los esquemas API necesarios para completar las tareas y los detalles de la fuente de datos. La creación automática de mensajes ahorra semanas de experimentar con mensajes para diferentes FM.
- El agente organiza la tarea solicitada por el usuario, p.e. Por ejemplo, «Estoy buscando zapatos», dividiéndolo en subtareas más pequeñas, por ejemplo. B. recuperar datos del cliente, hacer coincidir la actividad preferida del cliente con la actividad del calzado y realizar pedidos de calzado. El agente determina el orden correcto de las tareas y también se ocupa de los escenarios de error.
La siguiente captura de pantalla muestra algunos ejemplos de respuestas del agente.
Por elección Mostrar pista Para cada respuesta, un cuadro de diálogo muestra la técnica de razonamiento utilizada por el agente y la respuesta final generada por el FM.
Limpiar
Para evitar cargos futuros, elimine los recursos. Puede hacer esto eliminando la pila de la consola de CloudFormation.
No dude en descargar y probar el código utilizado en esta publicación desde el repositorio del agente de Amazon Bedrock GitHub. También puede invocar a los agentes de Amazon Bedrock mediante programación; En el repositorio se incluye un cuaderno Jupyter de ejemplo.
Diploma
Los agentes de Amazon Bedrock pueden ayudarlo a aumentar la productividad, mejorar su experiencia de servicio al cliente o automatizar tareas de DevOps. En esta publicación, le mostramos cómo configurar agentes de Amazon Bedrock para crear un bot de servicio al cliente.
Le recomendamos que obtenga más información consultando las funciones adicionales de Amazon Bedrock. Puede utilizar el código de muestra proporcionado en esta publicación para crear su implementación. Pruebe nuestro taller para obtener experiencia práctica con Amazon Bedrock.
Sobre los autores
Amit Arora es un arquitecto especialista en inteligencia artificial y aprendizaje automático en Amazon Web Services, que ayuda a los clientes empresariales a aprovechar los servicios de aprendizaje automático basados en la nube para escalar rápidamente sus innovaciones. También es instructor adjunto en el programa MS Data Science and Analytics de la Universidad de Georgetown en Washington DC.
Manju Prasad es Arquitecto Senior de Soluciones en Cuentas Estratégicas en Amazon Web Services. Se centra en brindar asesoramiento técnico en diversas áreas, incluida AI/ML, a un importante cliente de M&E. Antes de incorporarse a AWS, trabajó para empresas del sector de servicios financieros y también para una startup.
Archana Inapudi es arquitecto senior de soluciones en AWS y brinda soporte a clientes estratégicos. Tiene más de una década de experiencia ayudando a clientes a diseñar y crear análisis de datos y soluciones de bases de datos. Le apasiona utilizar la tecnología para ofrecer valor a los clientes y lograr resultados comerciales.