Aller au contenu principal

Workflow.tool()

La méthode .tool() ajoute un Tool comme étape déclarative. Les schémas d’entrée et de sortie propres au Tool s’appliquent ; la sortie de l’étape précédente doit donc satisfaire le schéma d’entrée du Tool. Utilisez .map() pour transformer les données s’ils ne correspondent pas.

Contrairement à l’encapsulation d’un Tool avec createStep(), .tool() enregistre une entrée déclarative dans le graphe du Workflow. Le Workflow devient ainsi portable : le même graphe peut être sérialisé et conservé comme Workflow dynamique.

Exemple d’utilisation
Lien direct vers Exemple d’utilisation

workflow.tool(testTool).commit();

Paramètres
Lien direct vers Paramètres

toolOrId:

Tool | string
Instance de Tool ou ID d’un Tool enregistré dans l’instance Mastra. Lorsqu’un ID est transmis, le Tool est résolu depuis le registre au moment de l’exécution.

options?:

{ retries?: number, scorers?: DynamicArgument<MastraScorers>, metadata?: StepMetadata }
Nombre de nouvelles tentatives, scorers et métadonnées au niveau de l’étape de Tool.

stepOptions?:

{ id?: string }
ID du site d’appel de l’étape dans le Workflow. Sa valeur par défaut est l’ID du Tool. Définissez-le lorsque le même Tool apparaît plusieurs fois dans un même Workflow.

Valeur renvoyée
Lien direct vers Valeur renvoyée

workflow:

Workflow
Instance de Workflow pour le chaînage de méthodes

Référencer un Tool par ID
Lien direct vers Référencer un Tool par ID

Transmettez une chaîne pour référencer un Tool enregistré sans l’importer. Le Tool doit être enregistré dans l’instance Mastra lorsque le Workflow s’exécute :

workflow.tool("lookup-customer", { retries: 2 }).commit();

Conserver les étapes de Tool
Lien direct vers Conserver les étapes de Tool

Les Workflows construits avec .tool() se sérialisent dans les mêmes entrées déclaratives que les Workflows dynamiques. Seuls retries et metadata effectuent un aller-retour via le stockage. Une option scorers dont la valeur est une fonction lève une erreur lorsque le Workflow est conservé.