From 97b5a8246d5196421596964351e462250b988462 Mon Sep 17 00:00:00 2001 From: Will Killian <2007799+willkill07@users.noreply.github.com> Date: Mon, 2 Feb 2026 10:15:37 -0500 Subject: [PATCH 1/3] fix(testing): guard huggingface integration test with importorskip (#1535) Extended nightly run incorrectly tested for huggingface support. Fix this by directly attempting to import torch Closes ## By Submitting this PR I confirm: - I am familiar with the [Contributing Guidelines](https://github.com/NVIDIA/NeMo-Agent-Toolkit/blob/develop/docs/source/resources/contributing/index.md). - We require that all contributors "sign-off" on their commits. This certifies that the contribution is your original work, or you have rights to submit it under the same license, or a compatible license. - Any contribution which contains commits that are not Signed-Off will not be accepted. - When the PR is ready for review, new or existing tests cover these changes. - When the PR is ready for review, the documentation is up to date with these changes. ## Summary by CodeRabbit * **Tests** * Simplified dependency handling by removing module-level import guards and using runtime checks that skip tests when optional ML libraries are unavailable. * Deferred importing of optional config/components until after runtime checks to prevent import errors and maintain consistent test behavior when dependencies are present. Authors: - Will Killian (https://github.com/willkill07) Approvers: - https://github.com/mnajafian-nv URL: https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1535 --- tests/nat/llm_providers/test_langchain_agents.py | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/tests/nat/llm_providers/test_langchain_agents.py b/tests/nat/llm_providers/test_langchain_agents.py index 3e6d26c20e..e1dca6e77b 100644 --- a/tests/nat/llm_providers/test_langchain_agents.py +++ b/tests/nat/llm_providers/test_langchain_agents.py @@ -26,12 +26,6 @@ from nat.llm.nim_llm import NIMModelConfig from nat.llm.openai_llm import OpenAIModelConfig -try: - from nat.llm.huggingface_llm import HuggingFaceConfig # noqa: F401 - HAS_HUGGINGFACE = True -except ImportError: - HAS_HUGGINGFACE = False - @pytest.mark.integration @pytest.mark.usefixtures("nvidia_api_key") @@ -148,14 +142,15 @@ async def test_azure_openai_react_e2e(test_data_dir: str): @pytest.mark.integration -@pytest.mark.skipif(not HAS_HUGGINGFACE, reason="HuggingFace dependencies (transformers, torch) not installed") async def test_huggingface_langchain_agent(): """ Test HuggingFace LLM with LangChain/LangGraph agent. Requires transformers and torch to be installed (optional dependencies). """ - from nat.llm.huggingface_llm import HuggingFaceConfig + pytest.importorskip("torch", reason="HuggingFace dependencies (transformers, torch) not installed") + pytest.importorskip("transformers", reason="HuggingFace dependencies (transformers, torch) not installed") + from nat.llm.huggingface_llm import HuggingFaceConfig prompt = ChatPromptTemplate.from_messages([("system", "You are a helpful AI assistant."), ("human", "{input}")]) # Use a small, fast model for testing From 4333370b753f1b0ab149ebfb886611757632ceeb Mon Sep 17 00:00:00 2001 From: Michael Demoret <42954918+mdemoret-nv@users.noreply.github.com> Date: Mon, 2 Feb 2026 16:24:21 -0800 Subject: [PATCH 2/3] Update README for 1.4 Release (#1546) ## Description Updating the Readme with the latest features and focus. ## By Submitting this PR I confirm: - I am familiar with the [Contributing Guidelines](https://github.com/NVIDIA/NeMo-Agent-Toolkit/blob/develop/docs/source/resources/contributing/index.md). - We require that all contributors "sign-off" on their commits. This certifies that the contribution is your original work, or you have rights to submit it under the same license, or a compatible license. - Any contribution which contains commits that are not Signed-Off will not be accepted. - When the PR is ready for review, new or existing tests cover these changes. - When the PR is ready for review, the documentation is up to date with these changes. ## Summary by CodeRabbit * **Documentation** * Updated README: refreshed hero text, reorganized features into a "Building Agents" section (framework-agnostic, reusability, customization, UI, profiling, observability, evaluation, hyper-parameter/prompt optimizer, RL fine-tuning, protocol support). * New Features list revised to include LangGraph agent wrapper, Automatic RL, NVIDIA Dynamo integration, A2A support, Safety & Security engine, and Bedrock/Strands updates. * Roadmap, installation wording, evaluation/finetuning headings, supported frameworks table, and optimizer docs reformatted. --------- Signed-off-by: Michael Demoret Signed-off-by: mnajafian-nv Co-authored-by: mnajafian-nv --- README.md | 55 +++++++++++-------- docs/source/improve-workflows/evaluate.md | 2 +- .../improve-workflows/finetuning/index.md | 2 +- .../finetuning/rl_with_openpipe.md | 6 +- docs/source/improve-workflows/optimizer.md | 8 +-- 5 files changed, 40 insertions(+), 33 deletions(-) diff --git a/README.md b/README.md index a90762bb6a..60b6ce1562 100644 --- a/README.md +++ b/README.md @@ -33,41 +33,46 @@ limitations under the License.
-*NVIDIA NeMo Agent Toolkit is a flexible, lightweight, and unifying library that allows you to easily connect existing enterprise agents to data sources and tools across any framework.* +*NVIDIA NeMo Agent Toolkit adds intelligence to AI agents across any frameworkβ€”enhancing speed, accuracy, and decision-making through enterprise-grade instrumentation, observability, and continuous learning.*
## πŸ”₯ New Features -- [**A2A Support**](./docs/source/components/integrations/a2a.md) NeMo Agent Toolkit now supports deploying and consuming agents using the A2A protocol. +- [**LangGraph Agent Automatic Wrapper:**](./examples/frameworks/auto_wrapper/langchain_deep_research/README.md) Easily onboard existing LangGraph agents to NeMo Agent Toolkit. Use the automatic wrapper to access NeMo Agent Toolkit advanced features with very little modification of LangGraph agents. -- [**Amazon Bedrock AgentCore and Strands Agents Support:**](./docs/source/components/integrations/frameworks.md#strands) NeMo Agent Toolkit now supports building agents using Strands Agents framework and deploying them securely on Amazon Bedrock AgentCore runtime. +- [**Automatic Reinforcement Learning (RL):**](./docs/source/improve-workflows/finetuning/index.md) Improve your agent quality by fine-tuning open LLMs to better understand your agent's workflows, tools, and prompts. Perform GRPO with [OpenPipe ART](./docs/source/improve-workflows/finetuning/rl_with_openpipe.md) or DPO with [NeMo Customizer](./docs/source/improve-workflows/finetuning/dpo_with_nemo_customizer.md) using NeMo Agent Toolkit built-in evaluation system as a verifier. -- [**LangChain Agent Automatic Wrapper:**](./examples/frameworks/auto_wrapper/langchain_deep_research/README.md) NeMo Agent Toolkit now supports automatic wrapping of existing LangChain/LangGraph Agents. +- [**Initial NVIDIA Dynamo Integration:**](./examples/dynamo_integration/README.md) Accelerate end-to-end deployment of agentic workflows with initial Dynamo support. Utilize the new agent-aware router to improve worker latency by predicting future agent behavior. -- [**Microsoft AutoGen Support**](./docs/source/components/integrations/frameworks.md#autogen) NeMo Agent Toolkit now supports building agents using AutoGen framework. +- [**A2A Support:**](./docs/source/components/integrations/a2a.md) Build teams of distributed agents using the A2A protocol. -- [**Initial NVIDIA Dynamo Integration:**](https://docs.nvidia.com/dynamo/latest/) NeMo Agent Toolkit now has initial Dynamo support for end-to-end deployment acceleration of agentic workflows. +- [**Safety and Security Engine:**](./examples/safety_and_security/retail_agent/README.md) Strengthen safety and security workflows by simulating scenario-based attacks, profiling risk, running guardrail-ready evaluations, and applying defenses with red teaming. Validate defenses, profile risk, monitor behavior, and harden agents across any framework. -- [**Per-User Functions**](./docs/source/extend/custom-components/custom-functions/per-user-functions.md) NeMo Agent Toolkit now supports per-user functions for deferred instantiation, enabling per-user stateful functions, per-user resources, and other features. +- [**Amazon Bedrock AgentCore and Strands Agents Support:**](./docs/source/components/integrations/frameworks.md#strands) Build agents using Strands Agents framework and deploy them securely on Amazon Bedrock AgentCore runtime. -## ✨ Key Features - -- 🧩 [**Framework Agnostic:**](./docs/source/components/integrations/frameworks.md) NeMo Agent Toolkit works side-by-side and around existing agentic frameworks, such as [LangChain](https://www.langchain.com/), [LlamaIndex](https://www.llamaindex.ai/), [CrewAI](https://www.crewai.com/), [Microsoft Semantic Kernel](https://learn.microsoft.com/en-us/semantic-kernel/), and [Google ADK](https://google.github.io/adk-docs/), as well as custom enterprise agentic frameworks and simple Python agents. This allows you to use your current technology stack without replatforming. NeMo Agent Toolkit complements any existing agentic framework or memory tool you're using and isn't tied to any specific agentic framework, LLM provider, or data source. - -- πŸ” [**Reusability:**](./docs/source/components/sharing-components.md) Every agent, tool, and agentic workflow in this library exists as a function call that works together in complex software applications. The composability between these agents, tools, and workflows allows you to build once and reuse in different scenarios. - -- ⚑ [**Rapid Development:**](docs/source/get-started/tutorials/customize-a-workflow.md) Start with a pre-built agent, tool, or workflow, and customize it to your needs. This allows you and your development teams to move quickly if you're already developing with agents. +- [**Microsoft AutoGen Support:**](./docs/source/components/integrations/frameworks.md#autogen) Build agents using the Microsoft AutoGen framework. -- πŸ“ˆ [**Profiling:**](./docs/source/improve-workflows/profiler.md) Use the profiler to profile entire workflows down to the tool and agent level, track input/output tokens and timings, and identify bottlenecks. While we encourage you to wrap (decorate) every tool and agent to get the most out of the profiler, you have the freedom to integrate your tools, agents, and workflows to whatever level you want. You start small and go to where you believe you'll see the most value and expand from there. +- [**Per-User Functions:**](./docs/source/extend/custom-components/custom-functions/per-user-functions.md) Use per-user functions for deferred instantiation, enabling per-user stateful functions, per-user resources, and other features. -- πŸ”Ž [**Observability:**](./docs/source/run-workflows/observe/observe.md) Monitor and debug your workflows with dedicated integrations for popular observability platforms such as Phoenix, Weave, and Langfuse, plus compatibility with OpenTelemetry-based observability platforms. Track performance, trace execution flows, and gain insights into your agent behaviors. - -- πŸ§ͺ [**Evaluation System:**](./docs/source/improve-workflows/evaluate.md) Validate and maintain accuracy of agentic workflows with built-in evaluation tools. - -- πŸ’¬ [**User Interface:**](./docs/source/run-workflows/launching-ui.md) Use the NeMo Agent Toolkit UI chat interface to interact with your agents, visualize output, and debug workflows. +## ✨ Key Features -- πŸ”— [**Full MCP Support:**](./docs/source/build-workflows/mcp-client.md) Compatible with [Model Context Protocol (MCP)](https://modelcontextprotocol.io/). You can use NeMo Agent Toolkit as an [MCP client](./docs/source/build-workflows/mcp-client.md) to connect to and use tools served by remote MCP servers. You can also use NeMo Agent Toolkit as an [MCP server](./docs/source/run-workflows/mcp-server.md) to publish tools via MCP. +- πŸ› οΈ **Building Agents**: Accelerate your agent development with tools that make it easier to get your agent into production. + - 🧩 [**Framework Agnostic:**](./docs/source/components/integrations/frameworks.md) Work side-by-side with agentic frameworks to add the instrumentation necessary for observing, profiling, and optimizing your agents. Use the toolkit with popular frameworks such as [LangChain](https://www.langchain.com/), [LlamaIndex](https://www.llamaindex.ai/), [CrewAI](https://www.crewai.com/), [Microsoft Semantic Kernel](https://learn.microsoft.com/en-us/semantic-kernel/), and [Google ADK](https://google.github.io/adk-docs/), as well as custom enterprise agentic frameworks and simple Python agents. + - πŸ” [**Reusability:**](./docs/source/components/sharing-components.md) Build components once and use them multiple times to maximize the value from development effort. + - ⚑ [**Customization:**](docs/source/get-started/tutorials/customize-a-workflow.md) Start with a pre-built agent, tool, or workflow, and customize it to your needs. + - πŸ’¬ [**Built-In User Interface:**](./docs/source/run-workflows/launching-ui.md) Use the NeMo Agent Toolkit UI chat interface to interact with your agents, visualize output, and debug workflows. +- πŸ“ˆ **Agent Insights:** Utilize NeMo Agent Toolkit instrumentation to better understand how your agents function at runtime. + - πŸ“Š [**Profiling:**](./docs/source/improve-workflows/profiler.md) Profile entire workflows from the agent level all the way down to individual tokens to identify bottlenecks, analyze token efficiency, and guide developers in optimizing their agents. + - πŸ”Ž [**Observability:**](./docs/source/run-workflows/observe/observe.md) Track performance, trace execution flows, and gain insights into your agent behaviors in production. +- πŸš€ **Agent Optimization:** Improve your agent's quality, accuracy, and performance with a suite of tools for all phases of the agent lifecycle. + - πŸ§ͺ [**Evaluation System:**](./docs/source/improve-workflows/evaluate.md) Validate and maintain accuracy of agentic workflows with a suite of tools for offline evaluation. + - 🎯 [**Hyper-Parameter and Prompt Optimizer:**](./docs/source/improve-workflows/optimizer.md) Automatically identify the best configuration and prompts to ensure you are getting the most out of your agent. + - 🧠 [**Fine-tuning with Reinforcement Learning:**](./docs/source/improve-workflows/finetuning/index.md) Fine-tune LLMs specifically for your agent and train intrinsic information about your workflow directly into the model. + - ⚑ [**NVIDIA Dynamo Integration:**](./examples/dynamo_integration/README.md) Use Dynamo and NeMo Agent Toolkit together to improve agent performance at scale. +- πŸ”Œ **Protocol Support:** Integrate with common protocols used to build agents. + - πŸ”— [**Model Context Protocol (MCP):**](./docs/source/build-workflows/mcp-client.md) Integrate [MCP tools](./docs/source/build-workflows/mcp-client.md) into your agents or serve your tools/agents as an [MCP server](./docs/source/run-workflows/mcp-server.md) for others to consume. + - 🀝 [**Agent-to-Agent (A2A) Protocol:**](./docs/source/components/integrations/a2a.md) Build teams of distributed agents with full support for authentication. With NeMo Agent Toolkit, you can move quickly, experiment freely, and ensure reliability across all your agent-driven projects. @@ -84,7 +89,7 @@ To install the latest stable version of NeMo Agent Toolkit from PyPI, run the fo pip install nvidia-nat ``` -NeMo Agent Toolkit has many optional dependencies which can be installed with the core package. Optional dependencies are grouped by framework and can be installed with the core package. For example, to install the LangChain/LangGraph plugin, run the following: +NeMo Agent Toolkit has many optional dependencies that can be installed with the core package. Optional dependencies are grouped by framework. For example, to install the LangChain/LangGraph plugin, run the following: ```bash pip install "nvidia-nat[langchain]" @@ -166,8 +171,10 @@ Before getting started, it's possible to run this simple workflow and many other ## πŸ›£οΈ Roadmap - [x] Automatic Reinforcement Learning (RL) to fine-tune LLMs for a specific agent. -- [ ] Integration with [NeMo Guardrails](https://github.com/NVIDIA/NeMo-Guardrails) to secure any function in an agent workflow. -- [x] End-to-end acceleration using intelligent integrations with [NVIDIA Dynamo](https://github.com/ai-dynamo/dynamo). +- [x] Integration with [NVIDIA Dynamo](https://github.com/ai-dynamo/dynamo) to reduce LLM latency at scale. +- [ ] Improve agent throughput with KV-Cache optimization. +- [ ] Integration with [NeMo Guardrails](https://github.com/NVIDIA/NeMo-Guardrails) to improve agent safety and security. +- [ ] Improved memory interface to support self-improving agents. ## πŸ’¬ Feedback diff --git a/docs/source/improve-workflows/evaluate.md b/docs/source/improve-workflows/evaluate.md index 0f4f0a0944..acc4c909f0 100644 --- a/docs/source/improve-workflows/evaluate.md +++ b/docs/source/improve-workflows/evaluate.md @@ -15,7 +15,7 @@ See the License for the specific language governing permissions and limitations under the License. --> -# Evaluating NVIDIA NeMo Agent Toolkit Workflows +# Agent Evaluation in NVIDIA NeMo Agent Toolkit Evaluation is the process of executing [workflows](../build-workflows/about-building-workflows.md) ([agents](../components/agents/index.md), [tools](../build-workflows/functions-and-function-groups/functions.md#agents-and-tools), or pipelines) on curated test data and measuring their quality using quantitative metrics such as accuracy, reliability, and latency. Each of these metrics in turn is produced by an evaluator. diff --git a/docs/source/improve-workflows/finetuning/index.md b/docs/source/improve-workflows/finetuning/index.md index 13786cea23..92ae5195b4 100644 --- a/docs/source/improve-workflows/finetuning/index.md +++ b/docs/source/improve-workflows/finetuning/index.md @@ -18,7 +18,7 @@ limitations under the License. -# Finetuning Harness +# NVIDIA NeMo Agent Toolkit Finetuning Harness for Reinforcement Learning :::{warning} **Experimental Feature**: The Finetuning Harness is experimental and may change in future releases. Future versions may introduce breaking changes without notice. diff --git a/docs/source/improve-workflows/finetuning/rl_with_openpipe.md b/docs/source/improve-workflows/finetuning/rl_with_openpipe.md index a64838b05f..acf724fa2e 100644 --- a/docs/source/improve-workflows/finetuning/rl_with_openpipe.md +++ b/docs/source/improve-workflows/finetuning/rl_with_openpipe.md @@ -17,7 +17,7 @@ limitations under the License. -# OpenPipe ART Integration +# GRPO with OpenPipe ART This guide covers the integration between the NVIDIA NeMo Agent toolkit finetuning harness and [OpenPipe ART](https://art.openpipe.ai/) (Agent Reinforcement Trainer), an open-source framework for teaching [LLMs](../../build-workflows/llms/index.md) through reinforcement learning. @@ -76,7 +76,7 @@ NeMo Agent toolkit connects to this backend through the `ARTTrainerAdapter`, whi The following table highlights the current support matrix for using ART with different agent frameworks in the NeMo Agent toolkit: -| Agent Framework | Support | +| Agent Framework | Support | |------------------------|--------------------------------------------------| | LangChain or LangGraph | βœ… Supported | | Google ADK | βœ… Supported | @@ -444,7 +444,7 @@ The `ARTTrainer` orchestrates the complete training loop: ### Running Training -You must have OpenPipe ART plugin installed (`nvidia-nat-openpipe-art`), and an OpenPipe ART server running +You must have OpenPipe ART plugin installed (`nvidia-nat-openpipe-art`), and an OpenPipe ART server running and configured to accept training jobs. ```bash diff --git a/docs/source/improve-workflows/optimizer.md b/docs/source/improve-workflows/optimizer.md index b47d7733a5..91906e1fa3 100644 --- a/docs/source/improve-workflows/optimizer.md +++ b/docs/source/improve-workflows/optimizer.md @@ -14,7 +14,7 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. --> -# NVIDIA NeMo Agent Toolkit Optimizer Guide +# NVIDIA NeMo Agent Toolkit Optimizer This document provides a comprehensive overview of how to use the NeMo Agent toolkit Optimizer to tune your NeMo Agent toolkit [workflows](../build-workflows/about-building-workflows.md). @@ -341,8 +341,8 @@ This is the main configuration object for the optimizer. - `prompt.ga_tournament_size: int`: Tournament size when `ga_selection_method` is `tournament`. Defaults to `3`. - `prompt.ga_parallel_evaluations: int`: Maximum number of concurrent evaluations. Controls async concurrency. Defaults to `8`. - `prompt.ga_diversity_lambda: float`: Diversity penalty strength to discourage duplicate prompt sets. `0.0` disables it. Defaults to `0.0`. -- `prompt.prompt_population_init_function: str | null`: Function name used to mutate base prompts to seed the initial population and perform mutations. The NeMo Agent Toolkit includes a built-in `prompt_init` Function located in the {py:mod}`~nat.agent.prompt_optimizer.register` file you can use in your configurations. -- `prompt.prompt_recombination_function: str | null`: Optional function name used to recombine two parent prompts into a child prompt. The NeMo Agent Toolkit includes a built-in `prompt_recombiner` Function located in the {py:mod}`~nat.agent.prompt_optimizer.register` file you can use in your configurations. +- `prompt.prompt_population_init_function: str | null`: Function name used to mutate base prompts to seed the initial population and perform mutations. The NeMo Agent Toolkit includes a built-in `prompt_init` Function located in the {py:mod}`~nat.agent.prompt_optimizer.register` file you can use in your configurations. +- `prompt.prompt_recombination_function: str | null`: Optional function name used to recombine two parent prompts into a child prompt. The NeMo Agent Toolkit includes a built-in `prompt_recombiner` Function located in the {py:mod}`~nat.agent.prompt_optimizer.register` file you can use in your configurations. - `reps_per_param_set: int`: The number of times to run the workflow for each set of parameters to get a more stable evaluation. This is important for noisy evaluations where the result might vary even with the same parameters. Defaults to `3`. - `target: float | None`: If set, the optimization will stop when the combined score for a trial reaches this value. This is useful if you have a specific performance target and want to save time. The score is normalized between 0 and 1. Defaults to `None`. - `multi_objective_combination_mode: str`: How to combine multiple objective scores into a single scalar. Supported: `harmonic`, `sum`, `chebyshev`. Defaults to `harmonic`. @@ -563,7 +563,7 @@ This matrix visualization shows: **Example decision process**: - If latency is critical: Choose a Pareto optimal point with the lowest latency that still meets your accuracy requirements - If accuracy is paramount: Select the highest accuracy configuration and accept the latency trade-off -- For balanced performance: Pick a point in the middle of the Pareto front +- For balanced performance: Pick a point in the middle of the Pareto front ## A Complete Example of Optimization From 740b87636dcc6733d40db57e44b0db54a0059146 Mon Sep 17 00:00:00 2001 From: Will Killian <2007799+willkill07@users.noreply.github.com> Date: Mon, 2 Feb 2026 20:55:49 -0500 Subject: [PATCH 3/3] docs: 1.4 changelog and release notes (#1544) ## Description - Adds 1.4 Changelog - Updates release notes for 1.4 ## By Submitting this PR I confirm: - I am familiar with the [Contributing Guidelines](https://github.com/NVIDIA/NeMo-Agent-Toolkit/blob/develop/docs/source/resources/contributing/index.md). - We require that all contributors "sign-off" on their commits. This certifies that the contribution is your original work, or you have rights to submit it under the same license, or a compatible license. - Any contribution which contains commits that are not Signed-Off will not be accepted. - When the PR is ready for review, new or existing tests cover these changes. - When the PR is ready for review, the documentation is up to date with these changes. ## Summary by CodeRabbit * **Documentation** * Release notes added for v1.4.0 (2026-02-02) outlining notable features and improvements: A2A support, Amazon Bedrock AgentCore & Strands, LangChain/LangGraph automatic agent wrapper, Microsoft AutoGen, initial NVIDIA Dynamo integration, and per-user functions with deferred instantiation and per-user state. * Release header bumped to 1.4.0; sections added for Notable Features, Breaking Changes, New Features, Improvements, Bug Fixes, Documentation Updates, and New Contributors. * Known Issues preserved; minor README wording tweak for protocol support. --------- Signed-off-by: Will Killian Co-authored-by: mnajafian-nv --- CHANGELOG.md | 269 +++++++++++++++++++++++++++++++++++ README.md | 2 +- docs/source/release-notes.md | 44 ++---- 3 files changed, 283 insertions(+), 32 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5a00efd8ba..d36eafdc33 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -18,6 +18,275 @@ limitations under the License. # Changelog All notable changes to this project will be documented in this file. +## [1.4.0] - 2026-02-02 + +### πŸš€ Notable Features and Improvements +- [**LangGraph Agent Automatic Wrapper:**](https://github.com/NVIDIA/NeMo-Agent-Toolkit/blob/release/1.4/examples/frameworks/auto_wrapper/langchain_deep_research/README.md) Easily onboard existing LangGraph agents to NeMo Agent Toolkit. Use the automatic wrapper to access NeMo Agent Toolkit advanced features with very little modification of LangGraph agents. +- [**Automatic Reinforcement Learning (RL):**](https://github.com/NVIDIA/NeMo-Agent-Toolkit/blob/release/1.4/docs/source/improve-workflows/finetuning/index.md) Improve your agent quality by fine-tuning open LLMs to better understand your agent's workflows, tools, and prompts. Perform GRPO with [OpenPipe ART](https://github.com/NVIDIA/NeMo-Agent-Toolkit/blob/release/1.4/docs/source/improve-workflows/finetuning/rl_with_openpipe.md) or DPO with [NeMo Customizer](https://github.com/NVIDIA/NeMo-Agent-Toolkit/blob/release/1.4/docs/source/improve-workflows/finetuning/dpo_with_nemo_customizer.md) using NeMo Agent Toolkit built-in evaluation system as a verifier. +- [**Initial NVIDIA Dynamo Integration:**](https://github.com/NVIDIA/NeMo-Agent-Toolkit/blob/release/1.4/examples/dynamo_integration/README.md) Accelerate end-to-end deployment of agentic workflows with initial Dynamo support. Utilize the new agent-aware router to improve worker latency by predicting future agent behavior. +- [**A2A Support:**](https://github.com/NVIDIA/NeMo-Agent-Toolkit/blob/release/1.4/docs/source/components/integrations/a2a.md) Build teams of distributed agents using the A2A protocol. +- [**Safety and Security Engine:**](https://github.com/NVIDIA/NeMo-Agent-Toolkit/blob/release/1.4/examples/safety_and_security/retail_agent/README.md) Strengthen safety and security workflows by simulating scenario-based attacks, profiling risk, running guardrail-ready evaluations, and applying defenses with red teaming. Validate defenses, profile risk, monitor behavior, and harden agents across any framework. +- [**Amazon Bedrock AgentCore and Strands Agents Support:**](https://github.com/NVIDIA/NeMo-Agent-Toolkit/blob/release/1.4/docs/source/components/integrations/frameworks.md#strands) Build agents using Strands Agents framework and deploy them securely on Amazon Bedrock AgentCore runtime. +- [**Microsoft AutoGen Support:**](https://github.com/NVIDIA/NeMo-Agent-Toolkit/blob/release/1.4/docs/source/components/integrations/frameworks.md#autogen) Build agents using the Microsoft AutoGen framework. +- [**Per-User Functions:**](https://github.com/NVIDIA/NeMo-Agent-Toolkit/blob/release/1.4/docs/source/extend/custom-components/custom-functions/per-user-functions.md) Use per-user functions for deferred instantiation, enabling per-user stateful functions, per-user resources, and other features. + +### 🚨 Breaking Changes +* Update weave trace identifiers by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1055 +* feat: switch calculator functions to a single function group by @willkill07 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/954 +* Use Pydantic `SecretStr` fields for all sensitive values by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1123 +* Migrate Zep Cloud integration from v2 to v3 API by @jackaldenryan in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1122 +* feat!(llm): exclude unset fields in model dump for all LLMs and Embedders by @willkill07 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1143 +* Documentation Restructure by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1231 +* Implement Per-User Function Instantiation by @yczhang-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1206 +* Remove `default_user_id` from `GeneralConfig` to prevent unsafe per-user workflow sharing by @yczhang-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1282 +* chore: update dependency package versions for 1.4 by @willkill07 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1316 +* improvement: change Function Group separator to `__` by @willkill07 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1328 +* Refactor MCP Frontend: Move to nvidia-nat-mcp package by @AnuradhaKaruppiah in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1332 +* chore: update `nvidia-nat-all` and add documentation by @willkill07 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1340 +### ✨ New Features +* Add DBNL Telemetry Exporter by @dbnl-renaud in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1111 +* Add default Phoenix session tracking support by @ericevans-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1132 +* Add support for workflow configuration inheritance by @thepatrickchin in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1152 +* Add `Middleware` and native support for `FunctionMiddleware` for all functions by @dnandakumar-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1130 +* Add support for a customizable MCP service account auth provider by @AnuradhaKaruppiah in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1176 +* Introduce vanna text2sql by @jiaxiangr in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/974 +* Strands integration by @ronjer30 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1063 +* NAT A2A Client & Server Support by @AnuradhaKaruppiah in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1147 +* Introduce Finetuning Harness for In-Situ Reinforcement Learning of Agentic Workflows by @dnandakumar-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1221 +* Add Support for NeMo Customizer to Finetuning Harness by @dnandakumar-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1241 +* Register per-user `ReAct` agent by @yczhang-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1274 +* dynamo llm integration with examples, analysis, and custom predictive routers by @bbednarski9 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1242 +* Add a bridge between NAT and A2A auth mechanisms by @AnuradhaKaruppiah in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1232 +* Migrate the a2a client implementation to per-user mode by @AnuradhaKaruppiah in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1281 +* Add weave feedback integration for chat interactions by @thepatrickchin in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/781 +* Extend Middleware interface with pre/post invoke hooks and add DynamicFunctionMiddleware by @ericevans-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1216 +* Agent Safety And Security Engine by @ericevans-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1262 +* Microsoft Autogen Framework Integration [Synopsys] by @bbednarski9 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1330 +* Implement per-user resource usage monitoring endpoint by @yczhang-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1280 +* Add automatic wrappers for LangGraph Agents by @mdemoret-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1322 +* Make All CLI Commands Plugin-Discoverable by @AnuradhaKaruppiah in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1346 +* feat: Add AutoMemoryWrapper agent for automatic memory management by @jackaldenryan in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1137 +* Add health endpoint to FastAPI server by @antoniomtz in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1466 +### πŸ”§ Improvements +* Add a configurable memory profiler for the MCP frontend by @AnuradhaKaruppiah in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/961 +* Optimize retry logic with memory management improvements by @dnandakumar-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1014 +* Refactor to make `model_name` an optimizable field across LLMs by @dnandakumar-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1020 +* Added new agent and example utilizing the OpenAI Responses API by @dnandakumar-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/414 +* Include input and output messages in weave observability traces by @thepatrickchin in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1050 +* Allow attaching arbitrary attributes to Weave traces by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1057 +* feat: nat optimizer support for Optuna GridSearch by @bbednarski9 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1076 +* Lint fixes by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1097 +* Make the `run_workflow` method a part of the core API by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1098 +* Support Redis password authentication by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1110 +* Update example notebook to use the `run_workflow` function by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1113 +* Add E2E tests for Simple RAG Example by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1114 +* Add E2E test for ADK demo example by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1115 +* Cleanup E2E tests by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1116 +* Update password fields to use Pydantic `SecretStr` type by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1118 +* Update fastapi version by @AnuradhaKaruppiah in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1117 +* Support custom MCP server implementations by @AnuradhaKaruppiah in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1087 +* Add reference to NAT job_id in Weave evaluation attributes by @thepatrickchin in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1140 +* Add evaluator reasoning to Weave score logs by @thepatrickchin in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1141 +* Add E2E tests for notebook examples by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1128 +* Add E2E test for simple auth example by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1148 +* Support Unix shell-style wildcards in dataset filter configuration by @thepatrickchin in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1146 +* Add optional TTL configuration for Redis object store by @thepatrickchin in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1157 +* Local sandbox improvements by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1162 +* Forward merge 'release/1.3' into develop by @willkill07 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1135 +* feat: relax temperature bounds to be model-specific by @willkill07 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1172 +* Update the `test_lifetime_task_timeout` test to not take 60s by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1171 +* Ensure that the compatibility loader is removed after each test by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1177 +* Add an E2E test for Simple Calculator Galileo observability example by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1095 +* Improve haystack_deep_research_agent example by @mpangrazzi in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1170 +* Add a simple evaluate_item endpoint by @AnuradhaKaruppiah in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1138 +* Remove work-around for qdrant/qdrant-client#983 by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1186 +* Provide a method for adding routes at the root level of the NAT-MCP server by @AnuradhaKaruppiah in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1187 +* Silence warnings being emitted during tests by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1189 +* Work-around slow import issue for google-adk by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1192 +* Remove `pytest-pretty` by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1193 +* Add E2E test for RagaAI Catalyst by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1194 +* Create TTC Functions for Multi-LLM Generation by @dnandakumar-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1203 +* Add a Kaggle MCP usage example by @AnuradhaKaruppiah in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1209 +* Security and Lint updates for AgentCore Deploy by @BuildOnCloud in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1220 +* Add a tabular output for evaluation results by @AnuradhaKaruppiah in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1239 +* Update finetuning docs and add harness to workflows guide by @dnandakumar-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1245 +* Update README for RL Example by @dnandakumar-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1252 +* Mark wheels with a beta tag as `ready` by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1284 +* fix: uv.lock update for nat_react_benchmark_agent by @bbednarski9 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1285 +* Add rules to try and catch a bug where `default=''` is used for a `SecretStr` field by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1304 +* dynamo unit test patch and cleanup by @bbednarski9 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1303 +* fix: AWS AgentCore IAM policy rules and example prerequisites by @bbednarski9 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1315 +* Update copyright year by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1317 +* Fix: add parent-child lineage to trace/span exporter attributes by @bbednarski9 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1320 +* changed to simplified system prompt and properly handle no inputs by @mnajafian-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1307 +* Add configurable description for sequential executor by @thepatrickchin in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1293 +* Add early exit mechanisms for Sequential Executor by @thepatrickchin in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1289 +* chore: bump github actions version to v6 by @willkill07 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1334 +* Implement Non-session-aware Per-user `MCPClient` by @yczhang-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1253 +* Add Configuration Preservation to Evaluation Output by @AnuradhaKaruppiah in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1336 +* chore: bump langchain deps; regenerate uv.lock by @willkill07 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1333 +* Remove stray file unintentionally added to the repository by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1339 +* Rename Sequential Executor input parameter for compatibility with generate endpoints by @thepatrickchin in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1291 +* Implement CLI Plugin Discovery System by @AnuradhaKaruppiah in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1341 +* Improve Safety and Security Engine README by @ericevans-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1344 +* Add documentation specific rules to `.coderabbit.yaml` by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1348 +* Improves finetuning end status logging by @dnandakumar-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1350 +* chore: update NAT UI submodule by @willkill07 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1352 +* Update the build_wheel CI stage to always build wheels with matching version dependencies by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1343 +* Update langsmith.xlsx to match data in langsmith.csv by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1360 +* Clean up SWE-bench example: Remove unmaintained predictor and migrate to remote datasets by @AnuradhaKaruppiah in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1361 +* chore: update ui submodule, semantic-kernel, and langchain versions by @willkill07 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1369 +* Reorganize A2A Examples for Clarity by @AnuradhaKaruppiah in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1368 +* add support for langchain agents that are wrapped as async context managers by @gfreeman-nvidia in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1371 +* chore: bump urllib3+langchain; specify werkzeug as transitive dep by @willkill07 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1375 +* chore: speed up tests by @willkill07 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1378 +* Decouple HuggingFace LLM provider from LangChain dependency by @ericevans-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1367 +* Add code owners for example data directories by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1379 +* Fix Windows path parsing in find_package_root by @ericevans-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1380 +* chore: update nvidia_nat_weave > weave > fickling dependency by @willkill07 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1386 +* Add a pre-commit script to ensure output cells of notebooks are cleared by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1381 +* Increase the time limit for the test stage by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1400 +* Expose Dask `memory_limit` config by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1401 +* Standardize RAG service response schema parsing by @ericevans-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1406 +* Fix/simplify event loop test by @mnajafian-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1405 +* fix: correct ReWOO planner prompt JSON example format by @mnajafian-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1410 +* Add pytest-timeout and set a global 5min timeout by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1411 +* Expose Dask threads per worker by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1408 +* Handle consecutive status check failures with retry logic in DPO trainer adapter by @dnandakumar-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1415 +* Fix multi_frameworks workflow CI failure by @mnajafian-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1418 +* Update middleware to use FunctionGroup.SEPARATOR for function matching by @ericevans-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1448 +* Update A2A docs by @AnuradhaKaruppiah in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1447 +* Update the build_wheel CI script to test that built wheels are installable by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1457 +* Add websocket MCP auth check script (no UI) by @AnuradhaKaruppiah in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1465 +* docs: Restore Llama config docs in simple_web_query_eval README by @mnajafian-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1472 +* fix: dynamo multi-worker deployment shell script update by @bbednarski9 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1479 +* update package versions in uv.lock; update UI submodule by @willkill07 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1469 +* Update Dask by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1478 +* Improve Safety and Security retail agent docs by @ericevans-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1492 +* improvement(adk-example): update example to prefer NVIDIA NIM by @willkill07 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1495 +* add name attribute to FunctionBaseConfig for workflow naming in span exporter by @bbednarski9 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1482 +* chore: prefer non-required packages are manually installed by @willkill07 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1516 +* chore: remove huggingface extra by @willkill07 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1525 +### πŸ› Bug Fixes +* Ensure CI uses `--first-parent` when calling `git describe` by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/940 +* Fixes to detect optional parameters in tool conversion used by "nat mcp serve" by @AnuradhaKaruppiah in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1126 +* Mini Patch ReWOO Test Failure by @billxbf in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1155 +* Fix documentation version switcher by @thepatrickchin in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1159 +* Ensure that the `ADKProfilerHandler` patches are not applied more than once by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1175 +* Fix `documentation_checks.sh` script to run on MacOS by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1178 +* Add bind_tools and bind methods to LangChainTestLLM by @AnuradhaKaruppiah in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1181 +* Truncate long error messages by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1182 +* Ensure jq is installed prior to running integration tests by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1183 +* fix(azure-openai): ensure api_version is specified by @willkill07 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1185 +* Replace `nest-asyncio` with `nest-asyncio2` by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1190 +* Bug/strands unit tests by @bbednarski9 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1196 +* Fix: Add ca-certificates to simple_calculator Dockerfile by @rmalani-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1201 +* Use secret value for client_secret in OAuth client by @dzmitryv111111 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1198 +* Fix the `aiq_compatibility_span_prefix` fixture by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1199 +* Add `model_name` as a computed field to `AzureOpenAIModelConfig` by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1214 +* Enable observability for individual function calls in MCP server by @mpenn in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1234 +* Update the `nvidia-nat-vanna` dependency on nvidia-nat to declare plugins using the square bracket form by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1238 +* Use a local Piston server for E2E integration tests by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1244 +* Fix ReAct agent TypeError with LiteLLM and Anthropic models by @sjarmak in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1251 +* Adopt fixes for image generation by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1286 +* Unify the `user_id` adding logic to `context_state` for multiple CLI commands by @yczhang-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1287 +* Fix MCP workflow entry function handling by @mpenn in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1277 +* Fix bug where `SecretStr` fields defaulting to an empty string were not being instantiated by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1298 +* Fix `TypeConverter` not able to handle `Union` type conversion by @yczhang-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1301 +* Revert version specification to 1.4 by @willkill07 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1312 +* Change the `url` field in `ImageUrl` model from `HttpUrl` to `str` by @mpenn in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1314 +* Add error handling to E2E test report script by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1319 +* Fix notebook E2E tests by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1321 +* Update openpipe-art to version 0.5.4 by @dnandakumar-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1323 +* Fix simple_calculator protected a2a server installation issues by @AnuradhaKaruppiah in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1326 +* Improve Multi-User Testing Instructions in Math Assistant A2A Example by @AnuradhaKaruppiah in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1329 +* Resolve dependency conflicts from `nvidia_nat_openpipe_art` package by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1331 +* Add missing `tzdata` package to Docker image by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1337 +* Fix CI failures: RAG recursion and eval assertion by @mnajafian-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1347 +* Fix A2A Client CLI Commands After Multi-User Migration by @AnuradhaKaruppiah in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1353 +* Revert system prompt for react agent's prompt by @mnajafian-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1358 +* fix: strip remaining occurrences of `.` for function groups by @willkill07 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1362 +* Update weave to latest version, resolves a conflict with autogen by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1363 +* Update `FunctionGroup` separator in MCP client CLI by @yczhang-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1359 +* Fix training cancellation 404 error by @mnajafian-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1364 +* chore: ensure all installable examples are specified in root `pyproject.toml` by @willkill07 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1373 +* For tagged and nightly builds use GIT_TAG as-is by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1376 +* bug fix: Dynamo SGLang Startup Script Cleanup by @bbednarski9 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1357 +* fix: Amd64 Support for Bedrock Strands Demo by @bbednarski9 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1377 +* Update currency agent A2A example instructions to use openai models by @AnuradhaKaruppiah in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1372 +* fix: langchain<>huggingface integration by @willkill07 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1382 +* Async endpoint improvements by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1374 +* Fix/agno flaky test release 1.4 by @mnajafian-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1383 +* fix: update `config_inheritance` example with proper setup by @willkill07 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1384 +* fix: update configs for autogen example; fix MCP tool wrapping by @willkill07 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1387 +* Fix nvbug: SSL cert verification and FD exhaustion in email_phishing_analyzer Docker build by @mnajafian-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1389 +* Fix issues with haystack deep research agent example by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1388 +* Update help string and doc for "nat run --input_file" by @AnuradhaKaruppiah in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1390 +* autogen demo: LA traffic example by @bbednarski9 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1426 +* Update test models to nemotron 3 and fix test assertions by @hsin-c in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1425 +* Re-generate several dataset in examples by @yczhang-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1427 +* fix(oauth2): Add client_id to refresh_token request for MaaS OAuth servers by @andywy110 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1421 +* Fix token usage statistics and image viewing in Profiler Agent by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1428 +* Update deep research notebook with `Nemotron` models and clearer instructions by @yczhang-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1436 +* fix(eval): prevent awaited coroutine reuse on Exception by @willkill07 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1438 +* fix(weave): ensure contextmanager protocol is implemented for weave mock by @willkill07 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1439 +* fix(deps): version specifiers with major.minor.patch should not use `~=` by @willkill07 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1452 +* Update models and inputs `langgraph_deep_research` notebook to enhance performance and consistency by @yczhang-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1444 +* Fix MCP tool UI display by @AnuradhaKaruppiah in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1462 +* Fix CI failures: Complete Llamaβ†’Nemotron migration for remaining exam… by @mnajafian-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1464 +* Fix concurrent async generate requests by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1498 +* Remove the task_timeout from the a2a sample config files by @AnuradhaKaruppiah in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1508 +* Escape special characters in Redis user_id for vector search by @thepatrickchin in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1494 +* chore: update UI submodule to have latest fixes by @willkill07 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1522 +* Fix LLM calling actions not traced in `phoenix` when running `nat serve` by @yczhang-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1520 +* fix(testing): guard huggingface integration test with importorskip by @willkill07 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1535 +### πŸ“ Documentation Updates +* docs: initial nat optimizer notebook by @bbednarski9 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1053 +* doc: cleanup notebook 6 (nat optimize) and alert triage agent optimization by @bbednarski9 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1125 +* docs: getting started notebook 7 - mcp client and server setup using NAT by @bbednarski9 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1145 +* docs: renumbering the getting started notebooks by @bbednarski9 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1149 +* Enhance documentation for Strands Agents integration by @ronjer30 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1205 +* Updates to AWS AgentCore README and scripts by @ronjer30 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1208 +* google-adk version upgrade by @bbednarski9 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1217 +* tests: remove obsolete conftest by @bbednarski9 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1219 +* Restructuring and reorganizing workflows by @lvojtku in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1173 +* Update Cursor rules to use the new naming guidance by @yczhang-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1273 +* Define terms in documentation on first use, and refer back to definition when used in other documents by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1254 +* Add support matrix for RL by @dnandakumar-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1327 +* Update README instructions for consistency and clarity by @dnandakumar-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1338 +* Add documentation compatibility redirects for old 1.3 urls by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1351 +* Update Python version to 3.13 in README example by @dnandakumar-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1366 +* Fix `kaggle_mcp` example input by @yczhang-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1395 +* docs: fix docker run commands for local LLMs by @willkill07 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1398 +* Update `langchain_deep_research` documentation to mention Anthropic API key is needed by @yczhang-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1402 +* docs: add deepwiki badge; update troubleshooting to mention conda by @willkill07 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1412 +* docs: add complexity levels to all examples by @willkill07 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1422 +* bug fix: dynamo integration - model download and instructions clarification by @bbednarski9 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1420 +* Add no cache installation to ART by @dnandakumar-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1424 +* fix: strands demo reliability improvements by @bbednarski9 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1429 +* docs: nat-dynamo startup scripts improved envar documentation by @bbednarski9 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1443 +* docs: add conda install warning to installation.md by @bbednarski9 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1446 +* docs: add CUDA prereq warning to examples by @bbednarski9 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1455 +* Minor cleanup to Simple Calculator Eval documentation by @dagardner-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1463 +* docs: dynamo readme simplification and hardware requirements cleanup by @bbednarski9 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1509 +* Update RL README with OpenAI API key setup and adjust commands by @dnandakumar-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1514 +* docs: dynamo integration performance comparison docs by @bbednarski9 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1515 +* Update documentation for prerequisites and logprobs clarification by @dnandakumar-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1530 +* docs: add migration guide for 1.4 by @willkill07 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1533 +* docs: 1.4 changelog and release notes by @willkill07 in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1544 +* Update README for 1.4 Release by@mdemoret-nv in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1546 + +### πŸ™Œ New Contributors +* @dbnl-renaud made their first contribution in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1111 +* @mpangrazzi made their first contribution in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1170 +* @jiaxiangr made their first contribution in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/974 +* @ronjer30 made their first contribution in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1063 +* @rmalani-nv made their first contribution in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1201 +* @dzmitryv111111 made their first contribution in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1198 +* @BuildOnCloud made their first contribution in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1220 +* @sjarmak made their first contribution in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1251 +* @andywy110 made their first contribution in https://github.com/NVIDIA/NeMo-Agent-Toolkit/pull/1421 + ## [1.3.1] - 2025-11-07 ### πŸ“¦ Overview diff --git a/README.md b/README.md index 60b6ce1562..e0ee37219d 100644 --- a/README.md +++ b/README.md @@ -71,7 +71,7 @@ limitations under the License. - 🧠 [**Fine-tuning with Reinforcement Learning:**](./docs/source/improve-workflows/finetuning/index.md) Fine-tune LLMs specifically for your agent and train intrinsic information about your workflow directly into the model. - ⚑ [**NVIDIA Dynamo Integration:**](./examples/dynamo_integration/README.md) Use Dynamo and NeMo Agent Toolkit together to improve agent performance at scale. - πŸ”Œ **Protocol Support:** Integrate with common protocols used to build agents. - - πŸ”— [**Model Context Protocol (MCP):**](./docs/source/build-workflows/mcp-client.md) Integrate [MCP tools](./docs/source/build-workflows/mcp-client.md) into your agents or serve your tools/agents as an [MCP server](./docs/source/run-workflows/mcp-server.md) for others to consume. + - πŸ”— [**Model Context Protocol (MCP):**](./docs/source/build-workflows/mcp-client.md) Integrate [MCP tools](./docs/source/build-workflows/mcp-client.md) into your agents or serve your tools and agents as an [MCP server](./docs/source/run-workflows/mcp-server.md) for others to consume. - 🀝 [**Agent-to-Agent (A2A) Protocol:**](./docs/source/components/integrations/a2a.md) Build teams of distributed agents with full support for authentication. With NeMo Agent Toolkit, you can move quickly, experiment freely, and ensure reliability across all your agent-driven projects. diff --git a/docs/source/release-notes.md b/docs/source/release-notes.md index c9dca0b855..bb0dcd9df8 100644 --- a/docs/source/release-notes.md +++ b/docs/source/release-notes.md @@ -18,38 +18,20 @@ limitations under the License. # NVIDIA NeMo Agent Toolkit Release Notes This section contains the release notes for [NeMo Agent toolkit](./index.md). -## Release 1.3.1 +## Release 1.4.0 ### Summary -This is a minor release with documentation updates, bug fixes, and non-breaking improvements. - -### New Features -This release adds support for the Claude Sonnet 4.5 model and adds support for arbitrary JSON body types in custom routes. - -Refer to the [changelog](https://github.com/NVIDIA/NeMo-Agent-Toolkit/blob/release/1.3/CHANGELOG.md) for a complete list of changes. - -## Release 1.3.0 -### Summary -This release introduces support for Google Agent Development Kit (ADK), adds control-flow agents, function groups, hyperparameter agent optimizer, LLM provider improvements, MCP server improvements, and Python 3.13 support. The toolkit continues to offer backwards compatibility, making the transition seamless for existing users. - -### New Features -The following are the key features and improvements in this release: -* [ADK Support](https://github.com/NVIDIA/NeMo-Agent-Toolkit/blob/release/1.3/docs/source/reference/frameworks-overview.md): Supports Google Agent Development Kit (ADK). Adds tool calling, core observability, and LLM integration in this release. -* [Control-Flow Agents](https://github.com/NVIDIA/NeMo-Agent-Toolkit/blob/release/1.3/docs/source/workflows/about/index.md): [Sequential Executor](https://github.com/NVIDIA/NeMo-Agent-Toolkit/blob/release/1.3/docs/source/workflows/about/sequential-executor.md) (Linear Agent) and [Router Agent](https://github.com/NVIDIA/NeMo-Agent-Toolkit/blob/release/1.3/docs/source/workflows/about/router-agent.md) now control flow patterns of tool calls and sub-agents. -* [Function Groups](https://github.com/NVIDIA/NeMo-Agent-Toolkit/blob/release/1.3/docs/source/workflows/function-groups.md): Packages multiple related functions together so they share configuration, context, and resources. -* [Hyperparameter Agent Optimizer](https://github.com/NVIDIA/NeMo-Agent-Toolkit/blob/release/1.3/docs/source/reference/optimizer.md): Automates hyperparameter tuning and prompt engineering for workflows. -* [Introductory Notebook Improvements](https://github.com/NVIDIA/NeMo-Agent-Toolkit/blob/release/1.3/examples/notebooks/README.md): Reorganizes getting started notebooks and adds Open in Colab links. -* [LLM Improvements](https://github.com/NVIDIA/NeMo-Agent-Toolkit/blob/release/1.3/docs/source/workflows/llms/index.md) - - Adds LiteLLM Provider - - Supports GPT-5 (`/chat/completions` endpoint only) - - Adds Nemotron thinking configuration -* [MCP Improvements](https://github.com/NVIDIA/NeMo-Agent-Toolkit/blob/release/1.3/docs/source/workflows/mcp/index.md) - - Supports `streamable-http` - `sse` is no longer the default transport type. - - Supports initial authorization - Enables connecting to MCP servers that require authentication. - - Supports multiple MCP tools from a single configuration - Pulls in entire tool sets published by MCP servers or filters them based on user configuration. - - Enhances CLI utilities for MCP servers and clients - Improves the `nat mcp` sub-command for querying, calling, and listing tools. -* Python 3.13 support - -Refer to the [changelog](https://github.com/NVIDIA/NeMo-Agent-Toolkit/blob/release/1.3/CHANGELOG.md) for a complete list of changes. +This release introduces initial support for several frameworks and integrations including A2A, AWS Strands, Amazon Bedrock AgentCore, Microsoft AutoGen, and NVIDIA Dynamo. In addition to new framework and integrations, an automatic agent wrapper for LangGraph Agents enables users to bring their own agent. Per-user functions enable deferred instantiation which provides per-user stateful functions, per-user resources, and other useful features. The toolkit continues to offer backwards compatibility, making the transition seamless for existing users. + +- [**LangGraph Agent Automatic Wrapper:**](https://github.com/NVIDIA/NeMo-Agent-Toolkit/blob/release/1.4/examples/frameworks/auto_wrapper/langchain_deep_research/README.md) Easily onboard existing LangGraph agents to NeMo Agent Toolkit. Use the automatic wrapper to access NeMo Agent Toolkit advanced features with very little modification of LangGraph agents. +- [**Automatic Reinforcement Learning (RL):**](https://github.com/NVIDIA/NeMo-Agent-Toolkit/blob/release/1.4/docs/source/improve-workflows/finetuning/index.md) Improve your agent quality by fine-tuning open LLMs to better understand your agent's workflows, tools, and prompts. Perform GRPO with [OpenPipe ART](https://github.com/NVIDIA/NeMo-Agent-Toolkit/blob/release/1.4/docs/source/improve-workflows/finetuning/rl_with_openpipe.md) or DPO with [NeMo Customizer](https://github.com/NVIDIA/NeMo-Agent-Toolkit/blob/release/1.4/docs/source/improve-workflows/finetuning/dpo_with_nemo_customizer.md) using NeMo Agent Toolkit built-in evaluation system as a verifier. +- [**Initial NVIDIA Dynamo Integration:**](https://github.com/NVIDIA/NeMo-Agent-Toolkit/blob/release/1.4/examples/dynamo_integration/README.md) Accelerate end-to-end deployment of agentic workflows with initial Dynamo support. Utilize the new agent-aware router to improve worker latency by predicting future agent behavior. +- [**A2A Support:**](https://github.com/NVIDIA/NeMo-Agent-Toolkit/blob/release/1.4/docs/source/components/integrations/a2a.md) Build teams of distributed agents using the A2A protocol. +- [**Safety and Security Engine:**](https://github.com/NVIDIA/NeMo-Agent-Toolkit/blob/release/1.4/examples/safety_and_security/retail_agent/README.md) Strengthen safety and security workflows by simulating scenario-based attacks, profiling risk, running guardrail-ready evaluations, and applying defenses with red teaming. Validate defenses, profile risk, monitor behavior, and harden agents across any framework. +- [**Amazon Bedrock AgentCore and Strands Agents Support:**](https://github.com/NVIDIA/NeMo-Agent-Toolkit/blob/release/1.4/docs/source/components/integrations/frameworks.md#strands) Build agents using Strands Agents framework and deploy them securely on Amazon Bedrock AgentCore runtime. +- [**Microsoft AutoGen Support:**](https://github.com/NVIDIA/NeMo-Agent-Toolkit/blob/release/1.4/docs/source/components/integrations/frameworks.md#autogen) Build agents using the Microsoft AutoGen framework. +- [**Per-User Functions:**](https://github.com/NVIDIA/NeMo-Agent-Toolkit/blob/release/1.4/docs/source/extend/custom-components/custom-functions/per-user-functions.md) Use per-user functions for deferred instantiation, enabling per-user stateful functions, per-user resources, and other features. + +Refer to the [changelog](https://github.com/NVIDIA/NeMo-Agent-Toolkit/blob/release/1.4/CHANGELOG.md) for a complete list of changes. ## Known Issues - Refer to [https://github.com/NVIDIA/NeMo-Agent-Toolkit/issues](https://github.com/NVIDIA/NeMo-Agent-Toolkit/issues) for an up to date list of current issues.