Claude Guía de casos de uso común: agentes de atención al cliente

Esta guía describe cómo utilizar Claude Las avanzadas funciones de diálogo de la empresa gestionan las consultas de los clientes en tiempo real, ofrecen asistencia 24 horas al día, 7 días a la semana, reducen los tiempos de espera y gestionan grandes volúmenes de solicitudes de asistencia con respuestas precisas e interacciones proactivas.

Antes de construir con Claude

Decidir si utilizar Claude para el chat de asistencia

Estos son algunos indicadores clave de que debería utilizar un LLM como Claude para automatizar algunos de sus procesos de atención al cliente:

Gran número de consultas repetitivas

Claude se especializa en la gestión eficaz de un gran número de problemas similares, liberando a los agentes humanos para abordar problemas más complejos.

La necesidad de integrar rápidamente la información

Claude es capaz de recuperar, procesar e integrar rápidamente información de una amplia base de conocimientos, mientras que un agente humano puede necesitar tiempo para investigar o consultar múltiples fuentes.

Requisitos de disponibilidad 24/7

Claude es capaz de ofrecer asistencia 24 horas al día, 7 días a la semana, sin cansarse, mientras que dar cobertura continua a agentes humanos puede resultar caro y complicado.

Rápida expansión en horas punta

Claude puede gestionar aumentos repentinos del volumen de consultas sin tener que contratar y formar a personal adicional.

Una voz de marca coherente

Puede dar instrucciones a Claude para que represente de forma coherente el tono y los valores de su marca, mientras que los agentes humanos pueden tener estilos de comunicación diferentes.

Algunos factores a tener en cuenta a la hora de elegir Claude frente a otros LLM:

  • Usted da prioridad a las conversaciones naturales y matizadas: la sofisticada comprensión del lenguaje de Claude permite conversaciones más naturales y conscientes del contexto que se acercan más a la interacción humana que los chats con otros LLM.
  • A menudo recibe preguntas complejas y abiertas: Claude puede gestionar una amplia gama de temas y consultas sin generar respuestas repetitivas ni tener que escribir extensas permutaciones del lenguaje de usuario.
  • Necesitas un soporte multilingüe escalable: las capacidades multilingües de Claude hacen posible mantener conversaciones en más de 200 idiomas sin tener que configurar un chatbot distinto para cada idioma soportado o pasar por un largo proceso de traducción.

Definir la interacción ideal en el chat

Esboce la interacción ideal con el cliente para definir cómo y cuándo espera que sus clientes interactúen con Claude. Esta visión general le ayudará a definir los requisitos técnicos de su solución.

A continuación se muestra un ejemplo de interacción de chat para la atención al cliente de seguros de automóviles:

  • nuestros clientes: Lanzamiento del chat de asistencia
    • ClaudeAcogida y diálogo con los clientes
  • nuestros clientesPregunta por el seguro de su nuevo coche eléctrico
    • Claude: Facilitar información sobre seguros para vehículos eléctricos
  • nuestros clientesPreguntas relacionadas con las necesidades especiales del seguro de coche eléctrico
    • ClaudeProporcionar respuestas precisas y útiles con enlaces a las fuentes pertinentes
  • nuestros clientesPregunta sobre temas que no tienen nada que ver con los seguros o los coches.
    • ClaudeAclarar que no tratan temas irrelevantes y que dirigen a los clientes a contenidos relacionados con los seguros de automóviles.
  • nuestros clientes: Expresó su interés por las cotizaciones de seguros
    • Claude: Formular una serie de preguntas para determinar un presupuesto adecuado y ajustarlo en función de las respuestas del cliente.
    • ClaudeEnviar una solicitud a la herramienta API de generación de presupuestos con la información necesaria obtenida del cliente.
    • ClaudeRecibir la información de respuesta de la herramienta API, sintetizarla en una respuesta natural y proporcionar un presupuesto al cliente.
  • nuestros clientesPreguntas de seguimiento
    • ClaudeResponder a las preguntas de seguimiento necesarias
    • ClaudeGuía al cliente al siguiente paso del proceso de seguro y cierra el diálogo.

