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

Confusion and Conflation between Prefect Flow / Task and Controlflow Flow / Task #353

Open
mdrideout opened this issue Oct 8, 2024 · 0 comments
Labels
enhancement Enhance an existing feature

Comments

@mdrideout
Copy link

mdrideout commented Oct 8, 2024

Enhancement Description

Hey all, loving the library so far. However, I am encountering some use-case confusion. Hopefully this makes sense.

I have 2 types of AI flow use cases and feel torn between prefect core and control flow libraries.

I have directed graph style flows incorporating llms for logic, and AI Agent flows. I find it muddy figuring out whether controlflow can handle both cases, or if I need prefect for for the former, and controlflow for the later.

In my experimentation, it feels like controlflow really wants to abstract more to the llm for agentic and multi-agent flows... and doesn't really give directed graph capabilities.

I have some situations that are more appropriate for AI Agent flows. I have other situations that are more appropriate for directed graph style flows (that also incorporate LLM tasks).

I find the difference between the prefect core library flow and task decorators / functions, and the controlflow library flow and task decorators / defintions to be confusing to differentiate in documentation, and to implement when both are needed.

LLM code assistants also get totally confused and conflate both libraries, even when providing the docs as context.

Use Case

  1. directed graph workflow that uses an LLM to extract structured data from natural language, and uses conditional logic to execute on a very precise set of conditions, branching flows, etc. before saving the data. Task steps may require llm reasoning and conditional handling of llm outputs. Steps may trigger events.

  2. agent workflows that are doing more general goal-oriented reasoning for natural language responses and do not require as precise and regulated flows.

Proposed Implementation

Greater differentiation between prefect core and controlflow flow and task implementations. 

Ability to or examples of controlflow tasks with dependencies that don't abstract so much to the LLM.

Documentation examples demonstrating:
1. controlflow flows that do not use agents
2. Dynamic flows where a task is able to determine the next task based on certain conditions.
@mdrideout mdrideout added the enhancement Enhance an existing feature label Oct 8, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Enhance an existing feature
Projects
None yet
Development

No branches or pull requests

1 participant