activities
latest
false
UiPath logo, featuring letters U and I in white
Activités Document Understanding
Last updated 26 nov. 2024

Extraction de données basée sur des ancres à l'aide de l'Extracteur de formulaires intelligent

L'exemple ci-dessous explique comment extraire des données d'un formulaire pouvant également inclure du texte manuscrit. Le scénario de cas d'utilisation suivant explique comment extraire des données d'une commande d'achat.

Il présente des activités telles que Numériser le document ( Digitize Document), Étendue de l'extraction de données ( Data Extraction Scope) ou Extracteur de formulaires intelligents ( Intelligent Form Extractor). Vous pouvez trouver ces activités dans le package UiPath.IntelligentOCR.Activities .

Création du workflow

Les packages suivants doivent être installés avant de créer le workflow ci-dessous :

  • UiPath.DocumentProcessing.Contracts.Activities
  • UiPath.IntelligentOCR.Activities
  • UiPath.OCR.Activities
  • UiPath.OCR.Contracts
  • UiPath.WebApi.Activities

Steps:

  1. Ouvrez Studio et démarrez un nouveau Processus.
  2. Ajoutez un conteneur Séquence dans le champ concepteur de workflow, nommez-le Sequence1 et créez la variable suivante :
    Tableau 1. Variables à créer
     

    Types de variables

    Valeur par défaut

    item

    Chaîne de caractères (string)

    S/O

    classificationResult

    ClassificationResult[]

    S/O

    outputFileName

    ValeurGénérique

    S/O
  3. Ajoutez un autre conteneur Séquence dans le champ Concepteur de workflow après le premier, nommez-le Sequence2 et créez les variables indiquées dans la table suivante :
    Tableau 2. Variables à créer
     

    Types de variables

    Valeur par défaut

    text

    Chaîne de caractères (string)

    S/O

    taxonomy

    DocumentTaxonomy

    S/O

    dom

    Document

    S/O

    documentPath

    Chaîne de caractères (string)

    S/O

    classificationResult2

    ClassificationResult[]

    S/O

    outputFileName2

    ValeurGénérique

    S/O
  4. Ajoutez une activité Message Box à l’intérieur de la séquence.
    • Dans le panneau Propriétés , sélectionnez l'option OK dans la liste déroulante Boutons . Ajoutez le message suivant dans le champ Texte : « Sélectionnez un fichier PDF ».
  5. Cochez la case de l’option PlusHaut. La boîte de message se retrouve au premier plan.
  6. Ajoutez une activité Sélectionner un fichier (Select File) après l’activité Zone de message (Message Box).
    • Dans le panneau Propriétés, ajoutez le texte suivant dans le champ Filtre : Pdf files (*.pdf)|*.pdf
    • Ajoutez la variable documentPath dans le champ FichierSélectionné .
  7. Ajoutez une activité Affecter (Assign) après l’activité Sélectionner un fichier (Select File).
    • Ajoutez la variable outputFileName2 dans le champ À .
    • Ajoutez l’expression ".temp/" + Path.GetFileName(documentPath) dans le champ Valeur.
  8. Ajoutez une activité Désérialiser JSON (Deserialize JSON) après l’activité Affecter (Assign).
    • Ajoutez l’expression File.ReadAllText("DocumentProcessing axonomy.json") dans le champ Chaîne JSON.
    • Dans le panneau Propriétés , sélectionnez l'option UiPath.DocumentProcessing.Contracts.Taxonomy.DocumentTaxonomy dans la liste déroulante TypeArgument .
    • Ajoutez la variable taxonomy dans le champ ObjetJSON.
  9. Ajoutez une activité Numériser le document (Digitize Document) après l’activité Désérialiser JSON (Deserialize JSON).
    • Dans le panneau Propriétés, ajoutez la valeur 1 dans le champ LigneTableau.
    • Ajoutez la variable documentPath dans le champ CheminDocument .
    • Ajoutez la variable dom dans le champ ModèleObjetDocument.
    • Ajoutez la variable text dans le champ TexteDocument.
    • Ajoutez le moteur UiPath® Document OCR à l’intérieur de l’activité.
    • Ajoutez votre clé API dans le champ Clé API.
    • Ajoutez l'expression "https://du.uipath.com/ocr" dans le champ Point de terminaison.
  10. Ajoutez une activité Écrire un fichier texte (Write Text File) après l’activité Numériser le document (Digitize Document).
    • Ajoutez l'expression JsonConvert.SerializeObject(dom) dans le champ Texte.
    • Ajoutez l’expression outputFileName2 + ".dom.json" dans le champ NomFichier.
  11. Ajoutez une autre activité Écrire un fichier texte (Write Text File) après l’activité Écrire un fichier texte (Write Text File).
    • Ajoutez la variable text dans le champ Texte.
    • Ajoutez l’expression outputFileName2 + ".text.txt" dans le champ NomFichier.
  12. Faites glisser un autre conteneur Séquence dans le champ concepteur de workflow, nommez-le Sequence3 et créez la variable suivante :
    Tableau 3. Variables à créer
     

    Types de variables

    Valeur par défaut

    extractionResult

    RésultatExtraction

    S/O

    validatedResults

    RésultatExtraction

    S/O

    doubleValidatedResults

    RésultatExtraction

    S/O

    dataset

    JeuDonnées

    S/O

    i

    Int32

    S/O
  13. Ajoutez une activité Étendue d’extraction de données (Data Extraction Scope) à l’intérieur de Sequence3.
    • Dans le panneau Propriétés , ajoutez la variable dom dans le champ ModèleObjetDocument .
    • Ajoutez la variable documentPath dans le champ CheminDocument .
    • Ajoutez la variable text dans le champ TexteDocument.
    • Ajoutez l'expression "All.Benchmarks.Invoice" dans le champ IDTypeDocument .
    • Ajoutez la variable taxonomy dans le champ Taxonomie.
    • Ajoutez la variable extractionResult dans le champ ExtractionResults .
  14. Ajoutez une activité Intelligent Form Extractor à l’intérieur de l’activité Data Extraction Scope .
    • Ajoutez votre clé API dans le champ CléAPI.
  15. Ajoutez une activité Écrire un fichier texte (Write Text File) après l’activité Étendue de l’extraction de données (Data Extraction Scope).
    • Ajoutez l'expression JsonConvert.SerializeObject(extractionResult) dans le champ Texte.
    • Ajoutez l’expression outputFileName2 + ".results.json" dans le champ NomFichier.
  16. Ajoutez une activité Présenter la station de validation (Present Validation Station) après l’activité Écrire un fichier texte (Write Text File).
    • Ajoutez la variable extractionResult dans le champ RésultatsExtractionAutomatique.
    • Ajoutez la variable dom dans le champ ModèleObjetDocument.
    • Ajoutez la variable documentPath dans le champ CheminDocument .
    • Ajoutez la variable text dans le champ TexteDocument.
    • Ajoutez la variable taxonomy dans le champ Taxonomie.
    • Ajoutez la variable validatedResults dans le champ RésultatsExtractionValidés.
  17. Ajoutez une activité Écrire un fichier texte (Write Text File) après l’activité Présenter la station de validation (Present Validation Station).
    • Ajoutez l'expression JsonConvert.SerializeObject(validatedResults) dans le champ Texte.
    • Ajoutez l’expression outputFileName2 + ".savedinVS.results.json" dans le champ NomFichier.
  18. Ajoutez une autre activité Écrire un fichier texte (Write Text File) après l’activité Écrire un fichier texte (Write Text File).
    • Ajoutez l'expression JsonConvert.SerializeObject(doubleValidatedResults) dans le champ Texte.
    • Ajoutez l’expression outputFileName2 + ".doubleSavedinVS.results.json" dans le champ NomFichier.
  19. Exécutez le processus. Le processus d'automatisation doit ouvrir la station de validation, extraire les données, les valider et les stocker dans le dossier de sortie.
Visitez le lien suivant pour télécharger l’exemple au format ZIP : Exemple.

Définir votre taxonomie

Vous avez créé votre workflow, défini toutes les variables et personnalisé toutes les activités. Il est maintenant temps de définir votre taxonomie. Visitez la page Charger la taxonomie pour en savoir plus sur la définition de votre propre taxonomie.

Créez votre taxonomie pour pouvoir extraire des informations d’une facture. Vous devez vous concentrer sur la création d’un type de document Facture contenant les champs indiqués dans le tableau suivant :

Tableau 4. Champs pour le type de document de facture
 

Type de champ

NonFacture

Text

Sous-total

Number

Taxe de vente

Number

Total

Number

Image 1. Vue d’ensemble de la taxonomie terminée avec les champs mentionnés précédemment

Création de votre modèle

Il est maintenant temps de créer le modèle du processus d’extraction. Consultez la page Charger la taxonomie pour découvrir comment créer un modèle.

Dans le cadre de cet exemple, configurez le modèle à l’aide des valeurs suivantes :
  • Type de document : facture.
  • Nom du modèle : exemple de facture.
  • Modèle de document : sélectionnez le fichier cible.
  • Moteur OCR : Microsoft OCR.
  • Langues : fr.
  • Profil : numérisation.
  • Échelle : 1.
