Aller au contenu principal

Saisie de formulaire (mode de l'agent)

Un nœud Agent IA en mode Saisie de formulaire remplit les champs saisissables d'un formulaire PDF : demande d'adhésion, CERFA, fiche d'ouverture de compte… Relié à la Sortie formulaire PDF, il fait du pipeline un portfolio de formulaire, qui renvoie le PDF reçu avec ses champs remplis.

Les valeurs viennent de quatre sources :

  • les documents supports joints au job : fiche client, pièce d'identité, Kbis, CV… ;
  • la base de connaissances de l'agent, si un nœud RAG est relié à sa patte « RAG » ;
  • ses outils : connecteurs MCP, compétences, paquets HNS ;
  • ses agents experts, qu'il interroge avant la saisie.

Un portfolio de formulaire se câble ainsi :

Document support ─┐
▼ (support)
Document à annoter → Agent (Saisie de formulaire) → Sortie formulaire PDF
▲ experts
Agent (Expert consultable)

Le document à annoter est le formulaire, vierge ou partiellement rempli. Pour un scan ou une photo parmi les documents supports, placez un nœud OCR sur leur flux.

Ports​

  • Entrée (gauche, type contenu) : le formulaire. Une seule arête entrante. Un Filtre de pages peut se placer avant : les champs des pages écartées ne sont pas touchés.
  • Sortie « formulaire » (droite) : se relie uniquement à la Sortie formulaire PDF.
  • Compétences, RAG, MCP, experts (bas) : les outils et sources de l'agent.

Configuration​

  • Agent : l'agent du Designer qui remplit. Son rôle, son objectif et ses contraintes sont ses consignes de saisie : correspondances entre sources et champs, valeurs fixes (« Lieu : Paris »), formats attendus (« dates au format JJ/MM/AAAA »), cadres à laisser vides. Un même agent sert dans tous les pipelines où il est utilisé.
  • Modèle IA : surcharge optionnelle du modèle de l'agent. Évitez les modèles qui raisonnent avant de répondre (qwen3, gemma-4…) sauf à leur donner une limite de sortie large (voir Limites).
  • Lecture du document : comment le modèle situe chaque champ dans le formulaire.
    • Texte extrait (par défaut) : la mise en page de chaque page, avec un repère [F3] à l'emplacement de chaque champ. Fonctionne avec tous les modèles, c'est le moins cher.
    • Images des pages : chaque page rendue en image, les champs encadrés en rouge et numérotés. Utile quand la mise en page est complexe (cases dispersées, tableaux sans texte). Il faut un modèle qui lit les images.
    • Texte + images : les deux.
  • Réécrire les champs déjà remplis : décoché par défaut, un champ déjà rempli dans le PDF reçu est conservé tel quel et n'est pas demandé au modèle. Coché, tous les champs sont redemandés, et le modèle voit leur valeur actuelle.
  • Utiliser les documents supports : coché par défaut dans ce mode.
  • Boucle d'exécution : les budgets de la phase de recherche (nombre de tours, durée, jetons).

Réglages avancés​

  • Pages par fenêtre : vide, le formulaire part en un seul appel s'il tient dans la fenêtre de contexte du modèle, avec au plus 60 champs par appel. Au-delà, il est traité par pages consécutives, et chaque appel voit les valeurs déjà saisies plus haut pour rester cohérent.
  • Passes de correction (défaut 2) : nombre de fois où une réponse non conforme est renvoyée au modèle avec la liste des écarts, par exemple une option qui n'existe pas ou une case ni cochée ni décochée. 0 désactive la correction. Chaque passe est facturée.
  • Taille des images (lecture par images) : plus grand côté des pages envoyées, 1568 px par défaut.

Déroulement​

  1. Lecture du formulaire : champs saisissables, libellés, options, longueurs maximales.
  2. Sources : les documents supports, plus les extraits de la base de connaissances obtenus avec une requête construite à partir des libellés des champs à remplir.
  3. Recherche, seulement si l'agent a des outils ou des experts. L'agent reçoit le formulaire, la liste des champs et les sources, puis utilise ses outils pour trouver les valeurs manquantes. Il termine par une synthèse « F3 : valeur — source ». Cette synthèse et les réponses des outils rejoignent les sources.
  4. Saisie : l'agent donne la valeur de chaque champ, en sortie structurée, avec les mêmes garanties que l'Extraction JSON.
  5. Écriture dans le PDF, modifiable ou aplati selon la Sortie formulaire PDF.

Sans aucune source (ni document support, ni base de connaissances, ni outil, ni consigne), l'agent ne lance aucun appel et le signale.

Comment le modèle comprend le formulaire​

Les noms techniques des champs sont souvent muets (Text12, topmostSubform[0].Page1[0].f1_03[0]). C'est le texte imprimé autour qui dit à quoi sert un champ. En lecture Texte extrait, le modèle reçoit donc la page telle qu'elle se lit, avec un repère par champ :

Nom de naissance : [F1] Prénom(s) : [F2]
Date de naissance (JJ/MM/AAAA) : [F3]
Sexe : [F4=Choice1] Masculin [F4=Choice2] Féminin
Situation : [F8 ▾]
Prénom Date de naissance Ayant droit
[F9] [F10] [F11 ☐]

En plus de cette mise en page, il reçoit pour chaque champ :

  • son type : zone de texte, case à cocher, bouton radio ou liste ;
  • les options proposées ;
  • la longueur maximale ;
  • le libellé voisin (le texte à sa gauche, à sa droite pour une case, ou l'en-tête de sa colonne dans un tableau) ;
  • l'infobulle et le nom technique.

Le modèle répond champ par champ :

  • zone de texte : le texte à saisir. Il est ramené à une ligne si la zone n'est pas multiligne, et tronqué à la longueur maximale ;
  • case à cocher : cochée, décochée, ou rien quand les sources ne permettent pas de décider ;
  • bouton radio et liste : une des options proposées, sinon rien ;
  • rien (null) quand l'information manque. Le champ reste vide : l'agent n'invente pas.

Champs pris en charge​

ChampRempliRemarque
Zone de texte (simple ou multiligne)✓longueur maximale respectée
Case à cocher✓état « coché » propre au formulaire (Yes, On, Oui…)
Boutons radio✓une option du groupe
Cases à cocher d'un même groupe (« Européenne » / « Autre pays », « oui » / « non »)✓lues comme un choix : l'agent répond par le texte imprimé à côté de la case, et c'est cette case-là qui est cochée
Liste déroulante ou liste de choix✓saisie libre si la liste l'autorise
Champ en lecture seule—ignoré, signalé dans la trace
Signature, bouton d'action, mot de passe—ignorés, signalés dans la trace

Les formulaires XFA dynamiques (sans champs AcroForm) ne sont pas pris en charge : l'agent le signale. Un formulaire hybride (AcroForm + XFA) est rempli, et sa couche XFA est retirée pour que toutes les visionneuses affichent les valeurs saisies.

Dans la trace​

Le panneau de test montre :

  • les outils et experts proposés à l'agent, ses appels d'outils et ses requêtes à la base de connaissances ;
  • la synthèse de sa recherche ;
  • pour chaque champ, sa clé, sa page, son libellé et la valeur saisie (☑ / ☐ pour une case, — quand le champ reste vide). Une réponse inutilisable est signalée sous la valeur, par exemple « Italie n'est pas une option du champ » ou « tronqué à 10 caractères » ;
  • une entrée par expert consulté, avec ses questions et ses réponses.

Intercepteurs​

Les intercepteurs s'appliquent à la mise en page du formulaire, aux documents supports et aux extraits de la base de connaissances. Un IBAN masqué par un intercepteur reste donc masqué : le modèle ne peut pas le recopier. Une réponse qui contient le texte de remplacement (<REDACTED>…) n'est pas écrite. Le champ reste vide et la trace indique « valeur masquée par un intercepteur ».

En lecture par images, comme pour l'extraction JSON, une donnée à masquer présente sur une page du formulaire bloque le job : une image ne se masque pas.

Limites​

  • Seuls les PDF sont acceptés comme document principal d'un portfolio de formulaire.
  • Un PDF protégé par un mot de passe d'ouverture ne peut pas être rempli. Un PDF qui n'a que des restrictions d'usage est rempli, et le résultat n'est plus chiffré.
  • Modèles de raisonnement : si la réponse est tronquée alors qu'elle tient largement dans la limite de sortie du modèle, l'agent s'arrête et le signale au lieu de relancer l'appel. Augmentez la limite de sortie du modèle (Admin → Modèles IA) ou choisissez un modèle sans raisonnement.
  • L'agent de saisie ne peut pas tourner dans une boucle de découpage : il lit le formulaire entier.
  • Un portfolio de formulaire ne figure ni dans le Benchmark ni parmi les pipelines proposés dans Microsoft Teams, et ne peut pas être appelé depuis un nœud Pipeline.