Run multiple pipeline branches in parallel, with synchronized inputs and outputs for complex flows
ParallelPipeline
allows you to create multiple independent processing branches that run simultaneously, sharing input and coordinating output. Itβs particularly useful for multi-agent systems, parallel stream processing, and creating redundant service paths.
Each branch receives the same downstream frames, processes them independently, and the results are merged back into a single stream. System frames (like StartFrame
and EndFrame
) are synchronized across all branches.
ParallelPipeline
adds special source and sink processors to each branchStartFrame
and EndFrame
) are sent to all branchesEndFrame
s are only passed through after all branches complete