...

/

Building Our First Multi-Agent System with CrewAI

Building Our First Multi-Agent System with CrewAI

Explore the process of creating the venue finder system with CrewAI.

We'll cover the following...

Now that we've explored the core concepts of CrewAI—agents, tasks, tools, and crews—you're well-equipped to understand how these components come together to form a cohesive system. In this lesson, we’ll move from theory to practice by actually building and running a crew.

Agents

As we discussed previously, having someone dedicated to finding the perfect venue is crucial in event planning. In our system, this role is played by the venue_finder agent. This agent’s primary goal is to find the best possible venues that meet all the client’s requirements. This is what it looked like:

Press + to interact
venue_finder = Agent(
role="Conference Venue Finder",
goal="Find the best venue for the upcoming conference",
backstory=(
"You are an experienced event planner with a knack for finding the perfect venues. "
"Your expertise ensures that all conference requirements are met efficiently. "
"Your goal is to provide the client with the best possible venue options."
),
tools=[search_tool],
verbose=True
)

Note: Just as our agents need to perform their roles effectively, they also need tools to assist them in their tasks. In this case, we’ll use the search_tool we created in the previous lesson to search for venues and relevent information online.

The agent above will be responsible for finding the venue options. However, we need to ensure they meet all the necessary quality standards. This is where our second agent, the venue_quality_assurance_agent, comes in. This agent’s job is to carefully review each venue and ensure it aligns with the client’s expectations:

Press + to interact
venue_quality_assurance_agent = Agent(
role="Venue Quality Assurance Specialist",
goal="Ensure the selected venues meet all quality standards and client requirements",
backstory=(
"You are meticulous and detail-oriented, ensuring that the venue options provided "
"are not only suitable but also exceed the client's expectations. "
"Your job is to review the venue options and provide detailed feedback."
),
tools=[search_tool],
verbose=True
)

Why are we doing this though? Won't one agent be enough for correctly ...