Mejora la experiencia del cliente con una solución inteligente de automatización de correos electrónicos usando Amazon Bedrock

Elena Digital López

Las organizaciones invierten numerosos recursos, esfuerzo y dinero en llevar a cabo sus operaciones de atención al cliente para responder a sus preguntas y proporcionar soluciones. Los clientes pueden hacer preguntas a través de diversos canales, como correo electrónico, chat o teléfono, y desplegar un equipo para atender estas consultas puede resultar intensivo en recursos, consumir mucho tiempo y ser improductivo si las respuestas a esas preguntas son repetitivas.

Aunque la organización puede contar con los datos necesarios para responder a las consultas de los clientes, aún pueden enfrentar dificultades para implementar un proceso automatizado que responda a dichas consultas. Estos desafíos pueden incluir datos no estructurados, diferentes idiomas y una falta de experiencia en tecnologías de inteligencia artificial (IA) y aprendizaje automático (ML).

En este artículo, mostramos cómo superar estos desafíos utilizando Amazon Bedrock para automatizar las respuestas por correo electrónico a las consultas de los clientes. Con nuestra solución, se puede identificar la intención de los correos electrónicos de los clientes y enviar una respuesta automatizada si la intención coincide con la base de conocimientos o fuentes de datos existentes. Si la intención no tiene una coincidencia, el correo electrónico se envía al equipo de soporte para una respuesta manual.

Amazon Bedrock es un servicio completamente gestionado que pone a disposición modelos fundamentales (FM) de startups líderes en IA y Amazon a través de una API, lo que permite elegir entre una amplia gama de FM para encontrar el modelo más adecuado para el caso de uso. Amazon Bedrock ofrece una experiencia sin servidor para comenzar rápidamente, personalizar de manera privada los FM con datos propios e integrarlos y desplegarlos en aplicaciones utilizando herramientas de AWS sin la necesidad de gestionar infraestructura.

A continuación, se presentan algunas intenciones comunes de los clientes al contactar con atención al cliente:

  • Estado de la transacción (por ejemplo, estado de una transferencia de dinero)
  • Restablecimiento de contraseña
  • Código promocional o descuento
  • Horario de atención
  • Ubicación de un agente
  • Reportar fraude
  • Desbloquear cuenta
  • Cerrar cuenta

Agents for Amazon Bedrock pueden ayudar a realizar la clasificación y detección de entidades en los correos electrónicos para estas intenciones. Para esta solución, mostramos cómo clasificar los correos electrónicos de los clientes para las tres primeras intenciones. También se pueden usar los agentes para Amazon Bedrock para detectar información clave en los correos electrónicos, con el fin de automatizar los procesos empresariales con algunas acciones. Por ejemplo, se pueden usar agentes para responder automáticamente a la solicitud de un cliente con información específica relacionada con esa consulta.

Además, los agentes para Amazon Bedrock pueden servir como una interfaz conversacional inteligente, facilitando interacciones sin problemas con miembros del equipo interno y clientes externos, atendiendo eficientemente las consultas e implementando las acciones deseadas. Actualmente, los agentes para Amazon Bedrock admiten modelos como los modelos Anthropic Claude y el modelo Amazon Titan Text G1 – Premier.

Descripción General de la Solución

Para construir nuestro flujo de respuesta de correo electrónico a los clientes, utilizamos los siguientes servicios:

Aunque ilustramos este caso de uso utilizando WorkMail, se puede usar otra herramienta de correo electrónico que permita la integración con funciones sin servidor o webhooks para llevar a cabo flujos de trabajo similares de automatización de correos electrónicos. Agents for Amazon Bedrock permite construir y configurar agentes autónomos en la aplicación. Un agente ayuda a los usuarios a completar acciones en función de los datos de la organización y la entrada del usuario. Los agentes orquestan interacciones entre FM, fuentes de datos, aplicaciones de software y conversaciones con los usuarios. Además, los agentes llaman automáticamente a las API para llevar a cabo acciones e invocan bases de conocimiento para complementar información para estas acciones. Los desarrolladores pueden ahorrar semanas de esfuerzo de desarrollo integrando agentes para acelerar la entrega de aplicaciones de IA generativa. Para este caso de uso, utilizamos el modelo Anthropic Claude 3 Sonnet.

Cuando se crea el agente, se introducen detalles para indicarle al agente qué debe hacer y cómo debe interactuar con los usuarios. Las instrucciones reemplazan al marcador de posición $instructions$ en la plantilla del mensaje de orquestación.

El siguiente es un ejemplo de las instrucciones que utilizamos para nuestros casos de uso:

"Tú eres un agente de clasificación y reconocimiento de entidades.

Tarea 1: Clasifica el texto dado en una de las siguientes categorías: "Estado de transferencia", "Restablecimiento de contraseña" o "Código promocional". Devuelve solo la categoría sin texto adicional.

Tarea 2: Si la categoría clasificada es "Estado de transferencia", encuentra la entidad "money_transfer_id" de 10 dígitos (por ejemplo: "MTN1234567") en el texto. Llama a la acción "ObtenerEstadoTransferencia", pasando el money_transfer_id como argumento, para recuperar el estado de la transferencia.

Tarea 3: Escribe una respuesta por correo electrónico para el cliente basándote en el texto recibido, la categoría clasificada y el estado de la transferencia (si corresponde). Incluye el money_transfer_id en la respuesta si la categoría es "Estado de transferencia".

Tarea 4: Usa la firma de correo electrónico "Best regards, Intelligent Corp" al final de la respuesta por correo electrónico.”

