Utilisation dans les workflows
Lisez des objets typés, parcourez des liens et déclenchez des actions depuis un workflow — les mêmes blocs que tout autre agent utilise.
Les workflows accèdent à l'ontologie via trois outils, tous exposés par le produit scrydon:ontology. Ils apparaissent dans le sélecteur Outils de tout bloc Agent.
Les trois outils
| Outil | Rôle |
|---|---|
Get Ontology Object | Récupérer un objet typé unique par son id. |
Traverse Ontology Links | Étant donné une instance et un type de lien, renvoyer les instances connectées. |
Run Ontology Action | Déclencher une action typée sur une instance. |
Chaque outil est typé — le LLM voit les types d'objets et les types de liens que votre organisation a définis, et peut les appeler par leur nom.
Get Ontology Object
Input:
type: "RegulatedEntity"
id: "e1a2b3c4-0001"
Output:
instance: { id, legalName, riskClassification, headquartersCountry, … }
provenance: { bindingId, materializedAt, dlpLabels }Les propriétés que l'appelant n'a pas l'habilitation de voir sont masquées selon la stratégie de masquage de la colonne (redact, null, deny). La sortie porte également la provenance de la ligne source afin que l'agent puisse citer l'origine de la réponse.
Traverse Ontology Links
Input:
fromType: "RegulatedEntity"
fromId: "e1a2b3c4-0001"
linkType: "supervisedBy"
page: 1
pageSize: 50
Output:
instances: [ { id, … } ]
nextPage: 2 // or null when exhaustedChaque instance connectée est un objet entièrement typé (même projection que Get Object). Le masquage et les filtres de lignes s'appliquent.
Run Ontology Action
Input:
type: "AssignAsset"
input: { assetId, userId }
idempotencyKey?: "..."
Output:
result: { assetId, ownerId, assignedAt }
// or error: { kind: "PreconditionFailed", rule: "asset-unassigned", … }Le dispatch d'action passe par le point de décision de politique. Les échecs sont renvoyés sous forme d'erreurs typées sur lesquelles l'agent peut se brancher.
Le bloc Agent
Dans un bloc Agent, attacher les outils scrydon:ontology donne à l'agent accès aux trois. Le LLM voit les types d'objets et les types de liens comme partie intégrante du schéma d'outils ; il peut planifier des appels comme « trouver le régulateur qui supervise Acme Holdings » sans noms de tables codés en dur.
Patterns courants
Réponse ancrée dans la récupération
Utilisateur : "Quelle est la classification de risque de Neptune Capital ?"
Agent → Get Ontology Object(type=RegulatedEntity, lookup=Neptune Capital)
Agent → renvoie la classification de risque + citation de provenanceTraversée multi-sauts
Utilisateur : "Quels régulateurs supervisent les entités à haut risque en Belgique ?"
Agent → Rechercher RegulatedEntity (filtre : country=Belgium, risk=high)
Agent → Pour chacune : Traverser le lien "supervisedBy"
Agent → Agréger les régulateurs distinctsAction avec garde-fous
Utilisateur : "Assigner l'actif A-123 à Maya"
Agent → Run Ontology Action(AssignAsset, { assetId: A-123, userId: Maya })
Action → PreconditionFailed: asset-unassigned (l'actif est actuellement assigné à John)
Agent → signale l'échec, demande à l'utilisateur de confirmer la réassignationCe que l'agent ne voit pas
- Les noms de colonnes bruts. L'agent opère sur des propriétés typées (
riskClassification), pas sur des colonnesrisk_class. - Les données des autres tenants. L'autorisation est appliquée à chaque appel d'outil.
- Les valeurs masquées. Les propriétés que l'utilisateur appelant ne peut pas voir sont renvoyées masquées.
- Les actions que l'utilisateur appelant ne peut pas déclencher. Le schéma d'outils est filtré aux actions pour lesquelles l'appelant dispose d'autorisations.
Voir aussi
- Types d'objets — ce que l'agent lit.
- Types de liens — ce que la traversée parcourt.
- Types d'actions — ce que le dispatch exécute.
- Blocs → Agent — où les outils sont attachés.