Intent based container image building
Methods, computer program products, and systems are presented. The method computer program products, and systems can include, for instance: performing natural language processing to process a text string of a user, wherein the text string specifies characteristics of a container image to be built; processing, with use of natural language processing, instances of text-based data that describe respective ones of a plurality of container images stored within a container image repository; selecting, in dependence on a result of the performing natural language processing, and the processing, a base image from the plurality of container images; and presenting prompting data to the user that prompts building of a new container image, wherein the prompting data references the base image.
1 . A computer implemented method comprising:
receiving, via a user interface presented on a display device, a text string entered by a user into a free-form text entry area;
performing natural language processing to process the text string of the user, wherein the text string specifies characteristics of a container image to be built;
extracting, via a trained predictive model, an intent label from the text string, the intent label identifying a container image functional class corresponding to the user's intent;
processing, with use of natural language processing, instances of text-based data that describe respective ones of a plurality of container images stored within a container image repository;
applying a trained model configured for semantic analysis of the instances of text-based data to generate predicted image labels;
selecting, in dependence on the extracted intent label and the predicted image labels, a base image from the plurality of container images; and
presenting prompting data to the user that prompts building of a new container image, wherein the prompting data references the base image.
2 . The computer implemented method of claim 1 , wherein the user interface facilitates entry of free-form text by the user.
3 . The computer implemented method of claim 1 , wherein the performing natural language processing to process the text string of the user includes applying model prompting data to the trained predictive model using the text string.
4 . The computer implemented method of claim 1 , wherein the processing, with use of natural language processing, text-based data that describes the plurality of container images, includes querying the trained model with text-based data describing a first container image, obtaining from the querying predicted first image labels describing the first container image, performing querying of the trained model with text-based data describing a second container image, and obtaining from the performing querying predicted second image labels describing the second container image.
5 . The computer implemented method of claim 1 , wherein the performing natural language processing to process the text string of the user includes applying model prompting data to the trained predictive model using the text string and obtaining predicted intent labels from the applying model prompting data.
6 . The computer implemented method of claim 1 , wherein the performing natural language processing to process the text string of the user includes applying model prompting data to the trained predictive model using the text string, and obtaining from the applying predicted intent labels, wherein the processing, with use of natural language processing, text-based data that describes the plurality of container images, includes querying the trained model with text-based data describing a first container image, obtaining from the querying predicted first image labels describing the first container image, performing querying of the trained model with text-based data describing a second container image, and obtaining from the performing querying predicted second image labels describing the second container image, and wherein the method includes comparing the predicted intent labels to the predicted first image labels and the predicted second image labels.
7 . The computer implemented method of claim 1 , wherein the performing natural language processing to process the text string of the user includes applying model prompting data to the trained predictive model using the text string, wherein the processing, with use of natural language processing, text-based data that describes the plurality of container images, includes querying the trained model with text-based data describing a first container image, performing querying of the trained model with text-based data describing a second container image, wherein the trained predictive model, and the trained model have been trained with supervised learning training data so that the trained predictive model and the trained model output predicted labels in common attribute categories.
8 . The computer implemented method of claim 1 , wherein the performing natural language processing to process the text string of the user includes applying model prompting data to the trained predictive model using the text string, and obtaining from the applying predicted intent labels having predicted intent attribute categories, wherein the processing, with use of natural language processing, text-based data that describes the plurality of container images, includes querying the trained model with text-based data describing a first container image, obtaining from the querying predicted first image labels having predicted image attribute categories describing the first container image, performing querying of the trained model with text-based data describing a second container image, and obtaining from the performing querying predicted second image labels having the predicted image attribute categories describing the second container image, and wherein the method includes comparing the predicted intent labels to the predicted first image labels and the predicted second image labels, and wherein the method includes coordinating training of the trained predictive model and the trained model so that the predicted image attribute categories map to the predicted intent attribute categories.
9 . The computer implemented method of claim 1 , wherein the selecting includes determining a semantic similarity of the text string to respective ones of the instances of text-based data that describe respective ones of the plurality of container images.
10 . The computer implemented method of claim 1 , wherein respective ones of the instances of text-based data that describe respective ones of the plurality of container images include (a) manifest data defined by a container image manifest, and (b) container image history data returned from running a container image history command.
11 . The computer implemented method of claim 1 , wherein the selecting includes determining a semantic similarity of the text string to respective ones of the instances of text-based data that describe respective ones of the plurality of container images, and wherein the determining the semantic similarity includes (a) extracting an intent label by application of the text string to the trained predictive model, (b) extracting respective image labels by querying the trained model using the respective instances of the text-based data describing respective ones of the plurality of container images, (c) converting the intent label and the respective image labels to vector representations using Word2Vec processing, and (d) finding a Euclidian distance between the vector representation of the intent label and respective vector representations of the respective image labels.
12 . The computer implemented method of claim 1 , wherein the method includes generating, in dependence on the processing, container image relationship graphs for respective ones of the plurality of container images.
13 . The computer implemented method of claim 1 , wherein the method includes generating, in dependence on the processing, container image relationship graphs for respective ones of the plurality of container images, and wherein the selecting is performed in dependence on edge weights of the container image relationship graphs for respective ones of the plurality of container images.
14 . The computer implemented method of claim 1 , wherein the method includes generating, in dependence on the processing, container image relationship graphs for respective ones of the plurality of container images, and wherein the selecting is performed in dependence on edge weights of the container image relationship graphs for respective ones of the plurality of container images, wherein the method includes, subsequent to the selecting, (a) updating an edge weight of a container image relationship graph of the base image in dependence on user specified review data of a runtime instance of the base image, (b) receiving, subsequent to the updating, the text string, and (c) performing selection of an alternate base image different from the base image in dependence on the edge weight of the container image relationship graph of the base image having been updated by the updating.
15 . The computer implemented method of claim 1 , wherein the method includes generating, in dependence on the processing, container image relationship graphs for respective ones of the plurality of container images, and wherein the selecting is performed in dependence on edge weights of the container image relationship graphs for respective ones of the plurality of container images, wherein the method includes, subsequent to the selecting, (a) updating an edge weight of a container image relationship graph of the base image in dependence on observability data collected for a runtime instance of the base image, (b) receiving, subsequent to the updating, the text string, and (c) performing selection of an alternate base image different from the base image in dependence on the edge weight of the container image relationship graph of the base image having been updated by the updating.
16 . The computer implemented method of claim 1 , wherein the method includes building the new container image, and deploying the new container image by running the new container image.
17 . The computer implemented method of claim 1 , wherein the method includes building the new container image in accordance with the prompting data and deploying the new container image by running the new container image.
18 . The computer implemented method of claim 1 , wherein the method includes building the new container image in accordance with user defined data input responsively to the prompting data and deploying the new container image by running the new container image.
19 . A system comprising:
a memory;
at least one processor in communication with the memory; and
program instructions executable by one or more processor via the memory to perform a method comprising:
receiving, via a user interface presented on a display device, a text string entered by a user into a free-form text entry area;
performing natural language processing to process the text string of the user, wherein the text string specifies characteristics of a container image to be built;
extracting, via a trained predictive model, an intent label from the text string, the intent label identifying a container image functional class corresponding to the user's intent;
processing, with use of natural language processing, instances of text-based data that describe respective ones of a plurality of container images stored within a container image repository;
applying a trained model configured for semantic analysis of the instances of text-based data to generate predicted image labels;
selecting, in dependence on the extracted intent label and the predicted image labels, a base image from the plurality of container images; and
presenting prompting data to the user that prompts building of a new container image, wherein the prompting data references the base image.
20 . A computer program product comprising:
a computer readable storage medium readable by one or more processing circuit and storing instructions for execution by one or more processor for performing a method comprising:
receiving, via a user interface presented on a display device, a text string entered by a user into a free-form text entry area;
performing natural language processing to process the text string of the user, wherein the text string specifies characteristics of a container image to be built;
extracting, via a trained predictive model, an intent label from the text string, the intent label identifying a container image functional class corresponding to the user's intent;
processing, with use of natural language processing, instances of text-based data that describe respective ones of a plurality of container images stored within a container image repository;
applying a trained model configured for semantic analysis of the instances of text-based data to generate predicted image labels;
selecting, in dependence on the extracted intent label and the predicted image labels, a base image from the plurality of container images; and
presenting prompting data to the user that prompts building of a new container image, wherein the prompting data references the base image.