Hi all,
I'm trying to implement PlanReActPlanner with ADK 1.21.0, but I'm having some issues.
My architecture would be the following:
root_agent with PlanReActPlanner
subagent_a
subagent_b
Now, I want to connect subagent_a and subagent_b to router_agent via sub_agents, not tools, because with the latter I have less traceability of what the sub_agents actually do (e.g. they use multiple tools).
I also want the router_agent to think iteratively, always evaluating the sub agents replies and act. E.g. the plan first say to call A, then the result of A is not satisfying (e.g. no documents found in internal documentation) then I use B as a fallback.
How should this be implemented? My feeling is that PlanReActPlanner:
- is not iterating: it makes one plan and just executes without revising it, or adding actions
- only works with agents as a tool, not with sub agents. Indeed my sub agents just reply to the user and cannot go back to the router. I tried to force the comeback with:
function_call = FunctionCall(
args={"agent_name": "root_agent"},
name="transfer_to_agent",
)
new_part = Part(function_call=function_call)
llm_response.content.parts.append(new_part)
But I get "tool not found" error.
Hi all,
I'm trying to implement
PlanReActPlannerwith ADK 1.21.0, but I'm having some issues.My architecture would be the following:
root_agentwithPlanReActPlannersubagent_asubagent_bNow, I want to connect
subagent_aandsubagent_bto router_agent via sub_agents, not tools, because with the latter I have less traceability of what the sub_agents actually do (e.g. they use multiple tools).I also want the router_agent to think iteratively, always evaluating the sub agents replies and act. E.g. the plan first say to call A, then the result of A is not satisfying (e.g. no documents found in internal documentation) then I use B as a fallback.
How should this be implemented? My feeling is that
PlanReActPlanner:But I get "tool not found" error.