Automatización de flujos de trabajo de retención de clientes en Amazon Quick

La automatización de los flujos de trabajo de retención de clientes en Amazon Quick puede convertir un ciclo de respuesta de abandono de cinco días en uno que lleve unos minutos. El último trimestre, una empresa SaaS mediana perdió el 12% de sus cuentas en riesgo porque el equipo de retención tardó cinco días en identificar y contactar a los clientes insatisfechos. Cuando alguien revisó manualmente las hojas de cálculo CSAT y las transcripciones de llamadas, esos clientes ya habían abandonado. Amazon Quick acorta esa ventana de respuesta de días a minutos.

Esta publicación explica cómo crear un canal de retención automatizado en Amazon Quick. El canal detecta clientes insatisfechos a partir de datos estructurados. Analiza la opinión de las transcripciones de llamadas y califica a los clientes según su prioridad de retención. Luego genera ofertas de retención adaptadas a cada situación. En esta publicación, aprenderá cómo:

Configure un Quick Space con conjuntos de datos del centro de contacto y transcripciones de llamadas. Cree y registre una acción MCP personalizada para la puntuación del cliente. Cree un agente de chat que combine indicadores clave de rendimiento (KPI) cuantitativos con análisis de transcripciones cualitativos. Convierta el análisis en un Quick Flow reutilizable. Organice todo el proceso con Amazon Quick Automate.

Descripción general de la solución

La canalización de retención conecta cuatro componentes de Amazon Quick en secuencia. Quick Dashboard monitorea los KPI del centro de contacto, incluido CSAT (puntuación de satisfacción del cliente, una calificación de 1 a 5 que los clientes otorgan después de cada llamada), FCR (resolución de la primera llamada, si el equipo resolvió el problema en una sola llamada) y AHT (tiempo promedio de atención). Identifica a los clientes con puntuaciones CSAT iguales o inferiores a 2.

Quick Chat Agent utiliza lenguaje natural para consultar datos estructurados y transcripciones de llamadas no estructuradas. Combina puntuaciones cuantitativas con señales de sentimiento cualitativas. Esto pone de manifiesto por qué un cliente está en riesgo, no sólo que lo está.

Amazon Quick Flows convierte el análisis repetible basado en Chat en una automatización programada o bajo demanda que se ejecuta sin intervención manual. Su último paso formatea los resultados como una lista estructurada de clientes en riesgo que la automatización posterior puede consumir directamente.

Quick Automate ejecuta una canalización de varios pasos. Ingiere la lista estructurada de clientes en riesgo que produce Flow y califica a esos clientes a través de una acción MCP personalizada. Una acción MCP es un punto final sin servidor que amplía Quick Automate con lógica empresarial personalizada. Consulte la guía para desarrolladores de Quick Automate MCP para obtener más detalles. Luego, el canal clasifica a los clientes por prioridad, genera cartas de retención y las carga en Amazon Simple Storage Service (Amazon S3) para su distribución.

Ejecuta el flujo de trabajo en la infraestructura de AWS y puede acceder a pistas de auditoría, puntos de interrupción y controles de acceso basados ​​en roles.

Automatizar la arquitectura de canalización

El oleoducto ejecuta cinco pasos secuenciales. Descarga la lista de clientes en riesgo y datos del centro de contacto de Amazon Simple Storage Service (Amazon S3). Un paso de puntuación clasifica a esos clientes por prioridad de retención (según CSAT y qué tan recientemente cada cliente tuvo un problema) y selecciona los dos casos de mayor prioridad. Luego, el canal redacta cartas de crédito adicional que hacen referencia a los problemas específicos de cada cliente, las guarda como PDF y carga las cartas terminadas en Amazon S3 para su entrega y archivo.

La siguiente tabla resume cada paso:

Paso Acción Detalles 1 Descargar clientes en riesgo y conjunto de datos del centro de contacto Descargue el archivo de clientes en riesgo (Negative Sentiment.doc), así como el conjunto de datos estructurados contact_center_data.csv de Amazon S3. 2 Puntuación de retención Califique a cada cliente en CSAT y emita lo reciente a través de la acción MCP personalizada, y elija los dos casos de mayor prioridad. 3 Generación de cartas de retención Borradores de cartas de crédito de bonificación que hacen referencia a los problemas específicos de cada cliente. 4 Creación de PDF Guarde las cartas generadas como un documento PDF. 5 Cargar en Amazon S3 Almacene las cartas generadas en Amazon S3 para su entrega y archivo.

