Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
DETAILED ACTION
The Action is responsive to the Amendments and Remarks filed on 5/18/2026. Claims 1-20 are pending claims. Claims 1, 19, and 20 are written in independent form.
Priority
Applicant's claim for benefit of prior-filed provisional application 63/523,588 (filed 6/7/2023) under 35. U.S.C. 119(e) or under 35 U.S.C. 120, 121, or 365(c) is acknowledged.
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claim(s) 1-20 are rejected under 35 U.S.C. 103 as being unpatentable over Clement et al. (U.S. Pre-Grant Publication No. 2024/0419917, hereinafter referred to as Clement) and further in view of Sethi et al. (U.S. Pre-Grant Publication No. 2022/0083565, hereinafter referred to as Sethi).
Regarding Claim 1:
Clement teaches a computer-implemented method for generating data for a base, the computer-implemented method comprising:
Receiving, by a computing device, a request to generate a set of data providing a functionality in a base comprising structured data,
Clement teaches “The customized prompt generation service 102 receives a request. The request is initiated from the user interface 144 through a chat box or through a user menu selection.” (Para. [0040]) and “The user interface 144 directs the request to the intended service. The request includes a query, context and intent 112. The query is a natural language description of the action the developer wants to perform. The intent is the particular software engineering task. At times, the request may not include the intent and the user interface uses a set of rules to determine the intent and forwards the request to the intended service.” (Para. [0041]).
the request comprising a natural language request for the functionality using at least a portion of the structured data of the base;
Clement teaches “The request includes a query, context and intent 112. The query is a natural language description of the action the developer wants to perform. The intent is the particular software engineering task.” (Para. [0041]) thereby teaching the request comprising a natural language request which is for a task/functionality that uses particular software and structured data of the base related to the task/action.
Determining, by the computing device, a prompt for a large language model to generate the set of data providing the functionality,
Clements teaches “The intended service generates a prompt based on a respective prompt template and transmits the prompt to a respective large language model (block 208). Each prompt includes retrieval-augmented examples of the task associated with the client.” (Para. [0042]).
Clement further teaches that the prompt for the LLM is “to generate the set of data providing the functionality” by teaching that “The customized prompt generation service 102 receives a request.” ( where “the request includes a query, context and intent 112. The query is a natural language description of the action the developer wants to perform. The intent is the particular software engineering task.” (Para. [0041])
wherein the prompt comprises a representation of:
the natural language request for the functionality;
Clement teaches using the request, including the “natural language description of the action the developer wants to perform” (Para. [0041] and Fig. 2 Elements 204-206) to generate the prompt (Para. [0042] and Fig. 2 Element 208) representing the natural language request for the action/functionality.
the portion of the structured data referenced in the natural language request, as present in the base;
Clement teaches using the request, including the “natural language description of the action the developer wants to perform” (Para. [0041] and Fig. 2 Elements 204-206) to generate the prompt (Para. [0042] and Fig. 2 Element 208) representing the natural language request for the desired action/functionality, where “Each prompt includes retrieval-augmented examples of the task associated with the client.” (Para. [0042]) and “the initial prompt includes the content specified in the prompt template and the retrieval-augmented example of the first software engineering task from the custom data of the client” (Para. [0079]).
in response to transmitting the prompt to the large language model, receiving, by the computing device, the set of data providing the functionality from the large language model; and
Clements teaches “A response from the large language model is obtained (block 210).” (Para. [0043]) where the request was for “a query, context and intent 112. The query is a natural language description of the action the developer wants to perform. The intent is the particular software engineering task. At times, the request may not include the intent and the user interface uses a set of rules to determine the intent and forwards the request to the intended service.” (Para. [0041]) and therefore the response receive includes the requested set of data providing the requested functionality.
transmitting the set of data for display as structured data in the base,
Clements teaches “the service returns the response to the client (block 216). The client may continue the conversion by issuing further requests (block 218—yes) which are processed until there are no further requests” (Para. [0045]) thereby teaching transmitting the set of data and displaying the structured answer from the database to the client/user.
wherein the set of data conforms to the contents as encoded in the prompt.
Clements teaches “The prompt template 400 includes the initial version of the source code snippet 402, the proposed code diff hunk 404, code reviews associated with similar code changes 406 and instructions describing the task and the expected output format 408.” (Para. [0056]).
Clements explicitly teaches all of the elements of the claimed invention as recited above except:
wherein the prompt comprising a representation of:
An encoded representation of a structure of the base, such that the encoded representation is transmitted to the large language model as part of the prompt;
An encoded representation of structural relationships in the base, including dependencies between fields, rows, and elements of the base; and
An encoded representation of data types of the structured data in the base, such that the large language model generates the set of data in a format consistent with the data types of the base;
wherein the set of data conforms to the structure, structural relationships, and data types of the base as encoded in the prompt.
However, in the related field of endeavor of receiving a user request to perform a task, Sethi teaches:
wherein the prompt comprising a representation of:
An encoded representation of a structure of the base, such that the encoded representation is transmitted to the large language model as part of the prompt;
Sethi teaches “configuring 505 a periodic synchronization between a first database and a second database. This may be prompted by the server 110 receiving a request to do so. The server 110 receives 510 a request to update a first table in a first database. The server 110 updates 520 the first table as requested.” (Para. [0075]). Sethi further teaches “each synchronization relationship between a source table and a target table may share a different subset of data selected from either the synchronized portion 325, the enriched portion 329, or both” (Para. [0064]) thereby teaching the structure and structural relationships.
Clements further teaches “the client submits a natural language request 112 for which a custom prompt 114 is created for the large language model to perform a specific software engineering task and generate a response 116.” (Para. [0022]) where the “large language model may be configured as an encoder-decoder neural transformer model with attention,” (Para. [0028]) and encoder-decoder models are understood as teaching encoded representations of the contents in the prompt that are used in generating an output.
Therefore, Sethi teaches including a structure of the base in the prompt/request and Clements teaches that the content included in the prompt is in an encoded representation transmitted as part of the prompt to the LLM.
An encoded representation of structural relationships in the base, including dependencies between fields, rows, and elements of the base; and
Sethi teaches “each synchronization relationship between a source table and a target table may share a different subset of data selected from either the synchronized portion 325, the enriched portion 329, or both” (Para. [0064]).
Sethi further teaches “The server 110 hosts multiple databases and performs synchronization between databases with a cross-base synchronize function. The cross-base synchronize function copies data from a shared source view to a target table. Data may be copied in one direction during a synchronization. When a synchronization completes, the target table contains all of the rows in the source view and cell data for all columns (alternatively, “fields”) selected to be synchronized. In one embodiment, only data (rows and columns) that are explicitly or implicitly set as ‘visible’ in the shared view can be copied. Users may determine what data is available to synchronize (and in what form) using a shared view interface (e.g., to designate one or more rows or columns as visible or not visible).” (Para. [0019]).
Clements further teaches “the client submits a natural language request 112 for which a custom prompt 114 is created for the large language model to perform a specific software engineering task and generate a response 116.” (Para. [0022]) where the “large language model may be configured as an encoder-decoder neural transformer model with attention,” (Para. [0028]) and encoder-decoder models are understood as teaching encoded representations of the contents in the prompt that are used in generating an output.
Therefore, Sethi teaches including a structural relationships in the base, including dependencies between fields, rows, and elements of the base, in the prompt/request, and Clements teaches that the content included in the prompt is in an encoded representation transmitted as part of the prompt to the LLM.
An encoded representation of data types of the structured data in the base, such that the large language model generates the set of data in a format consistent with the data types of the base;
Sethi teaches “the column synchronized from table one 412A to the column 427 may have a data type “text,” where the column synchronized from table two 412B to the column 427 may have a data type “date.” Because table one 412A is the primary source, the server 110 sets column 427 as having data type “text” and casts data from table two 412B for column 427 as “text.” (Para. [0069]) thereby teaching information about data types of the structured data in the base.
Clements further teaches “the client submits a natural language request 112 for which a custom prompt 114 is created for the large language model to perform a specific software engineering task and generate a response 116.” (Para. [0022]) where the “large language model may be configured as an encoder-decoder neural transformer model with attention,” (Para. [0028]) and encoder-decoder models are understood as teaching encoded representations of the contents in the prompt that are used in generating an output.
Therefore, Sethi teaches including data types of the structured data in the base in the prompt/request, and Clements teaches that the content included in the prompt is in an encoded representation transmitted as part of the prompt to the LLM.
wherein the set of data conforms to the structure, structural relationships, and data types of the base as encoded in the prompt.
Clements teaches “The prompt template 400 includes the initial version of the source code snippet 402, the proposed code diff hunk 404, code reviews associated with similar code changes 406 and instructions describing the task and the expected output format 408.” (Para. [0056]) thereby teaching the output including a set of data that conforms to contents of the prompt, including the structure, structural relationships, and data types of the base which Sethi teaches as being included in the request/prompt.
Thus, it would have been obvious to one of ordinary skill in the art, having the teachings of Sethi and Clement at the time that the claimed invention was effectively filed, to have modified the systems and methods for automating prompts to an LLM to perform a specified software engineering task, as taught by Clement, with the additional requests for the task of automatic synchronization from one or more databases to a table, as taught by Sethi.
One would have been motivated to make such combination because Clement teaches “Developers not familiar with the nuances of a software engineering task and the idiosyncrasies of the large language model often need assistance in crafting a prompt to achieve the best results” (Para.[0016]) where “A request may include a query, a context, and/or an intent 112. The query is a request for an action, the context is the subject of the action…and the intent specifies the software engineering task related to the action” (Para.[0024]) and Sethi teaches additional software engineering tasks/actions (“synchronizing data from one or more sources to a data table” – Para. [0002]) that would benefit from similar assistance to Clement because “Enterprises and other entities often provide different users with access permission to different subsets of the data available to the entity. As a result, entities typically maintain multiple databases that include partially overlapping data. Maintaining consistency between the overlapping portions can be a time-consuming and error prone task. For example, if a human is responsible for entering new data into multiple databases, typographical and other errors may lead to discrepancies between different versions of the data” (Para. [0003]). It would have been obvious to a person having ordinary skill in the art that expanding the assistance taught by Clement to include assistance for the synchronization of data task/action taught by Sethi would create a more diverse and useful system for assisting developers not familiar with the nuances of a wider array of software engineering tasks.
Regarding Claim 2:
Sethi and Clement further teach:
determining, using the prompt at a network system hosting the large language model, the set of data providing the functionality,
Clement teaches “ a custom prompt 114 is created for the large language model to perform a specific software engineering task and generate a response 116.” (Para. [0022]) thereby teaching determining, using the prompt, the set of data providing the functionality for performing the specific software engineering task and generating the response 116.
the large language model configured to:
interpret the natural language request for the functionality using at least the structured data,
Clement teaches “a large language model 104 is a neural transformer model with attention. A neural transformer model with attention is one distinct type of machine learning model. Machine learning pertains to the use and development of computer systems that are able to learn and adapt without following explicit instructions by using algorithms and statistical models to analyze and draw inferences from patterns in data” (Para.[0026]) and “Deep learning differs from traditional machine learning since it uses multiple stages of data processing through many hidden layers of a neural network to learn and interpret the features and the relationships between the features” (Para. [0027]).
identify contextual relationships between the functionality and one or more of the structure of the structured data, the structural relationships of data in the structured data, and data types of the structured data, and
Clement teaches “a large language model 104 is a neural transformer model with attention. A neural transformer model with attention is one distinct type of machine learning model. Machine learning pertains to the use and development of computer systems that are able to learn and adapt without following explicit instructions by using algorithms and statistical models to analyze and draw inferences from patterns in data” (Para.[0026]) and “Deep learning differs from traditional machine learning since it uses multiple stages of data processing through many hidden layers of a neural network to learn and interpret the features and the relationships between the features” (Para. [0027]).
determine the set of data providing the functionality based on the contextual relationships.
Clement teaches “a large language model 104 is a neural transformer model with attention. A neural transformer model with attention is one distinct type of machine learning model. Machine learning pertains to the use and development of computer systems that are able to learn and adapt without following explicit instructions by using algorithms and statistical models to analyze and draw inferences from patterns in data” (Para.[0026]) and “Deep learning differs from traditional machine learning since it uses multiple stages of data processing through many hidden layers of a neural network to learn and interpret the features and the relationships between the features” (Para. [0027]).
Clement further teaches “The prompt includes a description of the task…and instructions describing the action the large language model is to perform and the output format of the response.” (Para. [0063]) and “The prompt is sent to the large language model (block 510) and the model returns a response which is output (block 512)” (Para. [0061]). Therefore, Clement teaches determining the set of data providing the functionality based on the contextual relationships made by the LLM so that a response can be formed.
Regarding Claim 3:
Sethi and Clement further teach:
receiving, by the computing device, a selection of the large language model from a plurality of large language models, wherein the plurality of large language models is provided to a client device generating the prompt; and
Clement teaches “The customized prompt generation service 102 receives a request. The request is initiated from the user interface 144 through a chat box or through a user menu selection. The user interface includes a menu that includes a button for each software engineering service.” (Para. [0040]) where “The user interface 144 directs the request to the intended service.” (Para.[0041]) and “the intended service generates a prompt based on a respective prompt template and transmits the prompt to a respective large language model (block 208)” (Para. [0042])
wherein generating the prompt for the large language model accounts for a configuration of the selected large language model.
Clement teaches “The user interface 144 directs the request to the intended service.” (Para.[0041]) and “the intended service generates a prompt based on a respective prompt template and transmits the prompt to a respective large language model (block 208)” (Para. [0042]) thereby teaching that the respective prompt for the LLM accounts for a configuration of the respective LLM.
Regarding Claim 4:
Sethi and Clement further teach:
wherein the natural language request comprises one or more data objects representing the portion of the structured data of the base.
Clement teaches “The user interface 144 directs the request to the intended service. The request includes a query, context and intent 112. The query is a natural language description of the action the developer wants to perform. The intent is the particular software engineering task.” (Para. [0041]) thereby teaching the natural language request comprising the data objects describing the action the developer wants to perform.Sethi teaches an example of a request as including “the data access module 220 receives a request from a client device 140 indicating an identifier of the requesting user (e.g., a username or user identifier) and data from a specified table in a specified database that the user wishes to view” (Para. [0058]) thereby teaching the specific portion of the structured data of the base being included in the request.
Regarding Claim 5:
Sethi and Clement further teach:
receiving, at the computing device, an edit to the set of data displayed as structured data of the base;
Sethi teaches “The data update module 230 provides a mechanism for creators and their collaborators to edit data in and add data to databases. In one embodiment, the data update module 230 receives a request from a client device 140 indicating an identifier of the requesting user and data to be added to or amended into a specified table in a specified database” (Para. [0059]).
generating, at the computing device, a flag for the set of data as manipulated data based on the edit;
Sethi teaches “if a target table is duplicated, the duplicate table has the same configuration as the original target table. If the user deletes a target table, then restores it, the target table may regain its original configuration from before its deletion” (Para. [0049]) thereby teaching flagging a set of data as manipulated based on an edit action.
responsive to receiving an additional request to modify the set of data, determining an additional prompt and modifying the set of data based on the generated flag.
Sethi teaches “A response from the large language model is obtained (block 210). A post-processing action may be performed on the response to ensure that the response addresses the query (block 212). If the response is not adequate (block 214—yes), the service may continue the conversation with the large language model for additional data (block 208). The service creates an additional prompt to alleviate any issues detected by the post processing actions (block 208). The additional prompt includes the previously-transmitted prompts since the large language model does not save context information from previous prompts of the conversation.” (Paras. [0043]-[0044]). Therefore Sethi teaches an additional request related to the particular response/previous request and determining an additional prompt related to the contents of the previous request.Sethi teaches subsequent requests related to the same data by teaching “if a target table is duplicated, the duplicate table has the same configuration as the original target table. If the user deletes a target table, then restores it, the target table may regain its original configuration from before its deletion” (Para. [0049])
Regarding Claim 6:
Sethi and Clement further teach:
wherein the structure of the structured data comprises one or more of:
a plurality of elements in the base, each element comprising structured data;
Sethi teaches “In practice, the bases data store 210 will likely include many more (e.g., hundreds, thousands, or even millions of) bases. Base one 310 includes table one 312, which has a synchronized portion 315 and an unsynchronized portion 317. Base two 320 includes table two 322, which includes a synchronized portion 325 (which mirrors the synchronized portion 315 of table one 312 except for any differences that arose since the previous synchronization operation) and an enriched portion 329. The enriched portion 329 may include data added by users of base two 320, data synchronized from a third table, or both.” (Para. [0063]).Sethi further teaches “ Data may be copied in one direction during a synchronization. When a synchronization completes, the target table contains all of the rows in the source view and cell data for all columns (alternatively, “fields”) selected to be synchronized” (Para. [0019]).
a set of rows of the base, the set of rows comprising one or more of the plurality of elements;
Sethi further teaches “ Data may be copied in one direction during a synchronization. When a synchronization completes, the target table contains all of the rows in the source view and cell data for all columns (alternatively, “fields”) selected to be synchronized” (Para. [0019]).
a set of fields in the base, the set of fields comprising one or more of the plurality of elements;
Sethi further teaches “ Data may be copied in one direction during a synchronization. When a synchronization completes, the target table contains all of the rows in the source view and cell data for all columns (alternatively, “fields”) selected to be synchronized” (Para. [0019]).
a label for each element of the plurality of elements, each row of the set of rows, and each field of the set of fields; and
Sethi teaches “Maintaining a database that includes data from several sources can be especially time-consuming and error prone. When an attribute in the database includes data taken from multiple sources, data loss can occur when different sources have different data types or different labels for the attribute.” (Para. [0004]).
a size of the base.
Regarding Claim 7:
Sethi and Clement further teach:
wherein the base comprises a plurality of elements in a set of fields and a set of rows, and
Sethi teaches “In practice, the bases data store 210 will likely include many more (e.g., hundreds, thousands, or even millions of) bases. Base one 310 includes table one 312, which has a synchronized portion 315 and an unsynchronized portion 317. Base two 320 includes table two 322, which includes a synchronized portion 325 (which mirrors the synchronized portion 315 of table one 312 except for any differences that arose since the previous synchronization operation) and an enriched portion 329. The enriched portion 329 may include data added by users of base two 320, data synchronized from a third table, or both.” (Para. [0063]).Sethi further teaches “ Data may be copied in one direction during a synchronization. When a synchronization completes, the target table contains all of the rows in the source view and cell data for all columns (alternatively, “fields”) selected to be synchronized” (Para. [0019]).
the structural relationships of data in the structured data comprise one or more of:
a dependency of a first field in the set of fields on a second field in the set of fields;
Sethi teaches “The cross-base synchronize function copies data from a shared source view to a target table. Data may be copied in one direction during a synchronization. When a synchronization completes, the target table contains all of the rows in the source view and cell data for all columns (alternatively, “fields”) selected to be synchronized. In one embodiment, only data (rows and columns) that are explicitly or implicitly set as ‘visible’ in the shared view can be copied. Users may determine what data is available to synchronize (and in what form) using a shared view interface (e.g., to designate one or more rows or columns as visible or not visible). As described in further detail below, a user can synchronize some or all data from one or more sources to a target table, and one or more of the sources can be external to the server 110, e.g., may be hosted by an external server 115.” (Para. [0019]). Therefore, Sethi teaches setting a dependency of a first field/column in a target table on a second field/column in a source table.
a dependency of a first row in the set of rows on a second row in the set of rows;
Sethi teaches “The cross-base synchronize function copies data from a shared source view to a target table. Data may be copied in one direction during a synchronization. When a synchronization completes, the target table contains all of the rows in the source view and cell data for all columns (alternatively, “fields”) selected to be synchronized. In one embodiment, only data (rows and columns) that are explicitly or implicitly set as ‘visible’ in the shared view can be copied. Users may determine what data is available to synchronize (and in what form) using a shared view interface (e.g., to designate one or more rows or columns as visible or not visible). As described in further detail below, a user can synchronize some or all data from one or more sources to a target table, and one or more of the sources can be external to the server 110, e.g., may be hosted by an external server 115.” (Para. [0019]). Therefore, Sethi teaches setting a dependency of a first row in a target table on a second row in a source table.
a dependency of a first element of the plurality of elements on a second element of the plurality of elements; and
Sethi teaches “The cross-base synchronize function copies data from a shared source view to a target table. Data may be copied in one direction during a synchronization. When a synchronization completes, the target table contains all of the rows in the source view and cell data for all columns (alternatively, “fields”) selected to be synchronized. In one embodiment, only data (rows and columns) that are explicitly or implicitly set as ‘visible’ in the shared view can be copied. Users may determine what data is available to synchronize (and in what form) using a shared view interface (e.g., to designate one or more rows or columns as visible or not visible). As described in further detail below, a user can synchronize some or all data from one or more sources to a target table, and one or more of the sources can be external to the server 110, e.g., may be hosted by an external server 115.” (Para. [0019]). Therefore, Sethi teaches setting a dependency of a first piece of cell data in a target table on a second piece of cell data in a source table.
one or more logical functions governing dependencies in the structural data.
Sethi teaches “synchronization may be two-directional between two tables, where each table acts as a source table and a target table, and synchronized data added to either table is propagated to the other upon a subsequent synchronization.” (Para. [0052])
Regarding Claim 8:
Sethi and Clement further teach:
wherein the prompt comprises a relationship between the base and one or more additional bases;
Sethi teaches “a request to add a second source to a first table in a first database that synchronizes data from a first source” (Para. [0077]) where “synchronization may be two-directional between two tables, where each table acts as a source table and a target table, and synchronized data added to either table is propagated to the other upon a subsequent synchronization.” (Para. [0052]). Therefore, Sethi teaches the request, that results in generating a prompt taught by Clement, comprising a relationship between the additional sources and the first table.
wherein each of the one or more additional bases depend on structured data of the base.
Sethi teaches “a request to add a second source to a first table in a first database that synchronizes data from a first source” (Para. [0077]) where “synchronization may be two-directional between two tables, where each table acts as a source table and a target table, and synchronized data added to either table is propagated to the other upon a subsequent synchronization.” (Para. [0052]) thereby teaching that the structures between the sources and the first table depend on the structured data of each other.
Regarding Claim 9:
Sethi and Clement further teach:
wherein the set of data is propagated to the one or more additional bases that depend on the structured data of the base.
Sethi teaches “synchronization may be two-directional between two tables, where each table acts as a source table and a target table, and synchronized data added to either table is propagated to the other upon a subsequent synchronization.” (Para. [0052]).
Regarding Claim 10:
Sethi and Clement further teach:
wherein the prompt comprises a representation of a relationship between the base and one or more additional bases;
Sethi teaches “a request to add a second source to a first table in a first database that synchronizes data from a first source” (Para. [0077]) where “synchronization may be two-directional between two tables, where each table acts as a source table and a target table, and synchronized data added to either table is propagated to the other upon a subsequent synchronization.” (Para. [0052]). Therefore, Sethi teaches the request, that results in generating a prompt taught by Clement, comprising a relationship between the additional sources and the first table.
wherein the structured data of the base depend on structured data of the one or more additional bases.
Sethi teaches “a request to add a second source to a first table in a first database that synchronizes data from a first source” (Para. [0077]) where “synchronization may be two-directional between two tables, where each table acts as a source table and a target table, and synchronized data added to either table is propagated to the other upon a subsequent synchronization.” (Para. [0052]) thereby teaching that the structures between the sources and the first table depend on the structured data of each other.
Regarding Claim 11:
Sethi and Clement further teach:
wherein the set of data is propagated to the one or more additional bases that depend on the structured data of the base.
Sethi teaches “synchronization may be two-directional between two tables, where each table acts as a source table and a target table, and synchronized data added to either table is propagated to the other upon a subsequent synchronization.” (Para. [0052])
Regarding Claim 12:
Sethi and Clement further teach:
the bases comprises a field, and
Sethi teaches “ select the source table within that type, and then map the fields from the new source table to the fields in the existing table.” (Para. [0036])
the request to generate the set of data providing the functionality in the base is received as input to the field; and
Sethi teaches “receiving 610 a request to add a second source to a first table in a first database that synchronizes data from a first source” (Para.[0077]) and “select the source table within that type, and then map the fields from the new source table to the fields in the existing table.” (Para. [0036])
the generated prompt is associated with the field.
Sethi teaches “A customized prompt generation service automates prompts to a large language model to perform a specified software engineering task” (Abstract) thereby teaching the generated prompt being associated with the field when the prompt is based on the request requiring the mapping of fields between the new source table and the existing source table.
Regarding Claim 13:
Sethi and Clement further teach:
wherein the received set of data is displayed in the field before being displayed as structured data in the base.
Sethi teaches “The data update module 230 provides a mechanism for creators and their collaborators to edit data in and add data to databases. In one embodiment, the data update module 230 receives a request from a client device 140 indicating an identifier of the requesting user and data to be added to or amended into a specified table in a specified database.” (Para.[0059]) where changes or associations can be “automatically applied or presented to the user as suggestions for verification.” (Para. [0073]) thereby teaching displaying data for verification before being displayed as structured data in the base.
Regarding Claim 14:
Sethi and Clement further teach:
wherein the base comprises a data generation assistant function, and
Sethi teaches the data generation assistant function by teaching “the server 110 auto-matches columns with synonymous field names, as determined according to the field name data store 420. The field name data includes mappings between field names that are likely to be synonymous. Thus, the server 110 can use the field name data to identify columns with different but synonymous names as likely matches. The matches can be automatically applied or presented to the user as suggestions for verification.” (Para. [0073])
the request to generate the set of data providing the functionality in the base is received at the data generation assistant.
Sethi teaches an auto-matching request for assistance by teaching ““the server 110 auto-matches columns with synonymous field names, as determined according to the field name data store 420. The field name data includes mappings between field names that are likely to be synonymous. Thus, the server 110 can use the field name data to identify columns with different but synonymous names as likely matches. The matches can be automatically applied or presented to the user as suggestions for verification.” (Para. [0073])
Regarding Claim 15:
Sethi and Clement further teach:
wherein the received set of data is displayed by the data generation assistant function before being displayed as structured data in the base.
Sethi teaches “The data update module 230 provides a mechanism for creators and their collaborators to edit data in and add data to databases. In one embodiment, the data update module 230 receives a request from a client device 140 indicating an identifier of the requesting user and data to be added to or amended into a specified table in a specified database.” (Para.[0059]) and “the server 110 auto-matches columns with synonymous field names, as determined according to the field name data store 420. The field name data includes mappings between field names that are likely to be synonymous. Thus, the server 110 can use the field name data to identify columns with different but synonymous names as likely matches. The matches can be automatically applied or presented to the user as suggestions for verification.” (Para. [0073]) thereby teaching displaying the data generated by the assistant function for verification before being displayed as structured data in the base.
Regarding Claim 16:
Sethi and Clement further teach:
wherein the functionality is categorizing data input into the database.
Sethi teaches “Base three 410C includes table three 412C, which includes a synchronized portion 425 and an enriched portion 429. The enriched portion 429 may include data added by users of base two 410B, data synchronized from a fourth table, or both. For example, the server 110 may receive user input data (e.g., data that a user input to a client device 140 and sent to the server 110) specifying additional one or more rows or columns to add to table three 410C.” (Para. [0066]). By adding data input into the database, the data is being categorized based at least on row/column/table designations and data type(s).
Regarding Claim 17:
Sethi and Clement further teach:
wherein the functionality is generating a function that manipulates a first portion of the structured data in the base based on a second portion of the structured data in the base.
Sethi teaches “The data synchronize module 240 updates some or all portions of target tables to synchronize them with the corresponding source table (or tables)... Additionally or alternatively, users of a target table may force a manual synchronization to one or more source tables (e.g., by selecting a control in the user interface).” (Para. [0060])
Regarding Claim 18:
Sethi and Clement further teach:
wherein the functionality is translating a first portion of the structured data in the base.
Sethi teaches “In one embodiment, the server 110 stores a tabular data mapping to translate data from the external server 115 to a usable format for server 110 databases.” (Para. [0027]).
Regarding Claim 19:
Some of the limitations herein are similar to some or all of the limitations as recited in Claim 1.
Sethi and Clement further teach a system comprising:
one or more processors (Clement – Para. [0075]); and
a non-transitory computer readable storage medium comprising computer program instructions for generating data for a base, the computer program instructions, when executed by the one or more processors, causing the one or more processors to perform steps (Clement – Paras. [0074] – [0075]).
Regarding Claim 20:
All of the limitations herein are similar to some or all of the limitations as recited in Claims 1 and 19.
Response to Amendment
Applicant’s Amendments, filed on 5/18/2026, are acknowledged and accepted.
In light of the Amendments and Remarks filed on 5/18/2026, the claim objections of claims 1, 19, and 20 have been withdrawn.
Response to Arguments
In light of the Amendments and Remarks filed on 5/18/2026 and further review of the Application’s specification, the 101 rejection of claims 1-20 for being directed to an abstract idea without significantly more has been withdrawn. In particular, Applicant convincingly argues on Pages 10-12 of the Remarks that the amended claims are “directed to a practical application that produces a concrete, technical result. The [amended] claimed method does not merely generate a response from a language model; it generates a set of data that conforms to the structure, structural relationships, and data types of the base as encoded in the prompt, and transmits that data for display as structured data within the base itself.” (Page 11) and “the claimed system solves a specific technical problem identified in the specification: existing generative Al integrations do not adopt a coherent structural approach, making them non-scalable and difficult to configure. The claims address this problem by making the language model base-aware through prompt encoding, producing structured output that integrates directly into the base without requiring manual reformatting or post-processing.” (Pages 11-12).
On pages 12-14 of the Remarks filed on 5/18/2026, Applicant argues that neither of Clement nor Sethi teach the amended claims because “The structural information disclosed in Sethi (such as table structure, field relationships, and data types) is used as internal configuration information for synchronization between tables. Sethi does not disclose a large language model, does not disclose generating or transmitting a prompt to a large language model, and does not disclose encoding base structure, structural relationships, or data types into a prompt for use by a large language model. Thus, even if Sethi discloses database structural information, Sethi uses that information for a different purpose and in a different technological context than the amended claims.” and “Clement's prompt generation service automates construction of prompts using prompt templates for software engineering tasks, with template content directed to software engineering artifacts such as code diff hunks, source code segments, code reviews, repaired code, and unit tests. Clement does not disclose prompt templates that include encoded representations of a database base's structure, dependencies between fields, rows, and elements, or data types of structured data in the base. Nor does Clement's general discussion of deep learning (i.e., processing data through multiple stages to learn or interpret features and relationships between features) teach or suggest an LLM configured to receive encoded representations of a specific base schema and generate structured output conforming to that schema. A generic neural-network capability to process features is not the claimed prompt-based encoding of base-specific structure, relationships, and data types for schema-conforming output generation.”Applicant’s argument is not convincing because upon further review of the prior art, Clement in combination with Sethi was found to teach the argued amended limitations which are addressed in full above.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
Shakeri et al. (U.S. Patent No. 12,321,706) teaches soft knowledge prompts (KPs) to inject relevant world knowledge into language models. This includes training KPs via self-supervised learning on data from one or more knowledge bases. KPs are task independent and can function as an external memory of the language models. KPs may be entity-centric, meaning that each prompt primarily encodes information about one entity from a given knowledge base. A method includes identifying a KP in response to a received input text, concatenating that KP to a sequence of word embeddings of the input text, applying the concatenated information to a trained language model, predicting an object entity name, computing a cross-entropy loss, and updating the identified KP based on the computed cross-entropy loss.The reference further teaches “the query 108 is sent to the system 100 via a network 112. Once the system applies a selected language model (LM) to the query 108, it returns an answer 114 via the network 112. The question may be posed and the answer presented via an app 116 displayable to the user 106 on a graphical user interface (GUI) 118 of the user's client device 110.”
Newman et al. (U.S. Pre-Grant Publication No. 2024/0427999) teaches a first conversational input of one or more sequential conversational inputs via one or more user input devices. The first conversational input can be associated with a particular uniform resource locator (URL) address. The computing device can process the first conversational input using one or more natural language processing algorithms to determine one or more intents based on the first conversational input. The computing device can select one or more data segments from a data store based on the intents. The computing device can generate a command including the data segments. The computing device can generate a generative response by performing the command with a generative artificial intelligence algorithm. The computing device can provide a response to the first conversational input based on the generative response.The reference further teaches “The process 600 can demonstrate a technique for generating various responses 216 using various large language models and selecting the best response 216 for the input 213.” (Para.[0182]).
Gabel et al. (U.S. Pre-Grant Publication No. 2024/0184564) teaches a system that trains a machine-learning model to assist with performing software engineering tasks is described. The system retrieves data from data sources associated with software engineering tasks. The system links the data by linking each issue report which describes any one of the software engineering tasks with source code associated with the any one of the software engineering tasks. The system transforms the data to be compatible with a data format used to train a machine-learning model to assist with performing software engineering tasks. The system trains the machine-learning model with the transformed data to assist with performing a software engineering task by making a prediction of source code changes associated with the software engineering task.
Sboychakova et al. (U.S. Patent No. 11,960,500) teaches a natural language processing system that conducts user interaction to identify and refine requests for data analyses, and automatically conducts data mining and prepares data visualizations in response to natural language queries. Similarly natural language processing system can be utilized for updating business system data in response to natural language requests. The system greatly improves the ease of use, intuitiveness, variety, and responsiveness of the data analytics system by converting natural language requests into requests for data analyses. This allows a much wider range of users to conduct commercially relevant data analytics without relying on specialists in the field data analytics specialists and at much lower cost than the conventional approach.
Madisetti et al. (U.S. Pre-Grant Publication No. 2025/0190460) teaches generating outputs in LLMs including receiving including textual content, defining a context for the documents including identifying a topic or a category, segmenting the textual content into content chunks associated with the topic or category, assigning a tag to each content chunk, identifying selected chunks, adding metadata to the selected chunks indexing the selected chunks, receiving a query, and performing a response generation process including determining if a cache includes information for the query and either retrieving the information from the cache or performing a search of the index to retrieve the information, generating an augmented query by augmenting the query with retrieved information, generating a response from the augmented query, evaluating the response for compliance with criteria, and one of generating a final response and transmitting the final response to the user or performing a fine-tuning process comprising redefining the of the one or more contexts.
De Ridder (U.S. Pre-Grant Publication No. 2021/0271823) teaches a model derived by applying to given content relevant competitive content and one or more optimization targets is received. Based on optimization criteria encoded as embedding signals in the model, a determination is made regarding whether a template suitable for use as an input to the generative-AI exists in a set of templates. If so, the model embedding signals are merged into the template, or the template itself is transformed using the embedding signals, in either case creating a modified template. If, however, no template suitable as the input exists, the model and other information are input to a natural language processor to generate a generative-AI input. Either the modified template or the generative-AI input, as the case may be, is then applied through the generative-AI to generate an output competitively-optimized with respect to the optimization targets.
THIS ACTION IS MADE FINAL. Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to ROBERT F MAY whose telephone number is (571)272-3195. The examiner can normally be reached Monday-Friday 9:30am to 6pm.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Boris Gorney can be reached on 571-270-5626. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/ROBERT F MAY/Examiner, Art Unit 2154 8/5/2026
/SYED H HASAN/Primary Examiner, Art Unit 2154