LlmCore.Agent.ToolDispatch.Components.FanOutParallel (llm_core v0.3.0)

Copy Markdown View Source

Composer that fans out one dispatch event into N parallel call events.

Each emitted event carries one parallel step to execute. With count: N on the subsequent ExecuteOneCall stage, these events are processed concurrently across GenStage workers (in async mode).

If there are no parallel steps, the event passes through unchanged — the pipeline structure exists but acts as a pass-through.

ALF Composer Contract

Returns {events, memo} where events is a list of Event structs, one per parallel step. Memo is unused (nil).

Summary

Functions

Fan-out function for the ALF Composer.

Functions

call(event, atom, opts)

Fan-out function for the ALF Composer.

Parameters

  • event%Event{} with plan.parallel steps
  • memo — Composer memo (unused, always nil)
  • opts — ALF composer options (unused)

Returns

{[Event.t()], nil} — One event per parallel step, or the original event wrapped in a list if there are no parallel steps.