Agente de atención al cliente
Esta guía explica cómo aprovechar las capacidades conversacionales avanzadas de Claude para gestionar consultas de clientes en tiempo real, proporcionando soporte 24/7, reduciendo tiempos de espera y gestionando altos volúmenes de soporte con respuestas precisas e interacciones positivas.
Antes de construir con Claude
Decide si usar Claude para el chat de soporte
Aquí hay algunos indicadores clave de que deberías emplear un LLM como Claude para automatizar partes de tu proceso de atención al cliente:
Algunas consideraciones para elegir Claude sobre otros LLMs:
- Priorizas la conversación natural y con matices: La sofisticada comprensión del lenguaje de Claude permite conversaciones más naturales y conscientes del contexto que se sienten más humanas que los chats con otros LLMs.
- A menudo recibes consultas complejas y abiertas: Claude puede manejar una amplia gama de temas y consultas sin generar respuestas enlatadas o requerir una programación extensa de permutaciones de expresiones del usuario.
- Necesitas soporte multilingüe escalable: Las capacidades multilingües de Claude le permiten mantener conversaciones en más de 200 idiomas sin necesidad de chatbots separados o procesos extensos de traducción para cada idioma soportado.
Define tu interacción de chat ideal
Esboza una interacción ideal con el cliente para definir cómo y cuándo esperas que el cliente interactúe con Claude. Este esquema ayudará a determinar los requisitos técnicos de tu solución.
Aquí hay un ejemplo de interacción de chat para soporte de seguro de automóvil:
- Cliente: Inicia la experiencia de chat de soporte
- Claude: Saluda cálidamente al cliente e inicia la conversación
- Cliente: Pregunta sobre seguro para su nuevo coche eléctrico
- Claude: Proporciona información relevante sobre la cobertura de vehículos eléctricos
- Cliente: Hace preguntas relacionadas con necesidades únicas para seguros de vehículos eléctricos
- Claude: Responde con respuestas precisas e informativas y proporciona enlaces a las fuentes
- Cliente: Hace preguntas fuera de tema no relacionadas con seguros o coches
- Claude: Aclara que no discute temas no relacionados y dirige al usuario de vuelta al seguro de automóvil
- Cliente: Expresa interés en una cotización de seguro
- Claude: Hace un conjunto de preguntas para determinar la cotización apropiada, adaptándose a sus respuestas
- Claude: Envía una solicitud para usar la herramienta API de generación de cotizaciones junto con la información necesaria recopilada del usuario
- Claude: Recibe la información de respuesta de la herramienta API, sintetiza la información en una respuesta natural y presenta la cotización proporcionada al usuario
- Cliente: Hace preguntas de seguimiento
- Claude: Responde a las preguntas de seguimiento según sea necesario
- Claude: Guía al cliente hacia los siguientes pasos en el proceso de seguro y cierra la conversación
Divide la interacción en tareas únicas
El chat de atención al cliente es una colección de múltiples tareas diferentes, desde responder preguntas hasta recuperar información y tomar acción sobre solicitudes, todo envuelto en una sola interacción con el cliente. Antes de comenzar a construir, desglosa tu interacción ideal con el cliente en cada tarea que quieres que Claude pueda realizar. Esto asegura que puedas indicar y evaluar a Claude para cada tarea, y te da una buena idea del rango de interacciones que necesitas tener en cuenta al escribir casos de prueba.
Aquí están las tareas clave asociadas con el ejemplo de interacción de seguro anterior:
-
Saludo y orientación general
- Saludar cálidamente al cliente e iniciar la conversación
- Proporcionar información general sobre la empresa y la interacción
-
Información del Producto
- Proporcionar información sobre la cobertura de vehículos eléctricos
Esto requerirá que Claude tenga la información necesaria en su contexto, y podría implicar que sea necesaria una integración RAG.
- Responder preguntas relacionadas con necesidades únicas de seguro de vehículos eléctricos
- Responder preguntas de seguimiento sobre la cotización o detalles del seguro
- Ofrecer enlaces a fuentes cuando sea apropiado
- Proporcionar información sobre la cobertura de vehículos eléctricos
-
Gestión de la Conversación
- Mantenerse en el tema (seguro de automóvil)
- Redirigir preguntas fuera de tema de vuelta a temas relevantes
-
Generación de Cotización
- Hacer preguntas apropiadas para determinar la elegibilidad para la cotización
- Adaptar preguntas basadas en las respuestas del cliente
- Enviar la información recopilada a la API de generación de cotizaciones
- Presentar la cotización proporcionada al cliente
Establece criterios de éxito
Trabaja con tu equipo de soporte para definir criterios de éxito claros y escribe evaluaciones detalladas con puntos de referencia y objetivos medibles.
Aquí hay criterios y puntos de referencia que pueden usarse para evaluar qué tan exitosamente Claude realiza las tareas definidas:
Aquí hay criterios y puntos de referencia que pueden usarse para evaluar el impacto empresarial de emplear a Claude para soporte:
Cómo implementar Claude como agente de servicio al cliente
Elige el modelo Claude adecuado
La elección del modelo depende de los compromisos entre costo, precisión y tiempo de respuesta.
Para el chat de atención al cliente, claude-opus-4-20250514
está bien adaptado para equilibrar inteligencia, latencia y costo. Sin embargo, para casos donde tienes un flujo de conversación con múltiples indicaciones incluyendo RAG, uso de herramientas y/o indicaciones de contexto largo, claude-3-haiku-20240307
puede ser más adecuado para optimizar la latencia.
Construye una indicación sólida
Usar Claude para atención al cliente requiere que Claude tenga suficiente dirección y contexto para responder apropiadamente, mientras tiene suficiente flexibilidad para manejar una amplia gama de consultas de clientes.
Comencemos escribiendo los elementos de una indicación sólida, comenzando con una indicación de sistema:
Usuario
(con la única excepción siendo la indicación de rol). Lee más en Dando a Claude un rol con una indicación de sistema.Es mejor desglosar las indicaciones complejas en subsecciones y escribir una parte a la vez. Para cada tarea, podrías encontrar mayor éxito siguiendo un proceso paso a paso para definir las partes de la indicación que Claude necesitaría para hacer bien la tarea. Para este ejemplo de soporte de seguro de automóvil, escribiremos por partes todas las partes para una indicación comenzando con la tarea de “Saludo y orientación general”. Esto también hace que la depuración de tu indicación sea más fácil ya que puedes ajustar más rápidamente partes individuales de la indicación general.
Pondremos todas estas piezas en un archivo llamado config.py
.
Luego haremos lo mismo para nuestra información de seguro de automóvil y seguro de automóvil eléctrico.
Ahora que tenemos nuestro contenido estático, agreguemos al menos 4-5 ejemplos de interacciones “buenas” para guiar las respuestas de Claude. Estos ejemplos deben ser representativos de tu interacción ideal con el cliente y pueden incluir barandillas, llamadas a herramientas, etc.
También querrás incluir cualquier instrucción importante que describa lo que debe y no debe hacer Claude al interactuar con el cliente. Esto puede extraerse de las barandillas de la marca o políticas de soporte.
Ahora combinemos todas estas secciones en una sola cadena para usar como nuestra indicación.
Añade capacidades dinámicas y de agente con uso de herramientas
Claude es capaz de realizar acciones y recuperar información dinámicamente usando la funcionalidad de uso de herramientas del lado del cliente. Comienza listando cualquier herramienta externa o APIs que la indicación debería utilizar.
Para este ejemplo, comenzaremos con una herramienta para calcular la cotización.
Ejemplo de calculadora de cotización de seguro:
Despliega tus indicaciones
Es difícil saber qué tan bien funciona tu indicación sin desplegarla en un entorno de producción de prueba y ejecutar evaluaciones, así que construyamos una pequeña aplicación usando nuestra indicación, el SDK de Anthropic y streamlit para una interfaz de usuario.
En un archivo llamado chatbot.py
, comienza configurando la clase ChatBot, que encapsulará las interacciones con el SDK de Anthropic.
La clase debe tener dos métodos principales: generate_message
y process_user_input
.
Construye tu interfaz de usuario
Prueba desplegar este código con Streamlit usando un método principal. Esta función main()
configura una interfaz de chat basada en Streamlit.
Haremos esto en un archivo llamado app.py
Ejecuta el programa con:
Evalúa tus indicaciones
La creación de indicaciones a menudo requiere pruebas y optimización para que esté lista para producción. Para determinar la preparación de tu solución, evalúa el rendimiento del chatbot usando un proceso sistemático que combine métodos cuantitativos y cualitativos. Crear una evaluación empírica sólida basada en tus criterios de éxito definidos te permitirá optimizar tus indicaciones.
Mejora el rendimiento
En escenarios complejos, puede ser útil considerar estrategias adicionales para mejorar el rendimiento más allá de las técnicas estándar de ingeniería de indicaciones y estrategias de implementación de barandillas. Aquí hay algunos escenarios comunes:
Reduce la latencia de contexto largo con RAG
Cuando se trata de grandes cantidades de contexto estático y dinámico, incluir toda la información en la indicación puede llevar a altos costos, tiempos de respuesta más lentos y alcanzar límites de ventana de contexto. En este escenario, implementar técnicas de Generación Aumentada por Recuperación (RAG) puede mejorar significativamente el rendimiento y la eficiencia.
Al usar modelos de incrustación como Voyage para convertir información en representaciones vectoriales, puedes crear un sistema más escalable y receptivo. Este enfoque permite la recuperación dinámica de información relevante basada en la consulta actual, en lugar de incluir todo el contexto posible en cada indicación.
Se ha demostrado que implementar RAG para casos de uso de soporte receta RAG aumenta la precisión, reduce los tiempos de respuesta y reduce los costos de API en sistemas con requisitos extensos de contexto.
Integra datos en tiempo real con uso de herramientas
Cuando se trata de consultas que requieren información en tiempo real, como saldos de cuenta o detalles de pólizas, los enfoques RAG basados en incrustaciones no son suficientes. En su lugar, puedes aprovechar el uso de herramientas para mejorar significativamente la capacidad de tu chatbot para proporcionar respuestas precisas en tiempo real. Por ejemplo, puedes usar el uso de herramientas para buscar información del cliente, recuperar detalles de pedidos y cancelar pedidos en nombre del cliente.
Este enfoque, descrito en nuestra receta de uso de herramientas: agente de servicio al cliente, te permite integrar perfectamente datos en vivo en las respuestas de Claude y proporcionar una experiencia de cliente más personalizada y eficiente.
Fortalece las barandillas de entrada y salida
Al desplegar un chatbot, especialmente en escenarios de servicio al cliente, es crucial prevenir riesgos asociados con el mal uso, consultas fuera de alcance y respuestas inapropiadas. Aunque Claude es inherentemente resistente a tales escenarios, aquí hay pasos adicionales para fortalecer las barandillas de tu chatbot:
- Reduce la alucinación: Implementa mecanismos de verificación de hechos y citas para fundamentar las respuestas en información proporcionada.
- Verifica la información: Verifica que las respuestas del agente se alineen con las políticas de tu empresa y hechos conocidos.
- Evita compromisos contractuales: Asegúrate de que el agente no haga promesas o entre en acuerdos que no esté autorizado a hacer.
- Mitiga los jailbreaks: Usa métodos como pantallas de inofensividad y validación de entrada para evitar que los usuarios exploten vulnerabilidades del modelo, con el objetivo de generar contenido inapropiado.
- Evita mencionar competidores: Implementa un filtro de mención de competidores para mantener el enfoque en la marca y no mencionar productos o servicios de ningún competidor.
- Mantén a Claude en personaje: Evita que Claude cambie su estilo de contexto, incluso durante interacciones largas y complejas.
- Elimina Información Personalmente Identificable (PII): A menos que se requiera explícitamente y esté autorizado, elimina cualquier PII de las respuestas.
Reduce el tiempo de respuesta percibido con streaming
Cuando se trata de respuestas potencialmente largas, implementar streaming puede mejorar significativamente el compromiso y la satisfacción del usuario. En este escenario, los usuarios reciben la respuesta progresivamente en lugar de esperar a que se genere toda la respuesta.
Así es como implementar streaming:
- Usa la API de Streaming de Anthropic para soportar respuestas en streaming.
- Configura tu frontend para manejar fragmentos entrantes de texto.
- Muestra cada fragmento a medida que llega, simulando escritura en tiempo real.
- Implementa un mecanismo para guardar la respuesta completa, permitiendo a los usuarios verla si navegan fuera y regresan.
En algunos casos, el streaming permite el uso de modelos más avanzados con latencias base más altas, ya que la visualización progresiva mitiga el impacto de tiempos de procesamiento más largos.
Escala tu Chatbot
A medida que crece la complejidad de tu Chatbot, la arquitectura de tu aplicación puede evolucionar para adaptarse. Antes de agregar más capas a tu arquitectura, considera las siguientes opciones menos exhaustivas:
- Asegúrate de que estás aprovechando al máximo tus indicaciones y optimizando a través de la ingeniería de indicaciones. Usa nuestras guías de ingeniería de indicaciones para escribir las indicaciones más efectivas.
- Agrega herramientas adicionales a la indicación (que pueden incluir cadenas de indicaciones) y ve si puedes lograr la funcionalidad requerida.
Si tu Chatbot maneja tareas increíblemente variadas, podrías considerar agregar un clasificador de intención separado para enrutar la consulta inicial del cliente. Para la aplicación existente, esto implicaría crear un árbol de decisión que enrutaría las consultas de los clientes a través del clasificador y luego a conversaciones especializadas (con su propio conjunto de herramientas e indicaciones de sistema). Nota, este método requiere una llamada adicional a Claude que puede aumentar la latencia.
Integra Claude en tu flujo de trabajo de soporte
Mientras que nuestros ejemplos se han centrado en funciones de Python que se pueden llamar dentro de un entorno Streamlit, desplegar Claude para un chatbot de soporte en tiempo real requiere un servicio API.
Así es como puedes abordar esto:
-
Crea un envoltorio API: Desarrolla un envoltorio API simple alrededor de tu función de clasificación. Por ejemplo, puedes usar Flask API o Fast API para envolver tu código en un Servicio HTTP. Tu servicio HTTP podría aceptar la entrada del usuario y devolver la respuesta del Asistente en su totalidad. Por lo tanto, tu servicio podría tener las siguientes características:
- Eventos enviados por el servidor (SSE): SSE permite la transmisión en tiempo real de respuestas desde el servidor al cliente. Esto es crucial para proporcionar una experiencia suave e interactiva cuando se trabaja con LLMs.
- Almacenamiento en caché: Implementar almacenamiento en caché puede mejorar significativamente los tiempos de respuesta y reducir llamadas API innecesarias.
- Retención de contexto: Mantener el contexto cuando un usuario navega fuera y regresa es importante para la continuidad en las conversaciones.
-
Construye una interfaz web: Implementa una UI web amigable para interactuar con el agente impulsado por Claude.