Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fork Join Parallelism for Workflows #4275

Open
4 tasks done
QuietRocket opened this issue May 10, 2024 · 0 comments
Open
4 tasks done

Fork Join Parallelism for Workflows #4275

QuietRocket opened this issue May 10, 2024 · 0 comments
Labels
💪 enhancement New feature or request

Comments

@QuietRocket
Copy link

Self Checks

  • I have searched for existing issues search for existing issues, including closed ones.
  • I confirm that I am using English to submit this report (我已阅读并同意 Language Policy).
  • Pleas do not modify this template :) and fill in all the required fields.

1. Is this request related to a challenge you're experiencing?

Some workflow configurations have high response latency because they necessitate multiple orthogonal requests to execute sequentially. The latency can be greatly reduced via simple fork-join parallelism. For example, multiple LLM generations in parallel with HTTP requests.

2. Describe the feature you'd like to see

Add Fork and Join blocks.

  • Place a Fork anywhere an LLM/HTTP block could be placed.
  • The output is a series of pathways which can be executed in parallel.
  • In a pathway, only variables defined before the Fork can be accessed.
  • Pathways potentially have a constrained selection of blocks. For example, for chat workflows, "Answer" blocks might need to be disabled since execution order isn't deterministic.
  • In order for the configuration to be valid, all parallel pathways which originate from a Fork must end up in a Join block.
  • Join block waits for all pathways to finish, then continue sequential execution.

3. How will this feature improve your workflow or experience?

Improves response latency by performing orthogonal tasks in parallel.

4. Additional context or comments

image
Fork Join diagram courtesy of this paper.

5. Can you help us with this feature?

  • I am interested in contributing to this feature.
@dosubot dosubot bot added the 💪 enhancement New feature or request label May 10, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
💪 enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant