Passer au contenu principal

Meilleures pratiques pour les Fin Tasks

Consultez nos meilleures pratiques et exemples pour créer des Fin Tasks et rédiger des instructions pour Fin.

Écrit par Ivan

En utilisant Fin Tasks, vous pouvez donner à Fin des instructions étape par étape pour la tâche que vous souhaitez qu'il exécute. Nous avons fourni quelques meilleures pratiques et exemples pour rédiger ces instructions pour Fin.

Note : Fin Procedures est disponible en disponibilité gérée comme la prochaine évolution des Tasks, offrant une expérience d'édition plus simple et des capacités plus puissantes. Veuillez discuter de l'accès avec votre Account Manager. En savoir plus sur la transition des Fin Tasks vers les Procedures.

Si vous avez accès aux Procedures, nous vous recommandons de les utiliser pour les nouvelles automatisations.


Meilleures pratiques pour les Fin Tasks

Des instructions clairement rédigées peuvent faire une grande différence dans la performance de votre Fin Task.

Conseils généraux pour le prompt des LLM

Avant d'entrer dans les spécificités des Fin Tasks, voici quelques conseils utiles qui s'appliquent généralement lors du travail avec de grands modèles de langage (LLM) :

  • Un bon prompt est impératif et instructif. Commencez les phrases par un verbe et évitez la voix passive.

  • Ne laissez aucune place à l'ambiguïté : une instruction détaillée est préférable à une instruction brève.

Pour une lecture complémentaire, consultez les sujets d'introduction ici.

Portée et organisation de la tâche

Bien que Fin conserve la mémoire des étapes précédentes, des actions effectuées ou des données stockées, vous devez toujours concevoir les tâches avec des limites claires et des objectifs ciblés.

Quand utiliser une seule Fin Task :

  • Toutes les étapes font partie d'un processus cohérent avec une progression claire.

  • Les étapes ultérieures dépendent des étapes précédentes dans une séquence logique.

  • L'ensemble du processus partage les mêmes critères de décision et résultats.

Quand envisager plusieurs Fin Tasks :

  • Pour des processus métier complètement séparés

  • Vous devez créer des points de contrôle clairs dans un flux de travail complexe

  • Différents intervenants ou équipes possèdent différentes parties d'un processus

  • Vous souhaitez permettre différents points d'entrée dans un flux de travail

Structure de la tâche

Titre et description du déclencheur

Assurez-vous que le titre est descriptif et pas seulement interne.

  • Exemple de bonne pratique : Commandes endommagées

  • Exemple de mauvaise pratique : Test123

Vous devez écrire 3 à 5 phrases pour décrire quand Fin doit déclencher cette tâche. Soyez aussi précis que possible et assurez-vous d'inclure un ou plusieurs des éléments suivants :

  • Scénarios courants dans lesquels le déclenchement de cette tâche serait approprié.

  • Exemples de types de questions clients auxquelles cette tâche répondrait.

  • Phrases clés que les clients pourraient utiliser.

Exemple de bonne pratique :

Utilisez cette tâche lorsqu'un client signale avoir reçu une commande endommagée lors de la livraison — comme des boissons qui fuient, de la nourriture renversée ou des contenants cassés. N'utilisez pas cette tâche si le client signale une livraison tardive, un article manquant ou des problèmes sans rapport avec un dommage produit.

Exemple de mauvaise pratique :

Utilisez cette tâche pour rembourser une commande.

Bloc d'instructions

Le bloc d'instructions suit un format structuré composé des sections suivantes...

1. Instructions :

C'est un plan clair, logiquement complet, étape par étape que Fin doit suivre. Assurez-vous de couvrir toutes les règles de décision nécessaires pour que Fin exécute la tâche.

La meilleure et la plus simple façon de formuler ces instructions est de suivre une logique « si + sinon ». Cette logique garantit que vous pourrez toujours prendre une décision à chaque étape et soit progresser vers une solution, soit avoir une issue si vous êtes bloqué. Pour notre exemple, cela ressemblerait à :

1. Si vous pouvez déterminer la date de la commande et qu'elle remonte à moins de 30 jours, émettez un remboursement.

2. Si vous pouvez déterminer la date de la commande mais qu'elle remonte à plus de 30 jours, dites au client que la politique de Company X ne permet pas de remboursements pour les achats datant de plus de 30 jours.

