Releases: agno-agi/agno
Releases · agno-agi/agno
v1.5.3
Changelog
Improvements:
- Improved Accuracy Evals: Updated the way accuracy evals works for more accurate agent-based evaluation.
Bug Fixes:
- MCP Client Timeout: Client timeouts now work correctly and use the timeout set on parameters.
What's Changed
- Firecrawl web extraction agent by @Mustafa-Esoofally in #3263
- Update readme.md by @VirusDumb in #3265
- feat: better MCP timeout handling by @manuhortet in #3271
- Update Accuracy Eval by @ashpreetbedi in #3276
- chore: Release 1.5.3 by @ashpreetbedi in #3277
Full Changelog: v1.5.2...v1.5.3
v1.5.2
Changelog
New Features:
- Agno Apps (Beta): Introducing Agno Apps, convenience functions to assist with building production-ready applications. The first supported apps are:
FastAPIApp→ A really simple FastAPI server that provides access to youragentorteam.WhatsappAPIApp→ An app that implements the Whatsapp protocol allowing you to have an Agno agent running on Whatsapp. Supports image / audio / video input and can generate images as responses. Supports reasoning.
- Couchbase Vector DB Support: Added support for Couchbase as a vector DB for knowledge bases.
- Knowledge Filters Update for Teams: Filters (manual + agentic) can now be used with Teams.
- Azure Cosmos DB for MongoDB (vCore) vector db support: In the MongoDB vector db class add support for cosmosdb mongo vcore support by enabling
cosmos_compatibility=True - Google Big Query Tools: Added Toolkit for Google BigQuery support.
- Async Support for s3 Readers: Add async support for
pdfandtexts3 readers. stop_after_tool_callandshow_resultfor Toolkits: Now the base Toolkit class hasstop_after_tool_call_toolsandshow_result_toolssimilar to the@tooldecorator.
What's Changed
- feat: add-succes_criteria-to-agent by @Ayush0054 in #3234
- fix: LiteLLM incomplete usage by @piotrpenar in #3210
- chore: Refactor agent run and run stream #3179 by @dirkbrnd in #3216
- feat: New Apps structure by @dirkbrnd in #2830
- Add Couchbase support [VectorDB] by @shyam-cb in #2179
- feat: Knowledge filters update for teams by @kausmeows in #3181
- feat: add azure cosmosdb mongodb (vcore) by @kausmeows in #3160
- Added Google Big Query Tool by @deepd1534 in #3141
- feat: add async readers s3 by @kausmeows in #3245
- feat: add support for stop after tool in Toolkits by @kausmeows in #3253
- feat: add test env fields to workspace settings by @manuhortet in #3251
- feat: MCP Graphiti example by @manuhortet in #3257
- add fallback memory model while getting agents from playground by @Ayush0054 in #3256
- feat-a2a-example-ag-3175 by @ysolanky in #3200
- feat: raise if async tools in sync agent run by @manuhortet in #3252
- fix: Fixed few bugs in Todoist integration tools by @SGP07 in #3247
- fix: cannot access local variable 'documents_to_load' in knowlege agent by @mrtunguyen in #3230
- fix(replicate): handle FileOutput and list of FileOutput by @0xRichardH in #3226
- fix: use subprocess cwd instead of shell 'cd' to set working directory by @shlomobamberger in #3217
- fix: when using LangchainKnowledgeBase by @KinonoChen in #3204
- Update FireCrawl: Fix Crawl Bug & Add Map Functionality by @saikanov in #3193
- feat(googlecalendar): add conditional Google Meet link creation by @aakashsengar in #3017
- ⚡️ Speed up method
WebsiteReader._extract_main_contentby 72% by @misrasaurabh1 in #3013 - chore: Release 1.5.2 by @dirkbrnd in #3244
New Contributors
- @piotrpenar made their first contribution in #3210
- @shyam-cb made their first contribution in #2179
- @deepd1534 made their first contribution in #3141
- @SGP07 made their first contribution in #3247
- @mrtunguyen made their first contribution in #3230
- @0xRichardH made their first contribution in #3226
- @shlomobamberger made their first contribution in #3217
- @saikanov made their first contribution in #3193
- @misrasaurabh1 made their first contribution in #3013
Full Changelog: v1.5.1...v1.5.2
v1.5.1
Changelog
New Features:
- Nebius Model Provider: Added Nebius as a model provider.
- Extended Filters Support on Vector DBs: Added filtering support for other vector DBs
- pgvector
- Milvus
- Weaviate
- Chroma
Improvements:
- Redis SSL: Added the
sslparameter toRedisstorage. - Improve release tests workflow: add a script to do model specific minimal setup installation on release
What's Changed
- chore: update cerebras reasoning cookbooks by @kausmeows in #3182
- fix: Add mssing init to infra package by @willemcdejongh in #3189
- feat: Add Nebius studio tools and openAIlike by @SamuelJacobJ in #3185
- chore: update-pr-wf-ag-3172 by @ysolanky in #3195
- fix: yield-tool-call-ag-3121 by @ysolanky in #3184
- [feat]: add support for ssl in redis by @gsaada in #3169
- [fix] pass agent id as entity to get only sessions of agent by @gsaada in #3166
- chore: add a script to do model specific minimal setup installation on release by @kausmeows in #3208
- feat: add filtering support for remaining vectordbs by @kausmeows in #3199
- chore-readme-update-ag-3190 by @ysolanky in #3222
- chore: Release 1.5.1 by @dirkbrnd in #3219
New Contributors
- @SamuelJacobJ made their first contribution in #3185
- @gsaada made their first contribution in #3169
Full Changelog: v.1.5.0...v1.5.1
v1.4.7
Changelog
New Features:
- Azure OpenAI Tools: Added image generation via Dall-E via Azure AI Foundry.
- OpenTelemetry Instrumentation: We have contributed to the OpenInference project and added an auto-instrumentor for Agno agents. This adds tracing instrumentation for Agno Agents for any OpenTelemetry-compatible observability provider. These include Arize, Langfuse and Langsmith. Examples added to illustrate how to use each one (here).
- Evals Updates: Added logic to run accuracy evaluations with pre-generated answers and minor improvements for all evals classes.
- Hybrid Search and Reranker for Milvus Vector DB: Added support for
hybrid_searchon Milvus. - MCP with Streamable-HTTP: Now supporting the streamable-HTTP transport for MCP servers.
Improvements:
- Knowledge Filters Cookbook: Instead of storing the sample data locally, we now pull it from s3 at runtime to keep the forking of the repo as light as possible.
Bug Fixes:
- Team Model State: Fixed issues related to state being shared between models on teams.
- Concurrent Agent Runs: Fixed certain race-conditions related to running agents concurrently.
Breaking changes:
- Evals Refactoring:
- Our performance evaluation class has been renamed from
PerfEvaltoPerformanceEval - Our accuracy evaluation class has new required fields:
agent,promptandexpected_answer
- Our performance evaluation class has been renamed from
- Concurrent Agent Runs: We removed duplicate information from some events during streaming (
stream=True). Individual events will have more relevant data now.
What's Changed
- cookbook/playground: use ag setup to authenticate by @continuous1024 in #2996
- Modify toolkit to support new image generation model by @Mustafa-Esoofally in #3147
- Image generation App by @Mustafa-Esoofally in #3146
- Create an Azure OpenAI tool with image generation by @ArvidB3 in #2536
- ci: Add PR linting workflow and update contributing guidelines by @aryan-dani in #3032
- [feat] Replace markdown issue templates with YAML forms by @aryan-dani in #3034
- [fix] Make models stateless by @dirkbrnd in #3140
- memory-v2-dict-fix-ag-3058 by @ysolanky in #3133
- chore: pull filter data from s3 at runtime by @kausmeows in #3174
- feat: Supabase MCP app by @Mustafa-Esoofally in #3175
- chore: refactor accuracy eval logic by @manuhortet in #2916
- feat: Arize Phoenix via OpenInference by @dirkbrnd in #3136
- fix: concurrent-arun-calls-mixing-responses by @kausmeows in #3138
- feat: add hybrid search support in milvus vdb by @kausmeows in #3164
- feat: Add support for streamable-http in MCPTools by @kkpalczewski in #3159
- feat: implement cli auth get by @pritipsingh in #3049
- chore: Release 1.5.0 by @dirkbrnd in #3171
New Contributors
- @continuous1024 made their first contribution in #2996
- @ArvidB3 made their first contribution in #2536
- @aryan-dani made their first contribution in #3032
- @kkpalczewski made their first contribution in #3159
Full Changelog: v1.4.6...v1.5.0
v1.5.0
Changelog
New Features:
- Azure OpenAI Tools: Added image generation via Dall-E via Azure AI Foundry.
- OpenTelemetry Instrumentation: We have contributed to the OpenInference project and added an auto-instrumentor for Agno agents. This adds tracing instrumentation for Agno Agents for any OpenTelemetry-compatible observability provider. These include Arize, Langfuse and Langsmith. Examples added to illustrate how to use each one (here).
- Evals Updates: Added logic to run accuracy evaluations with pre-generated answers and minor improvements for all evals classes.
- Hybrid Search and Reranker for Milvus Vector DB: Added support for
hybrid_searchon Milvus. - MCP with Streamable-HTTP: Now supporting the streamable-HTTP transport for MCP servers.
Improvements:
- Knowledge Filters Cookbook: Instead of storing the sample data locally, we now pull it from s3 at runtime to keep the forking of the repo as light as possible.
Bug Fixes:
- Team Model State: Fixed issues related to state being shared between models on teams.
- Concurrent Agent Runs: Fixed certain race-conditions related to running agents concurrently.
Breaking changes:
- Evals Refactoring:
- Our performance evaluation class has been renamed from
PerfEvaltoPerformanceEval - Our accuracy evaluation class has new required fields:
agent,promptandexpected_answer
- Our performance evaluation class has been renamed from
- Concurrent Agent Runs: We removed duplicate information from some events during streaming (
stream=True). Individual events will have more relevant data now.
What's Changed
- cookbook/playground: use ag setup to authenticate by @continuous1024 in #2996
- Modify toolkit to support new image generation model by @Mustafa-Esoofally in #3147
- Image generation App by @Mustafa-Esoofally in #3146
- Create an Azure OpenAI tool with image generation by @ArvidB3 in #2536
- ci: Add PR linting workflow and update contributing guidelines by @aryan-dani in #3032
- [feat] Replace markdown issue templates with YAML forms by @aryan-dani in #3034
- [fix] Make models stateless by @dirkbrnd in #3140
- memory-v2-dict-fix-ag-3058 by @ysolanky in #3133
- chore: pull filter data from s3 at runtime by @kausmeows in #3174
- feat: Supabase MCP app by @Mustafa-Esoofally in #3175
- chore: refactor accuracy eval logic by @manuhortet in #2916
- feat: Arize Phoenix via OpenInference by @dirkbrnd in #3136
- fix: concurrent-arun-calls-mixing-responses by @kausmeows in #3138
- feat: add hybrid search support in milvus vdb by @kausmeows in #3164
- feat: Add support for streamable-http in MCPTools by @kkpalczewski in #3159
- feat: implement cli auth get by @pritipsingh in #3049
- chore: Release 1.5.0 by @dirkbrnd in #3171
New Contributors
- @continuous1024 made their first contribution in #2996
- @ArvidB3 made their first contribution in #2536
- @aryan-dani made their first contribution in #3032
- @kkpalczewski made their first contribution in #3159
Full Changelog: v1.4.6...v1.5.0
v1.4.6
Changelog
New Features:
- Cerebras Model Provider: Added Cerebras as a model provider.
- Claude Web Search: Added support for Claude’s new web search tool.
- Knowledge Base Metadata Filtering (Beta): Added support for filtering documents by metadata
-
Two Ways to Apply Filters:
-
Explicit Filtering: Pass filters directly to Agent or during run/query
# Option 1: Filters on Agent initialization agent = Agent( knowledge=knowledge_base, knowledge_filters={"filter_1": "abc"} ) # Option 2: Filters on run execution agent.run("Tell me about...", knowledge_filters={"filter_1": "abc"})
See docs here
-
Agentic Filtering: Agent automatically detects and applies filters from user queries
# Enable automatic filter detection agent = Agent( knowledge=knowledge_base, enable_agentic_knowledge_filters=True ) # Agent extracts filters from query agent.run("Tell me about John Doe's experience...")
See docs here
-
-
Two approaches for adding metadata to documents:
-
During Knowledge Base Initialization:
knowledge_base = PDFKnowledgeBase(path=[ { "path": "file_1.pdf", "metadata": { "user_id": "abc" } }, { "path": "file_2.pdf", "metadata": { "user_id": "xyz" } } ])
-
During Individual Document Loading:
knowledge_base.load_document( path="file.pdf", metadata={"user_id": "abc"} )
-
-
Compatibility
- Knowledge Base Types:
PDF,Text,DOCX,JSON, andPDF_URL - Vector Databases:
Qdrant,LanceDB, andMongoDB
- Knowledge Base Types:
-
Improvements:
- User and Session ID in Tools: Added
current_user_idandcurrent_session_idas default variables insession_data.
Bug Fixes:
- Knowledge Base ID Clashes: Knowledge files with overlapping names (e.g.,
abc.-.xyz.pdfandabc.-.def.pdf) were being incorrectly identified due to the readers using formatted names as unique id which were getting uniqueness conflict. Introduced a unique ID for each document in all the readers usinguuidv4()to ensure strict identification and prevent conflicts.
What's Changed
- weave-cookbook-ag-3050 by @ysolanky in #3102
- fix: readers set unique id by @kausmeows in #3104
- add cerebras OpenAILike and SDK model integration by @kausmeows in #3118
- Notion MCP agent by @Mustafa-Esoofally in #3115
- metrics-fix-ag-3052 by @ysolanky in #3119
- Massive tests fix code refactor by @Mustafa-Esoofally in #3098
- model-cleanup by @ysolanky in #3080
- agent-reasoning-update-ag-3057 by @ysolanky in #3131
- add workflow for cerebras by @kausmeows in #3142
- [bug-fix] Remove null for optional values by @dirkbrnd in #3123
- Add cookbook for langfuse via openlit by @dirkbrnd in #3127
- update reasoning tools cookbook with ibm-watsonx by @kausmeows in #3150
- feat-claude-web-search-ag-3053 by @ysolanky in #3128
- [feat] Add current_user_id and current_session_id by @dirkbrnd in #3152
- feat: knowledge filters- manual + agentic v1 by @kausmeows in #3005
- fix message history bug in agentic rag and answer engine by @Ayush0054 in #3100
- update lancedb by @kausmeows in #3155
- Release 1.4.6 by @dirkbrnd in #3154
Full Changelog: v1.4.5...v1.4.6
v1.4.5
Changelog
New Features:
- Embedder Support via AWS Bedrock:
AwsBedrockEmbedderhas been added with a default embedding model ofcohere.embed-multilingual-v3. - Gemini Video Generation Tool: Added video generation capabilities to
GeminiTools.
Improvements:
- Apify Revamp: Complete revamp of
ApifyToolsto make it completely compatible with Apify actors.
Bug Fixes:
- Tools with Optional Parameters on Llama API: Fixed edge cases with functions
What's Changed
- add warning if async is used with run in retriever by @kausmeows in #3070
- Remove MCP tool description by @dirkbrnd in #3072
- add aws bedrock embedder by @kausmeows in #3075
- Prevent json from loading dict by @alpha-xone in #3077
- Fix loading of sessions if no run has occurred by @dirkbrnd in #3084
- An agent that uses RAG to get recipes and generates images by @Mustafa-Esoofally in #3058
- Fix tool calling on Llama API by @dirkbrnd in #3064
- Fix memory for teams by @dirkbrnd in #3085
- Gemini video tools by @Mustafa-Esoofally in #3012
- Add better Apify integration with examples by @ohlava in #2566
- Release 1.4.5 by @dirkbrnd in #3086
New Contributors
Full Changelog: v1.4.4...v1.4.5
v1.4.4
Changelog
New Features:
- OpenAI File Support: Added support for
Fileattached to prompts for agents withOpenAIChatmodels.
Improvements:
- Llama API: Various improvements for Llama and LlamaOpenAI model classes including structured output and image input support
- Async Custom Retriever: The
retrieverparameter can now be anasyncfunction to be used withagent.arunandagent.aprint_response. - Gemini Video URL Input: Added support for
Video(url=...)for Gemini.
Bug Fixes:
- OpenAI Responses o3 / o4 Tools: Fixed broken tool use for advanced reasoning models on
OpenAIResponses. - MCP on CLI Support: Fixed support for
MCPToolsusage while callingagent.acli_app.
What's Changed
- llama-api-update-ag-3035 by @ysolanky in #3037
- llama api fixes and updates by @kausmeows in #3038
- Website kb + pinecone DB should respect namespace arg by @5739n4 in #2973
- add support for async retriever by @kausmeows in #3026
- Bug Fix [3041]: Gemni models always return tool_call_id as None and a… by @gauravdhiman in #3042
- Make sure reasoning models are correctly set by @dirkbrnd in #3057
- fix o3/o4-mini for tools by @kausmeows in #3023
- Allow PDF / doc uploads for OpenAIChat by @Mustafa-Esoofally in #3052
- feat(agent): add support for async cli app by @manuhortet in #3045
- Allow new models for OpenAI Transcription by @Mustafa-Esoofally in #3040
- fix(bedrock-model): propagate
request_paramsto Bedrock Converse API by @leandrodamascena in #3035 - delete_user_memory missing existence check by @jkatigb in #2999
- gemini-video-url-ag-3017 by @ysolanky in #2980
- fix(mcp): Apply checks for include_tools and exclude_tools during initialize. by @daavoo in #2985
- [Fix] Fix issues in Workflows when loading sessions with new default memory by @dirkbrnd in #3056
- llama-image-support-ag-3037 by @ysolanky in #3053
- Fix schema handling in SQLTools for table inspection by @tiberiu92 in #3060
- add better exception for website reader by @Ayush0054 in #2975
- Fix: metrics-fix-ag-3045 by @ysolanky in #3062
- Release 1.4.4 by @dirkbrnd in #3061
New Contributors
- @leandrodamascena made their first contribution in #3035
- @jkatigb made their first contribution in #2999
- @daavoo made their first contribution in #2985
- @tiberiu92 made their first contribution in #3060
Full Changelog: v1.4.3...v1.4.4
v1.4.3
Changelog
New Features:
- Llama API: Added native SDK and OpenAI-like model classes.
Improvements:
- Claude: Added support for AWS Session token for Claude
- DynamoDB: Added support for AWS profile-based authentication.
Bug Fixes:
- Session Metrics: Fix for session metrics showing up as 0
- HF Embedder fix: Fixed Hugging Face Embedder
What's Changed
- Claude support aws session token. This is required for using AWS credentials from an assumed role by @gnanda17 in #2948
- lite-llm-import-fix-ag-3018 by @ysolanky in #2981
- fix-hf-embedder-ag-3016 by @ysolanky in #2979
- feat(dynamodb): Add support for AWS profile-based authentication. by @lironesamoun in #2989
- fix-session-metrics-ag-3024 by @ysolanky in #2993
- fix: perplexity citations handling for playground by @anuragts in #3008
- fix(evals): better parsing for tool calls by @manuhortet in #3009
- [Reasoning model] Added support for o4-mini and probably o4 when released. Closes #2990 by @emerleite in #3007
- GitHub repo analyzer by @Mustafa-Esoofally in #2582
- llama-api-ag-3032 by @ysolanky in #3025
- Release-1.4.3 by @ysolanky in #3036
New Contributors
- @gnanda17 made their first contribution in #2948
- @lironesamoun made their first contribution in #2989
- @emerleite made their first contribution in #3007
Full Changelog: v1.4.2...v1.4.3
v1.4.2
Changelog
New Features:
- MCP SSE Support: Added support for connecting to SSE MCP Servers.
- Tool Hooks: You can now have a hook that is wrapped around all tool calls. This works for
Toolkitsand custom tools. See this example. - Team Session State: You can now manage a single state dictionary across a team leader and team members inside tools given to the team leader/members. See this example.
- Cartesia Tool: Added support for Cartesia for text-to-speech capabilities.
- Gemini Image Tools: Added a tool that uses Gemini models to generate images.
- Groq Audio Tools: Added a tool that uses Groq models to translate, transcribe and generate audio.
Improvements:
- PubmedTools Expanded Results: Added expanded result sets for
PubmedTools. - Variety in Tool Results: Custom tools can now have any return type and it would be handled before being provided to the model.
Bug Fixes:
- Teams Shared Model Bug: Fixed issues where a single model is used across team members. This should reduce tool call failures in team execution.
What's Changed
- agent-default-param-update-ag-3011 by @ysolanky in #2954
- Added Read Timeout for MCP Client Session by @ssenthilnathan3 in #2961
- Add cartesia tool by @manthanguptaa in #2412
- Feat/mcp-sse: Extending MCP with SSE transport by @dsaad68 in #2892
- pyproject-keywords-ag-3013 by @ysolanky in #2957
- Fix cases where streaming breaks print_response by @dirkbrnd in #2964
- Feature: Implement shared team session state by @dirkbrnd in #2956
- Add execution hooks for agents and teams by @dirkbrnd in #2920
- Make sure model tools are unique when model is shared in team by @dirkbrnd in #2947
- Gemini image tool by @Mustafa-Esoofally in #2952
- fix-function-result-type-ag-3014 by @ysolanky in #2974
- Groq native model tools by @Mustafa-Esoofally in #2970
- Release 1.4.2 by @dirkbrnd in #2965
New Contributors
- @ssenthilnathan3 made their first contribution in #2961
- @dsaad68 made their first contribution in #2892
Full Changelog: v1.4.1...v1.4.2