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 1/23/2026 and included in the Request for Continued Examination filed on 2/12/2026. Claims 1-20 are pending claims. Claims 1 and 16 are written in independent form.
Priority
Applicant's claim for benefit of prior-filed provisional application 62/705,360, filed 6/23/2020, under 35. U.S.C. 119(e) or under 35 U.S.C. 120, 121, or 365(c), and as a continuation of previously filed non-provisional application 17/350,294, filed 6/17/2021, is acknowledged.
Claim Interpretation
Claim 15 recites the phrase “to process” which is being understood as having the intent to process, but is not actively performing any processing step/limitation. Examiner suggests to amend the claim limitations to recite all of the steps in a positive manner.
Claim 15 recites the limitation “wherein the trained machine learning system is deployed within a digital assistant to process user queries…” which is being interpreted as having a scope of “wherein the trained machine learning system is deployed within a digital assistant”. However, for the purpose of compact prosecution, the limitation is being addressed herein as if all of the steps are recited in a positive manner.
Claim Objections
Claim 1 is objected to because of the following informalities:
Claim 1 appears to recite a typographical error of amending the claims to recite “mapping data representing [[an]] the initial query…” when an initial query is not previously recited. The language is understood as intending to recite the previous language of “mapping data representing an [[the]] initial query…” which is also consistent with the un-amended language of independent claim 16.
Appropriate correction is required.
Claim Rejections - 35 USC § 101
35 U.S.C. 101 reads as follows:
Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title.
Claims 1-20 are rejected under 35 U.S.C. 101 because the claimed invention is directed to non-patentable subject matter. The claimed invention is directed to one or more abstract ideas without significantly more. The judicial exception is not integrated into a practical application. The claims do not include additional elements that are sufficient to amount to significantly more than judicial exception. The eligibility analysis in support of these findings is provided below.
As per Claims 1 and 16,
STEP 1:In accordance with Step 1 of the eligibility inquiry (as explained in MPEP 2106), the claimed method (claims 1-15) and non-transitory computer-readable storage medium (claims 16-20) is directed to one of the eligible categories of subject matter and therefore satisfies Step 1.
STEP 2A Prong One:The independent claims 1 and 16 recite the following limitations directed to an abstract idea:
Clustering the vector representations by
clustering the response vector representations based on distances between the response vector representations within vector space and
The limitation recites a mathematical concept of executing a mathematical formula in the form of clustering response vector representations based on distances between the representations within vector space.
applying a hierarchical clustering method to iteratively combine separate clusters;
The limitation recites a mathematical concept of executing a mathematical formula in the form of a hierarchical clustering method/formula.
Determining canonical queries and corresponding query groups based on the clustered vector representations, wherein corresponding query groups correspond to determined canonical queries;
The limitation recites a mental process of observation, evaluation, judgement, and/or opinion capable of being performed by the human mind by observing and evaluating clustered vector representations, and making a judgement and/or opinion of canonical queries and corresponding query groups that correspond to the determined canonical queries based on the observation and evaluation.
Generating paired data samples based on the determined canonical queries and selections from the corresponding query groups; and
The limitation recites a mental process of observation, evaluation, judgement, and/or opinion capable of being performed by the human mind by observing and evaluating canonical queries and selections from the corresponding query groups, and making a judgement and/or opinion to pair data samples based on the observation and evaluation.
Training an encoder-decoder neural network architecture using the paired data samples, wherein the selections from the corresponding query groups are supplied as input sequence data and the determined canonical queries are supplied as output sequence data,
The limitation recites a mathematical concept of executing a mathematical formula/function in the form of a training formula that takes as input pair data samples, and outputs a trained encoder-decoder neural network architecture, the training formula using “the corresponding query groups” of the paired data samples as input to an untrained encoder-decoder neural network architecture, and compares the output of the input to the corresponding “determined canonical queries” of the paired data samples.
Mapping data representing the initial query to data representing a revised query associated with one of the canonical queries, via the encoder-decoder neural network architecture, the data representing the revised query being further processed to provide a response to the initial query, and
The limitation recites a mathematical concept of executing a mathematical formula/function that takes as input data representing an initial query and data representing a revised query associated with one of the canonical queries, uses an encoder-decoder neural network architecture to map the data, and performing a processing of the data representing the revised query that includes providing a response to the initial query.
Wherein a canonical query is determined for a given cluster within the clustered vector representations based on a frequency of the query data paired with response vector representations within the given cluster.
The limitation recites a mental process of observation, evaluation, judgement, and/or opinion capable of being performed by the human mind by observing and evaluating a given cluster within the clustered vector representations and a frequency of the query data paired with response vector representations within the given cluster, and based on the observation and evaluation, making a judgement and/or opinion of a canonical query for the given cluster.
Wherein mapping the initial query to the revised query maximizes the likelihood of responding with an accurate and appropriate query response.
The limitation recites a mathematical concept of executing the previously stated mathematical mapping formula/function that includes a maximization objective of maximizing the likelihood of responding with an accurate and appropriate query response.
STEP 2A Prong Two:Claims 1 and 16 recite that the method is “computer-implemented” and performed using “a non-transitory computer-readable storage medium”, “at least one processor”, “a machine learning system”, and “an encoder-decoder neural network architecture”, which is a high-level recitation of generic computer components and represents mere instructions to apply on a computer as in MPEP 2106.05(f), which does not provide integration into a practical application.
The claim recites the following additional elements:
Obtaining training data comprising query data samples;
The limitation recites an insignificant extra solution activity as retrieval of data (ie. Mere data gathering) such as ‘obtaining information’ as identified in MPEP 2106.05(g) and does not provide integration into a practical application.
Obtaining vector representations of the query data samples;
The limitation recites an insignificant extra solution activity as retrieval of data (ie. Mere data gathering) such as ‘obtaining information’ as identified in MPEP 2106.05(g) and does not provide integration into a practical application.
Wherein a given vector representation comprise at least a response vector representation,
The limitation recites an insignificant extra-solution activity as selecting a particular type of data being used to represent a given vector representation as identified in MPEP 2106.05(g) and does not provide integration into a practical application.
the response vector representation being a vector representation of the data representing the response to a corresponding query,
The limitation recites an insignificant extra-solution activity as selecting a particular type of data being used to represent the response vector representation as identified in MPEP 2106.05(g) and does not provide integration into a practical application.
the response vector representation being paired with data representing the corresponding query;
The limitation recites an insignificant extra-solution activity as selecting a particular type of data being used to represent the response vector representation, by pairing/associating it with data representing the corresponding query, as identified in MPEP 2106.05(g) and does not provide integration into a practical application.
The canonical query being the most frequent representation that provides the response,
The limitation recites an insignificant extra-solution activity as selecting a particular type of characteristic to represent the canonical query as the most frequent representation that provides the response, as identified in MPEP 2106.05(g) and does not provide integration into a practical application.
Viewing the additional limitations together and the claim as a whole, nothing provides integration into a practical application.
STEP 2B:
The conclusions for the mere implementation using a computer are carried over and does not provide significantly more.
With respect to “Obtaining training data comprising query data samples;” identified as insignificant extra-solution activity above this is also WURC as court-identified see MPEP 2106.05(d)(II)(i).
With respect to “Obtaining vector representations of the query data samples;” identified as insignificant extra-solution activity above this is also WURC as court-identified see MPEP 2106.05(d)(II)(i).
With respect to “Wherein a given vector representation comprise at least a response vector representation,” identified as insignificant extra-solution activity above this is also WURC when claimed in a merely generic manner as court-identified see MPEP 2106.05(d)(II)(iv).
With respect to “the response vector representation being a vector representation of the data representing a response to a corresponding query,” identified as insignificant extra-solution activity above this is also WURC when claimed in a merely generic manner as court-identified see MPEP 2106.05(d)(II)(iv).
With respect to “the response vector representation being paired with data representing the corresponding query;” identified as insignificant extra-solution activity above this is also WURC when claimed in a merely generic manner as court-identified see MPEP 2106.05(d)(II)(iv).
With respect to “The canonical query being the most frequent representation that provides the response,” identified as insignificant extra-solution activity above this is also WURC when claimed in a merely generic manner as court-identified see MPEP 2106.05(d)(II)(iv).
Looking at the claim as a whole does not change this conclusion and the claim is ineligible.
As per Dependent Claims 2-15 and 17-20,
STEP 1:In accordance with Step 1 of the eligibility inquiry (as explained in MPEP 2106), the claimed method (claims 1-15) and non-transitory computer-readable storage medium (claims 16-20) is directed to one of the eligible categories of subject matter and therefore satisfies Step 1.
STEP 2A Prong One:The dependent claims 2-15 and 17-20 recite the following limitations directed to an abstract idea:
The limitation(s) of Dependent Claim 3 includes the step(s) of:
Wherein obtaining vector representations of the query data samples comprises converting the pairs of text data to corresponding vector representations.
The limitation recites a mental process of observation, evaluation, judgement, and/or opinion capable of being performed by the human mind, or by a human using a pen and paper, by observing and evaluating pairs of text data and based on the observation and evaluation, making a judgement and/or opinion to convert the pairs of text data into corresponding vector representations.
The limitation(s) of Dependent Claims 4 and 18 includes the step(s) of:
Performing named entity recognition on the text data; and
The limitation recites a mental process of observation, evaluation, judgement, and/or opinion capable of being performed by the human mind, or by a human using a pen and paper, by observing and evaluating the text data, and based on the observation and evaluation, making a judgement and/or opinion of recognized named entities.
Replacing the text data for tagged named entities with a named entity type tag.
The limitation recites a mental process of observation, evaluation, judgement, and/or opinion capable of being performed by the human mind, or by a human using a pen and paper, by observing the text data for tagged named entities, and based on the observation and evaluation, making a judgement and/or opinion to replace the text data with a named entity type tag.
The limitation(s) of Dependent Claims 6 and 20-includes the step(s) of:
Generating embedding vectors for the text representations; and
The limitation recites a mental process of observation, evaluation, judgement, and/or opinion capable of being performed by the human mind, or by a human using a pen and paper, by observing and evaluating the text representations, and based on the observation and evaluation, making a judgement and/or opinion to represent the text representations by generating embedding vectors.
Projecting the embedding vectors to a lower dimensionality vector space to output the vector representations.
The limitation recites a mathematical concept of executing a mathematical formula that takes as input the embedding vectors and outputs vector representations in a lower dimensionality vector space.
The limitation(s) of Dependent Claim 7 includes the step(s) of:
Tokenizing the text representations; and
The limitation recites a mathematical concept of executing a mathematical formula in the form of a tokenization formula that takes as input text representations and outputs a tokenized form of the text representations.
Applying a transformer neural network architecture to the tokenized text representations to generate the embedding vectors.
The limitation recites a mathematical concept of executing a mathematical formula in the form of a transformer neural network that takes as input tokenized text representations and outputs generated embedding vectors.
The limitation(s) of Dependent Claim 8 includes the step(s) of:
Wherein projecting the embedding vectors to a lower dimensionality vector space comprises selecting a subset of principal components, the principal components being determined following principal component analysis of query data samples.
The limitation recites a mental process of observation, evaluation, judgement, and/or opinion capable of being performed by the human mind, or by a human using a pen and paper, by observing and evaluating query data samples through principal component analysis and the embedding vectors, and based on the observation and evaluation, making a judgement and/or opinion of principal components and a selection of a subset of principal components.
The limitation(s) of Dependent Claim 9 includes the step(s) of:
Wherein clustering the vector representations comprises
performing a first stage of clustering based on vector representations of responses to queries; and
The limitation recites a mathematical concept of executing a mathematical formula in the form of a clustering formula that clusters based on vector representations of responses to queries.
Performing a second stage of clustering based on vector representations of the queries preceding the responses.
The limitation recites a mathematical concept of executing a mathematical formula in the form of clustering formula that clusters based on the queries that precede the responses.
The limitation(s) of Dependent Claim 10 includes the step(s) of:
Filtering the clustered vector representations prior to generating the paired data samples.
The limitation recites a mental process of observation, evaluation, judgement, and/or opinion capable of being performed by the human mind, or by a human using a pen and paper, by observing and evaluating the clustered vector representations, and based on the observation and evaluation, making a judgement and/or opinion to filter vector representations in the clustered vector representations.
The limitation(s) of Dependent Claim 11 includes the step(s) of:
Determining a centroid for the given cluster in the clustered vector representations; and
The limitation recites a mental process of observation, evaluation, judgement, and/or opinion capable of being performed by the human mind, or by a human using a pen and paper, by observing and evaluating the given cluster in the clustered vector representations, and based on the observation and evaluation, making a judgement and/or opinion of a centroid for the given cluster.
Unassigning vector representations of queries for the given cluster that are more than a predefined distance from the centroid.
The limitation recites a mental process of observation, evaluation, judgement, and/or opinion capable of being performed by the human mind, or by a human using a pen and paper, by observing and evaluating vector representations of queries for the given cluster, their distance from the centroid, and a predefined distance from the centroid, and based on the observation and evaluation, making a judgement and/or opinion to unassign vector representations of queries for the given cluster that having a distance from the centroid more than the predefined distance from the centroid.
The limitation(s) of Dependent Claim 12 includes the step(s) of:
Wherein said filtering comprises, for a given cluster:
Unassigning vector representations of queries for the given cluster responsive to the size being below a predefined threshold.
The limitation recites a mental process of observation, evaluation, judgement, and/or opinion capable of being performed by the human mind, or by a human using a pen and paper, by observing and evaluating the size of the given cluster and a predefined threshold, and based on the observation and evaluation, making a judgement and/or opinion to unassign vector representations of queries for the given cluster responsive to the size of the given cluster being below the predefined threshold.
The limitation(s) of Dependent Claim 13 includes the step(s) of:
wherein generating paired data samples comprises filtering generated paired data samples.
The limitation recites a mental process of observation, evaluation, judgement, and/or opinion capable of being performed by the human mind, or by a human using a pen and paper, by observing and evaluating the generated paired data samples, and based on the observation and evaluation, making a judgement and/or opinion to filter the generated paired data samples.
The limitation(s) of Dependent Claim 14 includes the step(s) of:
wherein filtering comprises one or more of:
Removing paired data samples with a canonical query whose named entity tags do not match the named entity tags in the corresponding selection from the query group; and
The limitation recites a mental process of observation, evaluation, judgement, and/or opinion capable of being performed by the human mind, or by a human using a pen and paper, by observing and evaluating named entity tags of canonical queries in paired data samples, named entity tags in corresponding selection from the query group, and making a judgement and/or opinion to remove paired data samples when the entity tags of the canonical query of a paired data sample does not match the named entity tags in the corresponding selection from the query group.
Removing paired data samples based on a comparison of semantic distance metrics for the canonical query and the corresponding selection from the query group.
The limitation recites a mental process of observation, evaluation, judgement, and/or opinion capable of being performed by the human mind, or by a human using a pen and paper, by observing and evaluating semantic distance metrics for the canonical query and the corresponding selection form the query group, and based on the observation and evaluation, making a judgement and/or opinion to remove paired data samples.
STEP 2A Prong Two:The claim(s) recite the following additional elements:
The limitation(s) of Dependent Claims 2 and 17 includes the step(s) of:
Wherein obtaining training data comprises obtaining pairs of text data representing queries and responses.
The limitation recites an insignificant extra solution activity as retrieval of data (ie. Mere data gathering) such as ‘obtaining information’ as identified in MPEP 2106.05(g) and does not provide integration into a practical application.
The limitation(s) of Dependent Claims 5 and 19 includes the step(s) of:
Wherein a first portion of the text data represents an output of speech-to-text processing that is performed on audio data for a voice query and a second portion of the text data comprises data for use in providing the response to the voice query.
The limitation recites an insignificant extra-solution activity as selecting a particular type of data being used to represent a first portion of the text data and a second portion of the text data as identified in MPEP 2106.05(g) and does not provide integration into a practical application.
The limitation(s) of Dependent Claims 6 and 20-includes the step(s) of:
Obtaining text representations of at least the responses to the queries;
The limitation recites an insignificant extra solution activity as retrieval of data (ie. Mere data gathering) such as ‘obtaining information’ as identified in MPEP 2106.05(g) and does not provide integration into a practical application.
The limitation(s) of Dependent Claim 12 includes the step(s) of:
Wherein said filtering comprises, for a given cluster:
Obtaining a size of the given cluster;
The limitation recites an insignificant extra solution activity as retrieval of data (ie. Mere data gathering) such as ‘obtaining information’ as identified in MPEP 2106.05(g) and does not provide integration into a practical application.
The limitation(s) of Dependent Claim 15 includes the step(s) of:
Wherein the trained machine learning system is deployed within a digital assistant to process user queries using the encoder-decoder neural network architecture.
The limitation recites an insignificant extra-solution activity as selecting a particular type of data environment (digital assistant) to deploy the trained machine learning system to as identified in MPEP 2106.05(g) and does not provide integration into a practical application.
Viewing the additional limitations together and the claim as a whole, nothing provides integration into a practical application.
STEP 2B:
The conclusions for the mere implementation using a computer are carried over and does not provide significantly more.
With respect to Claims 2 and 17 reciting “Wherein obtaining training data comprises obtaining pairs of text data representing queries and responses” identified as insignificant extra-solution activity above this is also WURC as court-identified see MPEP 2106.05(d)(II)(i).
With respect to Claims 5 and 19 reciting “Wherein a first portion of the text data represents an output of speech-to-text processing that is performed on audio data for a voice query and a second portion of the text data comprises data for use in providing the response to the voice query.” identified as insignificant extra-solution activity above this is also WURC as court-identified see MPEP 2106.05(d)(II)(iv).
With respect to Claims 6 and 20 reciting “Obtaining text representations of at least the responses to the queries;” identified as insignificant extra-solution activity above this is also WURC as court-identified see MPEP 2106.05(d)(II)(i).
With respect to Claim 12 reciting “Wherein said filtering comprises, for a given cluster obtaining a size of the given cluster;” identified as insignificant extra-solution activity above this is also WURC as court-identified see MPEP 2106.05(d)(II)(i).
With respect to Claim 15 reciting “Wherein the trained machine learning system is deployed within a digital assistant to process user queries using the encoder-decoder neural network architecture.” identified as insignificant extra-solution activity above this is also WURC as court-identified see MPEP 2106.05(d)(II)(iv).
Looking at the claim as a whole does not change this conclusion and the claim is ineligible.
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.
Claims 1-6 and 8-20 are rejected under 35 U.S.C. 103 as being unpatentable over Bachrach et al. (U.S. Pre-Grant Publication No. 2019/0251165, hereinafter referred to as Bachrach), and further in view of Berntson et al. (U.S. Pre-Grant Publication No. 2012/0059838, hereinafter referred to as Berntson).
Regarding Claim 1:
Bachrach teaches a computer-implemented method of training a machine learning system for use with a digital assistant, the method comprising:
Obtaining training data comprising query data samples;
Bachrach teaches a process for generating training data for a conversational agent beginning with obtaining text dialogue historical data comprising messages between an agent and a user (Paras. [0036] & [0069-0070]).
Obtaining vector representations of the query data samples,
Bachrach teaches pre-processing the text dialogue messages by tokenization and “text tokens may be converted into numeric form” where “to generate numeric arrays…word embeddings may be used” (Paras. [0037]-[0040]) thereby teaching obtaining vector representations of the text dialogue messages.
Wherein a given vector representation comprise at least a response vector representation, the response vector representation being a vector representation of the data representing a response to a corresponding query, the response vector representation being paired with data representing the corresponding query;
Bachrach teaches pre-processing the text dialogue messages by tokenization and “text tokens may be converted into numeric form” where “to generate numeric arrays…word embeddings may be used” (Paras. [0037]-[0040]) thereby teaching obtaining vector representations of the text dialogue messages, the text dialogue being represented as a sequence of query-response pairs (Para. [0036]).
Clustering the vector representations by
clustering the response vector representations based on distances between the response vector representations within vector space and
Bachrach teaches “for a given agent message, a numeric encoding may be generated from a context encoding, representing text data in the text dialogue prior to the given agent message, and a content encoding, representing text data for the given agent message” and “apply[ing] a clustering routine to a numeric encoding derived from a text dialogue” (Para. [0053]) where “other clustering routines include…hierarchical clustering (e.g. balanced iterative reducing and clustering using hierarchies)” (Para. [0054]).Therefore, Bachrach teaches using distance between response vector representations in the clustering when using at least a hierarchical clustering method.
applying a hierarchical clustering method to iteratively combine separate clusters;
Bachrach teaches “agent messages are clustered within the historical data” (Para. [0071]) where “other clustering routines include…hierarchical clustering (e.g. balanced iterative reducing and clustering using hierarchies)” (Para. [0054]).
Determining canonical queries (templates) and corresponding query groups (cluster of historical data) based on the clustered vector representations, wherein corresponding query groups correspond to determined canonical queries;
Bachrach teaches “response templates are generated for respective clusters based on the text data of agent messages within each cluster” (Para. [0072]) thereby teaching determining the template based on the cluster and the cluster corresponding to determined templates.
Bachrach further teaches:
“As a simple example, there may be three response templates: [“How to reset device”, “How to turn on screen”, “How to use device”], and so in this case the predictive model 320 would output an array of three elements, e.g. [0.1, 0.6, 0.3] representing a probability of each respective template being appropriate” (Para. [0050])
Therefore, Bachrach teaches the response templates as revised canonical queries such as “how to reset device”, “how to turn on screen”, and “how to use device”.
Generating paired data samples based on the determined canonical queries and selections from the corresponding query groups; and
Bachrach teaches “response templates are assigned to agent messages in the plurality of text dialogues based on a similarity metric” and “the this set of response templates may then be assigned to a set of agent messages within the historical data” (Para. [0072]) thereby teaching pairing a template with selections from the messages in the historical data that made up the query groups.
Training an encoder-decoder neural network architecture using the paired data samples, wherein the selections from the corresponding query groups are supplied as input sequence data (text data for messages prior to the given agent message) and the determined canonical queries are supplied as output sequence data (response template),
Bachrach teaches after assigning response templates to the messages in the historical data (Para. [0072]), “the text data in text dialogues in the second set of text dialogues is grouped to generate training data for the conversational agent. This includes, for a given agent message in a text dialogue in the second set of text dialogues, generating data for use as a training example by pairing text data for messages in the text dialogue prior to the given agent message with data indicating a response template assigned to the given agent message” (Para. [0073]).
Bachrach further teaches:
“Numeric encodings may also be generated based on trained autoencoders or sequence-to-sequence recurrent neural architectures (also called encoder-decoder systems), wherein the numeric array may be generated using the output of the encoder part of the system. Autoencoders or sequence-to-sequence recurrent neural architectures may be trained based on text dialogues from the dialogue database 310. For example, these systems may be trained based on pairs of a dialogue prefix representing messages prior to an agent message and the agent message itself, where the system attempts to generate the agent message as output (e.g. at a character or token level).” (Para. [0053]).
Mapping data representing an initial query to data representing a revised query associated with one of the canonical queries, via the encoder-decoder neural network architecture, the data representing the revised query being further processed to provide a response to the initial query, and
Bachrach teaches “the predictive model 320 is trained on a set of training data to determine a mapping between the text data 350 and the array of probabilities” which are response templates for responding to the text data (Para. [0051]).
Bachrach further teaches:
“As a simple example, there may be three response templates: [“How to reset device”, “How to turn on screen”, “How to use device”], and so in this case the predictive model 320 would output an array of three elements, e.g. [0.1, 0.6, 0.3] representing a probability of each respective template being appropriate” (Para. [0050])
Therefore, Bachrach teaches the response templates as revised canonical queries such as “how to reset device”, “how to turn on screen”, and “how to use device”.
Wherein a canonical query is determined for a given cluster within the clustered vector representations based on a frequency of the query data paired with response vector representations within the given cluster.
Bachrach teaches “the operation of generating a response template may, in one case, be performed by selecting the text data of an agent message that has a numeric encoding that is closest to a centroid of a cluster” (Para. [0082]) and therefore teaches determining the template for a given cluster based on the frequency of the query data paired with response vector representations because the frequency will affect the centroid of the cluster, and thus affect the determined template for the cluster.
Wherein mapping the initial query to the revised query maximizes the likelihood of responding with an accurate and appropriate query response.
Bachrach teaches “A response template that has a similarity metric value that indicates the best match may be selected as the response template to assign.” (Para. [0072]) and “The conversational agent then uses the predictive model to predict the best-fitting template for a given conversation, e.g. based on previous inputs from the conversation.” (Para. [0087]) where “an example system is able to adapt over time, e.g. to possibly expand a set of response templates and/or vary existing response templates to more accurately respond to user queries.” (Para. [0022]) thereby teaching the intent to maximize the likelihood of responding with an accurate and appropriate query response by selecting a best match or best-fitting template for a given conversation.
Bachrach explicitly teaches all of the elements of the claimed invention as recited above except:
the canonical query being the most frequent representation that provides the response,
However, in the related field of endeavor of providing responses to a search query, Berntson teaches:
the canonical query being the most frequent representation that provides the response,
Bernstson teaches “In an embodiment, for example, an answer mapper 328 (FIG. 3) generates a cluster of queries to represent the same broad entity and selects the most frequently occurring query in the cluster to be the canonical form for all queries in that cluster.” (Para. [0051])
Thus, it would have been obvious to one of ordinary skill in the art, having the teachings of Berntson and Bachrach at the time that the claimed invention was effectively filed, to have modified the systems and methods for training a digital assistant, as taught by Bachrach, with the answer mapper that selects the most frequently occurring query in the cluster to be the canonical form query, as taught by Bernston.
One would have been motivated to make such modification because Berntson teaches “answer mapper 328 can increase the probability that the query reformulations result in answers related to the same entity in the entity card.” (Para. [0063]).
Regarding Claim 2:
Berntson and Bachrach further teach:
Wherein obtaining training data comprises obtaining pairs of text data representing queries and responses.
Bachrach teaches “in one case, messages may be grouped into pairs of messages representing a query (e.g. from a user) and a response (e.g. from an agent). The text dialogue may then be represented as a sequence of these pairs” (Para. [0036]).
Regarding Claim 3:
Berntson and Bachrach further teach:
Wherein obtaining vector representations of the query data samples comprises converting the pairs of text data to corresponding vector representations.
Bachrach teaches pre-processing the text dialogue messages by tokenization and “text tokens may be converted into numeric form” where “to generate numeric arrays…word embeddings may be used” (Paras. [0037]-[0040]) thereby teaching obtaining vector representations of the text dialogue messages, the text dialogue being represented as a sequence of query-response pairs (Para. [0036]).
Regarding Claim 4:
Berntson and Bachrach further teach:
Performing named entity recognition on the text data; and
Bachrach teaches “in one case, messages may be grouped into pairs of messages representing a query (e.g. from a user) and a response (e.g. from an agent). The text dialogue may then be represented as a sequence of these pairs” (Para. [0036]).
Bachrach further teaches “named entity recognition that is performed on the agent message to replace an identified user name with a string representing the field value ‘{NAME}’, or excluding the field value from the response template and any identified proper noun from the agent message from the function” (Para. [0052]).
Replacing the text data for tagged named entities with a named entity type tag.
Bachrach teaches “named entity recognition that is performed on the agent message to replace an identified user name with a string representing the field value ‘{NAME}’, or excluding the field value from the response template and any identified proper noun from the agent message from the function” (Para. [0052]) thereby teaching replacing text data for tagged named entities with a named entity type tag.
Regarding Claim 5:
Berntson and Bachrach further teach:
Wherein a first portion of the text data represents an output of speech-to-text processing that is performed on audio data for a voice query and a second portion of the text data comprises data for use in providing the response to the voice query.
Bachrach teaches “Text dialogues may also use speech-to-text and text-to-speech front-end interfaces to convert audio and/or video data into text data for the text dialogue. The term “text dialogue” thus includes any conversation that is converted at some point into text data.” (Para. [0029]).
Bachrach further teaches “even though conversations are referred to as ‘text dialogues’, it is noted that front-end speech-to-text and text-to-speech may be used to convert sound data from a user into text data, and similarly convert an agent message into sound data” (Para. [0089])
Regarding Claim 6:
Berntson and Bachrach further teach:
Obtaining text representations of at least the responses to the queries;
Bachrach teaches pre-processing the text dialogue messages by tokenization and “text tokens may be converted into numeric form” where “to generate numeric arrays…word embeddings may be used” (Paras. [0037]-[0040]) thereby teaching obtaining vector representations of the text dialogue messages, the text dialogue being represented as a sequence of query-response pairs (Para. [0036]).
Generating embedding vectors for the text representations; and
Bachrach teaches pre-processing the text dialogue messages by tokenization and “text tokens may be converted into numeric form” where “to generate numeric arrays…word embeddings may be used” (Paras. [0037]-[0040]) thereby teaching obtaining vector representations of the text dialogue messages, the text dialogue being represented as a sequence of query-response pairs (Para. [0036]).
Projecting the embedding vectors to a lower dimensionality vector space to output the vector representations.
Bachrach teaches “Numeric encodings may also be generated based on trained autoencoders” (Para. [0053]) and “to generate numeric arrays…word embeddings may be used. For example, this may be based on a projection layer that receives one of the data representations 210, 220, or 230…and outputs a fixed-length array of real-values (e.g. 32 bit or 64 bit floats)” (Para. [0040]).
Bachrach further teaches “other text pre-processing includes converting characters to a single case (e.g. all lower case), removing certain punctuation or non-printing characters, and/or converting each term to a lemma (a normalized or dictionary form of the term, e.g. ‘is’ may be converted to ‘be’)” (Para. [0038]).
Regarding Claim 8:
Berntson and Bachrach further teach:
Wherein projecting the embedding vectors to a lower dimensionality vector space comprises selecting a subset of principal components, the principal components being determined following principal component analysis of query data samples.
Bachrach teaches “Numeric encodings may also be generated based on trained autoencoders” (Para. [0053]) and “to generate numeric arrays…word embeddings may be used. For example, this may be based on a projection layer that receives one of the data representations 210, 220, or 230…and outputs a fixed-length array of real-values (e.g. 32 bit or 64 bit floats)” (Para. [0040]).
Bachrach further teaches “other text pre-processing includes converting characters to a single case (e.g. all lower case), removing certain punctuation or non-printing characters, and/or converting each term to a lemma (a normalized or dictionary form of the term, e.g. ‘is’ may be converted to ‘be’)” (Para. [0038]).
Regarding Claim 9:
Berntson and Bachrach further teach wherein clustering the vector representations comprises:
Performing a first stage of clustering based on vector representations of responses to queries; and
Bachrach teaches “for a given agent message, a numeric encoding may be generated from a context encoding, representing text data in the text dialogue prior to the given agent message, and a content encoding, representing text data for the given agent message” and “apply[ing] a clustering routine to a numeric encoding derived from a text dialogue” (Para. [0053]) thereby teaching the numeric encodings being clustered representing the agent message (response to queries) and the text dialogue prior to the given agent message (queries preceding the responses).
Therefore, Bachrach teaches performing clustering based on at least the responses to the queries. It is noted that the claims to not require that the clustering be based solely on the responses to the queries and not the queries preceding the responses.
Performing a second stage of clustering based on vector representations of the queries preceding the responses.
Bachrach teaches “for a given agent message, a numeric encoding may be generated from a context encoding, representing text data in the text dialogue prior to the given agent message, and a content encoding, representing text data for the given agent message” and “apply[ing] a clustering routine to a numeric encoding derived from a text dialogue” (Para. [0053]) thereby teaching the numeric encodings being clustered representing the agent message (response to queries) and the text dialogue prior to the given agent message (queries preceding the responses).
Bachrach teaches performing another stage of clustering based on “an estimate of how similar each agent message in a cluster is to other agent messages within the cluster” and performing “further merge, split, or removal operations for presented clusters” (Para. [0064]). Therefore, Bachrach teaches performing the second stage of clustering based on at least the queries preceding the responses.
It is noted that the claims to not require that the second stage be based solely on the queries preceding the responses and not the responses to the queries.
It is further noted that a two-stage clustering based solely on a first feature in the first stage and based solely on a second feature in a second stage is merely a design choice to reduce the amount of data in each cluster.
Regarding Claim 10:
Berntson and Bachrach further teach:
Filtering the clustered vector representations prior to generating the paired data samples.
Bachrach teaches “Clusters may be filtered, e.g. added, modified or removed, based on the group similarity metric values to generate a second set of clusters. This second set of clusters is an optimized cluster set that is used to generate response templates in block 630.” (Para. [0075]).
Regarding Claim 11:
Berntson and Bachrach further teach:
Determining a centroid for the given cluster in the clustered vector representations; and
Bachrach teaches “clustering engine 325 may apply a clustering routine such as k-means clustering” (Para. [0054]) thereby teaching each cluster having a determined centroid
Unassigning vector representations of queries for the given cluster that are more than a predefined distance from the centroid.
Bachrach teaches “clustering engine 325 may apply a clustering routine such as k-means clustering” (Para. [0054]) thereby teaching each cluster having a determined centroid, and “the clustering engine 325 may generate a list of numeric encodings that do not fall within a determined cluster” (Para. [0054]). Therefore, Bachrach teaches unassigning nodes in the cluster that are more than a predefined distance from the centroid by teaching that there are “numeric encodings that do not fall within a determined cluster” after applying k-means clustering.
Regarding Claim 12:
Berntson and Bachrach further teach wherein said filtering comprises, for a given cluster:
Obtaining a size of the given cluster; and
Bachrach teaches:
“A cluster homogeneity metric represents a similarity of numeric encodings within a cluster or group (an intra-cluster metric); a cluster heterogeneity metric represents a dissimilarity between numeric encodings within one cluster or group and another cluster or group (an inter-cluster metric). For example, clusters may be added, modified and/or removed from the set of clusters to increase intra- (i.e. within) group similarity and to decrease inter- (i.e. between) group similarity. In tests it has been seen that a clustering engine 325 may, in certain circumstances, output large clusters that consist of a large percentage of the input dataset (e.g. up to 50% of the agent messages in the dialogue database 310). Such clusters may have a low value for a cluster homogeneity metric (e.g. consist of many dissimilar agent messages) and result in a low cluster heterogeneity metric (e.g. contain agent messages that are similar to agent messages in other clusters). In this case, the large cluster may be removed from the set of clusters as part of the optimization. In one case, values for one or more of the cluster homogeneity metric and the cluster heterogeneity metric may be compared with predefined thresholds to determine whether a cluster should be removed.” (Para. [0055])
Therefore, Bachrach teaches obtaining the size of a given cluster in terms of the distance between the nodes within the cluster and unassigning or removing nodes in the cluster responsive to the homogeneity metric being below a threshold.
Unassigning vector representations of queries for the given cluster responsive to the size being below a predefined threshold.
Bachrach teaches:
“A cluster homogeneity metric represents a similarity of numeric encodings within a cluster or group (an intra-cluster metric); a cluster heterogeneity metric represents a dissimilarity between numeric encodings within one cluster or group and another cluster or group (an inter-cluster metric). For example, clusters may be added, modified and/or removed from the set of clusters to increase intra- (i.e. within) group similarity and to decrease inter- (i.e. between) group similarity. In tests it has been seen that a clustering engine 325 may, in certain circumstances, output large clusters that consist of a large percentage of the input dataset (e.g. up to 50% of the agent messages in the dialogue database 310). Such clusters may have a low value for a cluster homogeneity metric (e.g. consist of many dissimilar agent messages) and result in a low cluster heterogeneity metric (e.g. contain agent messages that are similar to agent messages in other clusters). In this case, the large cluster may be removed from the set of clusters as part of the optimization. In one case, values for one or more of the cluster homogeneity metric and the cluster heterogeneity metric may be compared with predefined thresholds to determine whether a cluster should be removed.” (Para. [0055])
Therefore, Bachrach teaches obtaining the size of a given cluster in terms of the distance between the nodes within the cluster and unassigning or removing nodes in the cluster responsive to the homogeneity metric being below a threshold.
Regarding Claim 13:
Berntson and Bachrach further teach wherein generating paired data samples comprises:
filtering generated paired data samples.
Bachrach teaches “at block 650, at least agent messages from the set of text dialogues may be filtered based on values of the similarity metric determined during block 640 to generate a second set of text dialogues. This may include removing certain agent messages from the given text dialogue and/or removing complete text dialogues” (Para. [0073]).
Regarding Claim 14:
Berntson and Bachrach further teach wherein filtering comprises one or more of:
Removing paired data samples with a canonical query whose named entity tags do not match the named entity tags in the corresponding selection from the query group; and
Removing paired data samples based on a comparison of semantic distance metrics for the canonical query and the corresponding selection from the query group.
Bachrach teaches “for a given agent message, a numeric encoding may be generated from a context encoding, representing text data in the text dialogue prior to the given agent message, and a content encoding, representing text data for the given agent message” and “apply[ing] a clustering routine to a numeric encoding derived from a text dialogue” (Para. [0053]).
Bachrach further teaches “clustering engine 325 may apply a clustering routine such as k-means clustering” (Para. [0054]) and “the clustering engine 325 may generate a list of numeric encodings that do not fall within a determined cluster” (Para. [0054]).
Therefore, Bachrach teaches removing paired data samples based on the contextual, or semantic, distance metrics.
Regarding Claim 15:
Berntson and Bachrach further teach:
Wherein the trained machine learning system is deployed within a digital assistant to process user queries using the encoder-decoder neural network architecture.
Bachrach teaches the trained predictive model being deployed in a digital assistant (conversational agent) to process user queries using the encoder-decoder neural network architecture by teaching “in use, e.g., when implementing the dialogue system 100 of Fig. 1, the conversational agent 305 may use the array of probabilities to select a response template 340 from the template database 310 to generate the agent response 345” (Para. [0050]) where “generating a response template may comprise training a recurrent neural network, such as those found within a autoencoder or sequence-to-sequence model, using the text data of agent messages within each cluster (e.g. where a different model is trained for each cluster).” (Para. [0082]) and “trained autoencoders or sequence-to-sequence recurrent neural architectures (also called encoder-decoder systems)” (Para. [0053]),
Regarding Claim 16:
Some of the limitations herein are similar to some or all of the limitations of Claim 1.
Berntson and Bachrach further teach:
A non-transitory computer-readable storage medium storing instructions which, when executed by at least one processor, cause the at least one processor to perform steps (Bachrach - Para. [0086]).
Regarding Claim 17:
All of the limitations herein are similar to some or all of the limitations of Claim 2.
Regarding Claim 18:
All of the limitations herein are similar to some or all of the limitations of Claim 4.
Regarding Claim 19:
All of the limitations herein are similar to some or all of the limitations of Claim 5.
Regarding Claim 20:
All of the limitations herein are similar to some or all of the limitations of Claim 6.
Claim 7 is rejected under 35 U.S.C. 103 as being unpatentable over Berntson and Bachrach, and further in view of Steedman Henderson (U.S. Pre-Grant Publication No. 2021/0141798, hereinafter referred to as Steedman).
Regarding Claim 7:
Berntson and Bachrach further teach:
Tokenizing the text representations; and
Bachrach teaches pre-processing the text dialogue messages by tokenization and “text tokens may be converted into numeric form” where “to generate numeric arrays…word embeddings may be used” (Paras. [0037]-[0040]). Bachrach further teaches “tokenization performed on the text data of an agent message” (para. [0071]).
Applying a neural network architecture to the tokenized text representations to generate the embedding vectors.
Bachrach teaches “the output of this [tokenization] process is a sequence of token embeddings that may be input into a bidirectional recurrent neural network, e.g. as part of predictive model 320” (Para. [0057]).
Berntson and Bachrach explicitly teach all of the elements of the claimed invention as recited above except:
Applying a transformer neural network architecture to the tokenized text representations to generate the embedding vectors.
However, in the related field of endeavor of training a dialogue system, Steedman teaches:
Applying a transformer neural network architecture to the tokenized text representations to generate the embedding vectors.
Steedman teaches “the same deep transformer network is used on both sides of the dual encoder model i.e., to encode both inputs and responses starting from their subword-level tokenization” (Para. [0178]).
Thus, it would have been obvious to one of ordinary skill in the art, having the teachings of Steedman, Berntson, and Bachrach at the time that the claimed invention was effectively filed, to have modified the systems and methods for training a digital assistant, as taught by Bachrach, and the answer mapper that selects the most frequently occurring query in the cluster to be the canonical form query, as taught by Bernston, with the use of a transformer network architecture, as taught by Steedman.
One would have been motivated to make such modification because Steedman teaches “a transformer network is a sequence to sequence network that does not comprise any recurrent networks. The transformer network comprises an encoder part and a decoder part during training. The encoder part is used during inference, and is shown in FIG. 6(a). The encoder part and decoder part comprise two or more repeating modules, or blocks. Each module comprises at least one attention layer. The transformer comprises one or more attention mechanisms which are sequence-to-sequence information that dispense of stepwise sequential nature” (Para. [0131]) and “the use of two headed self-attention improves the model’s ability to focus on different positions and to capture the relationships between a subword and another based on its position in the sequence” (Para. [0146]).
Response to Amendment
Applicant’s Amendments filed on 1/23/2026 and included in the Request for Continued Examination filed on 2/12/2026 are acknowledged and accepted.
In light of the Amendments filed on 1/23/2026 and included in the Request for Continued Examination filed on 2/12/2026, the claim objection to claims 1 and 16 has been withdrawn.
In light of the Amendments filed on 1/23/2026 and included in the Request for Continued Examination filed on 2/12/2026, the 112(b) rejection of Claim 15 has been withdrawn.
Response to Arguments
On pages 11-12 of the Remarks filed on 1/23/2026, Applicant argues that “the newly added limitation "the canonical query being the most frequent representation that provides the response" and "wherein mapping the initial query to the revised query maximizes the likelihood of responding with an accurate and appropriate query response " ties the claim to an objective, data-driven mechanism for training and limits the invention to a practical application”Applicant’s argument is not convincing because it is unclear how using the most frequent representation itself ties the claims to the argued “data-driven mechanism for training” or “limits the invention to a practical application”. It is further not convincing because an abstract idea itself (mapping the initial query to the revised query maximizes the likelihood of responding with an accurate and appropriate query response) cannot itself, without additional elements, integrate the claim into a practical application in step 2A Prong Two.
On page 12 of the Remarks filed on 1/23/2026, Applicant argues that “the claim's features are not mere mathematical concepts or mental steps "in the abstract," but rather an integrated application of algorithms within a specific computing context. For example, the claim recites clustering vector representations of query/response data and training of an encoder-decoder neural network, tasks that are firmly rooted in computer technology and far beyond what a human mind could practically perform.” because “Paragraph [0017] even points out that "implementations may include data sets with over a million training samples" and additional filtering is applied at that scale to improve data quality. Handling such volumes and performing iterative clustering and neural network training require computer operation and cannot feasibly be done with pen and paper or purely mentally. In other words, the claim is directed to improving computer functionality (a digital assistant's query-response accuracy) by leveraging advanced computer-specific technology, rather than to a naked abstract idea.”Applicant’s argument is moot for at least the reason that the human mind was not recited as the abstract idea linked to the claimed clustering or training limitations.
On page 13 of the Remarks filed on 1/23/2026, Applicant argues, with respect to Step 2A Prong 2 of the 101 rejection, that “The method is not merely applied on a generic computer for convenience. Instead, claim 1 is directed to: Implementing a specific neural architecture (encoder-decoder), Using frequency-based selection criteria within a statistically clustered dataset, and Resulting in a trained model deployed by a digital assistant to improve query understanding in real-world use. This is clearly more than applying a mathematical formula or organizing human activity. It is a concrete, technological implementation of machine learning techniques deployed in service of a digital assistant where "mapping the initial query to the revised query maximizes the likelihood of responding with an accurate and appropriate query response" while handling ambiguous language or noisy environments, as explained above and confirmed in the specification (e.g., paragraph [0019] which says, in part, this "may thus be seen as a form of pre-filtering or noise removal that improves digital assistants."”Applicant’s argument is not convincing because the argued implementing neural network, using frequency-based selection criteria, and training a model for deployment are all understood as reciting abstract ideas addressed above, not additional elements for analysis under step 2A Prong 2.
On page 13 of the Remarks filed on 1/23/2026, Applicant argues, with respect to Step 2B of the 101 rejection, that “Applicant respectfully submits that claim 1 recites a set of computer-implemented steps that improves a technical field related to machine learning systems used for natural language understanding in digital assistants.”, the improvement including “improves performance by mapping ill-formed and potentially noisy or ambiguous initial queries to a canonical, i.e. representative, query. This output canonical query may thus be supplied to a query processing pipeline to facilitate the computation of a response."”.Applicant’s argument is not convincing because the argued mapping step is understood as reciting an abstract idea addressed above, not as including additional elements for analysis under step 2A Prong 2 or step 2B.
On pages 14-15 of the Remarks filed on 1/23/2026, Applicant argues that “There is no teaching in Bachrach of choosing a canonical query or template based on the frequency of occurrence of queries in the cluster”. Applicant’s argument is convincing that Bachrach does not teach the argued limitation and thus necessitated the new grounds of rejection presented above.
On page 15 of the Remarks filed on 1/23/2026, Applicant argues that “claim 1 as amended emphasizes that the trained encoder-decoder network is used to map an initial user query to a revised (canonical) query, which is then "further processed to provide a response to the initial query." Bachrach does not disclose this specific arrangement.” because “In Bachrach 's system, the predictive model outputs a probability distribution over response templates, and the highest-probability template is "selected and populated to generate a new agent message" (i.e., a response) that is sent to the user. In other words, Bachrach's model directly produces or selects the final answer (agent response) to the user, rather than producing a reformulated user query for further processing. Bachrach's so-called "response templates" are answers or answer formats (for example, templated responses like "How to reset device" used by the agent system to reply to the user), not canonical user queries fed into a downstream search or query pipeline. In contrast, the claimed invention yields a revised query (canonical query) that the digital assistant then uses as a new query input to its knowledge base or decision logic to fetch/compute the final answer. The Office Action incorrectly equated Bachrach's “response templates" to the claimed canonical queries (revised queries).”Applicant’s argument is not convincing because a canonical query is merely understood as a normalized version of a query that represents a group of similar queries, which is what a template does. It is further noted that Bachrach does not teach the canonical query specifically as being the most frequent representation of the group, as is amended, but the newly added reference in the new grounds of rejection above addresses this specific feature used for selecting the canonical/representative query.
On pages 15-16 of the Remarks filed on 1/23/2026, Applicant argues that “While it is true both serve as a form of normalized representation, their roles in the respective systems differ materially. Bachrach 's templates are end-point responses, selected to be given to the user directly, whereas the claimed canonical query is an intermediate query representation that must still be processed to obtain the ultimate answer. Nowhere does Bachrach teach or suggest taking an initial user query, mapping it to a new canonical query, and then using that query as input for further query processing to get an answer.”Applicant’s argument is not convincing for at least the reason of the claims merely recite that “the data representing the revised query being further processed to provide a response to the initial query” without providing how the steps involved in “being further processed”. As a result, Bachrach’s template is understood as teaching the scope of the claimed feature being argued.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
Faruqui et al. (U.S. Pre-Grant Publication No. 2020/0167379) teaches training and/or utilizing a query canonicalization system. In various implementations, a query canonicalization system can include a classification model and a canonicalization model. A classification model can be used to determine if a search query is well-formed. Additionally or alternatively, a canonicalization model can be used to determine a well-formed variant of a search query in response to determining a search query is not well-formed. In various implementations, a canonicalization model portion of a query canonicalization system can be a sequence to sequence model.
Walters et al. (U.S. Pre-Grant Publication No. 2021/0042614) teaches classifying data sets based on associated neural networks. In particular, the disclosed embodiments relate to techniques for estimating one or more functions based on a neural network associated with a data set and classifying the data set accordingly. In addition, the disclosed embodiments may train the associated neural network, e.g., to generate synthetic data based on the data set.
Alakuijala et al. (U.S. Pre-Grant Publication No. 2020/0142888) teaches generating query variants for a submitted query. In many implementations, the query variants are generated utilizing a generative model. A generative model is productive, in that it can be utilized to actively generate a variant of a query based on application of tokens of the query to the generative model, and optionally based on application of additional input features to the generative model.
Bachrach et al. (U.S. Pre-Grant Publication No. 2019/0155905) teaches methods and systems for generating templates for use by a conversational agent. These examples enable a natural language interface to be provided. Certain examples cluster user and agent messages from a corpus of text data representing text dialogues. This clustering enables response templates to be generated in a way that takes into account a context in which responses are given. In certain examples, messages that are exchanged between a user and a conversational agent are embedded as numeric arrays based a neural sequence-to-sequence model. Clustering routines are used to group dialogue encodings into one or more response clusters, and these clusters may then be used to generate response templates. The response templates may be used by a conversational agent to prepare a response to a user message.
Goyal et al. (U.S. Pre-Grant Publication No. 2017/0161373) teaches providing a query suggestion. In one example, a request is received for query suggestions with respect to a query prefix input by a user. A plurality of query suggestions is determined based on the query prefix and a preceding query input by the user. A degree of popularity of the preceding query is determined. One or more query suggestions are selected from the plurality of query suggestions based on the degree of popularity of the preceding query. The one or more query suggestions are provided as a response to the request.The reference further teaches “For each query cluster, the system may select a canonical query, e.g. a most popular query in the cluster, to represent the cluster. As such, the system can determine a cluster that includes the preceding query, and utilize the canonical query of the cluster as a bridge query to generate more query suggestions.” (Para. [0029]).
Majkowska et al. (U.S. Pre-Grant Publication No. 2023/0401251) teaches query categorization based on image results. In one aspect, a method includes receiving images from image results responsive to a query, wherein each of the images is associated with an order in the image results and respective user behavior data for the image as a search result for the first query, and associating one or more of the first images with a plurality of annotations based on analysis of the selected first images' content.The reference further teaches “the search query with the query classifier to determine the query classification further comprises: associating, by the computing system, the search query with a canonical meaning based on the one or more clusters.” (Claim 17 & Para. [0024]).
Panuganty et al. (U.S. Pre-Grant Publication No. 2020/0034357) teaches generating logical queries from a canonical query, where the logical queries each reflect a modified scope of the canonical query. Implementations receive, via a personalized analytics system, a canonical query that is associated with a user. The canonical query can be analyzed to determine an intent of the canonical query. In turn, one or more implementations generate, based on the intent an anecdotal information associated with the user, a logical query that reflects a modified scope of the canonical query. The logical query can be used to extract data from a database associated with the personalized analytics system based on the modified scope.The reference further teaches “the canonical query parser can group the learned query information, such as by using clustering algorithms that classify each identified attribute and/or detail into a specific group with similar properties and/or features. This can alternately or additionally provide insight into characteristics associated with the input query.” (Para. [0224]).
Larson et al. (U.S. Pre-Grant Publication No. 202/0264902) teaches an intuitive search interface for tactically searching one or more annotated utterance corpora in a machine learning-based dialogue system includes identifying an utterance corpus query for searching one or more annotated utterance corpora of a machine learning-based dialogue system; interpreting the utterance corpus query by translating the utterance corpus query into one or more search expressions recognizable to an utterance sample retrieval program searchably interfacing with the one or more annotated utterance corpora of the machine learning-based dialogue system; retrieving one or more annotated utterance samples from the one or more annotated utterance corpora based on the interpretation of the utterance corpus query; and returning the one or more annotated utterance samples to an intuitive utterance corpus search interface.
Hill et al. (U.S. Pre-Grant Publication No. 2023/0350928) teaches improving a predictive response of a machine learning-based virtual dialogue agent includes identifying an unfilled dialogue slot associated with an active dialogue between a user and the machine learning-based virtual dialogue agent, obtaining subsequent dialogue input data based on prompting the user for the unfilled dialogue slot, and computing a value of the unfilled dialogue slot based on the obtaining of the subsequent dialog input, wherein computing the value of the unfilled dialogue slot includes computing, via a question-answering machine learning model, a slot answer inference comprising the value of the unfilled dialogue slot based on an input of a machine learning-derived query and machine learning-derived context computed for the unfilled dialogue slot.
Coladonato et al. (U.S. Patent No. 8,135,712) teaches “All questions that can be used to derive a specific canonical form are identified at step 312. Again in the example, the evaluation engine 120 may determine all previously-searched questions that generate, using the evaluation files 112, a specific canonical form and generate or update one or more canonical files 114. Next, at step 314, the previously-searched questions with each canonical form are ranked based on the frequency that each question was previously searched. In the example, the ranking engine 122 may rank order the previously-searched questions of the canonical form and generate or update one or more of the following ranking files 116. At step 316, the most frequent question is assigned as a representative question for the different questions mapped to the canonical form.” (Col. 9 Line 61 – Col. 10 Line 18)
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 at 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.
/BORIS GORNEY/Supervisory Patent Examiner, Art Unit 2154
/ROBERT F MAY/Examiner, Art Unit 2154 3/20/2026