- Créer une activité d’extraction basée sur des prompts.
- Configurer une connexion à un LLM.
- Rédiger des prompts d’extraction efficaces.
- Définir le format et la structure de sortie.
- Appliquer la rigueur et des règles de validation.
- Tester et affiner votre extraction.
- Extraction des informations sur le fournisseur à partir de factures
- Capture de données d’en-tête de document
- Traitement de documents semi-structurés
- Documents présentant des mises en page variables
Prérequis
Avant de commencer, assurez-vous de disposer de :- D’un accès à ABBYY Vantage Advanced Designer.
- D’une connexion LLM configurée. Voir Configurer les connexions LLM.
- D’une Compétence de document avec des exemples de documents chargés.
- D’une compréhension de base de la structure JSON.
- De définitions de champs pour les données que vous souhaitez extraire.
Ce guide se concentre sur l’extraction des champs d’en-tête. Les capacités d’extraction de tableaux peuvent varier.
Comprendre l’extraction basée sur des prompts
Qu’est-ce que l’extraction basée sur des prompts ?
L’extraction basée sur des prompts utilise des LLM pour comprendre et extraire des données à partir de documents selon des instructions en langage naturel. Vous définissez :- Rôle : le rôle que le LLM doit jouer (par exemple, « modèle d’extraction de données »).
- Instructions : comment extraire et mettre en forme les données.
- Structure de sortie : le format JSON exact des résultats.
- Règles : les consignes pour gérer les données ambiguës ou manquantes.
Étape 1 : Ajouter une activité Prompt-based
Créez une nouvelle activité d’extraction basée sur des prompts dans votre Compétence de document.- Ouvrez votre Compétence de document dans ABBYY Vantage Advanced Designer.
- Dans le panneau de gauche, repérez EXTRACT FROM TEXT (NLP). Ce groupe contient également les activités d’extraction Named Entities (NER) et Deep Learning.
- Recherchez Prompt-based et cliquez dessus.

- L’activité apparaît dans le canevas de votre workflow.
- Connectez-la entre vos activités Input et Output.
Étape 2 : Configurer la connexion LLM
Sélectionnez la connexion LLM que l’activité doit utiliser.- Sélectionnez l’activité basée sur des prompts dans votre workflow.
- Dans le volet Propriétés de l’activité à droite, repérez LLM Connection.
- Cliquez sur le menu déroulant.

- Sélectionnez dans la liste la connexion LLM que vous avez configurée.
- Exemple :
Nick-ChatGPT,Microsoft Foundry,Production GPT-5.6 - Si votre tenant dispose du droit ABBYY Phoenix Plus, ABBYY Phoenix Model apparaît également dans cette liste. Cette connexion est provisionnée par ABBYY, ne nécessite aucun identifiant ni configuration de votre part, et ne peut être ni modifiée ni supprimée. Voir Les LLM dans ABBYY Vantage.
- Exemple :
- Vérifiez que la connexion est bien sélectionnée.
Si aucune connexion n’apparaît dans la liste, ajoutez-en d’abord une sous ADMIN → Configuration → Connexions. Vous pouvez également vous renseigner auprès de votre équipe de compte ABBYY sur ABBYY Phoenix Plus, qui fournit une connexion prête à l’emploi sans que vous ayez besoin de votre propre compte fournisseur. Pour plus d’informations, voir Configurer les connexions LLM.
Étape 3 : Définir les champs de sortie
Configurez les champs que vous souhaitez extraire avant d’écrire votre prompt.- Dans le panneau Propriétés de l’activité, repérez la section Output.
- Vous verrez une liste hiérarchique de groupes de champs et de champs.
- Pour cet exemple, nous extrayons des informations sur le fournisseur :
- Fournisseur
- Nom
- Adresse
- ID fiscal
- Numéro de compte
- Sort Code
- IBAN
- BIC_SWIFT
- unité commerciale
- Nom
- Adresse
- Date de la facture
- Numéro de facture
- Totaux
- Montant net
- Fournisseur

- Cliquez sur le bouton Éditeur d’activité pour commencer à configurer le prompt.
Étape 4 : Rédiger la définition du rôle
Définissez le rôle que le LLM doit jouer pour traiter les documents.- Dans l’Éditeur d’activité, vous verrez l’interface Prompt Text
- Commencez par la section ROLE :

