-
Notifications
You must be signed in to change notification settings - Fork 10
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: testing/experimenting with single agent without workflow #133
Comments
Regarding your questions, there's been some changes on Right now,
With that in mind, I am not sure how to read your first question, so I will check for a follow-up clarification! Regarding second question, the idea behind agents reducing state was to make it easier / automatic to perform delegations/handoffs from within the agent. It was historically outside of run, but it made things more complex. Now, if you want to "delegate", simply add new child state. When that agent is done, your Regarding your original question, I agree there's no way right now to run single agent, something that I will inevitably need in Cali, where I am performing a bunch of requests on a single agent - so yes, I agree this is good idea. I guess easiest way to do it today, albeit cumbersome, would be to write the following:
I think we should create a new top-level entry point similar to |
Sticking to state reducing. |
Thinking in way to simplify things:
|
This is very interesting, indeed. I will think about it! I can imagine
Right now, Context is just an array of Messages, so without turning the shape of Context into multi-dimensional array, it would be hard to detect where the actual request is. When calling LLM, we want to treat the actual request/work that happened at a current level different from messages that are coming from the parent (in the future, we may convert Context to a better abstraction)
I like that direction, but passing tools to agent with delegation will be tricky due to comment I mentioned in #132. At the moment, agent is just a function, everything else, including |
I tried an example implementation with abstraction changed a little bit and Redux (literally) and it looks clean and quite promising! Two conclusions, from architectural perspective:
|
I would be keen to look into details, although it is hard to avoid this pattern reminding me a bit about Redux Sagas in some places 😅 |
For testing/researching purposes it would be nice to be able to test single agent behaviour based on single task (state). e.g.:
run
should take something more than just state. (ps.: by the way state is a very generic name, every time I read the code I replaced it with task for myself).run
function should inference model AND reduce state or reducing state should be done outside of it?The text was updated successfully, but these errors were encountered: