コード例 #1
0
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
コード例 #2
0
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()
コード例 #4
0
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
コード例 #5
0
 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')
     ]
 )
コード例 #6
0
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,