The patent badge is an abbreviated version of the USPTO patent document. The patent badge does contain a link to the full patent document.

The patent badge is an abbreviated version of the USPTO patent document. The patent badge covers the following: Patent number, Date patent was issued, Date patent was filed, Title of the patent, Applicant, Inventor, Assignee, Attorney firm, Primary examiner, Assistant examiner, CPCs, and Abstract. The patent badge does contain a link to the full patent document (in Adobe Acrobat format, aka pdf). To download or print any patent click here.

Date of Patent:
Jan. 14, 2025

Filed:

Nov. 03, 2023
Applicant:

Microsoft Technology Licensing, Llc., Redmond, WA (US);

Inventors:

Miltiadis Allamanis, Cambridge, GB;

Daya Guo, Zhuhai, CN;

Neelakantan Sundaresan, Bellevue, WA (US);

Alexey Svyatkovskiy, Bellevue, WA (US);

Assignee:
Attorney:
Primary Examiner:
Int. Cl.
CPC ...
G06F 8/33 (2018.01); G06F 8/36 (2018.01); G06N 3/045 (2023.01); G06N 3/08 (2023.01);
U.S. Cl.
CPC ...
G06F 8/33 (2013.01); G06F 8/36 (2013.01); G06N 3/045 (2023.01); G06N 3/08 (2013.01);
Abstract

A code generation system uses a non-terminal expansion model and a non-terminal selector model to generate a code sketch to complete a partially-formed source code snippet. The non-terminal expansion model is a neural transformer model trained on a supervised dataset through reinforcement learning to learn to predict the production rule to expand for a given non-terminal symbol. The non-terminal selector model is trained through reinforcement learning to predict the non-terminal symbol to expand given a partial-code state. The models are used in a two-step beam search to generate the top candidate code sketches, where a candidate code sketch may contain a hole that represents an unexpanded non-terminal symbol.


Find Patent Forward Citations

Loading…