From 881ce136357856aa340a5aa6ec1c1f526a8c250e Mon Sep 17 00:00:00 2001 From: Parteek Date: Sun, 9 Feb 2025 21:40:51 +0530 Subject: [PATCH] Fix managed agent example (#562) Co-authored-by: Aymeric Roucher <69208727+aymeric-roucher@users.noreply.github.com> --- docs/source/en/guided_tour.md | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/docs/source/en/guided_tour.md b/docs/source/en/guided_tour.md index 7e0545b..293e315 100644 --- a/docs/source/en/guided_tour.md +++ b/docs/source/en/guided_tour.md @@ -344,19 +344,18 @@ It empirically yields better performance on most benchmarks. The reason for this You can easily build hierarchical multi-agent systems with `smolagents`. -To do so, encapsulate the agent in a [`ManagedAgent`] object. This object needs arguments `agent`, `name`, and a `description`, which will then be embedded in the manager agent's system prompt to let it know how to call this managed agent, as we also do for tools. +To create a managed agent, give your `CodeAgent` or `ToolCallingAgent` the attributes `name` and `description` - these are mandatory to make the agent callable by its manager agent. The manager agent will receive the managed agent via its managed_agents argument during initialization. Here's an example of making an agent that managed a specific web search agent using our [`DuckDuckGoSearchTool`]: ```py -from smolagents import CodeAgent, HfApiModel, DuckDuckGoSearchTool, ManagedAgent +from smolagents import CodeAgent, HfApiModel, DuckDuckGoSearchTool, ToolCallingAgent model = HfApiModel() -web_agent = CodeAgent(tools=[DuckDuckGoSearchTool()], model=model) - -managed_web_agent = ManagedAgent( - agent=web_agent, +managed_web_agent = CodeAgent( + tools=[DuckDuckGoSearchTool()], + model=model, name="web_search", description="Runs web searches for you. Give it your query as an argument." )