Async
Gather Multiple Agents
Examples
- Introduction
- Getting Started
- Agents
- Workflows
- Applications
Agent Concepts
- Multimodal
- RAG
- Knowledge
- Memory
- Teams
- Async
- Hybrid Search
- Storage
- Tools
- Vector Databases
- Embedders
Models
- Anthropic
- AWS Bedrock Claude
- Azure OpenAI
- Cohere
- DeepSeek
- Fireworks
- Gemini
- Groq
- Hugging Face
- Mistral
- NVIDIA
- Ollama
- OpenAI
- Together
- Vertex AI
- xAI
Async
Gather Multiple Agents
Code
cookbook/agent_concepts/async/gather_agents.py
import asyncio
from agno.agent import Agent
from agno.models.openai import OpenAIChat
from agno.tools.duckduckgo import DuckDuckGoTools
from rich.pretty import pprint
providers = ["openai", "anthropic", "ollama", "cohere", "google"]
instructions = [
"Your task is to write a well researched report on AI providers.",
"The report should be unbiased and factual.",
]
async def get_reports():
tasks = []
for provider in providers:
agent = Agent(
model=OpenAIChat(id="gpt-4"),
instructions=instructions,
tools=[DuckDuckGoTools()],
)
tasks.append(
agent.arun(f"Write a report on the following AI provider: {provider}")
)
results = await asyncio.gather(*tasks)
return results
async def main():
results = await get_reports()
for result in results:
print("************")
pprint(result.content)
print("************")
print("\n")
if __name__ == "__main__":
asyncio.run(main())
Usage
1
Create a virtual environment
Open the Terminal
and create a python virtual environment.
2
Install libraries
pip install -U openai agno rich duckduckgo-search
3
Run Agent