Lift Unroll icon

Lift Unroll

1 Sürüm

Splits a list-typed stream into a size stream plus an element stream. The size stream ticks once per input list; the element stream ticks once per element in order. Inverse of {{component:lift_reroll}}.

How it fits

{{type:[t]}} -> {{component:lift_unroll}} -+-> {{type:UInt64}} (list length)
                                           +-> {{type:t}} (each element in order)

Typical backends

  • Per-element transform then regroup: list source -> {{component:lift_unroll}} -> per-element transform -> {{component:lift_reroll}} (consuming the sizes) -> consumer.
  • Per-detection OCR with restored grouping: {{component:detect_objects_triton}} -> {{component:lift_unroll}} -> {{component:extract_text_paddleocr}} -> {{component:lift_reroll}}.
  • Per-token embeddings with reassembly: token-list source -> {{component:lift_unroll}} -> {{component:extract_text_embedding_bge}} -> {{component:lift_reroll}}.
  • Per-face classification with batch restore: face-list source -> {{component:lift_unroll}} -> {{component:classify_image_huggingface}} -> {{component:lift_reroll}}.

Caveats

  • Both outputs must be consumed together; the partner {{component:lift_reroll}} requires the sizes to regroup correctly.
  • An empty input list emits 0 on the size stream and produces no elements for that tick.
  • Element-stream cadence becomes irregular (one tick per element across all input lists); downstream must tolerate burstiness.

Sürümler

  • 7cf6bbb8defaultlatestlinuxDönüşüm