A medida que escriba ejemplos reales para sus propios casos de uso, puede resultarle útil escribir las palabras reales utilizadas en el diálogo para que también pueda hacerse una idea del tono ideal de Claude, la longitud de la respuesta y el nivel de detalle requerido.

Desglosar las interacciones en tareas diferenciadas

El chat de atención al cliente consiste en una serie de tareas diferentes, como responder preguntas, recuperar información y gestionar acciones de solicitud, todas ellas reunidas en una interacción completa con el cliente. Antes de empezar a construir, descomponga la interacción ideal con el cliente en cada una de las tareas que Claude debe realizar. De este modo, se asegurará de que Claude realiza y evalúa cada una de las tareas y comprenderá mejor el alcance de la interacción a la hora de escribir los casos de prueba.

A veces, a los clientes les resulta útil visualizar este proceso como un diagrama de flujo de interacción que muestre los posibles puntos de bifurcación del diálogo en función de las peticiones del usuario.

A continuación se enumeran las tareas clave relacionadas con las interacciones de seguros mencionadas:

  1. Bienvenida y orientación general
    • Dar una cálida bienvenida a los clientes y entablar un diálogo
    • Proporcionar información básica sobre la empresa y las interacciones
  2. Información sobre el producto
    • Proporcionar información sobre el seguro de VE Esto debe hacerse para garantizar que Claude dispone de la información necesaria en su contexto, y puede significar que tenga que ser Integración RAG.
    • Responder a preguntas relacionadas con las necesidades especiales de los seguros de coches eléctricos
    • Responder a preguntas de seguimiento sobre presupuestos o detalles del seguro
    • Cuando proceda, facilite enlaces a las fuentes pertinentes
  3. Gestión del diálogo
    • Centrarse en el tema (Seguro de automóvil)
    • Volver a dirigir las preguntas fuera de tema hacia los temas pertinentes
  4. Generación de citas
    • Formular las preguntas adecuadas para determinar la cualificación de las ofertas
    • Ajustar las preguntas en función de las respuestas de los clientes
    • Enviar la información recopilada a la API de generación de presupuestos
    • Proporcionar a los clientes presupuestos generados

Establecer criterios de éxito

En colaboración con su equipo de asistencia, elDefinir criterios de éxito clarosy redactar un informe con puntos de referencia y objetivos cuantificables.Evaluación detallada.

A continuación figuran los criterios y puntos de referencia para evaluar el éxito de Claude en la realización de las tareas definidas:

Precisión en la comprensión de las consultas

Esta métrica evalúa la precisión con la que Claude comprende las consultas de los clientes sobre diversos temas. La comprensión de Claude de la intención del cliente, los siguientes pasos críticos, las soluciones satisfactorias, etc. se evalúa revisando una muestra de conversaciones. El objetivo es lograr una precisión de comprensión de 95% o superior.

Relevancia

Evaluar si las respuestas de Claude son eficaces para resolver el problema concreto de un cliente. Evaluar un conjunto de diálogos y puntuar la pertinencia de cada respuesta (evaluación a gran escala mediante un sistema de puntuación basado en un gran modelo lingüístico). Objetivo de puntuación de relevancia de 90% o superior.

Precisión de la respuesta

Evaluar la precisión de la información sobre la empresa y el producto facilitada a Claude basándose en la información contextual proporcionada. El objetivo es alcanzar un índice de precisión de 100% para esta información principal.

Pertinencia de la cita

Realizar un seguimiento de la frecuencia y relevancia de los enlaces o recursos proporcionados. El objetivo es proporcionar recursos relevantes en las interacciones 80% que requieran información adicional.

Adhesión temática

Evaluar si Claude se mantiene en el tema durante el diálogo, por ejemplo, en nuestro ejemplo de implementación del seguro de coche, y evaluar las respuestas de Claude a preguntas sobre seguros de coche o específicas del cliente. El objetivo es que las respuestas de 95% estén directamente relacionadas con el seguro del coche o con consultas específicas del cliente.

Eficacia de la generación de contenidos

Evaluar el acierto de Claude sobre cuándo generar el contenido del mensaje y la relevancia de su contenido. Por ejemplo, en nuestra implementación, evaluaremos la comprensión de Claude sobre cuándo generar presupuestos y su precisión. El objetivo es una precisión 100%, ya que se trata de información crítica para el éxito de las interacciones con los clientes.

Mejorar la eficiencia

Mide la capacidad de Claude para identificar las consultas que requieren intervención humana y escalarlas cuando corresponda. Realiza un seguimiento del porcentaje de conversaciones que se escalan correctamente y de las que deberían haberse escalado pero no se hizo. El objetivo es una precisión de escalado del 95% o superior.

A continuación se exponen los criterios y puntos de referencia para evaluar el impacto empresarial del uso de Claude como soporte:

mantenimiento emocional

Evaluar la capacidad de Claude para mantener o mejorar el sentimiento del cliente a lo largo del diálogo. Utiliza una herramienta de análisis de sentimientos para medir el estado emocional al principio y al final de cada diálogo. El objetivo es que el sentimiento se mantenga o mejore en las interacciones de 90%.

tasa de desvío

Porcentaje de consultas de clientes gestionadas con éxito por un chatbot sin intervención humana. El objetivo suele ser una tasa de triaje de 70%-80%, en función de la complejidad de la consulta.

Valoración de la satisfacción del cliente

Mide la satisfacción del cliente con las interacciones con chatbots. Suele hacerse mediante una encuesta posterior a la interacción. El objetivo es una puntuación de satisfacción del cliente de 4 sobre 5 o superior.

Tiempo medio de procesamiento

El tiempo medio que tarda un chatbot en resolver una consulta. Este tiempo varía mucho en función de la complejidad de la pregunta, pero el objetivo general es que el tiempo medio de gestión sea inferior al del servicio de atención al cliente humano.

Cómo aplicar Claude como agente de atención al cliente

Seleccionar el modelo Claude adecuado

La elección del modelo depende del equilibrio entre coste, precisión y tiempo de respuesta.

Para el chat de atención al cliente.claude-3-5-sonnet-20240620 Ideal para equilibrar inteligencia, latencia y coste. Sin embargo, si en un diálogo se incluyen varias indicaciones (incluidas las GAR, el uso de herramientas y/o indicaciones contextuales largas), laclaude-3-haiku-20240307 Puede ser mejor optimizar la latencia.

Construir una palabra clave poderosa

El uso de Claude para la atención al cliente requiere que Claude sea lo suficientemente direccional y contextual como para responder adecuadamente, y lo suficientemente flexible como para manejar una amplia gama de consultas de los clientes.

Empecemos por los elementos necesarios para redactar claves sólidas, empezando por las claves del sistema:

IDENTITY = """你是 Eva,一位友好且知识渊博的 Acme 保险公司 AI 助手。你的角色是热情地欢迎客户,并提供有关 Acme 保险产品的信息,包括车险和电动车险。你还可以帮助客户获取他们的保险需求报价。"""

Aunque podría inclinarse a poner toda la información en las palabras de aviso del sistema para separar las instrucciones del diálogo con el usuario, Claude en realidad pone la mayor parte del contenido del aviso en la primera ronda de la pregunta User Funciona mejor cuando está en el centro (la única excepción son las indicaciones de caracteres). Para más información Utilice el indicador del sistema para asignar una función a Claude.

Lo mejor es dividir las indicaciones complejas en subpartes y escribirlas de una en una. Para cada tarea, puede obtener mejores resultados definiendo progresivamente las partes de la indicación que Claude necesita para completar esa tarea. En el caso del servicio de atención al cliente de seguros de coche, por ejemplo, escribiremos los avisos por etapas, empezando por la tarea "Saludos y orientación general". Esto también facilita la depuración de los avisos, ya que puedes modificar las partes individuales del aviso general con mayor rapidez.

Colocamos todas estas secciones en un archivo llamado config.py en el documento.

STATIC_GREETINGS_AND_GENERAL = """
<static_context>
Acme 汽车保险:您在路上的可靠伙伴

简介:
在 Acme 保险公司,我们理解您的车辆不仅仅是交通工具——它是您通往生活冒险的门票。自 1985 年以来,我们一直在制定汽车保险政策,赋予驾驶者探索、通勤和旅行的信心。
无论您是在城市街道上穿行,还是在进行跨国旅行,Acme 都会保护您和您的车辆。
我们的创新汽车保险政策专为适应您的独特需求而设计,涵盖从轻微碰撞到重大事故的一切。
凭借 Acme 的获奖客户服务和快速理赔解决方案,您可以专注于驾驶的乐趣,而我们处理其他事宜。
我们不仅是保险提供商——我们是您人生旅途中的副驾驶。
选择 Acme 汽车保险,体验优质保障和真诚关怀带来的安心。因为在 Acme,我们不仅为您的汽车提供保险——我们还为您开拓生活的旅程提供动力。

注:我们还提供电动车的专门保险,确保所有类型车辆的驾驶者都能从我们的保护中受益。

Acme 保险提供以下产品:
- 汽车保险
- 电动车保险
- 两轮车保险

营业时间:周一至周五,上午 9 点至下午 5 点(美国东部时间)
客户服务电话:1-800-123-4567
</static_context>
"""

Trataremos de la misma manera la información sobre el seguro de coche y el seguro de coche eléctrico.

STATIC_CAR_INSURANCE="""
<static_context>
汽车保险覆盖范围:
Acme 的汽车保险政策通常涵盖:
1. 责任险:支付您对他人造成的人身伤害和财产损失。
2. 碰撞险:支付事故中对您汽车的损坏。
3. 综合险:支付非碰撞事故对您汽车造成的损坏。
4. 医疗费用险:支付事故后的医疗费用。
5. 无保险/保险不足的驾驶员险:当您被保险不足的驾驶员撞击时保护您。

可选覆盖范围包括:
- 租车报销
- 道路救援
- 新车更换
</static_context>
"""

STATIC_ELECTRIC_CAR_INSURANCE="""
<static_context>
电动车保险:
我们专门的电动车保险超越了传统的汽车保险,为您的高科技投资提供量身定制的保护。除了标准的保险项目外,我们还提供:
- 保护昂贵的电池系统
- 覆盖家用充电设备
- 适应电动车领域的快速发展

无论您驾驶的是 Rivian、Nissan Leaf、Chevrolet Bolt 或其他电动车型,我们经验丰富的代理人都准备为您制定一份让您安心享受每一段电力驱动旅程的保单。
</static_context>
"""

Ahora que tenemos contenido estático, añadamos al menos 4-5 ejemplos de interacciones "buenas" para guiar la respuesta de Claude. Estos ejemplos deben representar tu interacción ideal con el cliente y pueden incluir salvaguardas, llamadas a herramientas, etc.

EXAMPLES="""
以下是一些如何与客户互动的示例:

<example 1>
H: 你好,请问你们提供小企业的商业保险吗?

A: 啊!很遗憾,目前我们不提供商业保险。 
不过,我们有多种个人保险产品,包括汽车保险和电动车保险。 
您想了解更多关于这些产品的信息吗?
</example 1>

<example 2>
H: 你好,你们的营业时间是几点?

A: 我们的营业时间是周一至周五,上午 9 点到下午 5 点 (美国东部标准时间)。 
如果您有任何问题或需要帮助,请随时在这些时间内联系我们。 
今天还有什么其他需要我帮助的吗?
</example 2>

<example 3>
H: 我正在寻找汽车保险。Acme 提供哪些服务?

A: 很好的选择!Acme 的汽车保险通常包括:
- 责任险:在事故中您为过错方时为您提供保障
- 碰撞险:支付事故中您车辆的损坏费用
- 全面保障:涵盖非碰撞事件,如盗窃或故意破坏
- 医疗费用保险:事故后支付医疗费用
- 未投保/保险不足司机保障:保护您免受投保不足的司机影响

我们还提供一些可选保障,如租车报销、道路救援和新车更换。 
您想了解这些保障的更多细节,还是有其他关于为您的车辆投保的具体问题?
</example 3>

<example 4>
H: 我想了解一下你们的电动车保险。

A: 当然可以!我们的电动车保险专为电动车车主的独特需求量身定制。 
除了我们为普通车辆提供的所有标准保障外,我们的电动车保险还包括:

- 电池保障:保护您的车辆昂贵电池系统免受损坏或老化
- 技术包:涵盖高级电子设备和车载计算机系统的维修或更换
- 充电站保障:保护家庭和便携式充电设备
- 网络安全保障:对抗黑客攻击或数字威胁的保障
- 专业道路救援:包括平板拖车服务,以保护车辆底盘

我们为多种电动车提供保障,包括特斯拉、Rivian、日产、雪佛兰等热门车型。 
您是否有特定的电动车需要投保,或者您想了解某些保障的更多细节?
</example 4>

<example 5>
H: 我想获取我的汽车保险报价。

A: 当然!我很乐意为您提供汽车保险报价。 
为了为您提供准确的报价,我需要收集一些关于您车辆和主要驾驶人的信息。 
让我们从基本信息开始:

1. 您的车辆品牌和型号是什么?
2. 车辆生产年份是哪一年?
3. 您大约行驶了多少英里?
4. 主要驾驶人的年龄是多少?

一旦您提供了这些信息,我会使用我们的报价工具为您生成个性化的保险报价。
</example 5>
"""

También tendrá que incluir instrucciones importantes sobre lo que debe y no debe hacer Claude para interactuar con los clientes. Pueden extraerse de las políticas de protección de marca o de asistencia.

ADDITIONAL_GUARDRAILS = """请遵循以下防护措施:
1. 仅提供我们产品中列出的保险类型信息。
2. 如果被问及我们不提供的保险类型,请礼貌地说明我们不提供此类服务。
3. 不要对未来的产品或公司计划进行猜测。
4. 不要做出未经授权的承诺或达成协议。你只能提供信息和指导。
5. 不要提及任何竞争对手的产品或服务。
"""

Ahora vamos a combinar todas estas partes en una cadena para utilizarla como nuestro prompt.

TASK_SPECIFIC_INSTRUCTIONS = ' '.join([
   STATIC_GREETINGS_AND_GENERAL,
   STATIC_CAR_INSURANCE,
   STATIC_ELECTRIC_CAR_INSURANCE,
   EXAMPLES,
   ADDITIONAL_GUARDRAILS,
])

Utilizar herramientas para potenciar la dinámica y la proactividad

Claude puede realizar operaciones y recuperar información de forma dinámica mediante el uso de herramientas del lado del cliente. Cualquier herramienta externa o API que se deba utilizar para la consulta se enumera en primer lugar.

En este ejemplo, empezaremos con una herramienta para calcular cotizaciones.

Tenga en cuenta que la herramienta no realiza realmente el cálculo, sólo indica a la aplicación que debe utilizar la herramienta y pasa los parámetros especificados.

Ejemplo de calculadora de cotizaciones de seguros:

TOOLS = [{
  "name": "get_quote",
  "description": "根据用户输入计算保险报价。返回值为每月的保费。",
  "input_schema": {
    "type": "object",
    "properties": {
      "make": {"type": "string", "description": "车辆的品牌。"},
      "model": {"type": "string", "description": "车辆的型号。"},
      "year": {"type": "integer", "description": "车辆的生产年份。"},
      "mileage": {"type": "integer", "description": "车辆的行驶里程数。"},
      "driver_age": {"type": "integer", "description": "主要驾驶员的年龄。"}
    },
    "required": ["make", "model", "year", "mileage", "driver_age"]
  }
}]

def get_quote(make, model, year, mileage, driver_age):
    """返回每月的保费(以美元计)"""
    # 你可以调用 HTTP 端点或数据库来获取报价。
    # 这里,我们模拟1秒的延迟并返回固定的100美元报价。
    time.sleep(1)
    return 100

Despliegue de sus consejos

Sin desplegar el aviso en el entorno de producción de prueba y Evaluación operativa caso, es difícil saber qué tan efectivas son tus pistas. Así que vamos a construir una pequeña aplicación utilizando nuestras pistas, el SDK Anthropic, y streamlit, y crear una interfaz de usuario para ello.

con el nombre de chatbot.py configure primero la clase ChatBot, que encapsulará la misma información que utiliza la clase Antrópico Interacciones SDK.

La clase debe contener dos métodos principales:generate_message responder cantando process_user_input.

from anthropic import Anthropic
from config import IDENTITY, TOOLS, MODEL, get_quote
from dotenv import load_dotenv

load_dotenv()

class ChatBot:
   def __init__(self, session_state):
       self.anthropic = Anthropic()
       self.session_state = session_state

   def generate_message(
       self,
       messages,
       max_tokens,
   ):
       try:
           response = self.anthropic.messages.create(
               model=MODEL,
               system=IDENTITY,
               max_tokens=max_tokens,
               messages=messages,
               tools=TOOLS,
           )
           return response
       except Exception as e:
           return {"error": str(e)}

   def process_user_input(self, user_input):
       self.session_state.messages.append({"role": "user", "content": user_input})

       response_message = self.generate_message(
           messages=self.session_state.messages,
           max_tokens=2048,
       )

       if "error" in response_message:
           return f"发生错误: {response_message['error']}"

       if response_message.content[-1].type == "tool_use":
           tool_use = response_message.content[-1]
           func_name = tool_use.name
           func_params = tool_use.input
           tool_use_id = tool_use.id

           result = self.handle_tool_use(func_name, func_params)
           self.session_state.messages.append(
               {"role": "assistant", "content": response_message.content}
           )
           self.session_state.messages.append({
               "role": "user",
               "content": [{
                   "type": "tool_result",
                   "tool_use_id": tool_use_id,
                   "content": f"{result}",
               }],
           })

           follow_up_response = self.generate_message(
               messages=self.session_state.messages,
               max_tokens=2048,
           )

           if "error" in follow_up_response:
               return f"发生错误: {follow_up_response['error']}"

           response_text = follow_up_response.content[0].text
           self.session_state.messages.append(
               {"role": "assistant", "content": response_text}
           )
           return response_text
      
       elif response_message.content[0].type == "text":
           response_text = response_message.content[0].text
           self.session_state.messages.append(
               {"role": "assistant", "content": response_text}
           )
           return response_text
      
       else:
           raise Exception("发生错误: 意外的响应类型")

   def handle_tool_use(self, func_name, func_params):
       if func_name == "get_quote":
           premium = get_quote(**func_params)
           return f"生成的报价: 每月 ${premium:.2f}"
      
       raise Exception("使用了意外的工具")

Creación de la interfaz de usuario

Despliegue este código utilizando Streamlit y una prueba de método maestro. Este main() configura una interfaz de chat basada en Streamlit.

Vamos a trabajar en un archivo llamado app.py Esto se hace en el archivo

import streamlit as st
from chatbot import ChatBot
from config import TASK_SPECIFIC_INSTRUCTIONS

