Is this a new feature, an improvement, or a change to existing functionality?
New Feature
How would you describe the priority of this feature request
Medium
Please provide a clear description of problem this feature solves
I want NeMo Agent Toolkit to expose the full Tavily Python SDK (search, extract, crawl, map, research) as framework-neutral NAT functions, because the current integration falls short on two axes:
- Framework lock-in. The existing
tavily_internet_search lives in nvidia_nat_langchain and uses langchain_tavily directly (packages/nvidia_nat_langchain/src/nat/plugins/langchain/tools/ tavily_internet_search.py). Users on Agno, LlamaIndex, Strands, Semantic Kernel, CrewAI, ADK, AutoGen, etc. can't reuse it without writing their own wrapper.
- Surface gap. Tavily's SDK exposes search, extract, crawl, map, and research, but only search is wrapped today. Agents that need to pull article bodies (extract), bulk-extract a docs site (crawl), discover URLs (map), or run multi-source citation-grounded research currently can't.
The framework-neutral version of NAT functions/groups is the right seam for this.
Describe your ideal solution
A new package packages/nvidia_nat_tavily/ with a single tavily function group (FunctionGroupBaseConfig, name="tavily") that wraps the Tavily Python SDK. One AsyncTavilyClient per group; five tools underneath:
- tavily__search
- tavily__extract
- tavily__crawl
- tavily__map
- tavily__research
Design constraints:
- Framework-neutral. Depends only on
nvidia-nat-core and tavily-python
- Configured via a single
_type: tavily block in YAML; include / exclude work as standard FunctionGroup features. Agent configs reference the whole group with tool_names: [tavily] or individual tools with tavily__<name>.
Example YAML:
function_groups:
tavily:
_type: tavily
include: [search, extract]
workflow:
_type: react_agent
llm_name: anthropic_llm
tool_names: [tavily]
Additional context
No response
Code of Conduct
Is this a new feature, an improvement, or a change to existing functionality?
New Feature
How would you describe the priority of this feature request
Medium
Please provide a clear description of problem this feature solves
I want NeMo Agent Toolkit to expose the full Tavily Python SDK (search, extract, crawl, map, research) as framework-neutral NAT functions, because the current integration falls short on two axes:
tavily_internet_searchlives innvidia_nat_langchainand useslangchain_tavilydirectly (packages/nvidia_nat_langchain/src/nat/plugins/langchain/tools/ tavily_internet_search.py). Users on Agno, LlamaIndex, Strands, Semantic Kernel, CrewAI, ADK, AutoGen, etc. can't reuse it without writing their own wrapper.The framework-neutral version of NAT functions/groups is the right seam for this.
Describe your ideal solution
A new package
packages/nvidia_nat_tavily/with a singletavilyfunction group (FunctionGroupBaseConfig, name="tavily") that wraps the Tavily Python SDK. OneAsyncTavilyClientper group; five tools underneath:Design constraints:
nvidia-nat-coreandtavily-python_type: tavilyblock in YAML;include/excludework as standard FunctionGroup features. Agent configs reference the whole group withtool_names: [tavily]or individual tools withtavily__<name>.Example YAML:
Additional context
No response
Code of Conduct