Loading...
    • Guide du développeur
    • Référence API
    • MCP
    • Ressources
    • Notes de version
    Search...
    ⌘K

    Ressources

    overviewGlossairePrompts Système

    Cas d'usage

    AperçuRoutage des ticketsAgent de support clientModération de contenuRésumé de documents juridiques

    Bibliothèque de prompts

    Bibliothèque de promptsFrappes CosmiquesVoyant d'entrepriseAssistant de site webExpert en formules ExcelScripteur d'applications GoogleChasseur de bugs PythonConsultant en voyage temporelCompagnon de narrationCitez vos sourcesSorcier SQLInterprète de rêvesMaître des jeux de motsCréateur culinairePoète de mots-valisesHal l'assistant humoristiqueLégende LaTeXColorisateur d'humeurGit gudExpert en comparaisonsNavigateur de dilemmes éthiquesSecrétaire de réunionIlluminateur d'expressions idiomatiquesConsultant en codeFabricant de fonctionsCréateur de néologismesConvertisseur CSVEncodeur d'emojiPolisseur de proseRéflecteur de perspectivesGénérateur de quizMentor de pleine conscienceSimplificateur de niveau CE1Innovateur de fitness VRPurificateur d'informations personnelles identifiablesMaître des mémosCoach de carrièreGourou de la notationVirelangueCréateur de questions d'entretienGénie de la grammaireDevine un peuClarificateur de codeAnthropologue extraterrestreOrganisateur de donnéesCréateur de marqueEstimateur d'efficacitéClassificateur d'avisDécodeur de directionsMuse motivationnelleExtracteur d'e-mailsModérateur maîtrePlanificateur de coursSage socratiqueAlchimiste d'allitérationConseiller en mode futuristeSuperpouvoirs polyglottesExpert en nommage de produitsRéflexions philosophiquesSorcier de feuilles de calculSimulateur de scénarios de science-fictionÉditeur adaptatifLes diffusions de BabelDétecteur de ton de tweetAnalyseur de codes d'aéroport
    Console
    Cas d'usage

    Agent de support client

    Ce guide explique comment exploiter les capacités conversationnelles avancées de Claude pour traiter les demandes des clients en temps réel, fournir un support 24h/24 et 7j/7, réduire les temps d'attente et gérer des volumes élevés de support avec des réponses précises et des interactions positives.

    Avant de construire avec Claude

    Décider d'utiliser Claude pour le chat de support

    Voici quelques indicateurs clés qui suggèrent que vous devriez employer un LLM comme Claude pour automatiser des portions de votre processus de support client :

    Quelques considérations pour choisir Claude plutôt que d'autres LLM :

    • Vous privilégiez une conversation naturelle et nuancée : La compréhension sophistiquée du langage de Claude permet des conversations plus naturelles et contextuelles qui semblent plus humaines que les chats avec d'autres LLM.
    • Vous recevez souvent des requêtes complexes et ouvertes : Claude peut gérer une large gamme de sujets et de demandes sans générer de réponses toutes faites ou nécessiter une programmation extensive de permutations d'énoncés utilisateur.
    • Vous avez besoin d'un support multilingue évolutif : Les capacités multilingues de Claude lui permettent de s'engager dans des conversations dans plus de 200 langues sans avoir besoin de chatbots séparés ou de processus de traduction étendus pour chaque langue supportée.

    Définir votre interaction de chat idéale

    Esquissez une interaction client idéale pour définir comment et quand vous attendez que le client interagisse avec Claude. Cette esquisse aidera à déterminer les exigences techniques de votre solution.

    Voici un exemple d'interaction de chat pour le support client d'assurance automobile :

    • Client : Initie l'expérience de chat de support
      • Claude : Accueille chaleureusement le client et initie la conversation
    • Client : Pose des questions sur l'assurance pour sa nouvelle voiture électrique
      • Claude : Fournit des informations pertinentes sur la couverture des véhicules électriques
    • Client : Pose des questions liées aux besoins uniques des assurances de véhicules électriques
      • Claude : Répond avec des réponses précises et informatives et fournit des liens vers les sources
    • Client : Pose des questions hors sujet non liées à l'assurance ou aux voitures
      • Claude : Clarifie qu'il ne discute pas de sujets non liés et redirige l'utilisateur vers l'assurance automobile
    • Client : Exprime son intérêt pour un devis d'assurance
      • Claude : Pose une série de questions pour déterminer le devis approprié, s'adaptant à leurs réponses
      • Claude : Envoie une demande pour utiliser l'outil API de génération de devis avec les informations nécessaires collectées auprès de l'utilisateur
      • Claude : Reçoit les informations de réponse de l'utilisation de l'outil API, synthétise les informations en une réponse naturelle, et présente le devis fourni à l'utilisateur
    • Client : Pose des questions de suivi
      • Claude : Répond aux questions de suivi selon les besoins
      • Claude : Guide le client vers les prochaines étapes du processus d'assurance et clôt la conversation
    Dans l'exemple réel que vous écrirez pour votre propre cas d'usage, vous pourriez trouver utile d'écrire les mots réels de cette interaction afin que vous puissiez également avoir une idée du ton idéal, de la longueur de réponse et du niveau de détail que vous voulez que Claude ait.

    Décomposer l'interaction en tâches uniques

    Le chat de support client est une collection de plusieurs tâches différentes, de la réponse aux questions à la récupération d'informations en passant par la prise d'action sur les demandes, le tout enveloppé dans une seule interaction client. Avant de commencer à construire, décomposez votre interaction client idéale en chaque tâche que vous voulez que Claude soit capable d'effectuer. Cela garantit que vous pouvez prompter et évaluer Claude pour chaque tâche, et vous donne une bonne idée de la gamme d'interactions que vous devez prendre en compte lors de l'écriture de cas de test.

    Les clients trouvent parfois utile de visualiser cela comme un organigramme d'interaction des points d'inflexion de conversation possibles selon les demandes des utilisateurs.

    Voici les tâches clés associées à l'exemple d'interaction d'assurance ci-dessus :

    1. Salutation et orientation générale

      • Accueillir chaleureusement le client et initier la conversation
      • Fournir des informations générales sur l'entreprise et l'interaction
    2. Information sur les produits

      • Fournir des informations sur la couverture des véhicules électriques
        Cela nécessitera que Claude ait les informations nécessaires dans son contexte, et pourrait impliquer qu'une intégration RAG soit nécessaire.
      • Répondre aux questions liées aux besoins uniques d'assurance de véhicules électriques
      • Répondre aux questions de suivi sur le devis ou les détails de l'assurance
      • Offrir des liens vers les sources quand approprié
    3. Gestion de conversation

      • Rester sur le sujet (assurance automobile)
      • Rediriger les questions hors sujet vers des sujets pertinents
    4. Génération de devis

      • Poser les questions appropriées pour déterminer l'éligibilité au devis
      • Adapter les questions basées sur les réponses du client
      • Soumettre les informations collectées à l'API de génération de devis
      • Présenter le devis fourni au client

    Établir des critères de succès

    Travaillez avec votre équipe de support pour définir des critères de succès clairs et écrire des évaluations détaillées avec des références et objectifs mesurables.

    Voici des critères et références qui peuvent être utilisés pour évaluer avec quel succès Claude effectue les tâches définies :

    Voici des critères et références qui peuvent être utilisés pour évaluer l'impact commercial de l'emploi de Claude pour le support :

    Comment implémenter Claude comme agent de service client

    Choisir le bon modèle Claude

    Le choix du modèle dépend des compromis entre coût, précision et temps de réponse.

    Pour le chat de support client, claude-opus-4-1-20250805 est bien adapté pour équilibrer intelligence, latence et coût. Cependant, pour les instances où vous avez un flux de conversation avec plusieurs prompts incluant RAG, utilisation d'outils, et/ou prompts de contexte long, claude-3-haiku-20240307 peut être plus approprié pour optimiser la latence.

    Construire un prompt solide

    Utiliser Claude pour le support client nécessite que Claude ait suffisamment de direction et de contexte pour répondre de manière appropriée, tout en ayant suffisamment de flexibilité pour gérer une large gamme de demandes clients.

    Commençons par écrire les éléments d'un prompt solide, en commençant par un prompt système :

    IDENTITY = """Vous êtes Eva, une assistante IA amicale et compétente pour Acme Insurance 
    Company. Votre rôle est d'accueillir chaleureusement les clients et de fournir des informations sur 
    les offres d'assurance d'Acme, qui incluent l'assurance automobile et l'assurance 
    automobile électrique. Vous pouvez également aider les clients à obtenir des devis pour leurs besoins d'assurance."""
    Bien que vous puissiez être tenté de mettre toutes vos informations dans un prompt système comme moyen de séparer les instructions de la conversation utilisateur, Claude fonctionne en fait mieux avec la majeure partie de son contenu de prompt écrit dans le premier tour User (à la seule exception du prompting de rôle). Lisez plus sur Donner un rôle à Claude avec un prompt système.

    Il est préférable de décomposer les prompts complexes en sous-sections et d'écrire une partie à la fois. Pour chaque tâche, vous pourriez trouver plus de succès en suivant un processus étape par étape pour définir les parties du prompt dont Claude aurait besoin pour bien faire la tâche. Pour cet exemple de support client d'assurance automobile, nous écrirons par morceaux toutes les parties d'un prompt en commençant par la tâche "Salutation et orientation générale". Cela rend également le débogage de votre prompt plus facile car vous pouvez plus rapidement ajuster des parties individuelles du prompt global.

    Nous mettrons toutes ces pièces dans un fichier appelé config.py.

    STATIC_GREETINGS_AND_GENERAL = """
    <static_context>
    Acme Auto Insurance : Votre Compagnon de Confiance sur la Route
    
    À propos :
    Chez Acme Insurance, nous comprenons que votre véhicule est plus qu'un simple moyen de transport—c'est votre billet pour les aventures de la vie. 
    Depuis 1985, nous créons des polices d'assurance automobile qui donnent aux conducteurs la confiance d'explorer, de faire la navette et de voyager en toute tranquillité d'esprit.
    Que vous naviguiez dans les rues de la ville ou que vous vous embarquiez dans des voyages à travers le pays, Acme est là pour vous protéger, vous et votre véhicule. 
    Nos polices d'assurance automobile innovantes sont conçues pour s'adapter à vos besoins uniques, couvrant tout des accrochages mineurs aux collisions majeures.
    Avec le service client primé d'Acme et la résolution rapide des réclamations, vous pouvez vous concentrer sur la joie de conduire pendant que nous nous occupons du reste. 
    Nous ne sommes pas seulement un fournisseur d'assurance—nous sommes votre copilote dans les voyages de la vie.
    Choisissez Acme Auto Insurance et expérimentez l'assurance qui vient avec une couverture supérieure et un soin authentique. Parce que chez Acme, nous n'assurons pas seulement votre voiture—nous alimentons vos aventures sur la route ouverte.
    
    Note : Nous offrons également une couverture spécialisée pour les véhicules électriques, garantissant que les conducteurs de tous types de voitures peuvent bénéficier de notre protection.
    
    Acme Insurance offre les produits suivants :
    - Assurance automobile
    - Assurance automobile électrique
    - Assurance deux-roues
    
    Heures d'ouverture : Lundi-Vendredi, 9h - 17h EST
    Numéro de service client : 1-800-123-4567
    </static_context>
    """

    Nous ferons ensuite la même chose pour nos informations d'assurance automobile et d'assurance automobile électrique.

    STATIC_CAR_INSURANCE="""
    <static_context>
    Couverture d'Assurance Automobile :
    Les polices d'assurance automobile d'Acme couvrent généralement :
    1. Couverture de responsabilité : Paie pour les blessures corporelles et les dommages matériels que vous causez à autrui.
    2. Couverture collision : Paie pour les dommages à votre voiture dans un accident.
    3. Couverture complète : Paie pour les dommages à votre voiture d'incidents non-collision.
    4. Couverture des paiements médicaux : Paie pour les frais médicaux après un accident.
    5. Couverture automobiliste non assuré/sous-assuré : Vous protège si vous êtes frappé par un conducteur avec une assurance insuffisante.
    
    Les couvertures optionnelles incluent :
    - Remboursement de voiture de location
    - Assistance routière
    - Remplacement de voiture neuve
    </static_context>
    """
    
    STATIC_ELECTRIC_CAR_INSURANCE="""
    <static_context>
    Assurance Automobile Électrique :
    Notre assurance automobile électrique spécialisée va au-delà de la couverture automobile traditionnelle, 
    offrant une protection sur mesure pour votre investissement high-tech. En plus des couvertures standard, nous offrons :
    - Protection des systèmes de batterie coûteux
    - Couverture de l'équipement de charge à domicile
    - Adaptation au monde en évolution rapide des véhicules électriques
    
    Que vous conduisiez une Rivian, Nissan Leaf, Chevrolet Bolt, 
    ou tout autre véhicule électrique, nos agents compétents sont prêts à créer une police 
    qui vous donne la confiance de profiter de chaque mile alimenté par électron.
    </static_context>
    """

    Maintenant que nous avons notre contenu statique, ajoutons au moins 4-5 exemples d'interactions "bonnes" pour guider les réponses de Claude. Ces exemples devraient être représentatifs de votre interaction client idéale et peuvent inclure des garde-fous, des appels d'outils, etc.

    EXAMPLES="""
    Voici quelques exemples de comment vous pouvez interagir avec les clients :
    
    <example 1>
    H: Salut, offrez-vous une assurance commerciale pour les petites entreprises ?
    
    A: Ah ! Malheureusement, nous n'offrons pas d'assurance commerciale en ce moment. 
    Cependant, nous fournissons une gamme de produits d'assurance personnelle incluant l'assurance automobile et l'assurance automobile électrique. 
    Aimeriez-vous en savoir plus sur ces offres ?
    </example 1>
    
    <example 2>
    H: Salut, quelles sont vos heures d'ouverture ?
    
    A: Nos heures d'ouverture sont du lundi au vendredi, de 9h à 17h EST. 
    Si vous avez des questions ou avez besoin d'assistance, n'hésitez pas à nous contacter pendant ces heures. 
    Comment puis-je vous aider d'autre aujourd'hui ?
    </example 2>
    
    <example 3>
    H: Je cherche une assurance automobile. Qu'est-ce qu'Acme offre ?
    
    A: Excellent choix ! Les polices d'assurance automobile d'Acme incluent généralement :
    - Couverture de responsabilité : Vous protège si vous êtes en faute dans un accident
    - Couverture collision : Paie pour les dommages à votre voiture dans un accident
    - Couverture complète : Couvre les incidents non-collision comme le vol ou le vandalisme
    - Couverture des paiements médicaux : Paie pour les frais médicaux après un accident
    - Couverture automobiliste non assuré/sous-assuré : Vous protège des conducteurs avec une assurance insuffisante
    
    Nous offrons également des couvertures optionnelles comme le remboursement de voiture de location, l'assistance routière, et le remplacement de voiture neuve. 
    Aimeriez-vous plus de détails sur l'une de ces couvertures, ou avez-vous des questions spécifiques sur l'assurance de votre véhicule ?
    </example 3>
    
    <example 4>
    H: J'aimerais entendre parler de votre assurance automobile électrique.
    
    A: Certainement ! Notre assurance automobile électrique est spécialement conçue pour répondre aux besoins uniques des propriétaires de véhicules électriques. 
    En plus de toutes les couvertures standard que nous offrons pour les voitures régulières, nos polices de voitures électriques incluent :
    
    - Couverture de batterie : Protection contre les dommages ou la dégradation du système de batterie coûteux de votre véhicule
    - Pack technologique : Couvre les réparations ou le remplacement de l'électronique avancée et des systèmes informatiques embarqués
    - Couverture de station de charge : Protège à la fois l'équipement de charge à domicile et portable
    - Protection cybersécurité : Couverture contre le piratage ou les menaces numériques
    - Assistance routière spécialisée : Inclut le remorquage sur plateau pour protéger le dessous de caisse du véhicule
    
    Nous couvrons une large gamme de véhicules électriques, incluant les modèles populaires de Tesla, Rivian, Nissan, Chevrolet, et plus encore. 
    Y a-t-il un véhicule électrique spécifique que vous cherchez à assurer, ou aimeriez-vous plus de détails sur l'une de ces cou vertures ?
    </example 4>
    
    <example 5>
    H: J'aimerais obtenir un devis pour mon assurance automobile.
    
    A: Certainement ! Je serais ravi de vous aider à obtenir un devis pour votre assurance automobile. 
    Pour vous fournir un devis précis, je vais devoir collecter quelques informations sur votre véhicule et le conducteur principal. 
    Commençons par les bases :
    
    1. Quelle est la marque et le modèle de votre véhicule ?
    2. En quelle année a-t-il été fabriqué ?
    3. Approximativement combien de miles avez-vous conduit ?
    4. Quel est l'âge du conducteur principal ?
    
    Une fois que vous fournirez ces informations, j'utiliserai notre outil de devis pour générer un devis d'assurance personnalisé pour vous.
    </example 5>
    """

    Vous voudrez également inclure toutes instructions importantes décrivant les À faire et À ne pas faire pour comment Claude devrait interagir avec le client. Cela peut provenir de garde-fous de marque ou de politiques de support.

    ADDITIONAL_GUARDRAILS = """Veuillez adhérer aux garde-fous suivants :
    1. Fournissez seulement des informations sur les types d'assurance listés dans nos offres.
    2. Si on vous demande un type d'assurance que nous n'offrons pas, déclarez poliment 
    que nous ne fournissons pas ce service.
    3. Ne spéculez pas sur les futures offres de produits ou les plans de l'entreprise.
    4. Ne faites pas de promesses ou n'entrez pas dans des accords qu'il n'est pas autorisé à faire.
    Vous fournissez seulement des informations et des conseils.
    5. Ne mentionnez aucun produit ou service de concurrent.
    """

    Maintenant combinons toutes ces sections en une seule chaîne à utiliser comme notre prompt.

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

    Ajouter des capacités dynamiques et agentiques avec l'utilisation d'outils

    Claude est capable de prendre des actions et de récupérer des informations dynamiquement en utilisant la fonctionnalité d'utilisation d'outils côté client. Commencez par lister tous les outils externes ou API que le prompt devrait utiliser.

    Pour cet exemple, nous commencerons avec un outil pour calculer le devis.

    Pour rappel, cet outil n'effectuera pas le calcul réel, il signalera simplement à l'application qu'un outil devrait être utilisé avec les arguments spécifiés.

    Exemple de calculateur de devis d'assurance :

    TOOLS = [{
      "name": "get_quote",
      "description": "Calculer le devis d'assurance basé sur l'entrée utilisateur. La valeur retournée est la prime par mois.",
      "input_schema": {
        "type": "object",
        "properties": {
          "make": {"type": "string", "description": "La marque du véhicule."},
          "model": {"type": "string", "description": "Le modèle du véhicule."},
          "year": {"type": "integer", "description": "L'année de fabrication du véhicule."},
          "mileage": {"type": "integer", "description": "Le kilométrage du véhicule."},
          "driver_age": {"type": "integer", "description": "L'âge du conducteur principal."}
        },
        "required": ["make", "model", "year", "mileage", "driver_age"]
      }
    }]
    
    def get_quote(make, model, year, mileage, driver_age):
        """Retourne la prime par mois en USD"""
        # Vous pouvez appeler un endpoint http ou une base de données pour obtenir le devis.
        # Ici, nous simulons un délai de 1 seconde et retournons un devis fixe de 100.
        time.sleep(1)
        return 100

    Déployer vos prompts

    Il est difficile de savoir à quel point votre prompt fonctionne sans le déployer dans un environnement de production de test et exécuter des évaluations alors construisons une petite application utilisant notre prompt, le SDK Anthropic, et streamlit pour une interface utilisateur.

    Dans un fichier appelé chatbot.py, commencez par configurer la classe ChatBot, qui encapsulera les interactions avec le SDK Anthropic.

    La classe devrait avoir deux méthodes principales : generate_message et 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"Une erreur s'est produite : {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"Une erreur s'est produite : {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("Une erreur s'est produite : Type de réponse inattendu")
    
       def handle_tool_use(self, func_name, func_params):
           if func_name == "get_quote":
               premium = get_quote(**func_params)
               return f"Devis généré : ${premium:.2f} par mois"
          
           raise Exception("Un outil inattendu a été utilisé")

    Construire votre interface utilisateur

    Testez le déploiement de ce code avec Streamlit en utilisant une méthode principale. Cette fonction main() configure une interface de chat basée sur Streamlit.

    Nous ferons cela dans un fichier appelé app.py

    import streamlit as st
    from chatbot import ChatBot
    from config import TASK_SPECIFIC_INSTRUCTIONS
    
    def main():
       st.title("Chattez avec Eva, l'Assistante d'Acme Insurance Company🤖")
    
       if "messages" not in st.session_state:
           st.session_state.messages = [
               {'role': "user", "content": TASK_SPECIFIC_INSTRUCTIONS},
               {'role': "assistant", "content": "Compris"},
           ]
    
       chatbot = ChatBot(st.session_state)
    
       # Afficher les messages utilisateur et assistant en sautant les deux premiers
       for message in st.session_state.messages[2:]:
           # ignorer les blocs d'utilisation d'outils
           if isinstance(message["content"], str):
               with st.chat_message(message["role"]):
                   st.markdown(message["content"])
    
       if user_msg := st.chat_input("Tapez votre message ici..."):
           st.chat_message("user").markdown(user_msg)
    
           with st.chat_message("assistant"):
               with st.spinner("Eva réfléchit..."):
                   response_placeholder = st.empty()
                   full_response = chatbot.process_user_input(user_msg)
                   response_placeholder.markdown(full_response)
    
    if __name__ == "__main__":
       main()

    Exécutez le programme avec :

    streamlit run app.py

    Évaluer vos prompts

    Le prompting nécessite souvent des tests et une optimisation pour être prêt pour la production. Pour déterminer la préparation de votre solution, évaluez la performance du chatbot en utilisant un processus systématique combinant des méthodes quantitatives et qualitatives. Créer une évaluation empirique solide basée sur vos critères de succès définis vous permettra d'optimiser vos prompts.

    La Console Claude dispose maintenant d'un outil d'Évaluation qui vous permet de tester vos prompts sous divers scénarios.

    Améliorer les performances

    Dans des scénarios complexes, il peut être utile de considérer des stratégies supplémentaires pour améliorer les performances au-delà des techniques d'ingénierie de prompt standard et des stratégies d'implémentation de garde-fous. Voici quelques scénarios communs :

    Réduire la latence de contexte long avec RAG

    Lorsqu'on traite de grandes quantités de contexte statique et dynamique, inclure toutes les informations dans le prompt peut conduire à des coûts élevés, des temps de réponse plus lents, et atteindre les limites de fenêtre de contexte. Dans ce scénario, implémenter des techniques de Génération Augmentée par Récupération (RAG) peut significativement améliorer les performances et l'efficacité.

    En utilisant des modèles d'embedding comme Voyage pour convertir les informations en représentations vectorielles, vous pouvez créer un système plus évolutif et réactif. Cette approche permet la récupération dynamique d'informations pertinentes basées sur la requête actuelle, plutôt que d'inclure tout le contexte possible dans chaque prompt.

    Implémenter RAG pour les cas d'usage de support recette RAG a montré qu'il augmente la précision, réduit les temps de réponse, et réduit les coûts API dans les systèmes avec des exigences de contexte étendues.

    Intégrer des données en temps réel avec l'utilisation d'outils

    Lorsqu'on traite des requêtes qui nécessitent des informations en temps réel, comme les soldes de compte ou les détails de police, les approches RAG basées sur l'embedding ne sont pas suffisantes. Au lieu de cela, vous pouvez exploiter l'utilisation d'outils pour améliorer significativement la capacité de votre chatbot à fournir des réponses précises et en temps réel. Par exemple, vous pouvez utiliser l'utilisation d'outils pour rechercher des informations client, récupérer des détails de commande, et annuler des commandes au nom du client.

    Cette approche, décrite dans notre recette utilisation d'outils : agent de service client, vous permet d'intégrer de manière transparente des données en direct dans les réponses de Claude et de fournir une expérience client plus personnalisée et efficace.

    Renforcer les garde-fous d'entrée et de sortie

    Lors du déploiement d'un chatbot, surtout dans des scénarios de service client, il est crucial de prévenir les risques associés à la mauvaise utilisation, aux requêtes hors périmètre, et aux réponses inappropriées. Bien que Claude soit intrinsèquement résistant à de tels scénarios, voici des étapes supplémentaires pour renforcer les garde-fous de votre chatbot :

    • Réduire les hallucinations : Implémenter des mécanismes de vérification des faits et des citations pour ancrer les réponses dans les informations fournies.
    • Vérifier croisée les informations : Vérifier que les réponses de l'agent s'alignent avec les politiques de votre entreprise et les faits connus.
    • Éviter les engagements contractuels : S'assurer que l'agent ne fait pas de promesses ou n'entre pas dans des accords qu'il n'est pas autorisé à faire.
    • Atténuer les jailbreaks : Utiliser des méthodes comme les écrans d'innocuité et la validation d'entrée pour empêcher les utilisateurs d'exploiter les vulnérabilités du modèle, visant à générer du contenu inapproprié.
    • Éviter de mentionner les concurrents : Implémenter un filtre de mention de concurrent pour maintenir le focus de marque et ne pas mentionner les produits ou services de concurrent.
    • Garder Claude dans le personnage : Empêcher Claude de changer son style de contexte, même pendant des interactions longues et complexes.
    • Supprimer les Informations Personnellement Identifiables (PII) : À moins d'être explicitement requis et autorisé, supprimer toute PII des réponses.

    Réduire le temps de réponse perçu avec le streaming

    Lorsqu'on traite des réponses potentiellement longues, implémenter le streaming peut significativement améliorer l'engagement et la satisfaction des utilisateurs. Dans ce scénario, les utilisateurs reçoivent la réponse progressivement au lieu d'attendre que la réponse entière soit générée.

    Voici comment implémenter le streaming :

    1. Utiliser l'API de Streaming Anthropic pour supporter les réponses en streaming.
    2. Configurer votre frontend pour gérer les chunks de texte entrants.
    3. Afficher chaque chunk dès qu'il arrive, simulant la frappe en temps réel.
    4. Implémenter un mécanisme pour sauvegarder la réponse complète, permettant aux utilisateurs de la voir s'ils naviguent ailleurs et reviennent.

    Dans certains cas, le streaming permet l'utilisation de modèles plus avancés avec des latences de base plus élevées, car l'affichage progressif atténue l'impact des temps de traitement plus longs.

    Faire évoluer votre Chatbot

    À mesure que la complexité de votre Chatbot grandit, votre architecture d'application peut évoluer pour correspondre. Avant d'ajouter d'autres couches à votre architecture, considérez les options suivantes moins exhaustives :

    • Assurez-vous que vous tirez le maximum de vos prompts et optimisez par l'ingénierie de prompt. Utilisez nos guides d'ingénierie de prompt pour écrire les prompts les plus efficaces.
    • Ajoutez des outils supplémentaires au prompt (qui peuvent inclure des chaînes de prompts) et voyez si vous pouvez atteindre la fonctionnalité requise.

    Si votre Chatbot gère des tâches incroyablement variées, vous pourriez vouloir considérer l'ajout d'un classificateur d'intention séparé pour router la requête client initiale. Pour l'application existante, cela impliquerait de créer un arbre de décision qui routerait les requêtes client à travers le classificateur puis vers des conversations spécialisées (avec leur propre ensemble d'outils et prompts système). Notez, cette méthode nécessite un appel supplémentaire à Claude qui peut augmenter la latence.

    Intégrer Claude dans votre flux de travail de support

    Bien que nos exemples se soient concentrés sur des fonctions Python appelables dans un environnement Streamlit, déployer Claude pour un chatbot de support en temps réel nécessite un service API.

    Voici comment vous pouvez aborder cela :

    1. Créer un wrapper API : Développer un wrapper API simple autour de votre fonction de classification. Par exemple, vous pouvez utiliser Flask API ou Fast API pour envelopper votre code dans un Service HTTP. Votre service HTTP pourrait accepter l'entrée utilisateur et retourner la réponse de l'Assistant dans son intégralité. Ainsi, votre service pourrait avoir les caractéristiques suivantes :

      • Événements Envoyés par le Serveur (SSE) : SSE permet le streaming en temps réel des réponses du serveur vers le client. Ceci est crucial pour fournir une expérience fluide et interactive lors du travail avec les LLM.
      • Mise en cache : Implémenter la mise en cache peut significativement améliorer les temps de réponse et réduire les appels API inutiles.
      • Rétention de contexte : Maintenir le contexte quand un utilisateur navigue ailleurs et revient est important pour la continuité dans les conversations.
    2. Construire une interface web : Implémenter une interface web conviviale pour interagir avec l'agent alimenté par Claude.

    Livre de recettes Génération Augmentée par Récupération (RAG)

    Visitez notre recette de livre de recettes RAG pour plus de code d'exemple et des conseils détaillés.

    Livre de recettes Citations

    Explorez notre recette de livre de recettes Citations pour comment assurer la précision et l'explicabilité des informations.

    • Avant de construire avec Claude
    • Décider d'utiliser Claude pour le chat de support
    • Définir votre interaction de chat idéale
    • Décomposer l'interaction en tâches uniques
    • Établir des critères de succès
    • Comment implémenter Claude comme agent de service client
    • Choisir le bon modèle Claude
    • Construire un prompt solide
    • Ajouter des capacités dynamiques et agentiques avec l'utilisation d'outils
    • Déployer vos prompts
    • Construire votre interface utilisateur
    • Évaluer vos prompts
    • Améliorer les performances
    • Intégrer Claude dans votre flux de travail de support
    © 2025 ANTHROPIC PBC

    Products

    • Claude
    • Claude Code
    • Max plan
    • Team plan
    • Enterprise plan
    • Download app
    • Pricing
    • Log in

    Features

    • Claude and Slack
    • Claude in Excel

    Models

    • Opus
    • Sonnet
    • Haiku

    Solutions

    • AI agents
    • Code modernization
    • Coding
    • Customer support
    • Education
    • Financial services
    • Government
    • Life sciences

    Claude Developer Platform

    • Overview
    • Developer docs
    • Pricing
    • Amazon Bedrock
    • Google Cloud’s Vertex AI
    • Console login

    Learn

    • Blog
    • Catalog
    • Courses
    • Use cases
    • Connectors
    • Customer stories
    • Engineering at Anthropic
    • Events
    • Powered by Claude
    • Service partners
    • Startups program

    Company

    • Anthropic
    • Careers
    • Economic Futures
    • Research
    • News
    • Responsible Scaling Policy
    • Security and compliance
    • Transparency

    Help and security

    • Availability
    • Status
    • Support center

    Terms and policies

    • Privacy policy
    • Responsible disclosure policy
    • Terms of service: Commercial
    • Terms of service: Consumer
    • Usage policy

    Products

    • Claude
    • Claude Code
    • Max plan
    • Team plan
    • Enterprise plan
    • Download app
    • Pricing
    • Log in

    Features

    • Claude and Slack
    • Claude in Excel

    Models

    • Opus
    • Sonnet
    • Haiku

    Solutions

    • AI agents
    • Code modernization
    • Coding
    • Customer support
    • Education
    • Financial services
    • Government
    • Life sciences

    Claude Developer Platform

    • Overview
    • Developer docs
    • Pricing
    • Amazon Bedrock
    • Google Cloud’s Vertex AI
    • Console login

    Learn

    • Blog
    • Catalog
    • Courses
    • Use cases
    • Connectors
    • Customer stories
    • Engineering at Anthropic
    • Events
    • Powered by Claude
    • Service partners
    • Startups program

    Company

    • Anthropic
    • Careers
    • Economic Futures
    • Research
    • News
    • Responsible Scaling Policy
    • Security and compliance
    • Transparency

    Help and security

    • Availability
    • Status
    • Support center

    Terms and policies

    • Privacy policy
    • Responsible disclosure policy
    • Terms of service: Commercial
    • Terms of service: Consumer
    • Usage policy
    © 2025 ANTHROPIC PBC