Agno is a lightweight, high-performance library for building Agents.
It helps you progressively build the 5 levels of Agentic Systems:
- Level 1: Agents with tools and instructions.
- Level 2: Agents with knowledge and storage.
- Level 3: Agents with memory and reasoning.
- Level 4: Teams of Agents with collaboration and coordination.
- Level 5: Agentic Workflows with state and determinism.
Here's a Investment Research Agent that analyzes stocks, reasoning through each step:
Agno is simple, fast and model-agnostic. Here are some key features:
- Model Agnostic: Agno Agents can connect to 23+ model providers, no lock-in.
- Lightning Fast: - Lightning Fast: Agents instantiate in ~3μs and use ~5Kib memory on average (see performance for more details).
- Reasoning is a first class citizen: Make your Agents "think" and "analyze" using Reasoning Models, ReasoningTools or our custom chain-of-thought approach.
- Natively Multi Modal: Agno Agents are natively multi modal, they can take in text, image, audio and video and generate text, image, audio and video as output.
- Advanced Multi Agent Architecture: Agno provides an industry leading multi-agent architecture (Agent Teams) with 3 different modes: route, collaborate and coordinate.
- Agentic Search built-in: Give your Agents the ability to search for information at runtime using one of 20+ vector databases. Get access to state-of-the-art Agentic RAG that uses hybrid search with re-ranking. Fully async and highly performant.
- Long-term Memory & Session Storage: Agno provides plug-n-play Storage & Memory drivers that give your Agents long-term memory and session storage.
- Pre-built FastAPI Routes: Agno provides pre-built FastAPI routes to serve your Agents, Teams and Workflows.
- Structured Outputs: Agno Agents can return fully-typed responses using model provided structured outputs or json_mode.
- Monitoring: Monitor agent sessions and performance in real-time on agno.com.
If you're new to Agno, start by building your first Agent, chat with it on the playground and finally, monitor it on agno.com.
After that, checkout the Examples Gallery and build real-world applications with Agno.
Agents are AI programs that operate autonomously.
- The core of an Agent is a model, tools and instructions.
- Agents also have memory, knowledge, storage and the ability to reason.
Read more about each of these in the docs.
Let's build a few Agents to see how they work.
Let's start with a Reasoning Agent so we get a sense of Agno's capabilities.
Save this code to a file: reasoning_agent.py.
Then create a virtual environment, install dependencies, export your ANTHROPIC_API_KEY and run the agent.
We can see the Agent is reasoning through the task, using the ReasoningTools and YFinanceTools to gather information. This is how the output looks like:
reasoning_finance_agent.mp4Now let's walk through the simple -> tools -> knowledge -> teams of agents flow.
The simplest Agent is just an inference task, no tools, no memory, no knowledge.
To run the agent, install dependencies and export your OPENAI_API_KEY.
View this example in the cookbook
This basic agent will obviously make up a story, lets give it a tool to search the web.
Install dependencies and run the Agent:
Now you should see a much more relevant result.
View this example in the cookbook
Agents can store knowledge in a vector database and use it for RAG or dynamic few-shot learning.
Agno agents use Agentic RAG by default, which means they will search their knowledge base for the specific information they need to achieve their task.
Install dependencies and run the Agent:
View this example in the cookbook
Agents work best when they have a singular purpose, a narrow scope and a small number of tools. When the number of tools grows beyond what the language model can handle or the tools belong to different categories, use a team of agents to spread the load.
Install dependencies and run the Agent team:
View this example in the cookbook
We're thrilled to announce a month long, open source AI Agent Hackathon — open to all builders and dreamers working on agents, RAG, tool use, and multi-agent systems.
We're giving away $20,000 in prizes for the most ambitious Agent projects
- 🏅 10 winners: $300 each
- 🥉 10 winners: $500 each
- 🥈 5 winners: $1,000 each
- 🥇 1 winner: $2,000
- 🏆 GRAND PRIZE: $5,000 🏆
Follow this post for more details and updates
If you're building in the AI Agent space, or want to help shape the next generation of Agent builders - we'd love to work with you.
Reach out to [email protected] to get involved.
At Agno, we're obsessed with performance. Why? because even simple AI workflows can spawn thousands of Agents to achieve their goals. Scale that to a modest number of users and performance becomes a bottleneck. Agno is designed to power high performance agentic systems:
- Agent instantiation: ~3μs on average
- Memory footprint: ~6.5Kib on average
Tested on an Apple M4 Mackbook Pro.
While an Agent's run-time is bottlenecked by inference, we must do everything possible to minimize execution time, reduce memory usage, and parallelize tool calls. These numbers may seem trivial at first, but our experience shows that they add up even at a reasonably small scale.
Let's measure the time it takes for an Agent with 1 tool to start up. We'll run the evaluation 1000 times to get a baseline measurement.
You should run the evaluation yourself on your own machine, please, do not take these results at face value.
The following evaluation is run on an Apple M4 Mackbook Pro. It also runs as a Github action on this repo.
LangGraph is on the right, let's start it first and give it a head start.
Agno is on the left, notice how it finishes before LangGraph gets 1/2 way through the runtime measurement, and hasn't even started the memory measurement. That's how fast Agno is.
agno_vs_langgraph_perf.mp4To measure memory usage, we use the tracemalloc library. We first calculate a baseline memory usage by running an empty function, then run the Agent 1000x times and calculate the difference. This gives a (reasonably) isolated measurement of the memory usage of the Agent.
We recommend running the evaluation yourself on your own machine, and digging into the code to see how it works. If we've made a mistake, please let us know.
Agno agents are designed for performance and while we do share some benchmarks against other frameworks, we should be mindful that accuracy and reliability are more important than speed.
We'll be publishing accuracy and reliability benchmarks running on Github actions in the future. Given that each framework is different and we won't be able to tune their performance like we do with Agno, for future benchmarks we'll only be comparing against ourselves.
When building Agno agents, using Agno documentation as a source in Cursor is a great way to speed up your development.
- In Cursor, go to the settings or preferences section.
- Find the section to manage documentation sources.
- Add https://docs.agno.com to the list of documentation URLs.
- Save the changes.
Now, Cursor will have access to the Agno documentation.
- Docs: docs.agno.com
- Getting Started Examples: Getting Started Cookbook
- All Examples: Cookbook
- Community forum: community.agno.com
- Chat: discord
We welcome contributions, read our contributing guide to get started.
Agno logs which model an agent used so we can prioritize updates to the most popular providers. You can disable this by setting AGNO_TELEMETRY=false in your environment.