Agno (formerly Phidata)
Open-source framework for building multi-modal AI agents with memory, knowledge, tools, and reasoning. Renamed from Phidata to Agno in January 2025. Complete namespace change from phi.* to agno.*. phidata package still exists on PyPI (2.7.10) but is legacy — new development on agno only. Current version: agno 2.5.10 (Mar 2026).
Warnings
- breaking Complete namespace rename: all phi.* imports broken. from phi.agent import Agent raises ModuleNotFoundError on agno package. The entire import tree changed.
- breaking All tool classes renamed with Tools suffix. DuckDuckGo → DuckDuckGoTools, YFinanceTools stays same, but many others changed. Import paths also changed.
- breaking Embedder parameter renamed from model= to id=. OllamaEmbedder(model='llama3.2') breaks silently or raises TypeError.
- breaking CLI renamed from phi to ag. All phi init, phi ws up commands broken.
- gotcha Agent() with no model specified silently defaults to OpenAIChat(gpt-4o). Fails at runtime with ModuleNotFoundError if openai not installed, not at import time.
- gotcha phidata package still installable on PyPI (2.7.10) but receives no new features. LLMs trained before Feb 2025 will generate phidata/phi.* code. Entirely wrong for current agno.
- gotcha Document readers renamed with _reader suffix. phi.document.reader.pdf → agno.document.reader.pdf_reader.
Install
-
pip install agno -
pip install agno openai -
pip install phidata
Imports
- Agent
from agno.agent import Agent from agno.models.openai import OpenAIChat from agno.tools.duckduckgo import DuckDuckGoTools agent = Agent( model=OpenAIChat(id='gpt-4o'), tools=[DuckDuckGoTools()], markdown=True ) agent.print_response('Latest AI news', stream=True) - Model classes
from agno.models.openai import OpenAIChat from agno.models.anthropic import Claude from agno.models.google import Gemini
- Knowledge / Embedder
from agno.knowledge.pdf import PDFKnowledgeBase from agno.embedder.openai import OpenAIEmbedder # Embedders now use id= not model= embedder = OpenAIEmbedder(id='text-embedding-3-small')
Quickstart
# pip install agno openai
from agno.agent import Agent
from agno.models.openai import OpenAIChat
import os
agent = Agent(
model=OpenAIChat(id='gpt-4o'),
description='You are a helpful assistant.',
markdown=True
)
agent.print_response('Explain quantum computing in 2 sentences.')