- Soyez précis : “data extraction model” indique au LLM son objectif.
- Définissez le périmètre : “vendor-related fields” limite les éléments à extraire.
- Précisez les attentes : “value text verbatim” évite tout reformatage.
- Gérez les données manquantes : “Omit any field that is not clearly present”.
- Gardez le rôle clair et concis.
- Utilisez des consignes à l’impératif (“Extract”, “Do not infer”).
- Indiquez explicitement ce qu’il NE faut PAS faire.
- Définissez comment gérer les cas limites.
Étape 5 : Définir le format de sortie
Indiquez la structure JSON exacte des résultats d’extraction.- Sous la section ROLE, ajoutez l’intitulé OUTPUT FORMAT.
- Définissez la structure JSON :

- FieldName: Doit correspondre exactement aux définitions de vos champs (par exemple,
Vendor.Name). - Text: La valeur extraite sous forme de string.
- Line: Indice de ligne (à partir de 0) où la valeur apparaît dans le document.
- Utilisez les noms de champ exacts de votre configuration Output.
- Incluez tous les champs, même si certains peuvent être vides.
- La structure doit être un JSON valide.
- Les numéros de ligne facilitent la vérification et la résolution des problèmes.
Étape 6 : Ajouter des règles d’extraction propres à chaque champ
Fournissez des instructions détaillées pour l’extraction de chaque champ. Sous FORMAT DE SORTIE, ajoutez des règles spécifiques pour chaque type de champ :
- Motifs de reconnaissance : indiquez des libellés alternatifs pour chaque champ.
- Spécifications de format : décrivez le format exact à extraire.
- Indications sur l’emplacement : où trouver généralement les données.
- Exclusions : ce qu’il NE faut PAS extraire.
- Numérotez vos règles pour plus de clarté.
- Fournissez plusieurs variantes de libellés.
- Précisez à qui appartiennent les données (côté fournisseur ou côté client).
- Incluez des exemples de format entre parenthèses.
- Soyez explicite concernant les champs associés (par ex., “Ignorez l’IBAN — il a son propre champ”).
Étape 7 : Appliquer les règles de rigueur
Ajoutez des règles de validation pour garantir la qualité et la cohérence des données. À la fin de votre prompt, ajoutez une section STRICTNESS :
- Évite les hallucinations : les LLM peuvent générer des données plausibles mais incorrectes.
- Garantit la cohérence : des règles claires réduisent les variations d’une exécution à l’autre.
- Gère les données manquantes : définit la marche à suivre lorsque des champs ne sont pas trouvés.
- Préserve l’intégrité des données : l’extraction verbatim conserve la mise en forme d’origine.
- Ne générez jamais de données qui ne figurent pas dans le document.
- Omettez les extractions incertaines plutôt que de deviner.
- Renvoyez une structure vide si aucun champ n’est trouvé.
- Faites correspondre exactement les libellés des champs.
- Préservez la mise en forme du texte d’origine.
Étape 8 : Sélectionner le format de document
Choisissez la représentation du document à envoyer au LLM.- Dans l’Éditeur d’activité, repérez la liste déroulante Prompt.
- Vous verrez plusieurs options pour définir comment le document est transmis au LLM.

-
PDF : fichier PDF d’origine
- À utiliser pour : les documents dont la mise en page est essentielle
- Points à prendre en compte : taille de fichier plus importante, prise en charge des PDF limitée par certains LLM
-
Plain Text : extraction de texte sans mise en forme
- À utiliser pour : les documents simples contenant uniquement du texte
- Points à prendre en compte : toutes les informations de mise en forme et de structure sont perdues
-
Annotated Text ⭐ (Recommandé)
- À utiliser pour : la plupart des types de documents
- Points à prendre en compte : préserve la structure tout en restant un format textuel
- Avantages : meilleur équilibre entre structure et performance
-
Formatted Text : texte avec conservation de la mise en forme de base
- À utiliser pour : les documents pour lesquels une partie de la mise en forme est importante
- Points à prendre en compte : solution intermédiaire entre Plain et Annotated
- Sélectionnez Annotated Text pour obtenir les meilleurs résultats
Étape 9 : Testez votre extraction
Exécutez l’activité sur des documents d’exemple pour vérifier les résultats.Exécuter l’activité
- Fermez l’Éditeur d’activité.
- Accédez à l’onglet All Documents.
- Sélectionnez un document de test.
- Cliquez sur Test Activity ou sur le bouton Run.

