-
Notifications
You must be signed in to change notification settings - Fork 13
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
refactor: more flexibility in workflow composition #132
Comments
Right now, not sure if this helps, agents can delegate/handoff via available state modifiers. Check implementation of supervisor and planner. Does that help? I will add it to the README, I realized it's not well documented/intuitive at first shot! Related #130 |
Thinking more about future limitations due to current architecture.
If we can think about tool'a as abilities of agent, then delegation is one of them. This implementation still can create child state as task delegated to different agent. |
BTW,
If you want to change it, you can pass
Yeah, delegation within agents is currently not supported, but it's on the roadmap. It was meant to be done automatically on error, when agent cannot complete the task, and also, as a way to delegate it further when needed.
That is nice convention, but it also overlaps a bit with regular function calling, such as looking up wikipedia. Since we also want to provide serverless support, we have a teamwork variant that does not run tools on the server. Unless we add special property (such as synchronous, asynchronous), it will be hard to differentiate which tools are meant to be run on the server, and which not. I think this could be good idea anyway, because right now, we will pause on all tools on the server, where in fact, you may only want to pause on one such as |
I completely miss that! Thanks
Good points. In which situations synchronous tools are needed?
Considering security issues, some “actions” or tool calls may also need user approval. |
Ah, just used this as a mind shortcut. The idea is that you have two kinds of tools (let's say) on the server. Wikipedia -> let's say I want to run this one. And "get_user_input_from_slack", which, for example, I want to update into database myself via some event-driven architecture and resume workflow by then. Does that make sense? |
Clear. I'm thinking out loud whether then the workflow in principle should be asynchronous in mind and adapted to event-driven. Whereas in non-event-driven environments it should be handled by kind of “runtime”. |
It would be nice if workflows cloud be composed in more flexible way.
To achieve this delegation to different agent could be done using delegate() and awareOf() (can help understand supervisor abilities of whole workflow) tools.
I can prepare a PoC if it relates to the concept and goals of the project.
The text was updated successfully, but these errors were encountered: