deepset-ai/canals

Components should be able to run even if they receive partial inputs

silvanocerza opened this issue · 0 comments

As of now a component is marked for running in these cases:

  • All inputs have been received
  • Partial inputs have been received and remaining ones have defaults
  • Partial inputs have been received and remaining ones will be received by another component that creates a cycle in the graph

This creates some issues as we can't have cycles in a Pipeline.

A possible solution would be to make components run even if they didn't receive all their inputs, either by decorating inputs as partial or not waiting for inputs that are Optional.