Esta solución utiliza Amazon S3, Amazon Quick (Dashboard, Chat, Flows, Automate) y acciones MCP personalizadas.

Requisitos previos

Para seguir este tutorial, necesita:

Una cuenta de AWS con Amazon Quick activado (Dashboard, Chat, Flows y Automate). Un conjunto de datos de centro de contacto estructurado en formato CSV llamado contact_center_data.csv (columnas: customer_id, csat_score, call_date, call_reason, team_id). Con esta publicación se proporciona un conjunto de datos de muestra. Documentos de transcripción de llamadas denominados Call_transcripts.docx en formato PDF o TXT. Un depósito de Amazon S3 para entrada y salida de canalización (ejemplo: amzn-s3-demo-bucket)

Tutorial de la solución

Las siguientes secciones recorren la compilación de principio a fin, desde la preparación de Quick Space y el registro del conector de acción MCP hasta el ensamblaje del flujo de trabajo Chat Agent, Flow y Automate. Complételos en orden, porque cada paso se basa en los componentes creados antes.

Para preparar tu Quick Space

Un Quick Space es la capa de datos que le da al Agente de Chat acceso tanto a conjuntos de datos estructurados (para filtrado y agregación) como a documentos no estructurados (para análisis de opiniones). Crear el espacio primero ayuda a verificar que todos los componentes posteriores se basan en la misma fuente de verdad.

Desde la consola rápida, seleccione Espacios.

Seleccione "Crear espacio". Para Nombre del espacio, ingrese ContactSpace.

Crear cuadro de diálogo de espacio con el nombre del espacio establecido en ContactSpace

En la pantalla siguiente, seleccione Conjuntos de datos.

Pantalla de configuración del espacio con el botón Cargar archivos resaltado para su selección

Luego seleccione Agregar conjuntos de datos. Busque y seleccione la casilla de verificación junto a su conjunto de datos contact_center_data y luego elija Agregar.

Agregar panel de conjuntos de datos con el conjunto de datos contact_center_data seleccionado

Seleccione Cargas de archivos, luego seleccione Cargar archivos y cargue su archivo de transcripción Call_transcripts.docx, luego elija Abrir.

Pantalla de configuración del espacio con la opción Subidas de archivos para el archivo de transcripción

Espere a que se complete la indexación. La columna Estado muestra Listo tanto para el conjunto de datos como para el documento.

Fuentes de datos espaciales que muestran el estado Listo para el conjunto de datos y el documento

Para crear el conector de acción MCP

Un conector MCP Action une Amazon Quick y su lógica empresarial personalizada. Define el conector y lo pone a disposición como punto final HTTP. Usted escribe una función AWS Lambda que contiene su algoritmo de puntuación incluido en el protocolo MCP, la pone a disposición a través de Amazon API Gateway y registra ese punto final en Amazon Quick.

El Model Context Protocol (MCP) es un estándar abierto que permite a los asistentes de IA, como Amazon Quick, llamar a herramientas externas en un formato coherente de solicitud y respuesta. Si es nuevo en estos servicios, AWS Lambda le permite ejecutar código sin aprovisionar servidores, y Amazon API Gateway expone ese código como una dirección web (un punto final HTTP) al que Amazon Quick puede llamar. Primero crea la función Lambda, luego coloca un punto final de API Gateway delante de ella y finalmente registra ese punto final en Amazon Quick.

La siguiente función Lambda implementa un servidor MCP mínimo. Maneja los tres métodos JSON-RPC que Amazon Quick llama durante la conexión: inicializar (el protocolo de enlace), herramientas/lista (que anuncia la herramienta score_customers para que Amazon Quick pueda descubrirla) y herramientas/llamada (que ejecuta la puntuación cuando se invoca la herramienta). El inputSchema de la herramienta sigue el JSON Schema Draft 7, que Amazon Quick requiere en el momento de la publicación:

import json # Catálogo de herramientas anunciado en Amazon Quick durante el descubrimiento (herramientas/lista). # inputSchema utiliza JSON Schema Draft 7 (se requiere una matriz en la raíz). HERRAMIENTAS = [ { "name": "score_customers", "description": "Califica a los clientes del centro de contacto por prioridad de retención.", "inputSchema": { "type": "object", "properties": { "customers": { "type": "array", "description": "Registros de clientes a calificar.", "items": { "type": "object", "properties": { "customer_id": {"type": "string"}, "csat_score": {"type": "number"}, "days_since_last_issue": {"type": "number"} }, "required": ["customer_id"] } } }, "required": ["clientes"] } } ] def score_customers(clientes): puntuado =[]para c en clientes: puntuación = 0 # Factores de ponderación: CSAT bajo = puntuación de riesgo de abandono alta += (5 – c.get("csat_score", 3)) * 20 # Novedad: los problemas de los últimos 7 días obtienen una puntuación más alta += 30 if c.get("days_since_last_issue", 30) < 7 else 0 scoring.append({ "customer_id": c["customer_id"], "retention_score": round(score, 1), "explanation": f"CSAT:{c.get('csat_score')}, days_since_last_issue:{c.get('days_since_last_issue')}" }) scoring.sort(key=lambda x: x["retention_score"], reverse=True) return puntuación def lambda_handler(evento, contexto): """Manejador JSON-RPC compatible con MCP para puntuación de retención de clientes.""" req = json.loads(event.get("body", "{}")) método = req.get("method") req_id = req.get("id") def rpc(resultado): return {"statusCode": 200, "headers": {"Content-Type": "application/json"}, "body": json.dumps({"jsonrpc": "2.0", "id": req_id, "result": resultado})} if método == "initialize": return rpc({ "protocolVersion": "2024-11-05", "capabilities": {"tools": {}}, "serverInfo": {"name": "customer-scoring", "version": "1.0.0"} }) if método == "herramientas/lista": return rpc({"herramientas": HERRAMIENTAS}) if método == "herramientas/llamada": params = req.get("params", {}) if params.get("nombre") == "score_customers": args = params.get("argumentos", {}) scoring = score_customers(args.get("clientes",[])) return rpc({"content": [{"type": "text", "text": json.dumps(puntuado)}]}) return {"statusCode": 200, "headers": {"Content-Type": "application/json"}, "body": json.dumps({"jsonrpc": "2.0", "id": req_id, "error": {"code": -32601, "mensaje": "Método no encontrado"}})}

Implemente esta función en AWS Lambda:

Abra la consola de AWS Lambda y elija Crear función. Seleccione Autor desde cero. En Nombre de función, ingrese puntuación del cliente. Para Runtime, elija una versión reciente de Python compatible (por ejemplo, Python 3.13). Elija Crear función. En la pestaña Código, reemplace el código predeterminado con la función que se mostró anteriormente, luego elija Implementar.

Con la función implementada, cree un punto final de API Gateway frente a ella utilizando los siguientes comandos de AWS Command Line Interface (AWS CLI). Si lo prefieres, puedes realizar estos mismos pasos en la consola de API Gateway. Ejecute los comandos en orden. Cada uno produce un valor (como el ID de API) que utiliza en el siguiente.

Reemplace los valores del marcador de posición (, , , ) con los suyos propios:

# 1. Crear API REST aws apigateway create-rest-api –name customer-scoring-api –endpoint-configuration type=REGIONAL # Anote el valor "id" de la respuesta -> # 2. Obtenga el ID del recurso raíz aws apigateway get-resources –rest-api-id # Anote el valor "id" -> # 3. Cree el método POST aws apigateway put-method –rest-api-id –resource-id –http-method POST –authorization-type NONE # 4. Integrar con Lambda aws apigateway put-integration –rest-api-id –resource-id –http-method POST –type AWS_PROXY –integration-http-method POST –uri "arn:aws:apigateway::lambda:path/2015-03-31/functions/arn:aws:lambda:::function:/invocations" # 5. Permitir que API Gateway invoque Lambda aws lambda add-permission –function-name –statement-id apigateway-invoke –action lambda:InvokeFunction –principal apigateway.amazonaws.com –source-arn "arn:aws:execute-api:::/*/POST/" # 6. Implemente aws apigateway create-deployment –rest-api-id –stage-name prod # Su URL de punto final: # https://.execute-api..amazonaws.com/prod/mcp

El comando create-deployment devuelve una identificación de implementación y una marca de tiempo. Construya la URL del punto final usted mismo utilizando su ID de API y región en el siguiente formato: https://.execute-api..amazonaws.com/prod/mcp. Tenga en cuenta esta URL. Lo utiliza al registrar el conector en Amazon Quick.

