Machine-Generated CLI Command Examples Using ML Parameter Prediction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Command line interfaces (CLI) face challenges due to limited and outdated documentation, requiring users to be familiar with numerous commands and their syntax, which can lead to errors and inefficiencies, especially with complex combinations of parameters and parameter values.

Innovation Solution

A machine learning model is used to predict the data type of parameter values, selecting appropriate values from known options or generating new ones based on telemetry and web-based usage examples, enabling the generation of real-time, updated documentation and usage examples for CLI commands.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of information

If human-generated examples are used for CLI documentation, then documentation can be created, but the coverage of commands and functions remains limited

Engineering Contradiction:
Improvecoverage of commands and functionsVSAvoidmanual documentation creation
Core Design Contradiction:
Loss of informationVSExtent of automation

Solution Approach 1:

The system enables self-service by automatically generating documentation examples using machine learning models that analyze telemetry data and command syntax, eliminating the need for manual human generation of usage examples for each command

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent replaces the mechanical process of manual example creation with an automated machine learning system that predicts parameter values and generates usage examples based on patterns learned from telemetry data and command syntax analysis

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Ease of operation

If comprehensive usage examples are generated for all command combinations, then user assistance improves, but system complexity increases

Engineering Contradiction:
Improveuser assistanceVSAvoidsystem complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The system segments the complex task of generating comprehensive documentation into manageable components: collecting telemetry data, analyzing command syntax, training separate machine learning models for different parameter types, and generating examples through a pipeline that processes commands incrementally

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces intermediary machine learning models that act as mediators between the raw telemetry data and the final usage examples, translating complex patterns into predicted parameter values and structured documentation content

Inventive Principle:
Principle #24Intermediary (Mediator)

3Measurement precision

If machine learning models predict parameter values, then accurate usage examples are generated, but computational resources increase

Engineering Contradiction:
Improveprediction accuracyVSAvoidcomputational resources
Core Design Contradiction:
Measurement precisionVSUse of energy by moving object

Solution Approach 1:

The system performs preliminary action by collecting and storing telemetry data over time before generating documentation, and by pre-training machine learning models on historical data, so that actual documentation generation requires only inference rather than full model training

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent employs lightweight machine learning models that can be quickly trained and discarded, replacing expensive long-term model maintenance with efficient retraining on updated telemetry data, reducing overall computational burden

Inventive Principle:
Principle #27Cheap short-living objects (Disposable)

Data Source

PatentUS11640294B2Machine-generated examples of command-line commands with parameter values
Publication Date: 2023.05.02 MICROSOFT TECHNOLOGY LICENSING LLC
  • US11640294B2 patent drawing
  • US11640294B2 patent drawing
  • US11640294B2 patent drawing

AI summary

Examples of the usage of a command of a command line interface includes the command with a set of parameters and corresponding parameter values. The examples are generated from telemetry data, which does not contain parameter values, and from web-based sources that may contain multiple parameter values. A machine learning model is used to predict the data type of a parameter value when the parameter is used with a particular command. The predicted data type is then used to select an appropriate parameter value for the example from multiple known parameter values or to generate a parameter value when no known parameter value exists.