3. Sinon, dites au client que vous allez escalader à un membre humain de l'équipe de support, et exécutez l'escalade en faisant... (cet exemple suppose que la logique d'escalade a été intégrée dans la Fin Task)

Si la logique et les informations auxquelles Fin doit accéder sont trop ouvertes, vous devriez envisager de décomposer le bloc d'instructions en étapes plus petites avec une logique plus définie et contraignante.

Vous devrez également identifier les valeurs d'entrée nécessaires pour exécuter la tâche. Indiquez explicitement dans le prompt :

  • Ce que sont ces attributs, à quoi ils peuvent servir, et comment ces attributs se rapportent au contexte plus large de la tâche.

  • Si ces attributs sont garantis disponibles (par exemple, d'une étape précédente dans les instructions)

    • Si oui, où ils sont disponibles ou quelle est leur valeur, en les insérant directement dans le prompt.

    • Sinon, où ou comment ils peuvent être recueillis (par exemple, auprès du client)

2. Orientation (optionnel) :

Guidez comment Fin interagit, répond et se comporte lors d'une tâche en fournissant des instructions claires. Décrivez simplement les comportements spécifiques que vous souhaitez que Fin suive pendant l'exécution des étapes.

Brouillons de tâches

Une bonne pratique clé pour gérer les Fin Tasks est d'utiliser la fonction Enregistrer comme brouillon. Cela vous permet de modifier et tester en toute sécurité les instructions de la tâche sans impacter vos clients.

Lorsque vous modifiez une tâche en direct, vous créez deux versions :

  • Version en direct : C'est la tâche active avec laquelle vos clients interagissent.

  • Version brouillon : C'est votre ensemble de modifications non publiées où vous pouvez travailler et tester en privé.

Cela vous offre un environnement sécurisé pour perfectionner vos automatisations avant de les publier. Utilisez toujours les fonctions Aperçu et Simulations depuis l'éditeur de tâches pour tester votre version brouillon. Vos modifications ne seront mises en ligne que lorsque vous serez confiant et cliquerez sur le bouton Mettre les modifications en ligne.

Déclencheurs de tâches

Incluez environ 10 questions exemples

Pour améliorer la précision de l'appariement des tâches, vous devez fournir des questions exemples spécifiques qui doivent ou ne doivent pas déclencher votre tâche. Cela aide Fin à mieux comprendre quand utiliser votre tâche, surtout si vous avez plusieurs tâches similaires.

Vous pouvez ajouter à la fois des exemples positifs ("Déclencher quand...") et des exemples négatifs ("Ne pas déclencher quand...").

Commencez avec environ 10 questions ou phrases clients très pertinentes pour assurer la bonne reconnaissance de la tâche. Si nécessaire, vous pouvez étendre à 20–30 exemples, mais soyez attentif à la complexité. Si la liste devient trop longue ou spécifique, envisagez de simplifier la description ou de passer à des déclencheurs basés sur l'intention pour maintenir clarté et gestion.

Utilisez des exemples négatifs uniquement en cas de déclenchement incorrect

Les exemples "Ne pas déclencher quand..." ne doivent être inclus que si vous observez un comportement de déclenchement incorrect. Les exemples négatifs aident à affiner la détection en précisant à quoi Fin ne doit pas répondre, mais évitez de les ajouter sauf s'ils traitent un problème spécifique de déclenchements erronés.

Instructions de tâche

Divisez les instructions uniquement lorsque les tâches sont complexes

Utilisez un seul bloc d'instructions structuré lorsque votre tâche est simple ou comporte moins d'une dizaine d'étapes. Si la tâche implique une logique complexe, des ramifications importantes ou devient difficile à suivre, il est préférable de la diviser en plusieurs blocs d'instructions pour plus de clarté et de maintenabilité.

Laissez Fin collecter automatiquement les entrées pour les connecteurs de données

Vous n'avez pas besoin de rassembler toutes les entrées manuellement avant d'exécuter un connecteur de données. Lors de la configuration du connecteur, spécifiez les entrées requises, et Fin demandera automatiquement au client celles qui manquent. Cela réduit la complexité de vos instructions et rend les interactions plus efficaces.

Le changement de tâche est autorisé pendant les conversations

Fin est capable de changer de tâche en cours de conversation, et même de passer à des réponses informatives (issues de votre contenu de support) lorsque le contexte ou l'intention du client change. Cela signifie qu'il peut quitter une tâche et en commencer une autre sans interruption, permettant des interactions plus dynamiques et réactives selon l'évolution des besoins de l'utilisateur.

Les réponses API sont mémorisées entre les étapes d'instruction

Fin mémorise automatiquement les réponses API dans le même bloc d'instructions. Vous pouvez vous y référer naturellement dans les étapes suivantes, par exemple en disant « en utilisant le solde retourné précédemment », sans avoir besoin de répéter ou stocker manuellement les données.

Pas besoin de sauvegarder les réponses API dans des attributs temporaires

Il n'est pas nécessaire de stocker explicitement les réponses API dans des attributs temporaires. Fin garde les données en interne, vous permettant de les référencer directement dans les étapes suivantes en langage naturel simple.

Utilisez les commandes de marquage et d'escalade dans les étapes d'instruction

Marquer une conversation

Améliorez la catégorisation des conversations en demandant à Fin de marquer les conversations avec des tags prédéfinis dans les instructions de tâche. Cela aide au filtrage, au reporting et au déclenchement d'actions de suivi.

Exemple d'instruction :

"Marquer la conversation 'Demande de facturation' et 'Haute priorité'."

Escalader à une équipe

Transférez sans interruption les conversations nécessitant une intervention humaine en demandant à Fin d'escalader vers une équipe ou un coéquipier spécifique.

Exemple d'instruction :

"Escalader vers : Facturation"

Note : Assurez-vous que les tags et noms d'équipe utilisés dans les instructions correspondent à ceux configurés dans votre espace de travail Intercom.


Exemples de Fin Task

Nous avons compilé plusieurs exemples d'utilisation ci-dessous qui peuvent vous aider à façonner vos Fin Tasks.

Remboursement de commande

Description : L'objectif de cette tâche est de déterminer si une demande de remboursement faite par un client est valide, et si oui, de la traiter. En suivant les instructions ci-dessous, vous pourrez vérifier et traiter la demande de remboursement d'un client pour des commandes passées avec Company X.

Étape 1 : Utilisez @get_order_details pour la commande avec l'ID @collected_order_id afin d'obtenir les détails de cette commande. Ensuite, suivez la logique ci-dessous pour déterminer si la commande récupérée peut être remboursée :

  • Si la date de la commande est antérieure de plus de 30 jours à la date actuelle, informez le client que vous ne pouvez pas offrir de remboursement car la commande a été passée il y a plus de 30 jours. Définissez @refund_outcome sur "denied" et informez le client du résultat.

  • Si la date de la commande est inférieure à 30 jours par rapport à la date actuelle, passez à l'étape 2.

  • Sinon, informez le client que vous ne pouvez pas vérifier si la commande peut être remboursée et escaladez à un membre humain de l'équipe de support. Définissez @refund_outcome sur "escalation" et informez le client que vous avez pris cette mesure.

Étape 2 : Utilisez @process_items_refund avec l'ID de commande @collected_order_id pour traiter un remboursement pour cette commande. Ensuite, récupérez la réponse et :

  • Si le remboursement a réussi, informez le client que le remboursement a été traité avec succès. Définissez @refund_outcome sur "success" et informez le client du résultat.

  • Sinon, si le remboursement a échoué, informez le client que vous n'avez pas pu traiter le remboursement. Définissez @refund_outcome sur "escalation" et informez le client que vous avez pris cette mesure.

Orientation : Faites preuve d'empathie lorsque vous annoncez des nouvelles négatives concernant les refus de remboursement. Lorsqu'un remboursement est réussi, soyez chaleureux et clair sur les délais de traitement du remboursement.

Demande d'annulation d'abonnement

Description : L'objectif de cette tâche est de déterminer si une demande d'annulation d'abonnement faite par un client est valide, et si oui, de la traiter. En suivant les instructions ci-dessous, vous pourrez vérifier et annuler l'abonnement d'un client pour Company X.

Étape 1 : Utilisez @get_subscription_details pour l'abonnement avec l'ID @collected_subscription_id afin d'obtenir les détails de cet abonnement. Ensuite, suivez la logique ci-dessous pour déterminer si l'abonnement récupéré peut être annulé :

  • Si l'abonnement est encore dans sa période d'engagement minimum (une durée de 12 mois qui n'est pas encore écoulée) :

    • Informez le client que vous ne pouvez pas annuler l'abonnement pour le moment car il est toujours dans sa période d'engagement.

    • Définissez @cancellation_outcome sur « denied ».

  • Si l'abonnement est éligible à l'annulation (c'est un plan mensuel ou la période d'engagement est terminée) :

    • Passez à l'étape 2.

  • Sinon, si vous ne pouvez pas déterminer à partir des détails de l'abonnement s'il peut être annulé :

    • Informez le client que vous ne pouvez pas vérifier l'éligibilité à l'annulation de l'abonnement et escaladez à un membre humain de l'équipe de support.

    • Définissez @cancellation_outcome sur « escalation ».

Étape 2 : Utilisez @cancel_subscription avec l'ID d'abonnement @collected_subscription_id pour traiter l'annulation. Ensuite, récupérez la réponse et :

  • Si l'annulation réussit :

    • Informez le client que l'abonnement a été annulé avec succès.

    • Définissez @cancellation_outcome sur « success ».

  • Si l'annulation échoue :

    • Informez le client que vous n'avez pas pu annuler l'abonnement et que le problème a été escaladé.

    • Définissez @cancellation_outcome sur « escalation ».

Conseil : Soyez factuel mais empathique en expliquant les périodes d'engagement. En cas de succès, confirmez clairement ce qui se passera avec la facturation à l'avenir.

Demande de changement d'adresse

Description : L'objectif de cette tâche est de déterminer si une mise à jour demandée de l'adresse de livraison d'un client est valide, et si oui, de la traiter. En suivant les instructions ci-dessous, vous vérifierez et mettrez à jour l'adresse de livraison dans le système de Company X.

Étape 1 : Utilisez @get_customer_profile en fournissant l'ID @collected_customer_id pour récupérer le statut actuel du compte client. Ensuite, suivez la logique ci-dessous :

  1. Si le compte client est verrouillé ou signalé (leur account_status est « suspected fraud » ou « unpaid balance ») :

    • Informez le client que vous ne pouvez pas procéder au changement d'adresse en raison des restrictions du compte.

    • Définissez @address_change_outcome sur « denied ».

  2. Si le compte client est actif et éligible aux mises à jour :

    • Passez à l'étape 2.

  3. Sinon, si le système ne peut pas déterminer le statut du compte ou s'il y a des informations insuffisantes :

    • Informez le client que vous ne pouvez pas vérifier si l'adresse peut être mise à jour et escaladez à un agent de support humain.

    • Définissez @address_change_outcome sur « escalation ».

Étape 2 : Utilisez @validate_address en fournissant la @collected_new_address pour vérifier son authenticité et sa capacité de livraison. Ensuite, suivez la logique ci-dessous :

  1. Si la nouvelle adresse n'est pas reconnue ou est en dehors des régions desservies par Company X (la valeur de l'adresse ne peut être que « United States », « European Union » ou « Canada », aucune autre région n'est prise en charge) :

    • Informez le client que l'adresse ne peut pas être desservie ou est invalide.

    • Définissez @address_change_outcome sur « denied ».

  2. Si l'adresse est reconnue et livrable :

    • Passez à l'étape 3.

  3. Si le résultat de la validation de l'adresse est non concluant ou ne peut être déterminé par le système :

    • Informez le client que vous ne pouvez pas vérifier l'adresse pour le moment et que la demande a été escaladée.

    • Définissez @address_change_outcome sur « escalation ».

Étape 3 : Utilisez @update_customer_address en fournissant à la fois @collected_customer_id et @collected_new_address pour finaliser la mise à jour de l'adresse. Ensuite, suivez la logique ci-dessous :

  1. Si la mise à jour de l'adresse réussit :

    • Informez le client que l'adresse a été mise à jour avec succès.

    • Définissez @address_change_outcome sur « success ».

  2. Si la mise à jour de l'adresse échoue pour une raison quelconque (erreur système ou conflits d'enregistrements) :

    • Informez le client que vous avez escaladé le problème à un agent de support humain.

    • Définissez @address_change_outcome sur « escalation ».

Conseil : Soyez clair sur les régions prises en charge. Lors de la confirmation d'un changement d'adresse réussi, rappelez au client que cela affectera toutes les expéditions futures.

Ajustement des points de fidélité

Description : L'objectif de cette tâche est de déterminer si la demande d'un client pour un ajustement des points de fidélité est valide, et si oui, de procéder à cet ajustement. En suivant ces instructions, vous examinerez le statut du compte fidélité du client, validerez la demande, puis ajusterez les points en conséquence dans le système de Company X.

Étape 1 : Utilisez @get_loyalty_profile avec l'ID @collected_loyalty_member_id pour récupérer le statut du compte du membre. Ensuite, suivez la logique :

  1. Si le compte fidélité est inactif, suspendu ou signalé pour activité suspecte :

    • Informez le client que son compte n'est pas éligible à un ajustement des points pour le moment.

    • Définissez @points_adjustment_outcome sur "denied".

  2. Si le compte est en règle :

    • Passez à l'étape 2.

  3. Sinon, si le système ne peut pas déterminer le statut du compte :

    • Informez le client que vous ne pouvez pas vérifier son compte et que vous allez escalader cette affaire à un spécialiste du support.

    • Définissez @points_adjustment_outcome sur "escalation".

Étape 2 : Utilisez @audit_loyalty_activity en fournissant @collected_loyalty_member_id et @collected_points_adjustment_request pour examiner les transactions récentes de fidélité et voir si la demande est justifiée. Ensuite :

  1. Si l'ajustement demandé concerne une transaction hors délai de réclamation (la date de réclamation est supérieure à 90 jours) :

    • Informez le client que la demande ne peut pas être accordée en raison des politiques du programme.

    • Définissez @points_adjustment_outcome sur "denied".

  2. Si la demande est valide (par exemple, des points ont été manqués lors d'un achat récent éligible) :

    • Passez à l'étape 3.

  3. Si l'audit retourne des résultats non concluants (aucune transaction correspondante trouvée ou données partielles seulement) :

    • Informez le client qu'une enquête plus approfondie est nécessaire et que vous escaladez l'affaire à un agent humain.

    • Définissez @points_adjustment_outcome sur "escalation".

Étape 3 : Utilisez @adjust_loyalty_points en fournissant @collected_loyalty_member_id et le montant de @collected_points_adjustment_request pour finaliser l'ajustement des points. Ensuite :

  1. Si l'ajustement des points est traité avec succès :

    • Informez le client que son solde de fidélité a été mis à jour.

    • Définissez @points_adjustment_outcome sur "success".

  2. Si l'ajustement échoue en raison d'une erreur système ou de conflits d'enregistrements :

    • Informez le client que vous n'avez pas pu compléter la demande et que vous l'avez escaladée pour une révision manuelle.

    • Définissez @points_adjustment_outcome sur "escalation".

Conseils : Lorsqu'un ajustement de points est réussi, faites référence à la transaction spécifique qui a généré les points. Soyez informatif sur les politiques du programme lors du refus des demandes.


FAQ

Une Fin Task peut-elle accéder directement à ma knowledge base ?

Oui, les Fin Tasks peuvent accéder au contenu de votre Help Centre mais vos articles doivent être activés pour Fin AI Agent.

Pourquoi Fin fournit-il parfois une réponse de ma knowledge base même lorsqu'une Fin Task est active ?

Fin fournit parfois une réponse de ma knowledge base même lorsqu'une Fin Task est active parce que Fin peut mettre en pause une tâche active pour répondre à une requête d'information en utilisant le contenu de votre knowledge base. Après avoir fourni la réponse, Fin peut ensuite choisir de continuer à exécuter la tâche. Ce comportement est conçu pour garder la conversation efficace en répondant à la question immédiate de l'utilisateur avant de reprendre les étapes de la tâche.

Comment puis-je m'assurer qu'une Fin Task vérifie d'abord la knowledge base avant de continuer ?

Pour vous assurer qu'une Fin Task vérifie d'abord la knowledge base avant de continuer, vous pouvez configurer votre Fin Task pour qu'elle mette explicitement en pause et recherche dans votre knowledge base des types spécifiques de demandes. Cela peut être réalisé en ajoutant une étape "Guidance" dans vos paramètres Fin et en incluant des instructions similaires directement dans la tâche elle-même. Veuillez noter que vos articles doivent être activés pour Fin AI Agent.

Quel type d'instructions devrais-je ajouter à mes paramètres Fin Task et Guidance ?

Nous recommandons d'ajouter une étape Guidance avec des instructions telles que : "Avant de poursuivre les étapes de la tâche, vérifiez d'abord si cette question peut être répondue à partir de notre contenu disponible dans la knowledge base". Vous devriez également ajouter des consignes similaires directement dans les instructions de la tâche, car Fin combine les consignes des deux paramètres. Vous pouvez affiner les instructions de la tâche pour dire à Fin de "Analyser la conversation jusqu'à présent," "Rechercher dans la knowledge base en fonction du contexte de la conversation," et "Confirmer si des informations pertinentes ont été trouvées".

Ai-je besoin d'un connecteur de données pour que Fin recherche dans ma knowledge base ?

Non, vous n'avez pas besoin d'un connecteur de données pour que Fin recherche dans le contenu indexé de votre propre knowledge base. Les connecteurs de données ne sont nécessaires que lorsque vous souhaitez que Fin récupère ou mette à jour des informations dans des systèmes externes, comme vérifier le statut d'une commande ou traiter un remboursement.

Avez-vous trouvé la réponse à votre question ?