Consideración de producción: este tutorial utiliza API Gateway directamente frente a Lambda para simplificar. Para cargas de trabajo de producción, considere usar puertas de enlace Agentcore frente a Lambda, que brindan autenticación, aceleración y observabilidad integradas a nivel de agente listas para usar.

Para registrar el conector MCP Action en Amazon Quick

Desde la página de inicio de Amazon Quick, seleccione Más y luego seleccione Conectores. En la sección derecha, seleccione Crear para su equipo.

Página de conectores con la opción Crear para tu equipo

Seleccione Protocolo de contexto modelo.

Selección del tipo de conector que muestra el protocolo de contexto del modelo

En la pantalla siguiente, seleccione No, crear nuevo.

Mensaje de nuevo conector con No, crear nuevo seleccionado

Ingrese los siguientes valores y elija Siguiente: Nombre: mcp-customer-score. Descripción: encuentre la puntuación de los clientes en función de los KPI agregados. Punto final del servidor MCP: pegue la URL del punto final https://.execute-api..amazonaws.com/prod/mcp. Tipo de conexión: Red pública.

Formulario de conector MCP con nombre, descripción, punto final y tipo de conexión de red pública

Elija Siguiente. En el paso Autenticar, seleccione Autenticación de servicio, luego abra la lista de configuración de autenticación y elija Ninguno. Este punto final está intencionalmente abierto con fines de demostración. En un entorno de producción, normalmente agregaría una capa de autenticación, más comúnmente OAuth de dos vías (2LO), para proteger el punto final. Debido a que el punto final de puntuación que implementó utiliza el tipo de autorización NONE, acepta solicitudes no autenticadas, por lo que no se requiere ningún ID de cliente ni secreto. (Utilice una opción de OAuth solo si su servidor MCP está protegido por OAuth).

Paso de autenticación con autenticación de servicio y configuración de autenticación establecida en Ninguna

Elija Crear y continuar. Elija Publicar. Espere unos minutos, luego elija el nuevo conector en la sección Disponible. Confirme que el estado muestra Listo.

Lista de conectores disponibles que muestra el conector mcp-customer-score con estado Listo

Para crear un agente de chat personalizado para el análisis del centro de contacto

Un agente de chat personalizado se conecta a su ContactSpace y tiene acceso al conector de acción MCP que registró. El indicador del sistema es el componente crítico. Le dice al agente cómo interpretar los datos, qué preguntas hacer de las transcripciones y cuándo invocar la herramienta de puntuación en lugar de responder directamente desde el conjunto de datos.

En la página de inicio rápido, seleccione Agentes de chat, luego elija En blanco, seguido de Omitir para crear un agente de chat personalizado desde cero. Para Nombre del agente, ingrese Analista de estrategias del centro de contacto. En Fuentes de conocimiento, vincule ContactSpace. En Acciones, agregue el conector mcp-customer-score. Para el mensaje del sistema, ingrese un texto similar al siguiente: Usted es un analista de estrategias de centro de contacto. Tiene acceso a: 1. contact_center_data.csv: CSAT estructurado, llamadas y datos del equipo 2. Call_transcripts.docx: documentos de transcripción de llamadas no estructuradas 3. herramienta mcp-customer-score: calcula puntajes de prioridad de retención Cuando se le pregunta acerca de los clientes en riesgo: – Consulta el conjunto de datos estructurados para obtener puntajes CSAT bajos – Referencia cruzada con transcripciones para identificar opiniones y causas fundamentales – Cuando se le solicita calificar a los clientes, llame al Herramienta mcp-customer-score: explique siempre POR QUÉ un cliente está en riesgo, no solo que lo está. Formatee los resultados como tablas cuando muestre varios clientes. Elija Iniciar agente de chat.

Configuración del agente de chat con la opción Iniciar agente de chat

Para analizar clientes en riesgo con el Agente de Chat

El Agente de Chat accede tanto al conjunto de datos estructurados como a las transcripciones no estructuradas en su Espacio. Úselo para identificar clientes en riesgo y comprender las razones detrás de sus bajos puntajes de satisfacción.

Desde la página de inicio de Amazon Quick, chatee con el nuevo agente de chat personalizado. Primero, elija el agente Analista de estrategia del centro de contacto de la lista. Ingrese el siguiente mensaje: Muéstreme los clientes que obtuvieron una calificación de CSAT baja (igual o inferior a 2) utilizando los datos del centro de contacto.

