Skip to content

v0.5.0

Compare
Choose a tag to compare
@julian-risch julian-risch released this 27 Jan 13:57
· 10 commits to main since this release
cbbf088

New Experiments

Full Changelog: v0.4.0...v0.5.0


🧬 New Pipeline Logic

This release introduces a reimplementation of the pipeline-run logic to resolve multiple issues, improving reliability and performance. These changes will also be included in Haystack 2.10.

Fixed Issues:

  1. Exceptions in pipelines with two cycles

    • Pipelines with two cycles sharing an optional (like in PromptBuilder) or a greedy variadic edge (e.g., in BranchJoiner) might raise exceptions. Details here.
  2. Incorrect execution in cycles with multiple optional or variadic edges

    • Entry points for cycles were non-deterministic, causing components to run with unexpected inputs or multiple times. This impacted execution time and final outputs.
  3. Missing intermediate outputs in cycles

    • Outputs produced within a cycle were overwritten, preventing downstream components from receiving them.
  4. Premature execution of lazy variadic components

    • Components like DocumentJoiner sometimes executed before receiving all inputs, leading to repeated partial executions that affected downstream results.
  5. Order-sensitive behavior in add_component and connect

    • Some bugs above occurred due to specific orderings of add_component and connect in pipeline creation, causing non-deterministic behavior in cyclic pipelines.

Am I Affected by this Change?

  • Non-cyclic pipelines without lazy variadic components:
    No impact—your pipelines should function as before.

  • Non-cyclic pipelines with lazy variadic components:
    Check inputs and outputs of components like DocumentJoiner for issues #4 and #5. Use LoggingTracer with content tracing to validate behavior. Component execution order now uses lexicographical sorting; rename upstream components if necessary.

  • Pipelines with cycles:
    Review your pipeline outputs as well as the component input and outputs to ensure expected behavior, as you may encounter any of the above issues.

Share your comments in discussion #177