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 aiq command-line interface.
The following LLM APIs are supported:
- NIM (such as Llama-3.1-70b-instruct and Llama-3.3-70b-instruct)
- OpenAI
- AWS Bedrock
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 aiqtoolkit-langchain distribution contains all the LangChain-specific plugins and the aiqtoolkit-mem0ai distribution contains the Mem0-specific plugins.
To install these first-party plugin libraries, you can use the full distribution name (for example, aiqtoolkit-langchain) or use the aiqtoolkit[langchain] extra distribution. The following extras are supported:
aiqtoolkit[agno]oraiqtoolkit-agno- Agno specific pluginsaiqtoolkit[crewai]oraiqtoolkit-crewai- CrewAI specific pluginsaiqtoolkit[langchain]oraiqtoolkit-langchain- LangChain specific pluginsaiqtoolkit[llama-index]oraiqtoolkit-llama-index- LlamaIndex specific pluginsaiqtoolkit[mem0ai]oraiqtoolkit-mem0ai- Mem0 specific pluginsaiqtoolkit[semantic-kernel]oraiqtoolkit-semantic-kernel- Microsoft Semantic Kernel specific pluginsaiqtoolkit[test]oraiqtoolkit-test- NeMo Agent toolkit test specific pluginsaiqtoolkit[weave]oraiqtoolkit-weave- Weights & Biases Weave specific pluginsaiqtoolkit[zep-cloud]oraiqtoolkit-zep-cloud- Zep specific plugins
NVIDIA NeMo Agent toolkit is a Python library that doesn't require a GPU to run the workflow by default. You can deploy the core workflows using one of the following:
- Ubuntu or other Linux distributions, including WSL, in a Python virtual environment.
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
-
Clone the NeMo Agent toolkit repository to your local machine.
git clone git@github.com:NVIDIA/AIQToolkit.git aiqtoolkit cd aiqtoolkit -
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 --seed .venv source .venv/bin/activate -
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 plugins, run the following:
uv sync
At this point individual plugins, which are located under the
packagesdirectory, can be installed with the following commanduv pip install -e '.[<plugin_name>]'. For example, to install thelangchainplugin, 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/basic/functions/simple/README.mdguide will install theaiqtoolkit-langchainplugin 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.
aiq --help aiq --version
If the installation succeeded, the
aiqcommand will log the help message and its current version.
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.
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.
:::
-
Install the
aiq_simpleWorkflowuv pip install -e examples/basic/functions/simple
-
Run the
aiq_simpleWorkflowaiq run --config_file=examples/basic/functions/simple/configs/config.yml --input "What is LangSmith" -
Run and evaluate the
aiq_simpleWorkflowThe
eval_config.ymlYAML is a super-set of theconfig.ymlcontaining additional fields for evaluation. To evaluate theaiq_simpleworkflow, run the following command:aiq eval --config_file=examples/basic/functions/simple/configs/eval_config.yml
Once an NeMo Agent toolkit workflow is ready for deployment to production, the deployed workflow will need to declare a dependency on the aiqtoolkit 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 = [
"aiqtoolkit[langchain]~=1.0",
# Add any additional dependencies your workflow needs
]Alternately for projects using a requirements.txt file:
aiqtoolkit[langchain]==1.0.*
- Explore the examples in the
examplesdirectory 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.