def main():
   st.title("与 Eva 聊天,Acme 保险公司的助理🤖")

   if "messages" not in st.session_state:
       st.session_state.messages = [
           {'role': "user", "content": TASK_SPECIFIC_INSTRUCTIONS},
           {'role': "assistant", "content": "明白"},
       ]

   chatbot = ChatBot(st.session_state)

   # 显示用户和助理的消息,跳过前两条
   for message in st.session_state.messages[2:]:
       # 忽略工具使用的消息块
       if isinstance(message["content"], str):
           with st.chat_message(message["role"]):
               st.markdown(message["content"])

   if user_msg := st.chat_input("在此输入您的消息..."):
       st.chat_message("user").markdown(user_msg)

       with st.chat_message("assistant"):
           with st.spinner("Eva 正在思考..."):
               response_placeholder = st.empty()
               full_response = chatbot.process_user_input(user_msg)
               response_placeholder.markdown(full_response)

if __name__ == "__main__":
   main()

Utilice el siguiente comando para ejecutar el programa:

streamlit run app.py

Evalúe sus consejos

A menudo es necesario probar y optimizar los mensajes para que estén listos para la producción. Para determinar si su solución está lista, puede evaluar el rendimiento del chatbot mediante un proceso sistemático que combine métodos cuantitativos y cualitativos. A partir de los criterios de éxito definidos, cree unEvaluación empírica sólidale permitirá optimizar sus indicaciones.

Consola antrópica Ahora se proporciona una herramienta de evaluación que le permite probar sus indicaciones en diferentes escenarios.

Mejorar el rendimiento

En situaciones complejas, además delConsejos para ingenierosresponder cantandoEstrategia de aplicación de los guardarraílesMás allá de eso, puede ser útil considerar otras estrategias para mejorar el rendimiento. He aquí algunas situaciones habituales:

Reducción de la latencia de contexto largo con RAG

Cuando se trata de un gran número de contextos estáticos y dinámicos, incluir toda la información en la señal puede conllevar costes elevados, tiempos de respuesta más lentos y alcanzar los límites de la ventana de contexto. En este caso, la aplicación de técnicas de Generación Aumentada de Recuperación (RAG) puede mejorar notablemente el rendimiento y la eficiencia.

Utilizando el Modelo de incrustación tipo Voyage Convertir la información en una representación vectorial crea un sistema más escalable y con mayor capacidad de respuesta. Este enfoque permite recuperar información relevante de forma dinámica en función de la consulta actual, en lugar de incluir todos los contextos posibles en cada pista.

realizar RAG Se utiliza para apoyar el uso de escenarios Formulaciones RAG ha demostrado mejorar la precisión, reducir los tiempos de respuesta y disminuir los costes de API en sistemas que requieren una amplia gama de contextos.

Integración de datos en tiempo real mediante el uso de herramientas

Cuando se trata de consultas que requieren información en tiempo real, como saldos de cuentas o detalles de pólizas, no basta con un enfoque basado en RAG. En su lugar, puede aprovechar el uso de herramientas para mejorar significativamente la capacidad de su chatbot para proporcionar respuestas precisas en tiempo real. Por ejemplo, puede utilizar herramientas para buscar información de clientes, recuperar detalles de pedidos y cancelar pedidos en nombre de los clientes.

Este método se utiliza en nuestro Uso de la herramienta: Fórmula de agente de atención al cliente esbozado en , que le permite integrar a la perfección datos en tiempo real en las respuestas de Claude, proporcionando una experiencia de cliente más personalizada y eficiente.

Medidas de protección de entrada y salida mejoradas

Al desplegar chatbots, especialmente en situaciones de atención al cliente, es fundamental protegerse contra el riesgo de abuso, consultas fuera de alcance y respuestas inapropiadas. Aunque Claude es intrínsecamente resistente a estas situaciones, aquí tienes pasos adicionales para reforzar la protección de tu chatbot:

  • Reducción de las alucinaciones: Aplicación de mecanismos de comprobación de hechos y cita para garantizar que las respuestas se basan en la información facilitada.
  • Cotejar la información: asegurarse de que la respuesta del agente es coherente con la política de la empresa y los hechos conocidos.
  • Evitar compromisos contractuales: Asegúrese de que el agente no hace promesas o acuerdos a los que no tiene autoridad para comprometerse.
  • Mitigación del JailbreakUtilice métodos como el filtrado inocuo y la validación de entradas para evitar que los usuarios aprovechen las vulnerabilidades del modelo para generar contenidos inapropiados.
  • Evite mencionar a la competencia: aplique un filtro de mención de la competencia para mantener su marca centrada y evitar mencionar productos o servicios de la competencia.
  • Mantén el papel de Claude.: Evita que Claude cambie su estilo contextual durante interacciones largas y complejas.
  • Elimine la información de identificación personal (IIP): a menos que se solicite y autorice explícitamente, elimine toda la IIP de las respuestas.