El agente devuelve una tabla de ID de clientes, fechas de llamadas, puntuaciones CSAT y métricas relacionadas. Esto identifica quién está en riesgo pero no por qué.

Ingrese un mensaje de seguimiento: utilizando las transcripciones de la llamada, resuma las razones principales por las que estos clientes no estaban satisfechos.

El agente lee las transcripciones de la llamada y resume sus hallazgos. Por ejemplo, podría identificar que el Cliente 4471 expresó frustración repetida por errores de facturación en tres llamadas. El cliente 8832 tuvo una única interacción intensa sobre una interrupción del servicio. Esta distinción importa. Las pequeñas frustraciones repetidas requieren un enfoque de retención diferente al de un incidente importante.

Para producir un resultado estructurado que la automatización posterior pueda consumir, ingrese un mensaje final: Para los 20 clientes con mayor riesgo, devuelva solo una matriz JSON donde cada objeto tenga customer_id, csat_score y days_since_last_issue (calculado a partir de la fecha de llamada más reciente). No incluya ningún otro texto.

El agente devuelve una lista JSON estructurada de los clientes en riesgo. Copie esta salida JSON de la respuesta del chat y guárdela como un archivo llamado at_risk_customers.json, luego cárguelo en su depósito de Amazon S3 (por ejemplo, en el prefijo inputs/). La automatización descarga este archivo de Amazon S3 en un paso posterior.

Agente de chat que devuelve una matriz JSON de clientes en riesgo

Para convertir el análisis en un flujo rápido

Más allá del análisis único, Quick Flows le permite convertir una conversación de Chat en una automatización reutilizable con un solo paso, de modo que el mismo análisis se pueda volver a ejecutar según demanda o según una programación. Los siguientes pasos demuestran cómo convertir la conversación que acaba de tener en un Flow.

En la interfaz de Chat, elija + en la barra de herramientas, luego seleccione Flujo. Seleccione Generar nuevo flujo, mantenga el mensaje sugerido y seleccione Generar. Revise el flujo y luego elija Publicar. Seleccione el modo Ejecutar, si es necesario ingrese cualquier entrada y luego inicie el flujo.

The Flow es ahora una automatización reutilizable. Compártelo con tu equipo o prográmalo para que se ejecute semanalmente para regenerar el análisis cuando lo necesites.

Flujo rápido generado a partir de la conversación de chat

Para crear el flujo de trabajo Automatizar

Conectores necesarios: estos conectores deben formar parte del grupo de Automatización en el que creamos Automatizar.

Amazon S3 (dos conexiones: una para datos de origen y otra para cargas de salida) Agente personalizado (con agente de puntuación de MCP creado en el paso del conector de acción de MCP)

Para crear un grupo de automatización

En la página de inicio de Amazon Quick, elija Más y luego Automatizaciones. Página de inicio de Amazon Quick con la opción Automatizaciones en Más En la página siguiente, elija la pestaña "Grupos". Página de automatizaciones con la pestaña Grupos seleccionada Luego elija Crear grupo Pestaña Grupos con la opción Crear grupoCrear diálogo de grupo Elija las acciones requeridas, la acción MCP y la acción de Amazon S3. Luego elija Siguiente. Selección de acción grupal con las acciones MCP y Amazon S3 elegidas En la página siguiente, elija Listo Confirmación de creación de grupo con la opción Listo

Para crear el proyecto de Automatización

El grupo anterior se utilizará para crear el proyecto de Automatización. Siga las instrucciones para crear el proyecto de Automatización.

En la página de inicio de Amazon Quick, elija Más y luego Automatizaciones. Página de inicio de Amazon Quick con la opción Automatizaciones seleccionada En la pantalla siguiente, elija Crear proyecto y luego Crear proyecto. Página de automatizaciones con la opción Crear proyecto. Ingrese un nombre para la automatización, elija el grupo Automatización y luego elija Crear Nuevo cuadro de diálogo de proyecto de automatización con un nombre y grupo de automatización seleccionados En la siguiente pantalla, elija Comenzar a construir Nueva pantalla de proyecto con la opción Comenzar a construir Elija Saltar Mensaje del generador de automatización con la opción Omitir Aparece la siguiente pantalla Lienzo vacío de Automatizar listo para los pasos de construcción

