Activités (Activities)
Plus récente (Latest)
False
Activités Document Understanding
Last updated 21 juin 2024

Extracteur génératif - Bonnes pratiques

Remarque : pour une meilleure stabilité, limitez le nombre d'invites à pas plus de 30 par appel.

Utiliser un langage précis

Imaginez que vous posez à quatre ou cinq personnes différentes la question que vous souhaitez poser dans le cadre de l'invite générative. Si vous pouvez imager ces personnes donner des réponses légèrement différentes, alors votre langue est trop ambiguë et vous devez la reformuler pour la rendre plus précise.

Spécifier un format de sortie

Afin d'être plus spécifique, demandez à l’extracteur de renvoyer la réponse dans un format standardisé. Cela réduit les ambiguïtés, augmente la précision de la réponse et simplifie le traitement en aval.

Par exemple, si vous demandez à l'invite générative d'obtenir une date, spécifiez comment vous souhaitez que la date soit renvoyée : return date in yyyy-mm-dd format. Si vous avez seulement besoin de l'année, spécifiez : return the year, as a four digit number.
Vous pouvez également utiliser cette approche pour les nombres. Par exemple, vous pouvez spécifier : return numbers which appear in parentheses as negative ou return number in ##,###.## format afin d'harmoniser le séparateur décimal et le séparateur de milliers afin de simplifier le traitement en aval.

Fournir les options attendues

Un cas particulier de formatage est celui où la réponse fait partie d’un ensemble connu de réponses possibles.

Par exemple, sur un formulaire de candidature, vous pouvez demander : What is the applicant’s marital status? Possible answers: Married, Unmarried, Separated, Divorced, Widowed, Other.

Cela simplifie non seulement le traitement en aval, mais augmente également la précision de la réponse.

Étape par étape

Afin de maximiser la précision, décomposez les questions complexes en étapes simples. Au lieu de demander What is the termination date of this contract?, vous devriez poser la question First find termination section of contract, then determine termination date, then return date in yyyy-mm-dd format.
Il existe de nombreuses façons de décomposer cela. Vous pouvez même écrire votre requête sous la forme d'un petit programme informatique :
Execute the following program:

1: Find termination section or clause

2: Find termination date

3: Return termination date in yyyy-mm-dd format

4: StopExecute the following program:

1: Find termination section or clause

2: Find termination date

3: Return termination date in yyyy-mm-dd format

4: Stop

Le fait de définir ce que vous voulez comme style de programmation, en utilisant éventuellement la syntaxe JSON ou XML, oblige le modèle génératif à utiliser ses compétences en programmation, ce qui permet que les instructions soient appliquées de façon plus précise.

Évitez les problèmes d'arithmétique ou de logique

Ne demandez pas à l'extracteur d'effectuer des additions, des multiplications, des soustractions, des comparaisons ou toute autre opération arithmétique, car il commet des erreurs de base, en plus d'être très lent et coûteux par rapport à un simple workflow robot, qui ne fera jamais d'erreur, est beaucoup plus rapide et coûte moins cher.

Ne lui demandez pas d’effectuer une logique complexe de type Si-Puis-Sinon (If-Then-Else), pour la même raison que ci-dessus. Le workflow du robot sera beaucoup plus précis et efficace grâce à ce type d’opérations.

Tables

L'extraction de données de tables est un défi pour l'extracteur génératif, car la technologie Generative AI fonctionne sur des chaînes de texte linéaires et ne comprend pas les informations visuelles bidimensionnelles présentes dans les images. Vous pouvez cependant toujours extraire des données des tables, en choisissant entre au moins 2 approches différentes.
  • Une de ces approches consiste à demander à l'extracteur génératif de renvoyer les colonnes séparément, puis à assembler les lignes vous-même dans un workflow. Dans ce cas, vous pouvez demander : Please return the Unit Prices on this invoice, as a list from top to bottom, as a list in the format [<UnitPrice1>, <UnitPrice2>,…]
  • Une autre approche consiste à demander de renvoyer chaque ligne séparément en tant qu'objet JSON. Dans ce cas, vous pouvez demander : Please return the line items of this invoice as an JSON array of JSON objects, each object in format: {"description”: <description>, “quantity”:<quantity>, “unit_price”:<unit price>, “amount”:<amount>}.

Niveau de confiance

Les modèles d'IA générative ne fournissent pas de niveaux de confiance pour les prédictions. Cependant, l'objectif étant de détecter les erreurs, les niveaux de confiance ne sont qu'un des moyens d'atteindre cet objectif... et pas le meilleur. Un moyen bien plus efficace et bien plus fiable pour détecter les erreurs consiste à poser la même question de plusieurs manières différentes. Plus l’énoncé de la question sera différent, mieux ce sera. Si toutes les réponses aboutissent à un résultat commun, alors la probabilité d'erreur est très faible. Si les réponses ne concordent pas, la probabilité d’erreur est élevée.

Pour de meilleurs résultats, nous vous recommandons de poser la même question 5 fois, en combinant les recommandations ci-dessus de différentes manières. Si les 5 réponses sont identiques, la vérification par un être humain n'est peut-être pas nécessaire. Si une réponse est différente, il peut encore y avoir une forte probabilité que les 4 autres réponses soient correctes. Cependant, si 2 réponses ou plus sont différentes, une vérification manuelle par un être humain est requise dans Action Center.

Cette page vous a-t-elle été utile ?

Obtenez l'aide dont vous avez besoin
Formation RPA - Cours d'automatisation
Forum de la communauté UiPath
Logo Uipath blanc
Confiance et sécurité
© 2005-2024 UiPath. All rights reserved.