Patents by Inventor Rishabh Singh

Rishabh Singh has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 11960867
    Abstract: Using a natural language (NL) latent presentation in the automated conversion of source code from a base programming language (e.g., C++) to a target programming language (e.g., Python). A base-to-NL model can be used to generate an NL latent representation by processing a base source code snippet in the base programming language. Further, an NL-to-target model can be used to generate a target source code snippet in the target programming language (that is functionally equivalent to the base source code snippet), by processing the NL latent representation. In some implementations, output(s) from the NL-to-target model indicate canonical representation(s) of variables, and in generating the target source code snippet, technique(s) are used to match those canonical representation(s) to variable(s) of the base source code snippet. In some implementations, multiple candidate target source code snippets are generated, and a subset (e.g., one) is selected based on evaluation(s).
    Type: Grant
    Filed: May 17, 2023
    Date of Patent: April 16, 2024
    Assignee: GOOGLE LLC
    Inventors: Rishabh Singh, Hanjun Dai, Manzil Zaheer, Artem Goncharuk, Karen Davis, David Andre
  • Publication number: 20240088547
    Abstract: A multi-band antenna system is provided. The antenna system can be placed under and embedded within a glass exterior surface of a vehicle. Such an antenna system can include a capacitively coupled metallic element on or adjacent to the glass exterior surface, which can serve as both a parasitic element to enhance gain and as a heating element to melt snow and/or ice accumulation over the glass area that covers the antenna. In certain applications, the antenna's structure itself can be used as a heater to improve performance in adverse weather conditions while the heating elements are positioned away from the thermally sensitive electronics. The antenna system with integrated heating can include a spiral antenna.
    Type: Application
    Filed: January 19, 2022
    Publication date: March 14, 2024
    Inventors: Anand S. Konanur, Shreya Singh, Richard Breden, Yasutaka Horiki, Aycan Erentok, George Zucker, Nagarjun Bhat, Rui Moreira, Aydin Nabovati, Rishabh Bhandari, Austin Rothschild, Jae Hoon Yoo, Loic Le Toumelin
  • Patent number: 11899566
    Abstract: Training and/or utilization of machine learning model(s) (e.g., neural network model(s)) in automatically generating test case(s) for source code. Techniques disclosed herein can be utilized in generating test case(s) for unit test testing (or other white-box testing) and/or for functional testing (or other black-box testing). In some implementations, the machine learning model(s) can be trained on source code, unit test pairs. In some additional or alternative implementations, reinforcement learning techniques can be utilized to check for correctness of base source code, target source code pairs (e.g., by matching program execution of different branches).
    Type: Grant
    Filed: May 12, 2021
    Date of Patent: February 13, 2024
    Assignee: GOOGLE LLC
    Inventors: Rishabh Singh, David Andre
  • Publication number: 20240036843
    Abstract: Implementations are described herein for adapting existing source code snippets to new contexts. In various implementations, a command may be detected to incorporate an existing source code snippet into destination source code. An embedding may be generated based on the existing source code snippet, e.g., by processing the existing source code snippet using an encoder. The destination source code may be processed to identify one or more decoder constraints. Subject to the one or more decoder constraints, the embedding may be processed using a decoder to generate a new version of the existing source code snippet that is adapted to the destination source code.
    Type: Application
    Filed: October 12, 2023
    Publication date: February 1, 2024
    Inventors: Qianyu Zhang, Bin Ni, Rishabh Singh, Olivia Hatalsky
  • Patent number: 11875139
    Abstract: The present disclosure provides systems and methods for synthesizing computer-readable code based on the receipt of input and output examples. A computing system in accordance with the disclosure can be configured to receive a given input and output, access and library of operations, and perform a search of a library of operations (e.g., transpose, slice, norm, etc.) that can be applied to the input. By applying the operations to the input and tracking the results, the computing system may identify an expression comprising one or a combination of operations that when applied to the input generates the output. In this manner, implementations of the disclosure may be used to identify one or more solutions that a user having access to the library of operations may use to generate the output from the input.
    Type: Grant
    Filed: February 6, 2023
    Date of Patent: January 16, 2024
    Assignee: GOOGLE LLC
    Inventors: Kensen Shi, Rishabh Singh, David J. Bieber
  • Patent number: 11861263
    Abstract: This specification is generally directed to techniques for robust natural language (NL) based control of computer applications. In many implementations, the NL control is at least selectively interactive in that the user feedback input is solicited, and received, in resolving action(s), resolving action set(s), generating domain specific knowledge, and/or in providing feedback on implemented action set(s). The user feedback input can be utilized in further training of machine learning model(s) utilized in the NL based control of the computer applications.
    Type: Grant
    Filed: June 22, 2022
    Date of Patent: January 2, 2024
    Assignee: X DEVELOPMENT LLC
    Inventors: Thomas Hunt, David Andre, Nisarg Vyas, Rebecca Radkoff, Rishabh Singh
  • Patent number: 11822909
    Abstract: Implementations are described herein for adapting existing source code snippets to new contexts. In various implementations, a command may be detected to incorporate an existing source code snippet into destination source code. An embedding may be generated based on the existing source code snippet, e.g., by processing the existing source code snippet using an encoder. The destination source code may be processed to identify one or more decoder constraints. Subject to the one or more decoder constraints, the embedding may be processed using a decoder to generate a new version of the existing source code snippet that is adapted to the destination source code.
    Type: Grant
    Filed: September 1, 2022
    Date of Patent: November 21, 2023
    Assignee: GOOGLE LLC
    Inventors: Qianyu Zhang, Bin Ni, Rishabh Singh, Olivia Hatalsky
  • Publication number: 20230359789
    Abstract: As opposed to a rigid approach, implementations disclosed herein utilize a flexible approach in automatically determining an action set to utilize in attempting performance of a task that is requested by natural language input of a user. The approach is flexible at least in that embedding technique(s) and/or action model(s), that are utilized in generating action set(s) from which the action set to utilize is determined, are at least selectively varied. Put another way, implementations leverage a framework via which different embedding technique(s) and/or different action model(s) can at least selectively be utilized in generating different candidate action sets for given NL input of a user. Further, one of those action sets can be selected for actual use in attempting real-world performance of a given task reflected by the given NL input. The selection can be based on a suitability metric for the selected action set and/or other considerations.
    Type: Application
    Filed: May 2, 2023
    Publication date: November 9, 2023
    Inventors: David Andre, Rishabh Singh, Rebecca Radkoff, Yu-Ann Madan, Nisarg Vyas, Jayendra Parmar, Falak Shah, Shaili Trivedi
  • Publication number: 20230350657
    Abstract: Techniques are described herein for translating source code using sparse-self attention. In various implementations, a source code snippet in a first programming language may be processed to obtain graph(s) representing snippet tokens, and relationships therebetween. Based on the graph(s), a subset of snippet token pairs may be identified from a superset of all possible token pairs in the source code snippet. Each token pair of the subset may include snippet tokens that are represented by nodes connected by one or more edges of the one or more graphs. A self-attention network of a translation machine learning model may be adapted to sparsely attend across the identified subset of token pairs. The source code snippet may then be processed based on the adapted translation machine learning model to generate a translation of the source code snippet in the second programming language.
    Type: Application
    Filed: April 28, 2022
    Publication date: November 2, 2023
    Inventors: Rishabh Singh, Bin Ni, Manzil Zaheer
  • Publication number: 20230325164
    Abstract: Techniques are described herein for translating a source code snippet from a first programming language to a second programming language independently of sequence-to-sequence decoding. In various implementations, the source code snippet written in the first programming language may be processed using an encoder portion of a transformer network to generate an embedding of the source code snippet. The embedding of the source code snippet may be processed using an all-pair attention layer to generate an attended embedding of the source code snippet. The attended embedding of the source code snippet may be processed using an output layer to generate, by way of a single transformation of the attended embedding of the source code snippet, data indicative of a translation of the source code snippet in the second programming language.
    Type: Application
    Filed: April 11, 2022
    Publication date: October 12, 2023
    Inventors: Rishabh Singh, Manzil Zaheer
  • Patent number: 11775271
    Abstract: Techniques are described herein for translating source code in one programming language to source code in another programming language using machine learning. A method includes: receiving first source code in a first higher-level programming language; processing the first source code, or an intermediate representation thereof, using a sequence-to-sequence neural network model to generate a sequence of outputs, each including a probability distribution; generating second source code in a second higher-level programming language by, for each output in the sequence of outputs: determining a highest probability in the probability distribution associated with the output; in response to the highest probability exceeding a first threshold, generating a predicted portion of the second source code based on a token that corresponds to the highest probability; and in response to the highest probability not exceeding the first threshold, generating a placeholder; and outputting the second source code.
    Type: Grant
    Filed: May 10, 2021
    Date of Patent: October 3, 2023
    Assignee: GOOGLE LLC
    Inventors: Rishabh Singh, Artem Goncharuk, Karen Davis, David Andre
  • Patent number: 11693637
    Abstract: Using a natural language (NL) latent presentation in the automated conversion of source code from a base programming language (e.g., C++) to a target programming language (e.g., Python). A base-to-NL model can be used to generate an NL latent representation by processing a base source code snippet in the base programming language. Further, an NL-to-target model can be used to generate a target source code snippet in the target programming language (that is functionally equivalent to the base source code snippet), by processing the NL latent representation. In some implementations, output(s) from the NL-to-target model indicate canonical representation(s) of variables, and in generating the target source code snippet, technique(s) are used to match those canonical representation(s) to variable(s) of the base source code snippet. In some implementations, multiple candidate target source code snippets are generated, and a subset (e.g., one) is selected based on evaluation(s).
    Type: Grant
    Filed: May 13, 2021
    Date of Patent: July 4, 2023
    Assignee: GOOGLE LLC
    Inventors: Rishabh Singh, Hanjun Dai, Manzil Zaheer, Artem Goncharuk, Karen Davis, David Andre
  • Publication number: 20230185545
    Abstract: The present disclosure provides systems and methods for synthesizing computer-readable code based on the receipt of input and output examples. A computing system in accordance with the disclosure can be configured to receive a given input and output, access and library of operations, and perform a search of a library of operations (e.g., transpose, slice, norm, etc.) that can be applied to the input. By applying the operations to the input and tracking the results, the computing system may identify an expression comprising one or a combination of operations that when applied to the input generates the output. In this manner, implementations of the disclosure may be used to identify one or more solutions that a user having access to the library of operations may use to generate the output from the input.
    Type: Application
    Filed: February 6, 2023
    Publication date: June 15, 2023
    Inventors: Kensen Shi, Rishabh Singh, David J. Bieber
  • Patent number: 11656867
    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.
    Type: Grant
    Filed: September 15, 2022
    Date of Patent: May 23, 2023
    Assignee: GOOGLE LLC
    Inventors: Rishabh Singh, David Andre, Bin Ni, Owen Lewis
  • Patent number: 11636347
    Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for selecting actions to be performed by an agent interacting with an environment. In one aspect, a method comprises: obtaining a graph of nodes and edges that represents an interaction history of the agent with the environment; generating an encoded representation of the graph representing the interaction history of the agent with the environment; processing an input based on the encoded representation of the graph using an action selection neural network, in accordance with current values of action selection neural network parameters, to generate an action selection output; and selecting an action from a plurality of possible actions to be performed by the agent using the action selection output generated by the action selection neural network.
    Type: Grant
    Filed: January 22, 2020
    Date of Patent: April 25, 2023
    Assignee: DeepMind Technologies Limited
    Inventors: Hanjun Dai, Yujia Li, Chenglong Wang, Rishabh Singh, Po-Sen Huang, Pushmeet Kohli
  • Publication number: 20230039841
    Abstract: Techniques are described herein for automatically synthesizing programs that include one or more functions in a spreadsheet programming language. A method includes: receiving a first example including input provided in a first cell in a spreadsheet; automatically synthesizing a plurality of candidate programs including a first set of candidate programs consistent with the first example, wherein each candidate program in the first set of candidate programs comprises at least one function in a spreadsheet programming language and, when the candidate program is executed, the candidate program generates output that matches the first example; ranking the plurality of candidate programs; and storing a highest-ranked program of the plurality of candidate programs in association with the first cell in the spreadsheet.
    Type: Application
    Filed: October 24, 2022
    Publication date: February 9, 2023
    Inventors: Rishabh Singh, Aaron Zemach, Chiraag Galaiya, Dima Brezhnev, David Lick, Francisco Velasquez, Max Lin, Neha Bhargava, Peilun Zhang, Rahul Srinivasan, Simon Tong, Victoria Taylor, Vishnu Sivaji, Zifan Xiao
  • Patent number: 11573774
    Abstract: The present disclosure provides systems and methods for synthesizing computer-readable code based on the receipt of input and output examples. A computing system in accordance with the disclosure can be configured to receive a given input and output, access and library of operations, and perform a search of a library of operations (e.g., transpose, slice, norm, etc.) that can be applied to the input. By applying the operations to the input and tracking the results, the computing system may identify an expression comprising one or a combination of operations that when applied to the input generates the output. In this manner, implementations of the disclosure may be used to identify one or more solutions that a user having access to the library of operations may use to generate the output from the input.
    Type: Grant
    Filed: February 21, 2022
    Date of Patent: February 7, 2023
    Assignee: GOOGLE LLC
    Inventors: Kensen Shi, Rishabh Singh, David J. Bieber
  • Patent number: 11567921
    Abstract: Methods for rowgroup consolidation with delta accumulation and versioning in distributed systems are performed. The systems provide performant methods of row storage that enable versioned modifications of data while keeping and allowing access to older versions of the data for point-in-time transactions. The accumulation of valid rows, deletes, and modifications is maintained in blobs for rowgroups until a size threshold is reached, at which point the rows are moved into a columnar compressed form. Changes to data and associated metadata are stored locally and globally via appends, maintaining logical consistency. Metadata is stored in footers of files allowing faster access to the metadata and its associated data for transactions and instant rollback via metadata version flipping for aborted transactions, as well as lock-free reads of data.
    Type: Grant
    Filed: June 25, 2021
    Date of Patent: January 31, 2023
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Rishabh Singh Ahluwalia, Tianhui Shi, Srikumar Rangarajan, Steven John Lindell, Sandeep Lingam
  • Publication number: 20230018088
    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.
    Type: Application
    Filed: September 15, 2022
    Publication date: January 19, 2023
    Inventors: Rishabh Singh, David Andre, Bin Ni, Owen Lewis
  • Publication number: 20230004366
    Abstract: Implementations are described herein for adapting existing source code snippets to new contexts. In various implementations, a command may be detected to incorporate an existing source code snippet into destination source code. An embedding may be generated based on the existing source code snippet, e.g., by processing the existing source code snippet using an encoder. The destination source code may be processed to identify one or more decoder constraints. Subject to the one or more decoder constraints, the embedding may be processed using a decoder to generate a new version of the existing source code snippet that is adapted to the destination source code.
    Type: Application
    Filed: September 1, 2022
    Publication date: January 5, 2023
    Inventors: Qianyu Zhang, Bin Ni, Rishabh Singh, Olivia Hatalsky