Faire circuler les données
Les variables transmettent des informations d’un bloc à un autre : message utilisateur, réponse HTTP, instruction, réponse LLM, outils ou résultats d’outils.
Portées
| Portée | Durée | Exemples |
|---|---|---|
SYSTEM | Fournie par la plateforme à chaque exécution | userMessage, datetime, customParams |
USER | Liée à la personne connectée | userData.email, locale, timezone |
CONVERSATION | Conservée entre plusieurs messages | conversationHistory, informations collectées |
REQUEST | Limitée au parcours courant | documents.body, chatCompletion-1.content |
Utilisez REQUEST par défaut. Réservez CONVERSATION aux informations qui doivent survivre d’un tour à l’autre.
Variables globales
| Variable | Utilisation |
|---|---|
userMessage / query | Demande de l’utilisateur |
datetime, datetime.date, datetime.hour, datetime.minute | Date et heure courantes |
customParams | Paramètres transmis par une intégration web |
llmAppId, organizationId, workflowId | Identifiants de contexte |
workflowExecutionId, queryExecutionId | Identifiants d’exécution |
conversationHistory | Historique de la conversation |
userData | Objet décrivant l’utilisateur |
userData.email, name, givenName, familyName, userId | Attributs utilisateur courants |
userData.organizationId, attributes, iamProfiles | Organisation, attributs et profils IAM |
locale, timezone | Langue et fuseau horaire |
Sorties des blocs
Par défaut, une sortie s’écrit ainsi :
{{identifiantDuBloc.nomDeVariable}}Par exemple, {{http-1.body}} désigne le corps produit par http-1.
Si le bloc http-1 reçoit l’alias documents, la référence devient {{documents.body}}. Un alias facilite la lecture, mais doit rester unique.
| Bloc | Sorties principales |
|---|---|
| Message simple | message |
| Requête HTTP | body, metadata |
| Variables | Variables nommées directement |
| Condition | hasMatch, matchedIndex, nextStep |
| Instruction LLM | raw, metadata, messages, instruction, tools |
| Requête LLM | content, genericToolCalls, metadata |
| MCP - Liste d’outils | tools, toolServerRouting, metadata |
| MCP - Appel d’outils | metadata, toolCallResults |
Créer une variable
Le bloc Variables crée une valeur nommée directement :
| Portée | Nom | Valeur |
|---|---|---|
REQUEST | emailUtilisateur | {{userData.email}} |
La valeur est ensuite disponible via {{emailUtilisateur}}.
Évitez les espaces, accents, caractères spéciaux et doublons dans les noms.
Écrire une référence
Dans les champs compatibles, tapez {{ et sélectionnez une proposition. Cette méthode évite les fautes et limite les références vers un bloc absent de la route.
| Besoin | Référence |
|---|---|
| Message utilisateur | {{userMessage}} |
| Date courante | {{datetime.date}} |
| Corps HTTP | {{http-1.body}} |
| Instruction préparée | {{generatePrompt-1.instruction}} |
| Réponse LLM | {{chatCompletion-1.content}} |
| Appels d’outils | {{chatCompletion-1.genericToolCalls}} |
| Outils MCP | {{listTools-1.tools}} |
| Routage MCP | {{listTools-1.toolServerRouting}} |
Une référence peut être insérée dans du texte :
Bonjour {{userData.givenName}}, votre demande concerne : {{userMessage}}Ou dans du JSON :
{
"query": "{{userMessage}}",
"email": "{{userData.email}}"
}Paramètres d’intégration customParams
customParams transporte les valeurs fournies à l’exécution, même lorsqu’elles ne sont pas connues pendant la configuration :
{{customParams.mcpAuthorization}}
{{customParams.mcpAccessToken}}
{{customParams.source}}Studio ignore volontairement certaines validations sur les références commençant par customParams..
Déboguer une variable
Ajoutez temporairement un Message simple :
{{codeblock documents.body}}Pour forcer un langage d’affichage :
{{codeblock documents.body "json"}}Retirez ce bloc avant publication s’il peut exposer un secret ou une donnée personnelle.