-
公开(公告)号:US11604628B2
公开(公告)日:2023-03-14
申请号:US17123768
申请日:2020-12-16
Applicant: Google LLC
Inventor: Bin Ni , Owen Lewis , Qianyu Zhang
Abstract: Implementations are described herein for leveraging prior source code transformations to facilitate automatic creation and/or recommendation of tools for automating aspects of source code transformations captured in real time. In various implementations, a transformation made by a programmer to a source code snipped may be captured in a source code editor application in real time. Based on the transformation and the intent, one or more candidate source code transformations may be identified from one or more repositories of prior source code transformations made by one or more other programmers. The source code editor application may be caused to provide output indicative of a tool that is operable to automate one or more edits associated with both the transformation made by the programmer to the source code snippet and with one or more of the candidate source code transformations.
-
2.
公开(公告)号:US20230214195A1
公开(公告)日:2023-07-06
申请号:US18119640
申请日:2023-03-09
Applicant: GOOGLE LLC
Inventor: Bin Ni , Owen Lewis , Qianyu Zhang
Abstract: Implementations are described herein for leveraging prior source code transformations to facilitate automatic creation and/or recommendation of tools for automating aspects of source code transformations captured in real time. In various implementations, a transformation made by a programmer to a source code snipped may be captured in a source code editor application in real time. Based on the transformation and the intent, one or more candidate source code transformations may be identified from one or more repositories of prior source code transformations made by one or more other programmers. The source code editor application may be caused to provide output indicative of a tool that is operable to automate one or more edits associated with both the transformation made by the programmer to the source code snippet and with one or more of the candidate source code transformations.
-
公开(公告)号:US11886850B2
公开(公告)日:2024-01-30
申请号:US17903496
申请日:2022-09-06
Applicant: Google LLC
Inventor: Owen Lewis , Bin Ni
Abstract: Implementations are described herein for building and/or applying a library of transformation templates to automate migration of source code. In various implementations, pre-migration and post-migration versions of source code that exist prior to and after migration of the source code may be analyzed. Based on the analysis, one or more transformations made to the pre-migration version of the source code to yield the post-migration version of the source code may be identified. A library of transformation templates that are applicable subsequently to automate migration of new source code may be built. In some implementations, for one or more of the transformations, a plurality of candidate transformation templates may be generated with different permutations of tokens being replaced with placeholders. One of the plurality of candidate transformation templates may be selected for inclusion in the library based on one or more criteria.
-
公开(公告)号:US11656867B2
公开(公告)日:2023-05-23
申请号:US17945376
申请日:2022-09-15
Applicant: Google LLC
Inventor: Rishabh Singh , David Andre , Bin Ni , Owen Lewis
Abstract: Implementations are described herein for using machine learning to perform various tasks related to migrating source code based on relatively few (“few shots”) demonstrations. In various implementations, an autoregressive language model may be conditioned based on demonstration tuple(s). In some implementations, a demonstration tuple may include a pre-migration version of a first source code snippet and a post-migration version of the first source code snippet. In other implementations, demonstration tuples may include other data, such as intermediate forms (e.g., natural language descriptions or pseudocode), input-output pairs demonstrating intended behavior, etc. The autoregressive language model may be trained on corpora of source code and natural language documentation on the subject of computer programming. A pre-migration version of a source code file may be processed based on the conditioned autoregressive language model, and a post-migration version may be generated based on output generated based on the conditioned autoregressive model.
-
公开(公告)号:US12001821B2
公开(公告)日:2024-06-04
申请号:US18119640
申请日:2023-03-09
Applicant: GOOGLE LLC
Inventor: Bin Ni , Owen Lewis , Qianyu Zhang
Abstract: Implementations are described herein for leveraging prior source code transformations to facilitate automatic creation and/or recommendation of tools for automating aspects of source code transformations captured in real time. In various implementations, a transformation made by a programmer to a source code snipped may be captured in a source code editor application in real time. Based on the transformation and the intent, one or more candidate source code transformations may be identified from one or more repositories of prior source code transformations made by one or more other programmers. The source code editor application may be caused to provide output indicative of a tool that is operable to automate one or more edits associated with both the transformation made by the programmer to the source code snippet and with one or more of the candidate source code transformations.
-
公开(公告)号:US20240320445A1
公开(公告)日:2024-09-26
申请号:US18675840
申请日:2024-05-28
Applicant: GOOGLE LLC
Inventor: Shrestha Basu Mallick , Owen Lewis , Jaclyn Konzelmann , Christina Yang Choi , James Freedman , Jonathan Malmaud , Xin Xie , Brian Carver
IPC: G06F40/40
CPC classification number: G06F40/40
Abstract: Implementations described herein relate to attribution of a natural language (NL) based summary generated using a large language model (LLM). Processor(s) of a system can: receive NL based input associated with a client device, generate the NL based summary using the LLM, and process the NL based summary to determine whether a NL based summary segment of the NL based summary matches a dataset segment of a dataset that was utilized to initially train the LLM and/or to fine-tune the LLM. Further, the processor(s) can, in response to determining that the NL based summary segment matches the dataset segment, modify the NL based summary segment of the NL based summary to generate a modified NL based summary. Moreover, the processor(s) can cause the modified NL based summary to be rendered at the client device. The attribution of the NL based summary can be provided as a service to various third-parties.
-
-
-
-
-