HNS
Met un paquet HNS au service d'un Agent IA ou d'un Superviseur :
- il importe un fichier — joint au chat par l'utilisateur, ou choisi dans un dossier externe (SharePoint, S3) — par exemple un catalogue Excel, dans des données partagées par tous les utilisateurs du pipeline (une base SQLite, typiquement) ;
- il donne à l'agent les outils du paquet pour interroger ces données : des fonctions typées (
chiffrer_commande,comparer_fournisseurs…) qui calculent à partir de la base, au lieu de laisser le modèle « lire » un tableur.
C'est la bonne approche dès qu'une réponse dépend de calculs exacts sur des données structurées : un prix qui dépend d'une date, d'une catégorie, d'un nombre de personnes et de disponibilités ne se retrouve pas fiablement par une recherche dans du texte.
Ports
- Entrée « Documents supports » (gauche) — à relier au nœud Document support. C'est ce qui permet à un fichier joint au chat de mettre à jour les données. Sans ce lien, le nœud n'importe jamais rien : les outils lisent les données déjà enregistrées.
- Sortie « erreur » (droite) — empruntée quand le script du paquet échoue (voir Quand le script échoue). À relier à un Message d'erreur puis à la Sortie erreur.
- Sortie « MCP » (haut) — à relier à la patte « MCP » d'un Agent IA ou d'un Superviseur. Un nœud relié au Superviseur donne ses outils à tous les sous-agents.
Le même nœud Document support peut alimenter à la fois l'entrée du chat et le nœud HNS.
Configuration
- Paquet — parmi ceux importés dans Manager → Outils → Paquets HNS. Le paquet doit avoir été approuvé par un administrateur ; le nœud l'indique sinon. C'est sa dernière version importée qui s'exécute.
- Outils — décochez un outil pour le masquer à l'agent.
- Fichier source (dossier externe) — un dossier externe puis l'un de ses fichiers, parmi ceux que le paquet accepte. Il est relu à chaque lancement du pipeline et réimporté s'il a changé (voir Fichier d'un dossier externe). Vérifier maintenant fait cette vérification tout de suite, une fois le pipeline enregistré.
- Droits d'écriture — les équipes et les personnes autorisées à remplacer les données en joignant un fichier au chat. Elles sont choisies parmi les équipes auxquelles le pipeline est affecté. Le fichier d'un autre utilisateur est ignoré, et l'agent lui explique pourquoi.
- Données — la version en vigueur (date, fichier source, informations renvoyées par l'import), l'historique des versions avec Rendre courante pour revenir en arrière, le bouton Importer un fichier maintenant et les derniers imports (réussis, refusés, en échec). Enregistrez le pipeline avant de gérer les données d'un nouveau nœud.
- Essayer un outil — appelle un outil sur les données en vigueur, avec des arguments JSON.
Ce qui se passe à chaque message
- Un nouveau fichier attendu est joint (bon type, bon nom) par un rédacteur : les étapes d'import du paquet s'exécutent dans le bac à sable, une nouvelle version des données devient la version en vigueur pour tout le monde, et l'agent est informé de la mise à jour.
- Pas de nouveau fichier : rien ne s'exécute. L'agent utilise les données en vigueur — ou, si aucun import n'a encore eu lieu, les données initiales livrées avec le paquet.
- Le même fichier (déjà importé, ici ou dans une autre conversation) n'est jamais réimporté. Revenir à une ancienne version se fait uniquement par Rendre courante.
- L'import échoue (fichier mal formé…) : le job s'arrête avec le message du script (voir ci-dessous). Les données précédentes restent en vigueur, et le même fichier n'est pas retenté à chaque message.
Le fichier importé n'est pas transmis à l'agent sous forme de texte : il ne sert qu'à l'import.
:::note Panneau de test Dans le panneau de test du pipeline, un fichier joint est importé pour le test seulement : les données ne sont pas enregistrées. Pour mettre à jour les données réelles depuis l'éditeur, utilisez Importer un fichier maintenant. :::
Fichier d'un dossier externe
Quand les données de référence vivent déjà dans un dossier partagé — une grille tarifaire tenue à jour sur SharePoint, par exemple —, inutile de la joindre au chat : choisissez-la dans la configuration du nœud. Le dossier doit avoir été déclaré par un administrateur dans Administration → Connexions externes → Dossiers externes (voir Configuration d'un dossier SharePoint).
À chaque lancement du pipeline — message de chat, document analysé, extraction, y compris quand le pipeline tourne comme sous-pipeline —, avant tout le reste, le fichier est relu et son empreinte SHA-256 comparée à celle de la vérification précédente :
- inchangé : rien ne s'exécute, les données en vigueur restent — y compris après un Rendre courante ou un fichier plus récent joint par un rédacteur ;
- modifié : les étapes d'import s'exécutent et une nouvelle version des données entre en vigueur pour tout le monde ; si son contenu est celui d'une version encore conservée, cette version est simplement remise en vigueur ;
- le paquet a été mis à jour : le fichier est réimporté avec la nouvelle version du paquet ;
- illisible (dossier injoignable, fichier déplacé ou supprimé) : le pipeline continue avec les données en vigueur, et l'agent en est informé.
Les droits d'écriture ne s'appliquent pas à ce fichier : il a été choisi par qui peut modifier le pipeline, et il est mis à jour par qui peut écrire dans le dossier. Un fichier joint au chat par un rédacteur reste possible : il remplace les données jusqu'à la prochaine modification du fichier du dossier.
Un dossier externe utilisé par un nœud HNS ne peut pas être supprimé.
:::tip Lancement de nombreux documents Quand plusieurs documents sont lancés en même temps sur le pipeline, un seul import a lieu : les autres jobs attendent qu'il se termine, puis trouvent le fichier inchangé. :::
Quand le script échoue
Si une étape d'import lève une erreur — le développeur du paquet y écrit, pour l'utilisateur, ce qui ne va pas (« aucun produit dans la grille », « onglet Produits absent »…) —, ou si elle ne peut pas s'exécuter (bac à sable indisponible, délai dépassé), le message de l'utilisateur n'est pas traité : le job s'arrête et affiche le message du script.
- Sortie « erreur » non reliée : le job passe en « Échec » avec le message du script.
- Sortie « erreur » reliée à un Message d'erreur puis à la Sortie erreur : le message de ce nœud remplace celui du script (laissé vide, c'est celui du script qui s'affiche), et le job passe en « Refusé », non facturé.
Les données précédentes restent en vigueur. Le détail technique (erreur, journal du script) est dans la trace du job. Un fichier de dossier externe en échec arrête chaque lancement avec le même message tant qu'il n'a pas été corrigé dans le dossier — sans réexécuter le script ; seule une indisponibilité passagère du bac à sable est retentée. Les outils, eux, ne font pas échouer le job : l'erreur d'un outil revient à l'agent, qui l'explique.
Ce que l'agent reçoit
- les outils du paquet, avec leurs paramètres typés ;
- les consignes du paquet (par exemple : « ne donne jamais un prix de mémoire ») ;
- l'état des données : version, date d'import, fichier source et informations utiles comme la date de mise à jour des disponibilités.
Le détail des nœuds du panneau de test montre l'import (fichier, version produite, erreur et journal du script en cas d'échec) et chaque appel d'outil, étiqueté « Paquet ».
Comme un connecteur MCP, attacher un nœud HNS active la boucle d'outils de l'agent : il effectue des appels supplémentaires au modèle, visibles dans la trace et dans les coûts IA.