Migrating to TLT 3.0 ==================== .. _migrating_to_tlt_3.0: TLT v3.0 introduces several new features from v2.0, such as: 1. Unified command line tool to launch commands 2. Multiple Docker setup 3. Conversational AI applications 4. CV features * New training applications * New feature extractor backbones * New purpose built models 5. Integration to DeepStream and Jarvis Inference Platforms Some of the key differences in the User Interface between v2.0 and v3.0 are shown here. +-------------------------------+--------------------------------------------+---------------------------------+ | **Version Comparison** | **TLT v3.0** | **TLT v2.0** | +===============================+============================================+=================================+ | | | | | | Interface Difference | * Users run the commands via the TLT | | | | launcher Python package | * Users interact with the | | | | commands inside Docker | +-------------------------------+--------------------------------------------+---------------------------------+ | | | | | | Steps to run TLT | * Install the launcher | | | | via `pip3` | * Pull the TLT Docker | | | | * Instantiate the Docker | | | * Download NGC CLI | with the required file | | | separately | systems mounted | | | * Configure the NGC CLI | * Configure the NGC CLI | | | * :code:`tlt --help` lists | * Run generic TLT commands | | | out tasks supported by | | | | the launcher | * :code:`tlt-train ` | | | | * :code:`tlt-prune` | | | * Launch tasks using the | * :code:`tlt-evaluate ` | | | following command schema | * :code:`tlt-infer ` | | | | * :code:`tlt-export ` | | | * :code:`tlt ` | | | | where :code:`subtask` is defined per | * Exit Docker after execution | | | task | | | | * The :code:`task` may span across | | | | multiple Dockers | | | | | | | | * List all instances of TLT tasks using | | | | :code:`tlt list` | | | | * Interrupt job if needed using | | | | :code:`tlt stop` | | +-------------------------------+--------------------------------------------+---------------------------------+ .. _data_prep_for_tlt_3.0: Data preparation for TLT v2.0 and v3.0 are slightly different for SSD / DSSD / YOLOv3 / RetinaNet. In TLT v2.0, you had to generate TFRecords (and possibly resize your images). Those are no longer required in TLT v3.0. These networks in TLT v3.0 directly take original images and KITTI labels as input. If image resizing is needed, the data loader automatically handles it. If you already prepared data for TLT v2.0 training, you don't need to further process it for v3.0 training. Instead, you only need to provide the label directory path in the spec file and TLT v3.0 training should run smoothly. .. note:: With TLT v3.0, note that running the following commands from TLT v2.0 from Docker have been deprecated. * :code:`tlt-train` * :code:`tlt-prune` * :code:`tlt-evaluate` * :code:`tlt-infer` * :code:`tlt-export` * :code:`tlt-augment`