Declarative Deployment for Machine Learning Artifacts

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current Continuous Deployment tools are inadequate for facilitating the coupling of generic computer programs with domain-specific data files during the installation process, particularly in the field of machine learning, where the program logic is embedded in data files, leading to complexity in managing multiple 'programs' that are essentially variations of a single program with different input files.

Innovation Solution

A declarative deployment method that involves scanning a repository for artifacts, producing a deployment declaration, querying the target device for state information, determining discrepancies, and automatically deploying the artifact and a serving program to synchronize the target device with the repository, using a system comprising a policy manager, declaration engine, and deployment manager to manage the installation process.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Extent of automation

If traditional Continuous Deployment tools are used to install software artifacts, then the deployment process is automated and efficient, but the tools cannot properly handle the coupling of generic computer programs with domain-specific data files in machine learning contexts

Engineering Contradiction:
Improvedeployment automationVSAvoidadaptability to machine learning artifacts
Core Design Contradiction:
Extent of automationVSAdaptability or versatility

Solution Approach 1:

The patent introduces a specialized deployment manager as an intermediary component that bridges the gap between traditional Continuous Deployment tools and machine learning artifacts. This deployment manager specifically handles the coupling of generic serving programs with domain-specific data files, enabling automated deployment while adapting to the unique requirements of machine learning models. The intermediary translates and manages the deployment process to accommodate both program and data file artifacts together.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If multiple separate data files are paired with a generic computer program during installation to create multiple programs, then domain-specific functionality is achieved, but the complexity of managing numerous artifacts increases

Engineering Contradiction:
Improvedomain-specific functionalityVSAvoidartifact management complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent merges the management of generic computer programs and domain-specific data files into a unified deployment unit. Instead of treating them as separate artifacts that need individual management, the system combines them into a single deployable package that maintains their relationship. This reduces artifact management complexity by handling program-data pairs as one unit while still enabling domain-specific functionality through the included data files.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The deployment manager is designed with universal functionality to handle both generic programs and domain-specific data files through a single interface. It provides multi-functional capabilities to manage different types of artifacts (programs, data files, models) uniformly, reducing the need for separate management mechanisms and simplifying the overall artifact management process while supporting diverse domain-specific requirements.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Ease of operation

If manual configuration is used to specify how software behaves in specific environments, then deployment flexibility is maintained, but the deployment process requires human intervention and is less efficient

Engineering Contradiction:
Improvedeployment flexibilityVSAvoiddeployment efficiency
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The system performs preliminary actions by pre-configuring deployment metadata and artifact relationships before the actual deployment process. Configuration information about how artifacts should behave in specific environments is prepared in advance and attached to the deployment package. This allows the automated deployment process to execute efficiently without requiring real-time human intervention, while still maintaining the flexibility of environment-specific configurations through pre-established rules and metadata.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS20250021321A1Declarative deployment of a software artifact
Publication Date: 2025.01.16 MICROSOFT TECHNOLOGY LICENSING LLC
  • US20250021321A1 patent drawing
  • US20250021321A1 patent drawing
  • US20250021321A1 patent drawing

AI summary

There is provided a method that includes (a) scanning a repository to identify an artifact that is available in the repository, (b) producing a declaration that indicates that the artifact is to be installed on a target device, (c) querying the target device to obtain information about a present state of the artifact on the target device, thus yielding state information, (d) determining, from a comparison of the state information to the declaration, that the artifact on the target device is not up to date, and (e) deploying the artifact from the repository, and a serving program, to the target device. There is also provided a system that performs the method, and a storage device that contains instructions for a processor to perform the method.