Para construir los pasos de automatización

Para los pasos siguientes, siga las instrucciones que se muestran a continuación y complete el proyecto de Automatización.

Paso 1: cargar datos de llamadas desde Amazon S3

Elija Nuevo paso e ingrese lo siguiente dentro del asistente de chat a la izquierda que dice "¿Qué desea automatizar?". Este paso inicial carga datos de llamadas desde el CSV sin procesar del centro de contacto en Amazon S3:

Registre un mensaje de información: "Iniciando la descarga de datos de contacto del cliente desde S3" Descargue el archivo "contact_center_data_complete.csv" del depósito de S3 contactcenterbucketdemo". Lea el archivo descargado como un CSV con encabezados incluidos y delimitador de coma. Guarde el resultado como call_data. Registre un mensaje de información: "Datos de contacto del cliente cargados correctamente desde el archivo CSV de S3" Tenga todo lo anterior en un solo paso

Asistente de chat que muestra las instrucciones del Paso 1 para descargar y leer el CSV del centro de contacto

Elija Construir paso 1.

Automatizar el lienzo después de construir el Paso 1

Elija el símbolo de cerrar (x) en la parte superior derecha.

Panel de configuración de pasos con el control de cierre en la parte superior derecha

El paso se creará como se muestra a continuación.

Automatizar el lienzo mostrando el Paso 1 creado

Paso 2: Filtrar clientes de alto riesgo

Elija el símbolo de agregar (+) debajo del paso, luego elija Paso del proceso.

Menú Agregar paso con el paso del proceso seleccionado

Vuelva el modo a planificación. Ingrese lo siguiente en la ventana de chat, luego elija el símbolo de conversación.

Registre un mensaje de información: "Comenzando a filtrar datos de llamadas para clientes conocidos de alto riesgo con sentimiento negativo" Descargue el archivo "input/NegativeSentiment.docx" del depósito de S3 "contactcenterbucketdemo". Tenga todo lo anterior en un solo paso

Ventana de chat que muestra las instrucciones del Paso 2 para filtrar clientes de alto riesgo

Paso 3: agregar métricas de clientes

Repita lo anterior para el paso 3 (Métricas agregadas de clientes) con las siguientes instrucciones:

Recorra cada elemento de la tabla de resultados de métricas agregadas. Para cada elemento, registre un mensaje de información con este formato exacto: "Cliente: {item['customer_id']}, llamadas totales: {item['total_calls']}, CSAT promedio: {item['avg_csat_score']}, tasa FCR: {item['first_call_solving_rate']}%, tasa resuelta: {item['resolved_rate']}%, promedio Transferencias: {item['avg_transfer_count']}, tiempo promedio de espera: {item['avg_hold_time_segundos']}s, índice de quejas: {item['complaint_ratio']}" Tenga todo lo anterior en un solo paso

Estas dos instrucciones juntas recrearán el Paso 3 completo, incluido su subpaso anidado para el registro. El paso principal maneja toda la lógica de cálculo y el paso secundario maneja la salida del registro por cliente.

Paso 4: Identifique a los principales clientes y genere cartas

Repita lo anterior para el paso 4 (Identificar clientes principales y generar una carta) con las siguientes instrucciones:

