NVIDIA / tao_tutorials

Quick start scripts and tutorial notebooks to get started with TAO Toolkit
Apache License 2.0
46 stars 12 forks source link

TAO Tutorials

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.

TAO quick start video.

Requirements

Recommended Hardware requirements

The following system configuration is recommended to achieve reasonable training performance with TAO and supported models provided:

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 requirements

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)

Package Content

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

File Hierarchy

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:

How to run 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:

Important Links

Blogs

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

License

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.