- Attendez que le document soit traité par le LLM
- Temps de traitement : généralement de 5 à 30 secondes, selon la complexité du document.
- Un indicateur de chargement s’affiche pendant l’attente de la réponse de l’API.
Vérifier les résultats
Une fois le traitement terminé :- L’interface passe en vue prédictive.
- Vérifiez le panneau Output, qui affiche les champs extraits.
- Cliquez sur chaque champ pour voir :
- Valeur extraite
- Niveau de confiance (s’il est fourni)
- Zone mise en évidence sur l’image du document

- ✅ Tous les champs attendus sont renseignés
- ✅ Les valeurs correspondent exactement au document
- ✅ Aucune donnée hallucinée ou déduite
- ✅ Gestion correcte des champs multilignes
- ✅ Les champs manquants sont omis (et non remplis avec des données incorrectes)
Schémas de résultats courants
Extraction réussie :Étape 10: Affinez votre prompt
Faites évoluer votre prompt en fonction des résultats des tests.Problèmes courants et solutions
Problème : le LLM extrait le mauvais champ- Solution : Ajoutez des indications d’emplacement plus précises.
- Exemple : “Côté Fournisseur uniquement ; exclure les adresses du client/de l’acheteur”
- Solution : Insistez sur une extraction à l’identique.
- Exemple : “Extrayez le format numérique exactement tel qu’il est imprimé (par ex., ‘12-34-56’)”
- Solution : Renforcez les règles de rigueur.
- Exemple : “Ne générez ni ne déduisez jamais de valeurs. Omettez-les si elles ne sont pas présentes.”
- Solution : Spécifiez les séquences d’échappement.
- Exemple : “Pour les valeurs multiligne, utilisez
\npour les retours à la ligne”
- Solution : Vérifiez que les libellés de champ correspondent exactement.
- Exemple : Utilisez
Vendor.Account Numberet nonAccountNumber
Processus d’amélioration itératif
- Testez sur plusieurs documents : n’optimisez pas à partir d’un seul exemple.
- Documentez les schémas récurrents : notez quelles règles fonctionnent et lesquelles doivent être affinées.
- Ajoutez des exemples précis : incluez des exemples de format entre parenthèses.
- Affinez la rigueur : ajustez en fonction des schémas de surextraction/sous-extraction.
- Testez les cas limites : essayez des documents avec des champs manquants ou des mises en page inhabituelles.
Exemples d’améliorations
Avant :Comprendre le processus d’extraction
Fonctionnement de l’extraction basée sur des prompts
- Conversion du document : votre document est converti dans le format sélectionné (Annotated Text recommandé).
- Assemblage du prompt : votre rôle, le format de sortie, les règles des champs et les règles de rigueur sont combinés.
- Appel API : le prompt et le document sont envoyés au LLM via votre connexion.
- Traitement par le LLM : le LLM lit le document et extrait les données conformément à vos instructions.
- Réponse JSON : le LLM renvoie des données structurées au format JSON spécifié.
- Mise en correspondance des champs : Vantage met en correspondance la réponse JSON avec les champs de sortie que vous avez définis.
- Vérification : les numéros de ligne et les scores de confiance (le cas échéant) aident à en vérifier l’exactitude.
Utilisation des tokens et coûts
Facteurs influençant le coût :- Longueur du document : les documents plus longs utilisent plus de tokens.
- Complexité du prompt : des prompts détaillés augmentent le nombre de tokens.
- Choix du format : Annotated Text est généralement plus efficace qu’un PDF.
- Nombre de champs : plus il y a de champs, plus les prompts sont longs.
- Utilisez un langage concis, mais clair, dans les prompts.
- Évitez de dupliquer les instructions.
- Supprimez les exemples inutiles.
- Envisagez de regrouper les champs pour les données liées.
Bonnes pratiques
Rédaction de prompts
À faire :- ✅ Utilisez des consignes claires et à l’impératif (« Extract », « Recognize », « Omit »).
- ✅ Fournissez plusieurs variantes de libellé pour chaque champ.
- ✅ Incluez des exemples de format entre parenthèses.
- ✅ Précisez ce qu’il ne faut PAS extraire (exclusions).
- ✅ Numérotez vos règles pour en faciliter la référence.
- ✅ Utilisez une terminologie cohérente tout au long du document.
- ❌ Utiliser des instructions vagues (« récupérer le nom »).
- ❌ Supposer que le LLM connaît les conventions propres au domaine.
- ❌ Rédiger des phrases trop longues et trop complexes.
- ❌ Vous contredire d’une section à l’autre.
- ❌ Omettre les règles de rigueur.
Définitions des champs
Consignes pour bien définir les champs :- Commencez par les motifs de reconnaissance (libellés alternatifs).
- Spécifiez le format exact à préserver.
- Fournissez des indications d’emplacement (position habituelle).
- Précisez à qui se rapporte la donnée (fournisseur ou client).
- Indiquez comment gérer les valeurs sur plusieurs lignes.
- Faites référence aux champs connexes pour éviter toute confusion.
Stratégie de test
- Commencez par des documents simples : testez d’abord l’extraction de base.
- Élargissez aux variantes : essayez différentes mises en page et différents formats.
- Testez les cas limites : champs manquants, positions inhabituelles, correspondances multiples.
- Documentez les échecs : conservez des exemples de cas où l’extraction échoue.
- Procédez de manière systématique : modifiez un seul élément à la fois.
Optimisation des performances
Pour la rapidité :- Gardez les prompts concis.
- Utilisez le format Annotated Text.
- Limitez le nombre de champs par activité.
- Envisagez de diviser les documents complexes.
- Définissez des règles de champ détaillées.
- Incluez des exemples de formats.
- Ajoutez des règles de rigueur strictes.
- Testez avec divers échantillons de documents.
- Optimisez la longueur du prompt.
- Utilisez des formats de document efficaces.
- Mettez les résultats en cache lorsque cela est pertinent.
- Surveillez l’utilisation des tokens dans le tableau de bord du fournisseur de LLM.
Dépannage
Problèmes d’extraction
Problème : Les champs sont vides alors que les données sont bien présentes. Solutions :- Vérifiez que le libellé du champ correspond exactement.
- Vérifiez que les données se trouvent bien dans le format de document sélectionné.
- Ajoutez davantage de variantes de libellés aux motifs de reconnaissance.
- Réduisez temporairement la rigueur pour voir si le LLM les détecte.
- Vérifiez si la qualité du document affecte l’OCR/l’extraction de texte.
- Renforcez les spécifications côté fournisseur.
- Ajoutez des exclusions explicites pour les données du client/de l’acheteur.
- Fournissez des indications d’emplacement (par ex. : « haut du document », « section de l’émetteur »).
- Incluez des exemples d’extraction correcte et incorrecte.
- Spécifiez explicitement le format de la séquence d’échappement (
\n). - Fournissez des exemples de sortie multiligne correcte.
- Vérifiez que le format du document préserve les sauts de ligne.
- Ajoutez l’instruction : « Préserver les sauts de ligne d’origine à l’aide de
\n».
- Insistez sur « verbatim » et « exactement tel qu’imprimé ».
- Ajoutez une règle de rigueur : « Aucune normalisation ni inférence ».
- Fournissez des exemples précis montrant la conservation de la mise en forme.
- Incluez des exemples négatifs : « Pas “12-34-56”, conserver “12 34 56” ».
Problèmes de performance
Problème : L’extraction est trop lente. Solutions :- Passez au format Annotated Text si vous utilisez un PDF.
- Simplifiez le prompt sans perdre d’instructions essentielles.
- Réduisez la résolution du document si les images sont très volumineuses.
- Vérifiez l’état du fournisseur de LLM et ses limites de requêtes.
- Envisagez d’utiliser un modèle plus rapide pour les documents simples.
- Renforcez les règles de rigueur.
- Rendez les instructions plus précises et sans ambiguïté.
- Ajoutez davantage d’exemples de format.
- Réduisez la complexité du prompt, qui pourrait donner lieu à des interprétations.
- Testez avec des paramètres de température plus élevés (si disponibles dans la connexion).
- Optimisez la longueur du prompt.
- Utilisez Annotated Text à la place du PDF.
- Traitez les documents par lots pendant les heures creuses.
- Envisagez d’utiliser des modèles plus petits et moins chers pour les documents simples.
- Surveillez et configurez des alertes budgétaires dans le tableau de bord du fournisseur de LLM.
Techniques avancées
Extraction conditionnelle
Vous pouvez indiquer au LLM d’extraire certains champs uniquement si certaines conditions sont réunies :Prise en charge multilingue
L’extraction basée sur des prompts fonctionne bien avec les documents multilingues :Règles de validation
Ajoutez une logique de validation à vos prompts :Relations entre les champs
Spécifiez comment les champs sont liés entre eux :Limites et considérations
Fonctionnalités actuelles
Pris en charge :- ✅ Extraction de champs au niveau de l’en-tête
- ✅ Valeurs sur une seule ligne ou sur plusieurs lignes
- ✅ Plusieurs champs par document
- ✅ Logique d’extraction conditionnelle
- ✅ Documents multilingues
- ✅ Mises en page de document variables
- ⚠️ Extraction de tableaux (selon l’implémentation)
- ⚠️ Structures complexes imbriquées
- ⚠️ Très grands documents (limites de tokens)
- ⚠️ Traitement en temps réel (latence de l’API)
- ⚠️ Résultats déterministes garantis
Quand utiliser l’extraction basée sur des prompts
Pour savoir dans quels cas l’extraction basée sur des prompts est adaptée et quand il est préférable de privilégier l’extraction traditionnelle, consultez Quand utiliser les LLM.Intégration avec les Skills de document
Utilisation des données extraites
Une fois l’extraction terminée, les données des champs sont disponibles dans l’ensemble de votre Compétence de document :- Activités de validation : appliquez des règles métier aux valeurs extraites.
- Activités de script : traitez ou transformez les données extraites.
- Activités d’export : envoyez les données vers des systèmes externes.
- Interface de relecture : vérification manuelle des champs extraits.
Combiner avec d’autres activités
L’extraction basée sur des prompts peut être utilisée avec d’autres activités :Mise en correspondance des champs
Les champs JSON extraits sont automatiquement mis en correspondance avec les champs de sortie que vous avez définis :"FieldName": "Vendor.Name"→ Correspond au champ de sortieVendor.Name.- La hiérarchie des champs est conservée dans la structure de sortie.
- Les numéros de ligne facilitent la vérification et le dépannage.
Résumé
Vous avez réussi à :- ✅ Créé une activité d’extraction basée sur des prompts.
- ✅ Configuré une connexion LLM.
- ✅ Rédigé un prompt d’extraction complet avec rôle, format et règles.
- ✅ Sélectionné le format de document optimal (Annotated Text).
- ✅ Appliqué des règles de rigueur pour la qualité des données.
- ✅ Testé l’extraction et examiné les résultats.
- ✅ Appris les bonnes pratiques de l’ingénierie de prompts.
- L’extraction basée sur des prompts utilise des instructions en langage naturel.
- Le format Annotated Text fournit les meilleurs résultats.
- Des prompts clairs et précis produisent une extraction cohérente.
- Les règles de rigueur empêchent les hallucinations et maintiennent la qualité des données.
- Des tests et ajustements itératifs améliorent la précision.
Étapes suivantes
- Testez avec des documents variés : validez sur différentes mises en page et variantes.
- Affinez vos prompts : améliorez-les en continu en fonction des résultats.
- Surveillez les coûts : suivez l’utilisation des tokens dans le tableau de bord de votre fournisseur LLM.
- Optimisez les performances : peaufinez les prompts pour gagner en rapidité et en précision.
- Explorez l’extraction de tableaux : testez l’extraction des lignes d’articles (si prise en charge).
- Intégrez à des workflows : combinez avec d’autres activités pour un traitement complet.
Ressources supplémentaires
- Documentation Advanced Designer d’ABBYY Vantage : https://docs.abbyy.com
- Guide de configuration des connexions LLM : Configurer les connexions LLM.
- Bonnes pratiques d’ingénierie de prompts : Consultez la documentation de votre fournisseur de LLM.
- Support : Contactez le support ABBYY pour obtenir une assistance technique.
