Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
L'adresse a échoué aux tests de politique de raisonnement automatique
Si un test de votre politique de raisonnement automatisé échoue, passez en revue la logique et les règles extraites dans les résultats du test. Il existe plusieurs moyens de remédier à l'échec en fonction du problème :
Note
Tutoriel vidéo : Pour découvrir step-by-step comment affiner et résoudre les problèmes liés à une politique de raisonnement automatique, regardez le didacticiel suivant :
Tutoriel de démonstration 3 - Affiner la politique de raisonnement automatique
Comprendre les annotations
Les annotations sont des corrections que vous appliquez pour réparer votre politique en cas d'échec des tests. Si un test ne renvoie pas le résultat escompté, vous pouvez modifier les conditions du test, le réexécuter et appliquer la modification réussie sous forme d'annotation pour mettre à jour votre politique.
Utilisez les annotations pour :
Corriger les règles incorrectes
Ajouter des variables manquantes
Améliorez les descriptions des variables
Résoudre les ambiguïtés de traduction
Exemple : annotation de réparation de politiques
Problème : La politique a approuvé un congé pour un employé ayant un mandat de 8 mois, mais le document source exige un an ou plus.
Règle d'origine :
if is_full_time = true, then eligible_for_parental_leave = true
Annotation appliquée :
years_of_service
Variable ajoutée (type réel)Règle mise à jour pour :
if is_full_time = true and years_of_service >= 1.0, then eligible_for_parental_leave = true
Le test renvoie désormais correctement INVALIDE pour un employé de 8 mois
-
Mettez à jour les conditions du test qui a échoué et réexécutez-le. Si le test renvoie le résultat de validation attendu, vous pouvez appliquer cette annotation pour mettre à jour votre politique.
-
Mettez à jour les noms ou les descriptions des variables de votre politique pour aider Automated Reasoning à les distinguer lorsqu'il traduit le langage naturel en logique.
-
Mettez à jour les règles de votre politique si vous pensez qu'Automated Reasoning a mal compris votre document source ou que celui-ci contient des erreurs.
-
Modifiez la logique de votre politique en ajoutant des variables et des types. Vous pouvez ensuite mettre à jour vos règles pour utiliser les nouvelles variables. Il s'agit d'un cas d'utilisation avancé que nous ne recommandons généralement pas.
-
Recréez votre politique avec des instructions plus complètes. Les instructions doivent inclure suffisamment de contexte pour qu'Automated Reasoning puisse extraire la logique adaptée à la manière dont votre application sera utilisée. Nous vous recommandons également d'inclure des exemples de questions et de réponses que vous vous attendez à ce qu'on vous pose à propos de votre document source.
Quand il est impossible de fournir des conseils
Dans certains cas, le raisonnement automatique peut indiquer qu'il est impossible de fournir des conseils en cas d'échec d'un test. Cela se produit généralement lorsque des problèmes fondamentaux liés à la structure des politiques empêchent une analyse claire. Dans ce cas, vous devez inspecter vos règles de politique et rechercher les conflits.
Les scénarios courants dans lesquels il n'est pas possible de fournir des conseils sont les suivants :
-
Règles contradictoires : votre politique contient des règles contradictoires qui créent des incohérences logiques. Par exemple, une règle peut stipuler que les employés à temps plein sont éligibles à un congé, tandis qu'une autre règle stipule que les employés ayant moins d'un an de service ne sont pas éligibles, sans préciser comment traiter les employés à temps plein ayant moins d'un an de service.
-
Couverture incomplète des règles : votre police comporte des lacunes en raison desquelles certaines combinaisons de conditions ne sont prises en compte par aucune règle, ce qui rend impossible de déterminer le bon résultat.
-
Dépendances circulaires : règles qui dépendent les unes des autres de manière à créer des boucles logiques, empêchant le système de parvenir à une conclusion définitive.
-
Interactions de règles trop complexes : lorsque plusieurs règles interagissent de manière à créer des résultats ambigus ou contradictoires pour des scénarios de test spécifiques.
Pour résoudre ces problèmes, procédez comme suit :
-
Passez systématiquement en revue les règles de votre politique : passez en revue chaque règle de votre politique et identifiez celles qui pourraient entrer en conflit avec d'autres. Recherchez des règles qui pourraient s'appliquer au même scénario mais produire des résultats différents.
-
Vérifiez l'exhaustivité des règles : assurez-vous que vos règles couvrent toutes les combinaisons possibles de conditions susceptibles de se produire dans votre domaine. Identifiez les lacunes auxquelles aucune règle ne s'applique.
-
Simplifiez les interactions complexes : si vous avez de nombreuses règles interconnectées, pensez à les décomposer en règles plus simples, plus ciblées, plus faciles à comprendre et à valider.
-
Testez les cas extrêmes : créez des tests supplémentaires qui ciblent spécifiquement les conditions limites et les cas limites de votre politique afin d'identifier les domaines dans lesquels des conflits ou des lacunes peuvent exister.
-
Envisagez de restructurer les politiques : si les conflits persistent, vous devrez peut-être restructurer votre politique avec des hiérarchies de règles ou des ordres de priorité plus clairs afin de lever les ambiguïtés.
Dans cette situation, il est souvent utile de commencer par une version plus simple de votre politique et d'ajouter progressivement de la complexité tout en testant à chaque étape pour identifier les sources de conflits.
Les exemples suivants présentent les raisons courantes pour lesquelles un test peut échouer et la manière de les résoudre.
Le raisonnement automatique ne comprend pas le document source
Cause courante
Le raisonnement automatique n'a peut-être pas extrait toutes les variables nécessaires de votre document source, ou les descriptions des variables ne sont peut-être pas suffisamment claires pour permettre une traduction correcte du langage naturel vers la logique formelle.
Résolution
-
Consultez la liste des variables sur l'écran de définition pour vérifier que toutes les variables nécessaires pour extraire des affirmations factuelles de votre question et de votre réponse sont présentes dans votre politique.
-
Si une variable obligatoire est manquante :
-
Choisissez Ajouter pour créer une nouvelle variable.
-
Sélectionnez le type approprié (bool, int, real ou enum).
-
Rédigez une description claire et complète des variables.
-
-
Si une variable existe mais n'a pas été correctement attribuée lors de la validation des questions et réponses, améliorez sa description pour aider Automated Reasoning à mieux traduire le langage naturel. Par exemple :
Description initiale (trop limitée) : « Salariés travaillant plus de 20 heures par semaine. »
Description améliorée : « Les employés travaillant plus de 20 heures par semaine sont considérés comme des employés à temps plein. Définissez cette valeur sur true lorsque les utilisateurs mentionnent le fait d'être « à temps plein » ou de travailler à plein temps, et sur false lorsqu'ils mentionnent le fait d'être « à temps partiel » ou de travailler à des heures réduites. »
Les règles de votre politique de raisonnement automatisé sont erronées
Cause courante
Le raisonnement automatique a peut-être mal interprété votre document source, ou votre document source peut contenir des erreurs ou des incohérences.
Résolution
-
Si le résultat de validation cite une règle incorrecte, modifiez-la. Vous le remarquerez probablement d'abord parce qu'un test est revenu comme
VALID
vous vous y attendiezINVALID
. -
Lorsque vous référencez des variables dans la règle, utilisez le nom complet de la variable spécifié dans la section Définitions de la politique. Par exemple, épelez
is_full_time
. Si vous vous attendiez à ce que les questions-réponses d'entrée correspondent à une règle spécifique, vérifiez d'abord que les variables des questions et réponses d'entrée sont correctes. Si tel est le cas, vous devrez peut-être ajouter une nouvelle règle. -
Utilisez le bouton Ajouter en haut à droite de la liste des règles pour saisir une nouvelle règle. Utilisez le langage naturel pour définir la règle. Spécifiez d'abord les contraintes et référencez les variables par leur nom complet. Par exemple, pour une règle qui autorise uniquement les employés à temps plein à prendre un congé, le texte pourrait être quelque chose comme : « Si un employé
is_full_time
est autorisé à prendre un congé rémunéré (LoAP) ».
Les politiques de raisonnement automatisées renvoient TRANSLATION_AMBIGUOUS
Causes courantes
Si votre police d'assurance revientTRANSLATION_AMBIGUOUS
, cela indique qu'Automated Reasoning a détecté une ambiguïté lors de la traduction du langage naturel en logique formelle. Cela se produit lorsque le système ne peut pas déterminer avec certitude comment associer les concepts du langage naturel aux variables logiques formelles et aux règles de votre politique.
L'ambiguïté de la traduction peut découler de plusieurs causes sous-jacentes :
-
Définitions de variables qui se chevauchent : lorsque plusieurs variables de votre politique peuvent raisonnablement représenter le même concept mentionné en langage naturel, le système ne peut pas déterminer la variable à utiliser. Par exemple, si vous avez les deux
employee_tenure_years
et desyears_of_service
variables avec des descriptions similaires, le système peut avoir du mal à déterminer laquelle utiliser lorsqu'un utilisateur demande « depuis combien de temps quelqu'un travaille dans l'entreprise ». Cela crée une ambiguïté dans le processus de traduction et peut entraîner des résultats incohérents. -
Descriptions de variables incomplètes : descriptions de variables qui ne sont pas suffisamment détaillées sur la manière dont les utilisateurs peuvent faire référence à des concepts dans le langage courant, ce qui rend difficile le mappage des entrées utilisateur avec la représentation logique formelle correcte.
-
Saisie ambiguë en langage naturel : invite l'utilisateur ou modélise des réponses qui contiennent des déclarations vagues, contradictoires ou pouvant être interprétées par plusieurs personnes qui ne peuvent pas être clairement traduites en logique formelle.
-
Informations contextuelles manquantes : lorsque le langage naturel fait référence à des concepts qui existent dans votre domaine mais ne sont pas correctement représentés dans le schéma variable de votre politique.
-
Terminologie incohérente : lorsque le même concept est utilisé en utilisant des termes différents dans votre document source, des descriptions variables et des interactions avec les utilisateurs, cela crée une confusion lors de la traduction.
Comprendre ces causes peut vous aider à résoudre les problèmes liés à vos tests et à déterminer les modifications à apporter à votre politique. Dans certains cas, vous devrez peut-être ajuster les paramètres de niveau de confiance de votre politique afin de trouver un meilleur équilibre entre une précision stricte et une facilité d'utilisation pratique dans votre cas d'utilisation spécifique.
Résolution
Il existe plusieurs manières de corriger ce problème en fonction du problème sous-jacent :
-
Les descriptions des variables sont trop similaires : lorsque deux variables ont des noms ou des descriptions similaires, le processus de traduction risque de choisir entre elles de manière incohérente. Par exemple, si vous avez les deux
full_time_status
variablesis_full_time
et des variables avec des descriptions similaires, le système risque de ne pas associer systématiquement le langage naturel relatif au statut professionnel à la bonne variable. Passez en revue les descriptions de vos variables afin que chacune ait des objectifs et des contextes clairement différenciés. Envisagez de regrouper les concepts dupliqués en une seule variable ou de vous assurer que chaque variable a un objectif distinct avec des descriptions claires et non chevauchantes qui précisent exactement quand chaque variable doit être utilisée. -
Contexte variable insuffisant : les descriptions de vos variables ne décrivent peut-être pas de manière adéquate la manière dont les utilisateurs peuvent faire référence aux concepts de votre domaine. Mettez à jour les descriptions de vos variables avec le bon niveau de contexte.
-
Formatage des valeurs incohérent : une ambiguïté de traduction peut survenir lorsque le système ne sait pas comment formater les valeurs (telles que les nombres ou les dates). Mettez à jour les descriptions de vos variables pour clarifier les formats attendus.
-
Saisie ambiguë : si le texte saisi contient des énoncés ambigus, révisez-les pour qu'ils soient plus précis.
Vous pouvez utiliser l'une des instructions suivantes pour corriger les problèmes d'ambiguïté de traduction :
- Ambiguïté sans source
-
You are an expert in revising answers to questions based on logical disagreements found in the answers. Given a domain, a question, an original answer, and logical ambiguities suggested from scearios, your task is to revise the original answer to address and resolve the logical ambiguities identified above. The revised answer should remove any ambiguities, such that one can clearly judge whether each scenario is consistent or inconsistent with the answer. The revised answer should have approximately the same length as the original answer. Avoid extending the answer with your own background knowledge. Below is an example. DOMAIN: DiscountPolicy QUESTION: I want to buy tickets for next Thursday. How many people are needed to qualify for your group discount? ORIGINAL ANSWER: You need at least 10 people to get the group discount. LOGICAL AMBIGUITIES FOUND: disagree_scenario1: ['(= group_size 12)', '(= advanced_booking false)', '(= group_discount true)'] (Analysis: The scenario says the group size is 12, there is no advanced booking and group discount is true. Is this consistent with the answer? Well, the original answer does not mention advanced booking. Maybe the answer assumed advanced booking from the question "I want to buy tickets for next Thursday", but that's debatable. The revised answer should make it clear.) REVISED ANSWER: You need at least 10 people and need to book in advance to get the group discount. (Note: Scenarios are illustrative cases highlighting potential ambiguities. Do not overfit in your revised answer. In the example above, you should use the original "You need at least 10 people..." rather than the scenario-specific "If you have 12 people...") Now complete the following task and return the revised answer. (Just return the answer. Do not return any analysis or notes) DOMAIN: {domain} QUESTION: {question} ORIGINAL ANSWER: {original_answer} LOGICAL AMBIGUITIES FOUND: It is unclear if the following scenarios are valid or not according to the answer. {disagreement_text} REVISED ANSWER:
- Ambiguïté avec la source
-
You are an expert in revising answers to questions based on logical disagreements found in the answers. Given a domain, a question, an original answer, a piece of policy source text, and logical ambiguities suggested from scearios, your task is to revise the original answer to address and resolve the logical ambiguities identified above. The revised answer should remove any ambiguities, such that one can clearly judge whether each scenario is consistent or inconsistent with the answer. The revised answer should have approximately the same length as the original answer. Avoid extending the answer with your own background knowledge. The revised answer should be consistent with the actual policy from the source text. Below is an example. DOMAIN: DiscountPolicy QUESTION: I want to buy tickets for next Thursday. How many people are needed to qualify for your group discount? ORIGINAL ANSWER: You need at least 10 people to get the group discount. POLICY SOURCE TEXT: ... We offer discounts to students, seniors, and large groups. Students must present a valid ID ... A group of ten or more people are qualified for a group discount. Group discount tickets must be booked in advance. Each group ticket is 20% off the regular ticket price ... LOGICAL AMBIGUITIES FOUND: disagree_scenario1: ['(= group_size 12)', '(= advanced_booking false)', '(= group_discount true)'] (Analysis: The scenario says the group size is 12, there is no advanced booking and group discount is true. Is this consistent with the answer? Well, the original answer does not mention advanced booking. Maybe the answer assumed advanced booking from the question "I want to buy tickets for next Thursday", but that's debatable. The revised answer should make it clear.) REVISED ANSWER: You need at least 10 people and need to book in advance to get the group discount. (Note: Scenarios are illustrative cases highlighting potential ambiguities. Do not overfit in your revised answer. In the example above, you should use the original "You need at least 10 people..." rather than the scenario-specific "If you have 12 people...") Now complete the following task and return the revised answer. (Just return the answer. Do not return any analysis or notes) DOMAIN: {domain} QUESTION: {question} ORIGINAL ANSWER: {original_answer} POLICY SOURCE TEXT: {policy_source_text} LOGICAL DISAGREEMENTS FOUND: It is unclear if the following scenarios are valid or not according to the answer. {disagreement_text} REVISED ANSWER: