Run.resumeStream()
La méthode .resumeStream() reprend l'exécution suspendue d'un Workflow avec de nouvelles données. Vous pouvez ainsi poursuivre l'exécution à partir d'une étape précise et observer le flux d'événements.
Exemple d'utilisationLien direct vers Exemple d'utilisation
const run = await workflow.createRun()
const stream = run.stream({
inputData: {
value: 'initial data',
},
})
const result = await stream.result
if (result!.status === 'suspended') {
const resumedStream = await run.resumeStream({
resumeData: {
value: 'resume data',
},
})
}
ParamètresLien direct vers Paramètres
resumeData?:
z.infer<TInput>
Données d'entrée conformes au schéma d'entrée du Workflow
requestContext?:
RequestContext
Données du contexte de requête à utiliser pendant l'exécution du Workflow
step?:
Step<string, any, any, any, any, TEngineType>
Étape à partir de laquelle reprendre l'exécution
forEachIndex?:
number
Cible une itération précise d'une étape
.foreach() suspendue. Indiquez l'index, à partir de zéro, de l'itération à reprendre ; les autres itérations restent suspendues. Omettez cette option pour reprendre toutes les itérations suspendues de l'étape avec les mêmes resumeData.tracingOptions?:
TracingOptions
Options de configuration du Tracing.
metadata?:
Record<string, any>
Métadonnées à ajouter au span racine de la Trace. Utile pour ajouter des attributs personnalisés tels que des identifiants d'utilisateur ou de session, ou des indicateurs de fonctionnalité.
requestContextKeys?:
string[]
Clés RequestContext supplémentaires à extraire comme métadonnées de cette Trace. Accepte la notation par points pour les valeurs imbriquées (par exemple, 'user.id').
traceId?:
string
Identifiant de Trace à utiliser pour cette exécution (1 à 32 caractères hexadécimaux). S'il est fourni, cette Trace fera partie de la Trace indiquée.
parentSpanId?:
string
Identifiant du span parent à utiliser pour cette exécution (1 à 16 caractères hexadécimaux). S'il est fourni, le span racine sera créé comme enfant de ce span.
tags?:
string[]
Tags à appliquer à cette Trace. Étiquettes textuelles permettant de catégoriser et de filtrer les Traces.
Valeur renvoyéeLien direct vers Valeur renvoyée
stream:
MastraWorkflowStream<ChunkType>
Flux personnalisé qui étend ReadableStream<ChunkType> avec des propriétés supplémentaires propres aux Workflows
stream.status:
Promise<RunStatus>
Promise résolue avec l'état actuel de l'exécution du Workflow
stream.result:
Promise<WorkflowResult<TState, TOutput, TSteps>>
Promise résolue avec le résultat final du Workflow
stream.usage:
Promise<{ inputTokens: number; outputTokens: number; totalTokens: number, reasoningTokens?: number, cacheInputTokens?: number }>
Promise résolue avec les statistiques d'utilisation des tokens
Événements du fluxLien direct vers Événements du flux
Le flux émet différents types d'événements pendant l'exécution du Workflow. Chaque événement possède un champ type et un payload contenant les données pertinentes :
workflow-start: l'exécution du Workflow commenceworkflow-step-start: l'exécution d'une étape commenceworkflow-step-output: sortie personnalisée d'une étapeworkflow-step-result: une étape se termine avec des résultatsworkflow-finish: l'exécution du Workflow se termine avec les statistiques d'utilisation. Pour les exécutions réussies,payload.finalWorkflowResultcontient le résultat final du Workflow