Reducción del tiempo de respuesta percibido gracias al procesamiento en tiempo real

Implementar el streaming puede aumentar significativamente el compromiso y la satisfacción del usuario cuando se trata de respuestas potencialmente largas. En este caso, los usuarios reciben las respuestas gradualmente, en lugar de esperar a que se genere la respuesta completa.

Estos son los pasos para implementar el procesamiento de flujos:

  1. utilizar API de flujo antrópico Se admiten respuestas en streaming.
  2. Configura el front-end para procesar los bloques de texto entrantes.
  3. Muestra un bloque de texto para cada llegada, simulando el efecto de la entrada en tiempo real.
  4. Implementar un mecanismo para guardar las respuestas completas, permitiendo a los usuarios ver el contenido completo cuando regresan después de navegar fuera.

En algunos casos, el streaming permite utilizar modelos avanzados con latencias de base más altas, ya que la visualización progresiva mitiga los efectos de los tiempos de procesamiento más largos.

Amplíe su Chatbot

A medida que aumenta la complejidad de Chatbot, la arquitectura de la aplicación puede evolucionar con ella. Antes de añadir más capas a la arquitectura, considera las siguientes opciones más sencillas:

  • Asegúrese de que aprovecha al máximo las pistas y de que optimiza con la ingeniería de pistas. Utilice nuestro Guía de ingeniería de puntas Escriba los consejos más eficaces.
  • Añadir otros al aviso artefacto (que puede incluir cadena de taco) para ver si se consigue la función deseada.

Si su Chatbot maneja tareas muy diversas, puede que desee considerar la adición de un Clasificadores de intención independientes para dirigir la consulta inicial del cliente. Para las aplicaciones existentes, esto implicaría crear un árbol de decisión que dirija las consultas de los clientes a través de clasificadores a diálogos especializados (cada uno con sus propias herramientas e indicaciones del sistema). Tenga en cuenta que este enfoque requiere una llamada adicional a Claude, lo que puede añadir latencia.

Integración de Claude en los flujos de trabajo de asistencia

Mientras que nuestros ejemplos se centran en funciones Python que pueden ser llamadas en un entorno Streamlit, el despliegue de Claude para el soporte en tiempo real de Chatbot requiere un servicio API.

Puedes hacerlo:

  1. Crea una envoltura de API: Desarrolla una envoltura de API sencilla para tus funciones clasificadas. Por ejemplo, puede utilizar la API de Flask o Fast API para envolver su código como un servicio HTTP. Este servicio HTTP puede tomar la entrada del usuario y devolver una respuesta completa del Asistente. Como resultado, el servicio puede tener las siguientes características:
    • Eventos enviados por el servidor (SSE): SSE permite la transmisión de respuestas en tiempo real entre el servidor y el cliente. Esto es fundamental para ofrecer una experiencia fluida e interactiva al utilizar LLM.
    • Almacenamiento en caché: Implementar el almacenamiento en caché puede mejorar significativamente la capacidad de respuesta y reducir las llamadas innecesarias a la API.
    • Conservación del contexto: Mantener el contexto es importante para la continuidad del diálogo mientras el usuario navega de ida y vuelta.
  2. Creación de la interfaz web: Implementación de una interfaz web fácil de usar para interactuar con los agentes controlados por Claude.
© declaración de copyright
AiPPT

Artículos relacionados

Sin comentarios

Debe iniciar sesión para participar en los comentarios.
Acceder ahora
ninguno
Sin comentarios...