IP Library Granted Patent US 11,748,479
Granted Patent B2
US 11,748,479 · App. 16/710,049 · Granted Sep 5, 2023

Centralized platform for validation of machine learning models for robotic process automation before deployment

Inventor: Mohit Seth (Delhi, IN)
Assignee: UiPath, Inc.
G06F21/565G06F8/60G06N5/04G06N20/00G06F2221/033
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,748,479
App. No.
16/710,049
Granted
Sep 5, 2023
Kind
B2
Abstract

A centralized platform for validation of machine learning (ML) models for robotic process automation (RPA) before deployment is provided. The validation platform may support multiple programming languages and build platforms in a single centralized platform. The platform may allow the user to upload the model in a predefined package structure. The platform may then validate the package for deployment.

Claims (40)

1. A non-transitory computer-readable medium storing a computer program, the computer program configured to cause at least one processor to:

receive a machine learning (ML) package to be deployed in a robotic process automation (RPA) system, the ML package comprising an ML model; and

perform primary validations on the ML package to determine whether contents of the ML package comply with requirements for an ML model in the ML package to be deployed in the RPA system.

2. The non-transitory computer-readable medium of claim 1 , wherein the primary validations comprise verifying that a single parent folder in the ML package contains contents of the ML model, verifying that the ML package comprises a naming requirements file that defines required dependencies, ensuring that a starting class or a main class contains predefined methods or functions, or any combination thereof.

3. The non-transitory computer-readable medium of claim 1 , wherein the primary validations comprise ensuring that a starting class or a main class comprise predict methods and initialize methods.

4. The non-transitory computer-readable medium of claim 1 , wherein input to the ML model comprises a string, a file, a list of files, a list or dict structure, a numpy array, a dataframe, or a series.

5. The non-transitory computer-readable medium of claim 1 , wherein the program is configured to support multiple programming languages, multiple build platforms, or both.

6. The non-transitory computer-readable medium of claim 1 , wherein the ML package comprises a model folder, the model folder comprising a main class, predefined methods or functions, and a requirements file that lists other dependent files.

7. The non-transitory computer-readable medium of claim 1 , wherein when at least one of the primary validations fails, the computer program is further configured to cause the at least one processor to:

change a status of the ML package to indicate that primary validation failure occurred and display an indication of the primary validation failure.

8. The non-transitory computer-readable medium of claim 1 , wherein when the at least one primary validation succeeds, the computer program is further configured to cause the at least one processor to:

perform at least one secondary validation on the ML package to determine whether malicious code is present in the ML package; and

when the at least one secondary validation succeeds, deploy the ML model to the RPA system.

9. The non-transitory computer-readable medium non-transitory computer-readable medium of claim 8 , wherein when the at least one secondary validation fails, the computer program is further configured to cause the at least one processor to:

change a status of the ML package to indicate that secondary validation failure occurred and display an indication of the secondary validation failure.

10. The non-transitory computer-readable medium of claim 1 , wherein the computer program requires a predetermined package structure for the primary validations.

11. A computer-implemented method, comprising:

performing, by a conductor application, primary validations on a machine learning (ML) package to be deployed in a robotic process automation (RPA) system, the primary validations determining whether contents of the ML package comply with requirements for an ML model in the ML package to be deployed in the RPA system.

12. The computer-implemented method of claim 11 , wherein the primary validations comprise verifying that a single parent folder in the ML package contains contents of the ML model, verifying that the ML package comprises a naming requirements file that defines required dependencies, ensuring that a starting class or a main class contains predefined methods or functions, or any combination thereof.

13. The computer-implemented method of claim 11 , wherein the primary validations comprise ensuring that a starting class or a main class comprise predict methods and initialize methods.

14. The computer-implemented method of claim 11 , wherein input to the ML model comprises a string, a file, a list of files, a list or dict structure, a numpy array, a dataframe, or a series.

15. The computer-implemented method of claim 11 , wherein the ML package comprises a model folder, the model folder comprising a main class, predefined methods or functions, and a requirements file that lists other dependent files.

16. The computer-implemented method of claim 11 , wherein when at least one of the primary validations fails, the method further comprises:

changing a status of the ML package to indicate that primary validation failure occurred and displaying an indication of the primary validation failure, by the conductor application.

17. The computer-implemented method of claim 11 , wherein when the primary validations succeed, the method further comprises:

performing at least one secondary validation on the ML package, by the conductor application, to determine whether malicious code is present in the ML package; and

when the at least one secondary validation succeeds, deploying the ML model to the RPA system, by the conductor application.

18. The computer-implemented method of claim 17 , wherein when the at least one secondary validation fails, the method further comprises:

changing a status of the ML package to indicate that secondary validation failure occurred and displaying an indication of the secondary validation failure, by the conductor application.

19. A system, comprising:

memory storing computer program instructions; and

at least one processor configured to execute the stored computer program instructions, wherein the computer program instructions are configured to cause the at least one processor to:

receive a machine learning (ML) package to be deployed in a robotic process automation (RPA) system, the ML package comprising an ML model; and

perform primary validations on the ML package to determine whether contents of the ML package comply with requirements for an ML model in the ML package to be deployed in the RPA system.

20. The system of claim 19 , wherein the primary validations comprise verifying that a single parent folder in the ML package contains contents of the ML model, verifying that the ML package comprises a naming requirements file that defines required dependencies, ensuring that a starting class or a main class contains predefined methods or functions, or any combination thereof.

21. The system of claim 19 , wherein the primary validations comprise ensuring that a starting class or a main class comprise predict methods and initialize methods.

22. The system of claim 19 , wherein the ML package comprises a model folder, the model folder comprising a main class, predefined methods or functions, and a requirements file that lists other dependent files.

23. The system of claim 19 , wherein when the at least one primary validation succeeds, the computer program instructions are further configured to cause the at least one processor to:

perform at least one secondary validation on the ML package to determine whether malicious code is present in the ML package; and

when the at least one secondary validation succeeds, deploy the ML model to the RPA system.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 13, 2020
From: SETH, MOHIT
To: UIPATH, INC.
Reel/Frame 051501/0109 →
Priority Claims (1)
IN 201911041727 · Oct 15, 2019 · national
Continuity (1)
Related Publication 20210110035A1 · Apr 15, 2021
Cited By (4)
US 12,340,238 US 12,346,713 US 12,379,948 US 12,412,138