DETAILED ACTION
This Office Action is in response to the correspondence filed by the applicant on 3/6/2026.
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 .
Response to Arguments
Applicant’s argument, pages 8-10, filed 3/6/2026, with respect to the rejection of claims 1-3, 5, 9, 11- 13, and 20-22 under 103 have been fully considered and are moot upon a further consideration and a new ground(s) of rejection made under AIA 35 U.S.C. 103 as being unpatentable over KOTARU (US 2024/0330589 A1), and in further view of LUNDBERG (US 2013/0268260 A1) and BENKREIRA (US 2022/0027967 A1). Please see the rejections below for more details.
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 of this title, 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-3, 5, 9, 11-13, and 20-22 are rejected under 35 U.S.C. 103 as being unpatentable over KOTARU (US 2024/0330589 A1), and in further view of LUNDBERG (US 2013/0268260 A1) and BENKREIRA (US 2022/0027967 A1).
REGARDING CLAIM 1, KOTARU discloses a method implemented by one or more processors, the method comprising:
identifying one or more resources, wherein the one or more resources include domain-specific information related to a domain (KOTARU Par 137 – “Block 1610 includes providing a base foundation large language model (LLM) for identifying relevant information from the domain-specific database in response to queries from the user made through a user interface (UI) to the conversational AI system. Block 1615 includes generating tokenized text from the domain-specific database from which word embedding vectors are generated. Block 1620 includes training the LLM using the word embedding vectors from the domain-specific database.”);
processing the one or more resources, to generate a natural language representation of the domain-specific information (KOTARU Par 64 – “As discussed above, the text needs to be tokenized and converted to word embedding vectors for the consumption by LLMs. OpenAI embedding model openai-textembedding-ada-002 is used to transform each of the text samples into word embedding vectors. The resulting vector representation for each sample is stored in an index for efficient querying. The resulting domain-specific database of domain-specific word embedding vectors consists of 86 million tokens.”), wherein processing the one or more resources to generate the natural language representation of the domain-specific information (KOTARU Fig. 3; Par 51 – “During training, the weights of the model are updated to better fit the new data, using a chosen optimization algorithm and hyperparameters. Fine-tuning requires careful selection of target dataset and hyperparameters for optimal performance. This approach also requires repeated training when the target dataset is updated.”; In other words, Fig. 3 shows a loop process where the updating process repeats after the domain-specific database is updated. So that the discovered conflict is resolved and updates the domain specific data to generate the natural language representation.) comprises:
determining that first information included in a first resource of the one or more resources (KOTARU Par 93 – “As shown in FIG. 3 , the system 300 incorporates three essential elements, including a domain-specific database 305, a context extractor 310, and a feedback mechanism 315.”; Par 137 – “Block 1610 includes providing a base foundation large language model (LLM) for identifying relevant information from the domain-specific database in response to queries from the user made through a user interface (UI) to the conversational AI system. Block 1615 includes generating tokenized text from the domain-specific database from which word embedding vectors are generated. Block 1620 includes training the LLM using the word embedding vectors from the domain-specific database.”) conflicts with second information included in a second resource of the one or more resources (KOTARU Par 139 – “Block 1640 includes creating an issue for resolution by expert feedback, the issue including the user query, the response, and the context, wherein the resolved issue is incorporated into the domain-specific database.”); and
causing, in response to determining that the first information conflicts with the second information, the first information to be <excluded> updated from the natural language representation of the domain-specific information (KOTARU Par 139 – “Block 1640 includes creating an issue for resolution by expert feedback, the issue including the user query, the response, and the context, wherein the resolved issue is incorporated into the domain-specific database.”; Par 74 – “Additionally, the user can also request expert assistance by clicking a designated button, which will create a corresponding issue in a GitHub repository. This issue will contain the query, context, and response, and can be resolved through contributions from domain experts. At present, only a select few pre-identified experts are capable of resolving these issues. The expert data obtained through this process is then added to the domain-specific database and attributed to the relevant expert as its source.”);
receiving an utterance that includes a [spoken] query, wherein the [spoken] query is directed to an automated assistant (KOTARU Par 66 – “When the user inputs a query into the present conversational AI system, the query is pre-processed, tokenized, and transformed into a word embedding vector, using methods similar to those described above. The query vector is then compared to each of the word embedding vectors in the domain-specific database to identify the samples in the database that are closest to the query semantically.”; Par 138 – “Block 1625 includes generating tokenized text for a query received from the user at the UI from which word embedding vectors are generated.”);
in response to receiving a query determined to be related to the domain (KOTARU Par 138 – “Block 1625 includes generating tokenized text for a query received from the user at the UI from which word embedding vectors are generated. Block 1630 includes using a context extractor to augment the query with context from the domain-specific database by comparing word embedding vectors for the query to word embedding vectors for the domain-specific database to identify matches having semantic similarities.”; Par 67 – “To match the user query to relevant samples in the database, a similarity metric is used. The most common similarity metric used in natural language processing (NLP) is cosine similarity. Cosine similarity measures the angle between two vectors in a high dimensional space. If two vectors are very similar, their cosine similarity will be close to 1. If they are very different, their cosine similarity will be close to 0. Other similarity metrics have been evaluated, as discussed below.”; Par 69 – “One could directly append the most similar vectors in the database, referred to as ‘context’, with the user query, and feed the foundation LLM with the resulting prompt.”):
priming a large language model (LLM) using a priming input that is based on the natural language representation (KOTARU Par 137 – “Block 1610 includes providing a base foundation large language model (LLM) for identifying relevant information from the domain-specific database in response to queries from the user made through a user interface (UI) to the conversational AI system. Block 1615 includes generating tokenized text from the domain-specific database from which word embedding vectors are generated. Block 1620 includes training the LLM using the word embedding vectors from the domain-specific database.”), wherein priming the LLM using the priming input comprises processing the priming input using the LLM (KOTARU Par 137 – “Block 1610 includes providing a base foundation large language model (LLM) for identifying relevant information from the domain-specific database in response to queries from the user made through a user interface (UI) to the conversational AI system. Block 1615 includes generating tokenized text from the domain-specific database from which word embedding vectors are generated. Block 1620 includes training the LLM using the word embedding vectors from the domain-specific database.”);
following priming of the LLM using at least the priming input (KOTARU Fig. 16; steps from 1610 to 1620 of Fig. 16 are corresponding to the priming steps.):
processing, using the LLM, the spoken query (KOTARU Par 138 – “Block 1625 includes generating tokenized text for a query received from the user at the UI from which word embedding vectors are generated. Block 1630 includes using a context extractor to augment the query with context from the domain-specific database by comparing word embedding vectors for the query to word embedding vectors for the domain-specific database to identify matches having semantic similarities.”), to generate an LLM output (KOTARU Par 139 – “Block 1635 includes providing a conversational response to the user's query through the UI, the response being generated based on tailored prompts to the LLM.”);
determining, based on the LLM output, a response to the spoken query, wherein the response includes a natural language response (KOTARU Par 52 – “Prompt engineering is a technique used in language models to fine-tune the model's output for a specific task by providing tailored prompts as inputs to the model. Prompt engineering involves crafting a specific prompt that elicits the desired response from the model. The prompt can include various elements, such as keywords, context, and formatting, and can be optimized using various techniques such as grid search or reinforcement learning. The goal is to create a prompt that provides the right amount of information to the model without being too prescriptive, allowing the model to generate accurate and relevant output.”; Par 71 – “It also enables LLMs to maintain context and continuity in conversations and provide a more natural and intuitive interaction.”); and
causing the natural language response to be rendered by the automated assistant (KOTARU Par 139 – “Block 1635 includes providing a conversational response to the user's query through the UI, the response being generated based on tailored prompts to the LLM.”).
KOTARU does not explicitly teach the [square-bracketed] and <angle-bracketed> limitations and teaches the underlined feature instead. Regarding the [square-bracketed] limitations, KOTARU teaches using natural language for human-machine interaction, but does not explicitly teach the interaction is via a [spoken] query/interaction.
LUNDBERG discloses a method/system for tuning of natural language interaction applications for specific domains, comprising the interactions are via a [spoken] query/interaction (LUNDBERG Par 98 – “Requests 410 to natural language interaction engine 420 may be made using any of a number of user interface means known in the art, including but not limited to use of text-based requests 412 (for instance, generated by typing a question or command into a text entry field in a user interface, such as on a mobile device application, on a consumer device, on a web site, or in an email or other message), spoken requests 411 (for example, if a user speaks a command or a question into a microphone on a mobile device or consumer device, the command or question then being converted into a more computer-usable form—typically but not necessarily a text string that comprises either a full transcription of the spoken command or request, or a standardized text element that is substantially semantically related to the spoken command or request),”).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the method/system of KOTARU to include spoken interaction, as taught by LUNDBERG.
One of ordinary skill would have been motivated to include spoken interaction, in order to provide more natural interaction between a human and a machine so that the quality of the interaction could be enhanced.
Regarding the <angle-bracketed>, KOTARU teaches using resources of a specific domain augmentation, and when an issue is identified, the issue is resolved by updating resources of the specific domain. However, KOTARU does not explicitly teach the conflicting first information to be <excluded> from the natural language representation of the domain-specific information.
BENKREIRA teaches the <angle-bracketed> limitations. BENKREIRA disclose a method/system for analyzing natural language data comprising:
determining that first information included in a first resource of the one or more resources (BENKREIRA Par 20 – “Each retrieved version of the online merchant terms may be analyzed against a previous version of the online merchant terms stored in the data store to check for differences.”; Par 37 – “For example, the term retrieval module 1231 of the application 123 may be executed to perform retrieving the online merchant terms for various sources and storing the retrieved online merchant terms in the database 130.”) conflicts with second information included in a second resource of the one or more resources (BENKREIRA Par 21 – “If there are differences, the recently retrieved version of the online merchant terms can then be referred to as the latest version of the online merchant terms to replace the previous version of the online merchant terms.”); and
causing, in response to determining that the first information conflicts with the second information, the first information to be <excluded> from the natural language representation of the domain-specific information (BENKREIRA Par 21 – “If there are differences, the recently retrieved version of the online merchant terms can then be referred to as the latest version of the online merchant terms to replace the previous version of the online merchant terms. A new date range may be assigned to the latest version of the online merchant terms. This new date range may include a start date on which the recently retrieved version is retrieved. The previous version may be discarded if there are no transactions associated with it, which may reduce the need for storage space.”);
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the method/system of KOTARU in view of LUNDBERG to include excluding a first information that conflicts with a second information, as taught by BENKREIRA.
One of ordinary skill would have been motivated to include excluding a first information that conflicts with a second information, in order to reduce the need for storage space (Par 21).
REGARDING CLAIM 2, KOTARU in view of LUNDBERG and BENKREIRA discloses the method of claim 1, wherein the one or more resources includes one or more documents that include the domain-specific information related to the domain (KOTARU Par 89 – “This indicates that cosine and L2 similarity metrics provide almost identical performance in retrieving the relevant text from the database.”; Par 70 – “The present conversational AI system incorporates few-shot learning techniques by creating a prompt template with few pre-defined example queries, relevant context obtained from specifications and reference responses.”; Par 42 – “In contrast, the present conversational AI system directly extracts pertinent information from the relevant specifications.”).
REGARDING CLAIM 3, KOTARU in view of LUNDBERG and BENKREIRA discloses the method of claim 2, wherein the one or more resources includes one or more frequently asked questions and one or more responses to the one or more frequently asked questions (KOTARU Par 70 – “The present conversational AI system incorporates few-shot learning techniques by creating a prompt template with few pre-defined example queries, relevant context obtained from specifications and reference responses.”; Par 71 – “The present conversational AI system incorporates history by observing that information synthesis of wireless communication specifications is inherently an iterative process where the responses lead to subsequent questions that depend on the preceding responses. Incorporating previous queries and responses in LLMs can enable such a chain of questioning, where a language model can use the context of previous interactions to generate more informed and relevant responses”; LUNDBERG also teaches the limitations: LUNDBERG Par 158 – “These models and standards 1040 may be used, in conjunction with various library development processes 1041 (described in detail below) and language model training 1042 (also described below) to build one or more language models 1004 that may then be edited, extended, refined, or otherwise modified using build toolbox 1003 to create new library builds 1002; such editing and refining will generally incorporate into language model 1004 various external data elements 1001, for example a domain-specific corpus of frequently asked questions (FAQs). Build toolbox 1002 may comprise one or more elements useful for creation and expansion of library elements, as discussed above within FIG. 8.”; Par 157 – “For each group of inputs so obtained, a variety of acceptable forms of response may be provided (for instance, by providing a frequently-asked-question list and corresponding answers). Finally, the inputs may be automatically or semiautomatically mapped to a limited set of predefined response, the set typically comprising a plurality of responses to expected inputs as well as responses for unforeseen inputs (such as safety net responses);”).
REGARDING CLAIM 5, KOTARU in view of LUNDBERG and BENKREIRA discloses the method of claim 1, further comprising:
identifying that one or more of the resources has been updated (KOTARU Par 38 – “3) Feedback: The present conversational AI system includes a feedback system that allows users to provide feedback/clarification from an expert, in addition to rating responses. When activated, the system generates an issue in a repository that contains the query, context, and response. This issue can be resolved with expert feedback and incorporated into the domain-specific database, improving the quality of future responses. Additionally, the response is fed back into the context extractor as supplementary context for subsequent queries.”; Par 74 – “Upon receiving a response, the user can optionally like/dislike to provide feedback on the relevance of the response. Additionally, the user can also request expert assistance by clicking a designated button, which will create a corresponding issue in a GitHub repository. This issue will contain the query, context, and response, and can be resolved through contributions from domain experts. At present, only a select few pre-identified experts are capable of resolving these issues. The expert data obtained through this process is then added to the domain-specific database and attributed to the relevant expert as its source.”);
reprocessing one or more of the resources to generate an updated natural language representation of the domain-specific information (KOTARU Par 38 – “3) Feedback: The present conversational AI system includes a feedback system that allows users to provide feedback/clarification from an expert, in addition to rating responses. When activated, the system generates an issue in a repository that contains the query, context, and response. This issue can be resolved with expert feedback and incorporated into the domain-specific database, improving the quality of future responses. Additionally, the response is fed back into the context extractor as supplementary context for subsequent queries.” ; Par 74 – “This issue will contain the query, context, and response, and can be resolved through contributions from domain experts. At present, only a select few pre-identified experts are capable of resolving these issues. The expert data obtained through this process is then added to the domain-specific database and attributed to the relevant expert as its source.”);
priming the LLM using an updated priming input that is based on the updated natural language representation (KOTARU Par 38 – “3) Feedback: The present conversational AI system includes a feedback system that allows users to provide feedback/clarification from an expert, in addition to rating responses. When activated, the system generates an issue in a repository that contains the query, context, and response. This issue can be resolved with expert feedback and incorporated into the domain-specific database, improving the quality of future responses. Additionally, the response is fed back into the context extractor as supplementary context for subsequent queries.”; Par 73 – “Expert feedback helps address this issue by providing additional context and knowledge that the model may have missed. 3) Coherence and naturalness of the responses: LLMs are designed to generate text that mimics human language. However, despite filtering, vast swaths of specification documents contain incoherent information when viewed as text. Expert feedback can help identify such issues and guide the model to generate more appropriate responses.”).
REGARDING CLAIM 9, KOTARU discloses a method implemented by one or more processors, the method comprising:
identifying one or more resources, wherein the one or more resources include domain-specific information related to a domain (KOTARU Par 137 – “Block 1610 includes providing a base foundation large language model (LLM) for identifying relevant information from the domain-specific database in response to queries from the user made through a user interface (UI) to the conversational AI system. Block 1615 includes generating tokenized text from the domain-specific database from which word embedding vectors are generated. Block 1620 includes training the LLM using the word embedding vectors from the domain-specific database.”);
processing the one or more resources to generate a natural language representation of the domain-specific information (KOTARU Par 64 – “As discussed above, the text needs to be tokenized and converted to word embedding vectors for the consumption by LLMs. OpenAI embedding model openai-textembedding-ada-002 is used to transform each of the text samples into word embedding vectors. The resulting vector representation for each sample is stored in an index for efficient querying. The resulting domain-specific database of domain-specific word embedding vectors consists of 86 million tokens.”), wherein processing the one or more resources to generate the natural language representation of the domain-specific information (KOTARU Fig. 3; Par 51 – “During training, the weights of the model are updated to better fit the new data, using a chosen optimization algorithm and hyperparameters. Fine-tuning requires careful selection of target dataset and hyperparameters for optimal performance. This approach also requires repeated training when the target dataset is updated.”; In other words, Fig. 3 shows a loop process where the updating process repeats after the domain-specific database is updated. So that the discovered conflict is resolved and updates the domain specific data to generate the natural language representation.) comprises:
determining that first information included in a first resource of the one or more resources (KOTARU Par 93 – “As shown in FIG. 3 , the system 300 incorporates three essential elements, including a domain-specific database 305, a context extractor 310, and a feedback mechanism 315.”; Par 137 – “Block 1610 includes providing a base foundation large language model (LLM) for identifying relevant information from the domain-specific database in response to queries from the user made through a user interface (UI) to the conversational AI system. Block 1615 includes generating tokenized text from the domain-specific database from which word embedding vectors are generated. Block 1620 includes training the LLM using the word embedding vectors from the domain-specific database.”) conflicts with second information included in a second resource of the one or more resources (KOTARU Par 139 – “Block 1640 includes creating an issue for resolution by expert feedback, the issue including the user query, the response, and the context, wherein the resolved issue is incorporated into the domain-specific database.”); and
causing, in response to determining that the first information conflicts with the second information, the first information to be <excluded> updated from the natural language representation of the domain-specific information (KOTARU Par 139 – “Block 1640 includes creating an issue for resolution by expert feedback, the issue including the user query, the response, and the context, wherein the resolved issue is incorporated into the domain-specific database.”; Par 74 – “Additionally, the user can also request expert assistance by clicking a designated button, which will create a corresponding issue in a GitHub repository. This issue will contain the query, context, and response, and can be resolved through contributions from domain experts. At present, only a select few pre-identified experts are capable of resolving these issues. The expert data obtained through this process is then added to the domain-specific database and attributed to the relevant expert as its source.”);
fine-tuning a large language model (LLM) using input that is based on the natural language representation (KOTARU Par 137 – “Block 1610 includes providing a base foundation large language model (LLM) for identifying relevant information from the domain-specific database in response to queries from the user made through a user interface (UI) to the conversational AI system. Block 1615 includes generating tokenized text from the domain-specific database from which word embedding vectors are generated. Block 1620 includes training the LLM using the word embedding vectors from the domain-specific database.”; Par 168 – “In another example, the method further comprises applying fine-tuning to the base LLM to create a fine-tuned LLM.”);
receiving an utterance that includes a [spoken] query, wherein the [spoken] query is directed to an automated assistant (KOTARU Par 66 – “When the user inputs a query into the present conversational AI system, the query is pre-processed, tokenized, and transformed into a word embedding vector, using methods similar to those described above. The query vector is then compared to each of the word embedding vectors in the domain-specific database to identify the samples in the database that are closest to the query semantically.”; Par 138 – “Block 1625 includes generating tokenized text for a query received from the user at the UI from which word embedding vectors are generated.”);
processing, using the LLM, the spoken query (KOTARU Par 138 – “Block 1625 includes generating tokenized text for a query received from the user at the UI from which word embedding vectors are generated. Block 1630 includes using a context extractor to augment the query with context from the domain-specific database by comparing word embedding vectors for the query to word embedding vectors for the domain-specific database to identify matches having semantic similarities.”), to generate an LLM output (KOTARU Par 139 – “Block 1635 includes providing a conversational response to the user's query through the UI, the response being generated based on tailored prompts to the LLM.”);
determining, based on the LLM output, a response to the query, wherein the response includes a natural language response (KOTARU Par 52 – “Prompt engineering is a technique used in language models to fine-tune the model's output for a specific task by providing tailored prompts as inputs to the model. Prompt engineering involves crafting a specific prompt that elicits the desired response from the model. The prompt can include various elements, such as keywords, context, and formatting, and can be optimized using various techniques such as grid search or reinforcement learning. The goal is to create a prompt that provides the right amount of information to the model without being too prescriptive, allowing the model to generate accurate and relevant output.”; Par 71 – “It also enables LLMs to maintain context and continuity in conversations and provide a more natural and intuitive interaction.”); and
causing the response to be rendered by the automated assistant (KOTARU Par 139 – “Block 1635 includes providing a conversational response to the user's query through the UI, the response being generated based on tailored prompts to the LLM.”).
KOTARU does not explicitly teach the [square-bracketed] and <angle-bracketed> limitations and teaches the underlined feature instead. Regarding the [square-bracketed] limitations, KOTARU teaches using natural language for human-machine interaction, but does not explicitly teach the interaction is via a [spoken] query/interaction.
LUNDBERG discloses a method/system for tuning of natural language interaction applications for specific domains, comprising the interactions are via a [spoken] query/interaction (LUNDBERG Par 98 – “Requests 410 to natural language interaction engine 420 may be made using any of a number of user interface means known in the art, including but not limited to use of text-based requests 412 (for instance, generated by typing a question or command into a text entry field in a user interface, such as on a mobile device application, on a consumer device, on a web site, or in an email or other message), spoken requests 411 (for example, if a user speaks a command or a question into a microphone on a mobile device or consumer device, the command or question then being converted into a more computer-usable form—typically but not necessarily a text string that comprises either a full transcription of the spoken command or request, or a standardized text element that is substantially semantically related to the spoken command or request),”).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the method/system of KOTARU to include spoken interaction, as taught by LUNDBERG.
One of ordinary skill would have been motivated to include spoken interaction, in order to provide more natural interaction between a human and a machine so that the quality of the interaction could be enhanced.
Regarding the <angle-bracketed>, KOTARU teaches using resources of a specific domain augmentation, and when an issue is identified, the issue is resolved by updating resources of the specific domain. However, KOTARU does not explicitly teach the conflicting first information to be <excluded> from the natural language representation of the domain-specific information.
BENKREIRA teaches the <angle-bracketed> limitations. BENKREIRA disclose a method/system for analyzing natural language data comprising:
determining that first information included in a first resource of the one or more resources (BENKREIRA Par 20 – “Each retrieved version of the online merchant terms may be analyzed against a previous version of the online merchant terms stored in the data store to check for differences.”; Par 37 – “For example, the term retrieval module 1231 of the application 123 may be executed to perform retrieving the online merchant terms for various sources and storing the retrieved online merchant terms in the database 130.”) conflicts with second information included in a second resource of the one or more resources (BENKREIRA Par 21 – “If there are differences, the recently retrieved version of the online merchant terms can then be referred to as the latest version of the online merchant terms to replace the previous version of the online merchant terms.”); and
causing, in response to determining that the first information conflicts with the second information, the first information to be <excluded> from the natural language representation of the domain-specific information (BENKREIRA Par 21 – “If there are differences, the recently retrieved version of the online merchant terms can then be referred to as the latest version of the online merchant terms to replace the previous version of the online merchant terms. A new date range may be assigned to the latest version of the online merchant terms. This new date range may include a start date on which the recently retrieved version is retrieved. The previous version may be discarded if there are no transactions associated with it, which may reduce the need for storage space.”);
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the method/system of KOTARU in view of LUNDBERG to include excluding a first information that conflicts with a second information, as taught by BENKREIRA.
One of ordinary skill would have been motivated to include excluding a first information that conflicts with a second information, in order to reduce the need for storage space (Par 21).
CLAIM 11 is similar to claim 2; thus, it is rejected under the same rationale.
CLAIM 12 is similar to claim 3; thus, it is rejected under the same rationale.
REGARDING CLAIM 13, KOTARU in view of LUNDBERG and BENKREIRA discloses the method of claim 9, further comprising:
identifying that one or more of the resources has been updated (KOTARU Par 38 – “3) Feedback: The present conversational AI system includes a feedback system that allows users to provide feedback/clarification from an expert, in addition to rating responses. When activated, the system generates an issue in a repository that contains the query, context, and response. This issue can be resolved with expert feedback and incorporated into the domain-specific database, improving the quality of future responses. Additionally, the response is fed back into the context extractor as supplementary context for subsequent queries.”; Par 74 – “Upon receiving a response, the user can optionally like/dislike to provide feedback on the relevance of the response. Additionally, the user can also request expert assistance by clicking a designated button, which will create a corresponding issue in a GitHub repository. This issue will contain the query, context, and response, and can be resolved through contributions from domain experts. At present, only a select few pre-identified experts are capable of resolving these issues. The expert data obtained through this process is then added to the domain-specific database and attributed to the relevant expert as its source.”);
reprocessing one or more of the resources to generate an updated natural language representation of the domain-specific information (KOTARU Par 38 – “3) Feedback: The present conversational AI system includes a feedback system that allows users to provide feedback/clarification from an expert, in addition to rating responses. When activated, the system generates an issue in a repository that contains the query, context, and response. This issue can be resolved with expert feedback and incorporated into the domain-specific database, improving the quality of future responses. Additionally, the response is fed back into the context extractor as supplementary context for subsequent queries.” ; Par 74 – “This issue will contain the query, context, and response, and can be resolved through contributions from domain experts. At present, only a select few pre-identified experts are capable of resolving these issues. The expert data obtained through this process is then added to the domain-specific database and attributed to the relevant expert as its source.”); and
updating the fine-tuning of the LLM based on the updated natural language representation (KOTARU Par 38 – “3) Feedback: The present conversational AI system includes a feedback system that allows users to provide feedback/clarification from an expert, in addition to rating responses. When activated, the system generates an issue in a repository that contains the query, context, and response. This issue can be resolved with expert feedback and incorporated into the domain-specific database, improving the quality of future responses. Additionally, the response is fed back into the context extractor as supplementary context for subsequent queries.”; Par 73 – “Expert feedback helps address this issue by providing additional context and knowledge that the model may have missed. 3) Coherence and naturalness of the responses: LLMs are designed to generate text that mimics human language. However, despite filtering, vast swaths of specification documents contain incoherent information when viewed as text. Expert feedback can help identify such issues and guide the model to generate more appropriate responses.”).
REGARDING CLAIM 20, KOTARU in view of LUNDBERG and BENKREIRA discloses a system comprising:
memory storing instructions; and one or more processors operable to execute the instructions (KOTARU Par 141 – “a processor …”) to: to perform the steps of claim 1; thus, it is rejected under the same rationale.
Claim 21 is similar to claim 2; thus, it is rejected under the same rationale.
Claim 22 is similar to claim 3; thus, it is rejected under the same rationale.
Claims 4 and 23 are rejected under 35 U.S.C. 103 as being unpatentable over KOTARU (US 2024/0330589 A1) in view of LUNDBERG (US 2013/0268260 A1) and BENKREIRA (US 2022/0027967 A1), and in further view of RAJPATHAK (US 2013/0091139 A1).
REGARDING CLAIM 4, KOTARU in view of LUNDBERG and BENKREIRA discloses the method of claim 1.
KOTARU further discloses wherein processing the one or more resources includes:
identifying one or more terms that are included in the domain-specific information (KOTARU Par 167 – “generating tokenized text from the domain-specific database from which word embedding vectors are generated;”);
[determining that the one or more terms are present in the one or more resources with a greater frequency than the presence of the one or more terms in one or more non-domain-specific resources]; and
priming the LLM using the one or more terms (KOTARU Par 167 – “training the LLM using the word embedding vectors from the domain-specific database; generating tokenized text for a query received from the user at the UI from which word embedding vectors are generated; using a context extractor to augment the query with context from the domain-specific database by comparing word embedding vectors for the query to word embedding vectors for the domain-specific database to identify matches having semantic similarities;”).
KOTARU in view of LUNDBERG and BENKREIRA does not explicitly teach the [square-bracketed] limitations.
RAJPATHAK discloses the [square-bracketed] limitations. RAJPATHAK discloses a method/system to augment domain specific natural language model for providing information to a user comprising: [determining that the one or more terms are present in the one or more resources with a greater frequency than the presence of the one or more terms in one or more non-domain-specific resources] (RAJPATHAK Par 28 – “Each extracted domain specific term (e.g., action, part, symptoms, etc.) may, for example, be assigned a weighting assignment parameter value. The weighting assignment parameter value may, for example, be used to determine the criticality of each term in the document. The criticality of a domain specific term may, for example, be based on, proportional to, or related to the frequency of occurrence of the term or frequency at which the term appears in technician verbatim, technician reports, or documents 104. For example, a term that appears more frequently in documents (e.g., vehicle technician verbatim) may be deemed to be a more critical term.”); and
adapting a general model using the one or more terms (RAJPATHAK Par 33 – “According to some embodiments, if domain ontology 10 does not comprise the one or more extracted or verified terms (e.g., a term associated with a frequency parameter value above a predefined threshold), the domain ontology may be augmented (e.g., have terms added to it) to include the one or more extracted terms extracted terms. … For example, semantically rendered extracted terms may be added to the domain ontologies and used in real-time without programming or processing by a user.”).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the method/system of KOTARU in view of LUNDBERG and BENKREIRA to include augmenting the language model with the domain specific terms with a higher frequency, as taught by RAJPATHAK.
One of ordinary skill would have been motivated to include augmenting the language model with the domain specific terms with a higher frequency, in order to provide a more accurate domain-specific language model so that a human-machine interaction is enhanced.
Claim 23 is similar to claim 4; thus, it is rejected under the same rationale.
Claims 6-8 and 14-15 are rejected under 35 U.S.C. 103 as being unpatentable over KOTARU (US 2024/0330589 A1) in view of LUNDBERG (US 2013/0268260 A1) and BENKREIRA (US 2022/0027967 A1), and in further view of LE (US 2024/0346251 A1).
REGARDING CLAIM 6, KOTARU in view of LUNDBERG and BENKREIRA discloses the method of claim 1.
KOTARU in view of LUNDBERG and BENKREIRA does not explicitly teaches utilizing resources of an application.
LE discloses a method/system for integrating topics and actions of a third-party application in a language model for human-machine interaction, wherein a particular resource of the one or more resources is an application, and wherein processing the particular resource (LE Fig. 5; Par 47 – “Referring again to FIG. 5 , consistent with some embodiments, a third-party customization interface 512 may be provided, for example, to allow for the training of customized, application-specific, machine learning models, which may serve to identify or determine custom (e.g., app specific) topics, message intent values, and message context values, beyond the capabilities of the default pre-trained machine learning model(s) 506.”; Fig. 6; Par 50 – “As shown with reference number 608, in addition to prompt engineering 604, in many instances an LLM 600 may be fine-tuned to perform a specific task using domain specific training data. In this instance, the training data may be labeled messages, where the relevant component parts (e.g., specific text) of a message are labeled as representing a specific component from the message taxonomy (e.g., a topic, an intent, or a relevant contextual data value). Typically, the direct output from the LLM will be subject to some post processing logic, as shown in FIG. 6 with reference number 610.”) includes:
identifying an action that can be performed by the application (LE Fig. 5; Par 47 – “Referring again to FIG. 5 , consistent with some embodiments, a third-party customization interface 512 may be provided, for example, to allow for the training of customized, application-specific, machine learning models, which may serve to identify or determine custom (e.g., app specific) topics, message intent values, and message context values, beyond the capabilities of the default pre-trained machine learning model(s) 506. For example, as shown in FIG. 5 , a third party may leverage a data management application 514 to make training data 516 available to one or more machine learning models. Subsequent to training a model with enterprise (e.g., third-party) and application specific training data, the model may be hosted via the messaging service platform, such that the model can be used by the topic evaluation engine 502 in processing and routing messages based on custom defined topics, custom defined message intent values, and custom defined message context values, that may be specific to a particular add-on software app.”; Par 53 – “For example, the method 700 begins when an add-on application is initially installed. During installation, or sometime shortly thereafter, at method operation 702, the software app provides subscription configuration information to the topic evaluation engine. The subscription configuration information includes one or more subscription requests, where each request identifies a topic or message characteristics to which the software application is subscribing. This may be achieved via a configuration file that is read when the application is initially executed. Alternatively, the add-on software application may make one or more calls (e.g., API calls) to a subscription management service that is part of the topic evaluation engine, where each call includes a request for a subscription to a specific topic or specific message characteristic. With some embodiments, routing of messages may occur based on more advanced message analysis, and as such, in some instances, the subscription configuration information may specify various combinations of topics, message intents, and contextual data, such that only messages satisfying the relevant subscribed-to values will be forwarded to a subscribing add-on app.”; Par 56 – “Although not shown in FIG. 7 , when an add-on app receives a message as a result of having subscribed to a specific topic or message characteristic, the add-on app may perform any of a wide variety of actions, depending upon the nature and purpose of the add-on app. … In some instances, the add-on application may process a received message, and then communicate data to a remote service. Accordingly, in some instances, from the perspective of the messaging participants, an add-on application may provide an asynchronous service, such that a messaging participant will only recognize the impact of the message processing at a later time when the messaging participant uses another application or service (e.g., other than the messaging service). Although the functionality and operation of the add-on apps will vary greatly, a few examples are presented below.”); and
processing the action to generate an action natural language representation of the action (LE Par 53 – “For example, the method 700 begins when an add-on application is initially installed. During installation, or sometime shortly thereafter, at method operation 702, the software app provides subscription configuration information to the topic evaluation engine. The subscription configuration information includes one or more subscription requests, where each request identifies a topic or message characteristics to which the software application is subscribing. This may be achieved via a configuration file that is read when the application is initially executed. Alternatively, the add-on software application may make one or more calls (e.g., API calls) to a subscription management service that is part of the topic evaluation engine, where each call includes a request for a subscription to a specific topic or specific message characteristic. With some embodiments, routing of messages may occur based on more advanced message analysis, and as such, in some instances, the subscription configuration information may specify various combinations of topics, message intents, and contextual data, such that only messages satisfying the relevant subscribed-to values will be forwarded to a subscribing add-on app.”; Par 55 – “After the topic evaluation engine has determined the specific topic or topics to which the message relates, and the specific message characteristic(s) of the message, at method operation 710, the routing logic will query a data structure storing the subscription management data for the add-on apps, and determine which apps previously subscribed to receive messages relating to the one or more specific topics (e.g., related to the message), and messages having the one or more message characteristics”; Par 47 –“For example, as shown in FIG. 5 , a third party may leverage a data management application 514 to make training data 516 available to one or more machine learning models. Subsequent to training a model with enterprise (e.g., third-party) and application specific training data, the model may be hosted via the messaging service platform, such that the model can be used by the topic evaluation engine 502 in processing and routing messages based on custom defined topics, custom defined message intent values, and custom defined message context values, that may be specific to a particular add-on software app.”; In other words, LE teaches when an add-on software app is installed, the app provides configuration information indicating the topics/actions/functions associated with the app, so that the information is integrated with the machine learning model (LLM, e.g., GPT) to trigger the application to perform the action when specific message is generated by the user (e.g., The message, “I am looking for a flight …” will trigger the flight scheduling application to recommend / schedule the flight). Thus, the action natural language representation (e.g., the processed configuration information for the LLM/GPT and/or fine-tuned training data for the specific domain) is generated.).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the method/system of KOTARU in view of LUNDBERG and BENKREIRA to include augmenting a language model with actions of a third-party application, as taught by LE.
One of ordinary skill would have been motivated to include augmenting a language model with actions of a third-party application, in order to enable a user to seamlessly interact with multiple applications within an environment.
REGARDING CLAIM 7, KOTARU in view of LUNDBERG, BENKREIRA, and LE discloses the method of claim 6.
LE further discloses wherein the action is scheduling an event via a calendar application (LE Par 57 – “In one example, an add-on app be an application for automatically generating recommended calendar events and/or reminders, and so forth.”).
REGARDING CLAIM 8, KOTARU in view of LUNDBERG, BENKREIRA, and LE discloses the method of claim 6.
LE further discloses wherein the action includes purchasing an item (LE Par 59 – “In another example, an add-on application may provide or be associated with a flight scheduling or flight recommendation service, such that the add-on app subscribes to receive messages relating to scheduling, locations, and/or dates/times.”; Par 65 – “In a specific example, the third-party application 866 (e.g., an application developed using the ANDROID™ or IOS™ software development kit (SDK) by an entity other than the vendor of the particular platform) may be mobile software running on a mobile operating system such as IOS™, ANDROID™, WINDOWS® Phone, or another mobile operating system. In this example, the third-party application 866 can invoke the API calls 812 provided by the operating system 804 to facilitate functionality described herein.”).
CLAIM 14 is similar to claim 6; thus, it is rejected under the same rationale.
CLAIM 15 is similar to claim 7; thus, it is rejected under the same rationale.
Conclusion
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 JONATHAN C KIM whose telephone number is (571)272-3327. The examiner can normally be reached Monday to Friday 8:00 AM thru 4:00 PM EST.
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, Andrew C Flanders can be reached at 571-272-7516. 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.
/JONATHAN C KIM/Primary Examiner, Art Unit 2655