- Notifications
You must be signed in to change notification settings - Fork23
tango-23.11
Compare
c7b8352
TANGO 2023 11 Release
This release includes several enhancements and updates on following functions:
- Project Manager:
project_manager
, - Base Model Selector:
bms
, - AutoNN :
autonn_yoloe
(for detection task),autonn_resnet
(newly added for classification task) - Code Generation:
code_gen
(formerly known asdeploy_codegen
), - Target Deployment:
cloud_deploy
,kube_deploy
,ondevice_deploy
- formerly single
deploy_target
container did the whole deployment task on different targets, now we have individual deployment containers for each target
- formerly single
To improve the efficiency of theautonn
container, which typically requires several days for training even on high-performance GPUs, we have implemented a manual workflow step-forward functionality within theproject manager
. This functionality has been tested and validated through two stages:
bms
+autonn_yoloe
orautonn_resnet
stage: This stage utilizes the dataset and target configurations within the project manager to select the appropriate base model. The selected base model undergoes fine-tuning, generating a trained model and associated codes for the subsequent stage.code_gen
+*_deploy
stage: Building upon the trained model and generated codes from the previous stage, this stage prepares executable neural network codes for deployment on the specified target, as configured in theproject_manager
container. Please note that the current release includes the addition of K8s and cloud (ex. Google Cloud Platform) target deployment-related code, although it is still under going.
Notes on the current release:
- We have tested K8s target deployment-related code, which has been developed and built.
- The project manager in this release usesVue.js based front-end.
BMS and AutoNN
This release includes thebms
(Base Model Selector) container, developed by ETRI, which serves as a simple test for BMS member container role. Thebms
container selects the base model from the Yolo v7 or Resnet and suitable batch size for training based on target type information such as ondevice (PC, Andorid Device, Embedded Board), K8s or cloud, specified within the project configuration step of theproject_manager
. The selected base model is utilized in the AutoNN containers for fine-tuning with the dataset, also specifed within the project configuration step. Additionally, the AutoNNautonn_yoloe
andautonn_resnet
containers (implemented inautonn\YoloE
andautonn\ResNet
folders) hvae been included for testing the AutoNN member container role within the TANGO project workflow (pipeline).
Code Generation and Deployment on Targets
We have made changes to the source structure related to deployment codes compared to the previous release. The updates are as follows:
- The codes responsible for generating the executable neural network code have been moved to the
deploy_codegen/optimize_codegen
folder. - The codes for deploying the executable neural network have been relocated to the
deploy_target
folder.
Thedeploy_target
folder now includes sub-folders based on the deployment target:
cloud
: codes for deployment to cloud environments done incloud_deploy
containerk8s
: codes for deployment to Kubernetes done inkube_deploy
containerondevice
: codes for deployment to on-device platforms such as PC, android phones, or embedded devices, fullfilled inondevice_deploy
container- for PC or embedded devices,
ondvice_deploy
container generates python codes that can be called by python interpreter. - for android phone,
ondvice_deploy
container generates anAPK file.
- for PC or embedded devices,
Notes on deployment:
- The codes in the
deploy_target/k8s
folder can be used to build a Docker image, but integration testing is still ongoing. Therefore, in this release, K8s deployment is not functioning properly.- In this release,
code_gen
container supportsTensorRT,Apache TVM,PyTorch andACL. Support forRKNN . Support forrknn is still in progress.
To Do:
TBD
Assets2
Uh oh!
There was an error while loading.Please reload this page.