Image 2. Illustration animée montrant un exemple de configuration du modèle

Définition des ancres dans le modèle

Les ancres sont une fonctionnalité très spéciale et utile à utiliser lorsque vous devez extraire des informations précises d’un document. En définissant une zone d'extraction avec une ancre, vous pouvez vous attendre à une grande précision dans l'extraction des données.

Une fois la taxonomie définie et le modèle créé, vous pouvez commencer à configurer le modèle en utilisant des ancres, ce qui signifie que la zone d'extraction est définie dans une boîte et que les ancres sont utilisées pour définir la position de la boîte.

Consultez la liste de conseils suivante concernant l’ancrage avant de commencer à ajouter des ancres à votre modèle :

  • La boîte d'ancrage doit être aussi grande que possible (hauteur, largeur) pour couvrir tout type de numéro de facture, long, court, gros caractères, etc.
  • Une zone d'extraction peut avoir autant d'ancres que nécessaire, mais une seule définie comme principale (la première).
  • Utilisez des ancres formées de plusieurs mots côte à côte.
  • L'ancre principale doit être aussi proche que possible de la zone d'extraction.
  • Les positions de la zone d'extraction et de l'ancre principale sont fixes dans le modèle, même lorsqu'elles sont appliquées à des documents différents. La seule chose qui peut varier est la distance entre l'ancre principale et les ancres secondaires.

Continuons à configurer le modèle et découvrons comment extraire des données à l’aide d’une ancre.

  1. Définissez la zone d’extraction :
    • Dans la zone droite de la Station de validation, sélectionnez Modes de sélection.
    • Sélectionnez Ancrer.
    • Commencez à sélectionner la zone souhaitée.
      Image 3. Illustration animée montrant comment définir la zone d’extraction

      Remarque :

      L'ancre principale doit contenir deux ou trois mots pour une grande précision et de meilleurs résultats dans le processus d'extraction.

      Sélectionnez plusieurs mots lorsque vous balisez une ancre en appuyant sur Ctrl et en sélectionnant les mots souhaités.

  2. Définissez l’ancre principale :
    1. Toujours dans le mode Ancre relatif à la sélection d’ancres, sélectionnez la zone souhaitée en tant qu’ancre principale.
    2. Sélectionnez la valeur d’extraction du champ souhaité.
      Image 4. Illustration animée montrant comment définir l’ancre principale

  3. Définissez les ancres secondaires :
    1. Veillez à rester dans le mode Ancre de sélection d’ancres et vérifiez que les sélections d’ancres principales soient bien activées.
    2. Sélectionnez les nouvelles zones des ancres secondaires.
    3. Sélectionnez les Options du champ souhaité, puis sélectionnez Modifier la valeur extraite.
      Image 5. Illustration animée montrant un exemple de définition d’ancres secondaires

Répétez le processus jusqu'à ce que vous ayez fini de définir toutes les zones d'extraction et d'ajouter toutes vos ancres. Une fois terminé, enregistrez le modèle.

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
Uipath Logo White
Confiance et sécurité
© 2005-2024 UiPath Tous droits réservés.