AI Center
2021.10
false
Banner background image
AI Center User Guide
Last updated Mar 11, 2024

Managing ML Packages

Uploading ML Packages

Important:

Before uploading packages, make sure they are built as specified here.

When creating an ML Package in AI Center™, it cannot be named using any python reserved keyword, such as class, break, from, finally, global, None, etc. Make sure to choose another name. The listed examples are not complete since package name is used for class <pkg-name> and import <pck-name>.

Follow these steps to upload an already created package:

  1. In the ML Packages page, click the Upload zip file button. The Create New Package page is displayed.
  2. In the Create New Package page, enter a name for your package.
  3. Click Upload Package to select the desired .zip file or drag & drop the package .zip file into the Upload package field.
  4. (Optionally) Provide a clear description of the model.

    The description is displayed while deploying a new skill based on this model, as well as on the ML Packages page.

  5. Select the input type from the drop-down. The possible options are:
    • json
    • file
    • files
  6. (Optionally) Enter a clear description of the input expected by the model.
  7. (Optionally) Enter a clear description of the output returned by the model.

    These descriptions are visible to RPA developers using the ML Skill Activity in UiPath Studio. As a good practice, we recommended showing an example of the input and output formats to facilitate communication between data scientists and developers.

  8. Select the development language of the model from the drop-down. The possible options are:
    • Python 3.7
    • Python 3.8
  9. Select whether the machine learning model requires a GPU, by default it is set to No. This information is surfaced as a suggestion to when a skill is created from this package.
  10. Select whether to enable training for your model. This is what happens if you enabled it:
    • The package can be used in any pipeline.
    • The validation step checks if the train.py file is implemented in the package, otherwise, the validation fails.
  11. Click Create to upload the package or Cancel to abort the process. The Create New Package window is closed and the package is uploaded and displayed along with its details in the ML Packages > [ML Package Name] page. It may take a few minutes before your upload is propagated.


Package Validations

For Serving

For models uploaded with the Enable Training flag inactive, when a model is uploaded, AI Center validates the uploaded .zip file against the requirements described here. The following three checks are performed:
  1. A non-empty root folder exists.
  2. A requirements.txt file exists.
  3. A file named main.py exists in the root folder which implements a class Main. The class is further validated to implement an __init__ and a predict function.

Success or failure along with any errors that caused it are shown in the ML Logs page.

For Training

For models uploaded with the Enable Training flag active, in addition to validating the requirements as above, AI Center also validates the uploaded .zip file against the requirements described here. For these packages the following two checks are performed:
  1. A non-empty root folder exists.
  2. A file named train.py exists in the root folder which implements a class Main. The class is further validated to implement an __init__ function and the following functions: train, evaluate, and save.

Success or failure along with any errors that caused it are shown in the ML Logs page.

Viewing ML Package Details

Click a package in the list to navigate to its ML Package > [ML Package Name] page.

In the Version tab, view its details: package version, creation time, change log, status, and arguments.



In the Pipeline runs tab, view the details related to the package's pipeline runs: package name, type, version, status, creation time, duration, score, and additional details.



Version Control

AI Center™ also supports versioning and version management of packages. When a package is uploaded, it's displayed as version 1.0 of that package (we say it's Major Version is 1, and Minor Version is 0). This helps with differentiating between packages uploaded by users, and packages retrained via pipelines, the latter only changing their minor version.

Uploading New ML Package Versions

Follow these steps to upload a new version for an already uploaded package:

  1. In the ML Packages page, click ⁝ next to a package and select the Upload new version option.

    Alternatively, in the ML Package > [ML Package Name] page, click Upload new version. The Upload New Package Version for > [ML Package Name] window is displayed, with most of the fields prefilled with the information you provided at the time when you first uploaded that package.

  2. Click Upload Package to select the desired .zip file, or drag & drop the file above this field.
  3. (Optionally) Update the existing information in the following fields:
    • Input description
    • Output description
    • Language
  4. (Optionally) In the ChangeLog field, enter what has changed.
  5. Select whether the model requires a GPU, by default it is set to No.
  6. Select whether to enable training for your model.
  7. Click Create to upload the new version for the existing uploaded package or Cancel to abort the process. The Upload Package window is closed and the new version of the package is uploaded. It may take a few minutes before your upload is propagated.


The new version of the package is not visible directly in the ML Packages page. You can view its information within the ML Package Details page for that package.

Note: When a new version is uploaded on an existing package, that creates a new major version. For example, if I have uploaded my first package, that upload will be version 1.0. When I upload a new version, that version will be 2.0.

ML Package Versions Created by Training Pipelines

When a training pipeline or a full pipeline executes successfully on a package version, a new minor version is created. For example, if I have uploaded a package (version 1.0), and start a training pipeline, version 1.1 is displayed after completion in the ML Package Details page as below:



Viewing Package Arguments

In the ML Package > [ML Package Name] page Version tab, click :fa-info-circle: next to a package version. The Arguments for > [ML Package Name] > [ML Package Version] window is displayed.

The input type, and the input and output descriptions of the selected package version are displayed. Please note that you cannot edit the values.

Deleting ML Packages

Packages can only be deleted if they are not deployed within a skill and no pipelines are currently running on those packages.

  1. In the ML Packages page, click ⁝ next to a package and select Delete undeployed versions. A confirmation window is displayed.
  2. In the confirmation window, click OK to delete all undeployed versions of the selected package. If a package version is part of a skill (it is active), it is NOT going to be deleted. If all the versions are inactive, they are all deleted.

OR

  1. In the ML Package > [ML Package Name] page Version tab, click ⁝ next to a package version and select Delete. A confirmation window is displayed.
  2. In the confirmation window, click OK to delete the selected version of the package. If a package version is part of a skill (it is active), it is NOT going to be deleted. If this is the only version for the selected package, the package itself is also deleted.

Was this page helpful?

Get The Help You Need
Learning RPA - Automation Courses
UiPath Community Forum
Uipath Logo White
Trust and Security
© 2005-2024 UiPath. All rights reserved.