Créer un graphe simple

Définissez un graphe avec des nœuds de base, enchaînez les étapes et exécutez votre premier workflow automatisé.

Dans ce tutoriel, nous allons voir comment :

  1. Définir un contexte pour stocker des données.

  2. Créer des nœuds qui exécutent des actions spécifiques.

  3. Construire un graphe pour connecter ces nœuds.

  4. Exécuter le graphe et observer le résultat.


Définition du contexte

Dans GraphFlow, un contexte est un espace de stockage partagé entre tous les nœuds du graphe. Nous allons utiliser Zod pour définir un schéma de données qui spécifie quelles informations seront manipulées par nos nœuds.

import { GraphFlow, GraphNodeConfig } from "@ai.ntellect/core";
import { z } from "zod";

// Définition du contexte avec un schéma Zod
const schema = z.object({
  input: z.string(),
  processed: z.string().optional(),
  result: z.string().optional(),
});Explication :
  • input : La donnée initiale à traiter.

  • processed : La version modifiée de input.

  • result : Le résultat final après transformation.


Création des nœuds

Un nœud est une unité d’exécution dans GraphFlow. Chaque nœud possède :

  • Un nom (ex : retrieveData).

  • Une fonction execute qui effectue une action sur le contexte.

  • Une liste next pour définir quels nœuds seront exécutés après.

1. Récupérer une donnée

Le premier nœud stocke une donnée initiale dans context.input :

2. Transformer la donnée

Ce nœud transforme context.input en majuscules et stocke le résultat dans context.processed :

3. Afficher le résultat

Le dernier nœud affiche le résultat final dans la console :


Construction du graphe

Nous devons maintenant assembler ces nœuds dans un graphe :

Explication :

  • Le nom du graphe est "SimpleGraph".

  • Les nœuds sont listés dans nodes.

  • Le contexte initial ne contient qu’une chaîne vide (input: "").

  • entryNode indique que l'exécution commence par retrieveData.


Exécution du graphe

Enfin, nous allons instancier GraphFlow et exécuter notre graphe :


Code complet

Voici le code complet du tutoriel, regroupé en un seul fichier :

Ce fichier peut être exécuté tel quel pour tester le fonctionnement du graphe.

Résultat attendu

Lorsque l'on exécute ce script, voici ce qui s'affichera dans la console :

Récapitulatif

Ce que nous avons appris :

  • Définir un contexte avec Zod pour structurer les données.

  • Créer des nœuds (retrieveData, processData, logResult).

  • Connecter les nœuds dans un graphe exécutable.

  • Lancer et observer l'exécution du graphe.

Ce tutoriel vous donne une base solide pour explorer des graphes plus complexes, incluant conditions, parallélisation et interopérabilité avec des services externes.

Prochaines étapes :

  • Ajouter un nœud conditionnel pour modifier le flux d’exécution.

  • Intégrer une interaction avec une API externe.

  • Stocker et récupérer des données avec un module mémoire.


Mis à jour