def push_package(project): item_input = dl.FunctionIO(type='Item', name='item') model_input = dl.FunctionIO(type='Json', name='model_id') checkpoint_input = dl.FunctionIO(type='Json', name='checkpoint_id') predict_item_function = dl.PackageFunction(name='predict_single_item', inputs=[item_input], outputs=[], description='') load_checkpoint_function = dl.PackageFunction( name='load_new_inference_checkpoint', inputs=[model_input, checkpoint_input], outputs=[], description='') predict_item_module = dl.PackageModule( entry_point='prediction_module.py', name='predict_item_module', functions=[predict_item_function, load_checkpoint_function], init_inputs=[model_input, checkpoint_input]) module_path = os.path.join(os.getcwd(), 'dataloop_services') package_obj = project.packages.push(package_name='ObDetNet', src_path=module_path, modules=[predict_item_module]) return package_obj
def push_package(project): dataset_input = dl.FunctionIO(type='Dataset', name='dataset') hp_value_input = dl.FunctionIO(type='Json', name='hp_values') model_specs_input = dl.FunctionIO(type='Json', name='model_specs') package_name_input = dl.FunctionIO(type='Json', name='package_name') service_name_input = dl.FunctionIO(type='Json', name='service_name') configs_input = dl.FunctionIO(type='Json', name='configs') model_inputs = [dataset_input, hp_value_input, model_specs_input] zazu_inputs = [configs_input] model_function = dl.PackageFunction(name='run', inputs=model_inputs, outputs=[], description='') train_function = dl.PackageFunction(name='train', inputs=zazu_inputs, outputs=[], description='') search_function = dl.PackageFunction(name='search', inputs=zazu_inputs, outputs=[], description='') models_module = dl.PackageModule( entry_point='dataloop_services/service_executor.py', name='models_module', functions=[model_function], init_inputs=[package_name_input, service_name_input]) zazu_module = dl.PackageModule( entry_point='dataloop_services/zazu_module.py', name='zazu_module', functions=[train_function, search_function], init_inputs=package_name_input) package_obj = project.packages.push(package_name='zazuml', src_path=os.getcwd(), modules=[models_module, zazu_module]) return package_obj
def push_package(project_name, package_name): project = dl.projects.get(project_name=project_name) inpt = dl.FunctionIO(type='Item', name='item') func = dl.PackageFunction(inputs=inpt) module = dl.PackageModule(functions=func) package = project.packages.push(package_name=package_name, modules=module, src_path=os.getcwd()) print('Package pushed!') package.print()
def push_package(project): dataset_input = dl.FunctionIO(type='Dataset', name='dataset') train_query_input = dl.FunctionIO(type='Json', name='train_query') val_query_input = dl.FunctionIO(type='Json', name='val_query') hp_value_input = dl.FunctionIO(type='Json', name='hp_values') model_specs_input = dl.FunctionIO(type='Json', name='model_specs') checkpoint_path_input = dl.FunctionIO(type='Json', name='checkpoint_path') package_name_input = dl.FunctionIO(type='Json', name='package_name') configs_input = dl.FunctionIO(type='Json', name='configs') time_input = dl.FunctionIO(type='Json', name='time') test_dataset_input = dl.FunctionIO(type='Json', name='test_dataset_id') query_input = dl.FunctionIO(type='Json', name='query') item_input = dl.FunctionIO(type='Item', name='item') model_input = dl.FunctionIO(type='Json', name='model_id') checkpoint_input = dl.FunctionIO(type='Json', name='checkpoint_id') predict_inputs = [ dataset_input, val_query_input, checkpoint_path_input, model_specs_input ] model_inputs = [ dataset_input, train_query_input, val_query_input, hp_value_input, model_specs_input ] zazu_inputs = [configs_input] predict_function = dl.PackageFunction(name='run', inputs=predict_inputs, outputs=[], description='') model_function = dl.PackageFunction(name='run', inputs=model_inputs, outputs=[], description='') zazu_search_function = dl.PackageFunction(name='search', inputs=zazu_inputs, outputs=[], description='') zazu_predict_function = dl.PackageFunction(name='predict', inputs=zazu_inputs, outputs=[], description='') timer_update_function = dl.PackageFunction(name='update_time', inputs=time_input, outputs=[], description='') predict_item_function = dl.PackageFunction(name='predict_single_item', inputs=[item_input], outputs=[], description='') load_checkpoint_function = dl.PackageFunction( name='load_new_inference_checkpoint', inputs=[model_input, checkpoint_input], outputs=[], description='') predict_module = dl.PackageModule( entry_point='dataloop_services/predict_module.py', name='predict_module', functions=[predict_function], init_inputs=[package_name_input]) models_module = dl.PackageModule( entry_point='dataloop_services/trial_module.py', name='models_module', functions=[model_function], init_inputs=[package_name_input]) zazu_module = dl.PackageModule( entry_point='dataloop_services/zazu_module.py', name='zazu_module', functions=[zazu_search_function, zazu_predict_function], init_inputs=package_name_input) zazu_timer_module = dl.PackageModule( entry_point='dataloop_services/zazu_timer_module.py', name='zazu_timer_module', functions=[timer_update_function], init_inputs=[ configs_input, time_input, test_dataset_input, query_input ]) predict_item_module = dl.PackageModule( entry_point='dataloop_services/prediction_module.py', name='predict_item_module', functions=[predict_item_function, load_checkpoint_function], init_inputs=[model_input, checkpoint_input]) package_obj = project.packages.push(package_name='zazuml', src_path=os.getcwd(), modules=[ predict_module, models_module, zazu_module, zazu_timer_module, predict_item_module ]) return package_obj
dl.PackageModule( init_inputs=[ dl.FunctionIO(type='Json', name='project_name'), dl.FunctionIO(type='Json', name='package_name') ], name='default', entry_point='main.py', functions=[ dl.PackageFunction( inputs=[ dl.FunctionIO(type="Item", name="item"), dl.FunctionIO(type="Json", name="annotations"), dl.FunctionIO(type="Json", name="config") ], name='bbox_to_segmentation', description='Converts a bounding box into a segmentation'), dl.PackageFunction( inputs=[ dl.FunctionIO(type="Item", name="item"), dl.FunctionIO(type="Json", name="annotations"), dl.FunctionIO(type="Json", name="config") ], name='four_points_to_segmentation', description='Converts a four points closed polygon into a segmentation'), dl.PackageFunction( inputs=[ dl.FunctionIO(type="Item", name="item"), dl.FunctionIO(type="Json", name="config") ], name='item_auto_annotation_automation', description='Auto annotate a platform item using maskrcnn') ] )
project = dl.projects.get(project_name=project_name) ########################## # define package modules # ########################## modules = [ dl.PackageModule( init_inputs=[ dl.FunctionIO(name='project_name', type=dl.PackageInputType.JSON), dl.FunctionIO(name='package_name', type=dl.PackageInputType.JSON) ], name='default_module', entry_point='main.py', functions=[ dl.PackageFunction( inputs=[ dl.FunctionIO(name='item', type=dl.PackageInputType.ITEM), dl.FunctionIO(name='annotation', type=dl.PackageInputType.ANNOTATION), dl.FunctionIO(name='frame_duration', type=dl.PackageInputType.JSON) ], name='track_bounding_box', description='Tracks a bounding box annotation on video') ]) ] ################ # push package # ################ package = project.packages.push(package_name=package_name,