Un grupo de acciones define las acciones que el agente puede ayudar al usuario a realizar. Por ejemplo, se podría definir un grupo de acciones llamado ObtenerEstadoTransferencia con un esquema OpenAPI y una función Lambda adjunta. Agents for Amazon Bedrock se encarga de construir la API basada en el esquema OpenAPI y cumple con las acciones utilizando la función Lambda para obtener el estado de la tabla money_transfer_status de DynamoDB.

El siguiente diagrama de arquitectura destaca la solución de extremo a extremo.

El flujo de trabajo de la solución incluye los siguientes pasos:

  1. Un cliente inicia el proceso enviando un correo electrónico a la dirección de correo electrónico de soporte al cliente creada dentro de WorkMail.
  2. Al recibir el correo electrónico, WorkMail invoca una función Lambda, poniendo en marcha el flujo de trabajo subsecuente.
  3. La función Lambda transmite sin problemas el contenido del correo electrónico a Agents for Amazon Bedrock para su posterior procesamiento.
  4. El agente emplea las capacidades de procesamiento de lenguaje natural del modelo Anthropic Claude 3 Sonnet para comprender la clasificación del contenido del correo electrónico basada en la configuración de instrucciones del agente predefinida. Si se detectan entidades relevantes dentro del correo electrónico, como un ID de transferencia de dinero, el agente invoca una función Lambda para recuperar el estado de pago correspondiente.
  5. Si la clasificación del correo electrónico no se relaciona con una consulta sobre el estado de una transferencia de dinero, el agente genera una respuesta adecuada por correo electrónico (por ejemplo, instrucciones para restablecer la contraseña) y llama a una función Lambda para facilitar la entrega de la respuesta.
  6. Para consultas relacionadas con el estado de la transferencia de dinero, la función Lambda del grupo de acciones del agente consulta la tabla de DynamoDB para obtener la información de estado relevante basada en el ID de transferencia proporcionado y transmite la respuesta al agente.
  7. Con la información recuperada, el agente elabora una respuesta de correo electrónico personalizada para el cliente e invoca una función Lambda para iniciar el proceso de entrega.
  8. La función Lambda utiliza Amazon SES para enviar la respuesta por correo electrónico, proporcionando el cuerpo del correo electrónico, el asunto y la dirección de correo electrónico del cliente.
  9. Amazon SES entrega el mensaje de correo electrónico en la bandeja de entrada del cliente, proporcionando una comunicación sin problemas.
  10. En escenarios donde el agente no puede discernir con precisión la intención del cliente, es capaz de escalar el problema empujando el mensaje a un tema SNS. Este mecanismo permite que el sistema de ticketing que esté suscrito al tema reciba la notificación y cree un ticket de soporte para una mayor investigación y resolución.

Requisitos Previos

Consulte el archivo README.md en el repositorio de GitHub para asegurarse de cumplir con los requisitos previos para desplegar esta solución.

Desplegar la Solución

La solución se compone de tres pilas de AWS Cloud Deployment Kit (AWS CDK):

  • WorkmailOrgUserStack: crea la cuenta de WorkMail con dominio, usuario y acceso a la bandeja de entrada.
  • BedrockAgentCreation: crea el agente de Bedrock, el grupo de acciones del agente, el esquema OpenAPI, el bucket S3, la tabla DynamoDB y la función Lambda del grupo de agentes para obtener el estado de la transferencia de DynamoDB.
  • EmailAutomationWorkflowStack: crea la función Lambda de clasificación que interactúa con el agente y la función Lambda de integración, que se integra con WorkMail.

Para desplegar la solución, también se deben realizar algunas configuraciones manuales utilizando la consola de administración de AWS. Para obtener instrucciones completas, consulte el archivo README.md en el repositorio de GitHub.

Probar la Solución

Para probar la solución, envíe un correo electrónico desde su correo personal a la dirección de soporte creada como parte del despliegue de AWS CDK. Utilizamos las siguientes tres intenciones en nuestros datos de muestra para el entrenamiento de clasificación personalizada:

  • MONEYTRANSFER: El cliente quiere saber el estado de una transferencia de dinero.
  • PASSRESET: El cliente tiene una cuenta bloqueada o una solicitud de contraseña.
  • PROMOCODE: El cliente quiere saber sobre un descuento o código promocional disponible para una transferencia de dinero.

La captura de pantalla siguiente muestra un ejemplo de correo electrónico de un cliente solicitando el estado de una transferencia de dinero.

Si el correo electrónico del cliente no clasificado, el contenido del correo electrónico se reenvía a un tema SNS. Los suscriptores del tema reciben el contenido del correo electrónico como un mensaje de notificación.

Limpieza

Para evitar incurrir en costos continuos, se deben eliminar los recursos creados como parte de esta solución una vez que haya terminado. Para obtener instrucciones, consulte el archivo README.md en el repositorio de GitHub.

Conclusión

En este artículo, aprendiste cómo configurar una solución inteligente de automatización de correos electrónicos utilizando Agents for Amazon Bedrock, WorkMail, Lambda, DynamoDB, Amazon SNS y Amazon SES. Esta solución puede proporcionar los siguientes beneficios:

  • Mejora del tiempo de respuesta de los correos electrónicos
  • Mejora de la satisfacción del cliente
  • Ahorro de costos en términos de tiempo y recursos
  • Capacidad para centrarse en problemas clave del cliente

Puedes expandir esta solución a otras áreas de tu negocio y a otras industrias. Además, puedes usar esta solución para construir un chatbot de autoservicio desplegando la pila BedrockAgentCreation para responder a las consultas de los clientes o usuarios internos usando Agents for Amazon Bedrock. Como próximos pasos, consulta Agents for Amazon Bedrock para comenzar a usar sus características y sigue Amazon Bedrock en el Blog de Machine Learning de AWS para mantenerte al día con nuevas capacidades y casos de uso.

Scroll al inicio