Registre un mensaje de información: "Iniciando el proceso de generación de cartas de bonificación para clientes" Recopile todas las filas de customer_aggregated_metrics en una lista llamada customer_records recorriendo la tabla y agregando cada fila. Utilice un agente en línea en modo "pro" con esta instrucción: "Analice los datos de métricas agregadas del cliente proporcionados: {customer_records}. Estos datos contienen registros de clientes reales con ID de cliente reales y puntajes de rendimiento. Identifique y devuelva los 2 clientes con mejor rendimiento según sus puntajes agregados a partir de estos datos reales. No genere ID de cliente ficticios: use solo los ID de cliente reales presentes en los datos de registros de cliente proporcionados. Devuelva la información real del cliente, incluidos los ID de cliente reales y sus puntajes correspondientes a partir de los datos". Establezca el esquema de salida en un objeto con una propiedad requerida "top_customers", que es una matriz (minContains 2, maxContains 2) de objetos. Cada objeto tiene "customer_id" (cadena, requerida) y "score" (número). Proporcione al agente estas herramientas: python_repl (herramienta de codificación) y las herramientas MCP configuradas para la búsqueda de clientes. Registre el resultado: "top_customers are:" seguido del valor top_customers. Almacene la lista top_customers. Cree una función auxiliar llamada generate_timestamp que devuelva la fecha y hora actual con el formato "%Y%m%d_%H%M%S". Llámalo y guárdalo como marca de tiempo. Crea una lista vacía llamada bonus_letters. Para cada cliente en top_customers: 1. Obtenga el customer_id del objeto de cliente. 2. Cree un PDF usando create_pdf con el siguiente contenido HTML: – Estilo: cuerpo con familia de fuentes Arial, altura de línea 1.6, margen 40 px, color #333 – Un div de "encabezado" centrado con h2 "Departamento de Retención de Clientes" y párrafo en cursiva "Programa de apreciación de clientes valiosos" – Un div de "contenido" que contiene: – Saludo en negrita: "Estimado cliente valioso (ID: {customer_id})", – Párrafo expresando agradecimiento por la colaboración continua – Párrafo que reconoce problemas de servicio pasados y ofrece sinceras disculpas, mencionando que sus comentarios han sido invaluables – Un div "destacado" (color de fondo #f0f8ff, relleno 15px, borde izquierdo 4px sólido #007acc, margen 20px 0) que contiene texto en negrita: "Como gesto de nuestro compromiso con su satisfacción y nuestro agradecimiento por su lealtad, nos complace ofrecerle un bono de $100 crédito." – Párrafo sobre la bonificación que refleja el deseo genuino de hacer las cosas bien y el éxito mutuo – Párrafo sobre protocolos de servicio mejorados y un equipo dedicado al éxito del cliente – Párrafo que espera una oportunidad para demostrar un compromiso renovado – Un div "firma" con margen superior de 40 píxeles que contiene: – "Con sinceros saludos y agradecimiento", – Un salto de línea – Negrita "Equipo de retención de clientes", luego "Departamento de éxito del cliente", luego cursiva "Dedicado a su éxito" 3. Cargue el PDF en el depósito S3 "contactcenterbucketdemo" con clave = "output/" + customer_id + timestamp + ".pdf" 4. Agregue el PDF a la lista bonus_letters. Una vez que se complete el ciclo, registre: "Cartas de bonificación generadas con éxito para los 2 clientes principales". Tenga todo lo anterior en un solo paso.

Para probar e implementar la automatización

Valide la automatización de un extremo a otro, luego confírmela e impleméntela para que pueda ejecutarse según lo programado.

En el lienzo, elija Depurar (o Probar) para ejecutar la automatización. Se ejecuta por sí solo y descarga el archivo de clientes en riesgo de Amazon S3 mediante el paso Descargar archivo. Revise el resultado de cada paso en el panel de registros. Confirme que el paso de puntuación devuelva a los dos clientes principales, que las cartas hagan referencia a los problemas correctos de los clientes y que la carga de S3 se complete correctamente. Cuando la ejecución sea correcta, elija Confirmar para crear una versión. Elija Implementar, seleccione la versión confirmada y confirme las credenciales y conexiones requeridas (su conexión de Amazon S3 y el conector mcp-customer-score). Para ejecutar la automatización según una programación, en la página Implementación, elija Crear activador y luego establezca la frecuencia (o una expresión cron), la hora de inicio y la zona horaria.

Para más detalles consulte los siguientes enlaces.

https://docs.aws.amazon.com/quick/latest/userguide/testing-automations.html

https://docs.aws.amazon.com/quick/latest/userguide/deploying-automations.html

Resultados

Después de implementar este canal en un entorno de prueba con datos históricos del centro de contacto, el equipo midió las mejoras en cuatro dimensiones: tiempo de respuesta, tasas de retención, aceptación de ofertas y tiempo de implementación. Las pruebas internas con datos de muestra produjeron estos resultados. Su implementación puede variar.

El tiempo de respuesta se redujo de días de identificación y redacción manual a minutos de ejecución automatizada. Las tasas de retención mejoraron entre los clientes marcados en comparación con el enfoque reactivo anterior. Un alcance más rápido, mientras la experiencia aún es reciente, impulsó esta mejora. La aceptación de la oferta aumentó cuando las cartas hacían referencia al problema específico del cliente en lugar de ofrecer un descuento genérico. El tiempo de implementación tomó menos de un día. Los usuarios empresariales crearon el flujo de trabajo completo mediante lenguaje natural y pantallas de apuntar y hacer clic.

