Identifying and resolving software issues
US-10089213-B1 · Oct 2, 2018 · US
US11157246B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11157246-B2 |
| Application number | US-202016735679-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jan 6, 2020 |
| Priority date | Jan 6, 2020 |
| Publication date | Oct 26, 2021 |
| Grant date | Oct 26, 2021 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Training data identifying a plurality of pairs is received. Each pair identifies one or more separate code snippets known to resolve a respective issue of a plurality of issues. For each pair of the plurality of pairs, a respective issue representation of core content of the respective issue and a linear expression of the one or more separate code snippets in a respective code representation is constructed and a model to correlate the respective code representation as resolving the respective issue representation is trained. The model is queried with a new issue and a selected one of the one or more separate code snippets. The model returns a classification indicating whether the selected one of the one or more separate code snippets is likely to resolve the new issue.
Opening claim text (preview).
What is claimed is: 1. A method comprising: receiving, by a computer, training data identifying a plurality of pairs, each pair identifying one or more separate code snippets known to resolve a respective issue of a plurality of issues; for each pair of the plurality of pairs: constructing, by the computer, a respective issue representation of core content of the respective issue; constructing, by the computer, a linear expression of the one or more separate code snippets in a respective code representation; and training, by the computer, a model to correlate the respective code representation as resolving the respective issue representation; applying, by the computer, natural language processing to a new issue to construct a new issue representation of core content of the new issue; and querying, by the computer, the model with the new issue representation and a selected one of the one or more separate code snippets via new issue representation; and determining, by the computer, whether the selected one or more separate code snippets resolve the new issue based at least in part on applying the structured based evaluation of a second abstract code syntax tree. 2. The method according to claim 1 , wherein constructing, by the computer, the respective issue representation of core content of the respective issue, further comprises: applying, by the computer, natural language processing to the respective issue to construct the respective issue representation of core content of the respective issue. 3. The method according to claim 1 , wherein constructing, by the computer, the linear expression of the one or more separate code snippets in the respective code representation, further comprises: applying, by the computer, a structured based evaluation of an abstract code syntax tree of the one or more separate code snippets to construct the linear expression in the respective code representation. 4. The method according to claim 1 , wherein training, by the computer, the model to correlate the respective code representation as resolving the respective issue representation further comprises: passing, by the computer, the respective code representation to a code embedding network of the model to generate a first vector embedding; passing, by the computer, the respective issue representation to an issue embedding network of the model to generate a second vector embedding; training, by the computer, the model with a loss function to minimize loss based on the distance between the first vector embedding and the second vector embedding. 5. The method according to claim 4 , wherein training, by the computer, the model with the loss function to minimize loss based on the distance between the first vector embedding and the second vector further comprises: training, by the computer, the model with the loss function to minimize loss based on the distance between the first vector embedding and the second vector, where the loss function produces a loss inverse to the distance between the first vector embedding and the second vector embedding if the code is not resolving the issue and produces a loss proportional to the distance between the first vector embedding and the second vector embedding if the code is resolving the issue. 6. The method according to claim 1 , wherein querying, by the computer, the model with the new issue and the selected one of the one or more separate code snippets, wherein the model returns the classification indicating whether the selected one of the one or more separate code snippets is likely to resolve the new issue further comprises: selecting, by the computer, the selected one of the one or more separate code snippets; applying, by the computer, the structured based evaluation of a second abstract code syntax tree of the selected one of the one or more separate code snippets to construct a linear expression in a previous code representation; querying, by the computer, the model with the new issue representation and the previous code representation; and receiving, by the computer, the classification indicating a probability value whether the selected one of the one or more separate code snippets is likely to resolve the new issue. 7. The method according to claim 1 , further comprising: responsive to the classification indicating the selected one of the one or more separate code snippets is likely to resolve the new issue, returning, by the computer, the selected one of the one or more separate code snippets as a recommended code snippet for resolving the new issue. 8. A computer system comprising one or more processors, one or more computer-readable memories, one or more computer-readable storage devices, and program instructions, stored on at least one of the one or more storage devices for execution by at least one of the one or more processors via at least one of the one or more memories, the stored program instructions comprising: program instructions to receive training data identifying a plurality of pairs, each pair identifying one or more separate code snippets known to resolve a respective issue of a plurality of issues; for each pair of the plurality of pairs: program instructions to construct a respective issue representation of core content of the respective issue; program instructions to construct a linear expression of the one or more separate code snippets in a respective code representation; and program instructions to train a model to correlate the respective code representation as resolving the respective issue representation; program instructions to apply natural language processing to a new issue to construct a new issue representation of core content of the new issue; and program instructions to query the model with the new issue representation and a selected one of the one or more separate code snippets via a new issue representation; and program instructions to determine whether the selected one or more separate code snippets resolve the new issue based at least in part on applying the structured based evaluation of a second abstract code syntax tree. 9. The system according to claim 8 , the program instructions to construct the respective issue representation of core content of the respective issue further comprising: program instructions to apply natural language processing to the respective issue to construct the respective issue representation of core content of the respective issue. 10. The system according to claim 8 , the program instructions to construct the linear expression of the one or more separate code snippets in the respective code representation further comprising: program instructions to apply a structured based evaluation of an abstract code syntax tree of the one or more separate code snippets to construct the linear expression in the respective code representation. 11. The system according to claim 8 , the program instructions to train the model to correlate the respective code representation as resolving the respective issue representation further comprising: program instructions to pass the respective code representation to a code embedding network of the model to generate a first vector embedding; program instructions to pass the respective issue representation to an issue embedding network of the model to generate a second vector embedding; program instructions to train the model with a loss function to minimize loss based on the distance between the first vector embedding and the second vector embedding. 12. The system according to claim 11 , the program instructions to train the model with the loss function to minimize loss based on the distance between the first vector embe
Combinations of networks · CPC title
Recurrent networks, e.g. Hopfield networks · CPC title
characterised by memory or gating, e.g. long short-term memory [LSTM] or gated recurrent units [GRU] · CPC title
Supervised learning · CPC title
Learning methods · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.