Installing NVIDIA NeMo Agent Toolkit#
This guide will help you set up your NVIDIA NeMo Agent toolkit development environment, run existing workflows, and create your own custom workflows using the nat
command-line interface.
Supported LLM APIs#
The following LLM APIs are supported:
NIM (such as Llama-3.1-70b-instruct and Llama-3.3-70b-instruct)
OpenAI
AWS Bedrock
Framework Integrations#
To keep the library lightweight, many of the first-party plugins supported by NeMo Agent toolkit are located in separate distribution packages. For example, the nvidia-nat-langchain
distribution contains all the LangChain-specific plugins and the nvidia-nat-mem0ai
distribution contains the Mem0-specific plugins.
To install these first-party plugin libraries, you can use the full distribution name (for example, nvidia-nat-langchain
) or use the nvidia-nat[langchain]
extra distribution. The following extras are supported:
nvidia-nat[agno]
ornvidia-nat-agno
- Agnonvidia-nat[crewai]
ornvidia-nat-crewai
- CrewAInvidia-nat[langchain]
ornvidia-nat-langchain
- LangChainnvidia-nat[llama-index]
ornvidia-nat-llama-index
- LlamaIndexnvidia-nat[mem0ai]
ornvidia-nat-mem0ai
- Mem0nvidia-nat[mysql]
ornvidia-nat-mysql
- MySQLnvidia-nat[opentelemetry]
ornvidia-nat-opentelemetry
- OpenTelemetrynvidia-nat[phoenix]
ornvidia-nat-phoenix
- Arize Phoenixnvidia-nat[ragaai]
ornvidia-nat-ragaai
- RagaAI Catalystnvidia-nat[redis]
ornvidia-nat-redis
- Redisnvidia-nat[s3]
ornvidia-nat-s3
- Amazon S3nvidia-nat[semantic-kernel]
ornvidia-nat-semantic-kernel
- Microsoft Semantic Kernelnvidia-nat[test]
ornvidia-nat-test
- NeMo Agent toolkit testnvidia-nat[weave]
ornvidia-nat-weave
- Weights & Biases Weavenvidia-nat[zep-cloud]
ornvidia-nat-zep-cloud
- Zep
Prerequisites#
NVIDIA NeMo Agent toolkit is a Python library that doesn’t require a GPU to run by default. Before you begin using NeMo Agent toolkit, ensure that you meet the following software prerequisites:
Install Git
Install Git Large File Storage (LFS)
Install uv (version 0.5.4 or later, latest version is recommended)
Install From Source#
Clone the NeMo Agent toolkit repository to your local machine.
git clone -b main git@github.com:NVIDIA/NeMo-Agent-Toolkit.git nemo-agent-toolkit cd nemo-agent-toolkit
Initialize, fetch, and update submodules in the Git repository.
git submodule update --init --recursive
Fetch the data sets by downloading the LFS files.
git lfs install git lfs fetch git lfs pull
Create a Python environment.
uv venv --python 3.12 --seed .venv source .venv/bin/activate
Note
Python 3.11 is also supported simply replace
3.12
with3.11
in theuv
command above.Install the NeMo Agent toolkit library. To install the NeMo Agent toolkit library along with all of the optional dependencies. Including developer tools (
--all-groups
) and all of the dependencies needed for profiling and plugins (--all-extras
) in the source repository, run the following:uv sync --all-groups --all-extras
Alternatively to install just the core NeMo Agent toolkit without any optional plugins, run the following:
uv sync
At this point individual plugins, which are located under the
packages
directory, can be installed with the following commanduv pip install -e '.[<plugin_name>]'
. For example, to install thelangchain
plugin, run the following:uv pip install -e '.[langchain]'
Note
Many of the example workflows require plugins, and following the documented steps in one of these examples will in turn install the necessary plugins. For example following the steps in the
examples/getting_started/simple_web_query/README.md
guide will install thenvidia-nat-langchain
plugin if you haven’t already done so.In addition to plugins, there are optional dependencies needed for profiling. To install these dependencies, run the following:
uv pip install -e '.[profiling]'
Verify that you’ve installed the NeMo Agent toolkit library.
nat --help nat --version
If the installation succeeded, the
nat
command will log the help message and its current version.
Obtaining API Keys#
Depending on which workflows you are running, you may need to obtain API keys from the respective services. Most NeMo Agent toolkit workflows require an NVIDIA API key defined with the NVIDIA_API_KEY
environment variable. An API key can be obtained by visiting build.nvidia.com
and creating an account.
Optional OpenAI API Key#
Some workflows may also require an OpenAI API key. Visit OpenAI and create an account. Navigate to your account settings to obtain your OpenAI API key. Copy the key and set it as an environment variable using the following command:
export OPENAI_API_KEY="<YOUR_OPENAI_API_KEY>"
Running Example Workflows#
Before running any of the NeMo Agent toolkit examples, set your NVIDIA API key as an environment variable to access NVIDIA AI services.
export NVIDIA_API_KEY=<YOUR_API_KEY>
Note
Replace <YOUR_API_KEY>
with your actual NVIDIA API key.
Running the Simple Workflow#
Install the
nat_simple_web_query
Workflowuv pip install -e examples/getting_started/simple_web_query
Run the
nat_simple_web_query
Workflownat run --config_file=examples/getting_started/simple_web_query/configs/config.yml --input "What is LangSmith"
Run and evaluate the
nat_simple_web_query
WorkflowThe
eval_config.yml
YAML is a super-set of theconfig.yml
containing additional fields for evaluation. To evaluate thenat_simple_web_query
workflow, run the following command:nat eval --config_file=examples/evaluation_and_profiling/simple_web_query_eval/configs/eval_config.yml
NeMo Agent Toolkit Packages#
Once a NeMo Agent toolkit workflow is ready for deployment to production, the deployed workflow will need to declare a dependency on the nvidia-nat
package, along with the needed plugins. When declaring a dependency on NeMo Agent toolkit it is recommended to use the first two digits of the version number. For example if the version is 1.0.0
then the dependency would be 1.0
.
For more information on the available plugins, refer to Framework Integrations.
Example dependency for NeMo Agent toolkit using the langchain
plugin for projects using a pyproject.toml
file:
dependencies = [
"nvidia-nat[langchain]~=1.0",
# Add any additional dependencies your workflow needs
]
Alternately for projects using a requirements.txt
file:
nvidia-nat[langchain]==1.0.*
Next Steps#
Explore the examples in the
examples
directory to learn how to build custom workflows and tools with NeMo Agent toolkit.Review the NeMo Agent toolkit tutorials for detailed guidance on using the toolkit.