NVIDIA TAO, is a python based AI toolkit that is built on TensorFlow and PyTorch for computer vision applications. It simplifies and accelerates the model training process by abstracting away the complexity of AI models and the underlying deep learning framework. You can use the power of transfer learning to fine-tune NVIDIA pretrained models with your own data and optimize the model for inference throughput — all without the need for AI expertise or large training datasets.
The following system configuration is recommended to achieve reasonable training performance with TAO and supported models provided:
- 16 GB system RAM
- 16 GB of GPU RAM
- 8 core CPU
- 1 NVIDIA GPU
- 100 GB of SSD space
TAO is supported on discrete GPUs, such as H100, A100, A40, A30, A2, A16, A100x, A30x, V100, T4, Titan-RTX and Quadro-RTX.
Note: TAO is not supported on GPU's before the Pascal generation
Software | Version | Comment |
---|---|---|
Ubuntu LTS | 22.04 | |
python | ==3.10.x | Not needed if you are using TAO API (See #3 below) |
docker-ce | >19.03.5 | Not needed if you are using TAO API (See #3 below) |
docker-API | 1.40 | Not needed if you are using TAO API (See #3 below) |
nvidia-container-toolkit |
>1.3.0-1 | Not needed if you are using TAO API (See #3 below) |
nvidia-container-runtime | 3.4.0-1 | Not needed if you are using TAO API (See #3 below) |
nvidia-docker2 | 2.5.0-1 | Not needed if you are using TAO API (See #3 below) |
nvidia-driver | >550.xx | Not needed if you are using TAO API (See #3 below) |
python-pip | >21.06 | Not needed if you are using TAO API (See #3 below) |
Download the TAO tutorial package which contains startup scripts, Jupyter notebooks and config files.
git clone https://github.com/NVIDIA/tao_tutorials.git
cd ./tao_tutorials
setup
|--> quickstart_launcher.sh
|--> quickstart_api_bare_metal
|--> quickstart_api_aws_eks
|--> quickstart_api_azure_aks
|--> quickstart_api_gcp_gke
notebooks
|--> tao_api_starter_kit
|--> api
|--> automl
|--> end2end
|--> dataset_prepare
|--> client
|--> automl
|--> end2end
|--> dataset_prepare
|--> tao_launcher_starter_kit
|--> dino
|--> deformable_detr
|--> classification_pyt
|--> grounding_dino
|--> ocdnet
|--> ...
|--> tao_data_services
|--> data
|--> ...
The tao_tutorials
repository is broadly classified into two components:
-
setup: A set of quick start scripts to help you install and deploy the TAO launcher and the TAO APIs on various Cloud Service Providers.
-
notebooks: Beginner friendly end-to-end tutorial notebooks that will help you hit the ground running with TAO. The notebooks install TAO, download the required data, and run TAO commands end-to-end for various use cases.
These notebooks are split into three categories:
tao_api_starter_kit
: End-to-end notebooks that help you learn the features supported by the TAO API model of execution. The notebooks under theapi
directory work directly at the REST API level using REST API requests, while theclient
directory uses the TAO Client CLI to interact with the API server.tao_launcher_starter_kit
: Sample notebooks that walk you through the end-to-end workflow for all the computer-vision models supported in TAO. You can interact with TAO using the TAO launcher CLI.tao_data_services
: Sample notebooks that walk you through the end-to-end workflow of the different dataset manipulation and annotation tools that are included as part of TAO.
TAO is built for users with varying levels of AI expertise. The getting started guide is thus split into different sections for different levels of user experience:
Train like a 'pro' with AutoML in TAO
Deploy TAO on Azure ML
Synthetic Data and TAO
Action Recognition Blog
Real-time License Plate Detection
2 Pose Estimation: Part 1
Part 2
Building ConvAI with TAO Toolkit
TAO getting Started License for TAO containers is included in the banner of the container. License for the pre-trained models are available with the model cards on NGC. By pulling and using the Train Adapt Optimize (TAO) Toolkit container to download models, you accept the terms and conditions of these licenses.