Solución de problemas

La siguiente tabla enumera problemas comunes y sus soluciones.

Síntoma Causa Resolución Chat Agent devuelve “No se encontraron datos” Indexación de espacio incompleta Verifique el estado de ContactSpace. Espere el indicador Listo antes de ejecutar consultas. El análisis de opiniones es genérico. Transcripciones no indexadas. Verifique que los documentos de transcripción de llamadas estén cargados en la sección Documentos espaciales. La automatización no puntúa a ningún cliente o no puntúa a los clientes incorrectos. No se encontró el JSON en riesgo o el agente no lo recibió. Confirme que at_risk_customers.json existe en la ruta de Amazon S3 a la que hace referencia el paso Descargar archivo y que las instrucciones del agente de puntuación hacen referencia a la variable descargada. La acción MCP devuelve el tiempo de espera. El punto final no responde Aumente el tiempo de espera de la acción MCP o reduzca el alcance del conjunto de datos. Las cartas son genéricas o faltan detalles del cliente. El agente de la carta no recibió los resultados calificados. Confirme que el mensaje del agente de la carta hace referencia a la variable de salida del paso de puntuación (insertada con @).

limpiando

Para evitar costos continuos cuando ya no necesite estos recursos:

Elimine el flujo de trabajo Automatizar. Eliminar el flujo. Elimine los conjuntos de datos de entrada y las letras generadas de su depósito S3:

aws s3 rm s3://amzn-s3-demo-bucket/inputs/ –recursivo aws s3 rm s3://amzn-s3-demo-bucket/output/letters/ –recursivo

Cancele el registro del punto final de acción MCP personalizado si se creó específicamente para este flujo de trabajo. Elimine los datos cargados de ContactSpace si ya no los necesita.

Conclusión

Este tutorial demostró cómo crear un canal de retención de clientes que vaya desde datos sin procesar del centro de contacto hasta acciones de retención específicas, sin escribir código de aplicación. El proceso combina el monitoreo de KPI a través de Quick Dashboard y el análisis de transcripciones impulsado por IA a través del Chat Agent. Agrega automatización repetible a través de Quick Flows y procesamiento de varios pasos a través de Quick Automate.

Después de la configuración inicial del desarrollador (función Lambda y API Gateway), los usuarios comerciales crearon y operaron los componentes restantes a través de lenguaje natural e interfaces de apuntar y hacer clic. El conector de MCP Action amplió el proceso con una lógica de puntuación personalizada que refleja los criterios de retención específicos de su organización.

Aplique este mismo patrón a casos de uso adyacentes: monitoreo del estado de la cuenta del cliente, escalada del riesgo de cumplimiento o recuperación proactiva del servicio. Comience conectando sus datos a un Quick Space y haciendo preguntas a través del Agente de Chat. Una vez que tenga el análisis correcto, conviértalo en un flujo y orqueste el flujo de trabajo con Automate.

Para obtener más información, consulte la documentación de Amazon Quick. Para explorar el marco de acción de MCP, consulte el marco de acción de MCP .

Sobre los autores

Vaidy Janardhanam

Vaidy Janardhanam

Vaidy es un arquitecto de soluciones especializado para Amazon Quick Suite. Se especializa en capacitar a los clientes para que transformen su panorama analítico, unificando los paneles de control de inteligencia empresarial tradicionales con flujos de trabajo de IA agentes de vanguardia que convierten los conocimientos en acciones automatizadas.

Pegah Ojaghi

Pegah Ojaghi

Pegah es arquitecto aplicado de IA generativa en AWS con un doctorado en Ciencias de la Computación centrado en modelos de lenguajes grandes, IA generativa y aprendizaje por refuerzo. Su experiencia abarca el desarrollo de modelos básicos, técnicas RLHF y métodos novedosos de optimización para LLM. Le apasiona traducir la investigación de vanguardia en sistemas de producción en las industrias de atención médica, servicios financieros y seguros.

Oyin Oguntoye

Oyin Oguntoye

Oyin es arquitecto de soluciones de AWS en el equipo de Amazon Quick. Le apasiona la resolución de problemas, especialmente en el ámbito de los datos, el análisis y la inteligencia artificial. Oyin ha pasado varios años en Amazon ayudando a implementar soluciones tanto internamente para Amazon como externamente para los clientes de AWS.