DETAILED ACTION
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 .
This Office Action is responsive to communication filed on 06/17/2026.
Claim 15 is newly added. Claims 1 – 15 are currently pending.
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.
This application currently names joint inventors. In considering patentability of the claims the examiner presumes that the subject matter of the various claims was commonly owned as of the effective filing date of the claimed invention(s) absent any evidence to the contrary. Applicant is advised of the obligation under 37 CFR 1.56 to point out the inventor and effective filing dates of each claim that was not commonly owned as of the effective filing date of the later invention in order for the examiner to consider the applicability of 35 U.S.C. 102(b)(2)(C) for any potential 35 U.S.C. 102(a)(2) prior art against the later invention.
Claim(s) 1 - 15 is/are rejected under 35 U.S.C. 103 as being unpatentable over Cox et al (U.S. 2026/0030269 A1) in view of Amalapurapu et al (U.S. 10,198,524 B1).
♦As per claims 1, 10,
Cox discloses a computer-implemented method and a system for processing natural language queries, comprising:
“receiving, by one or more processors, a natural language query from a user during a current session” See Fig. 4 – 6, Para. 0064, 0082, 0084 of Cox wherein user input a natural language query into the system, [“input to a language model (whether transformer-based or otherwise) typically is in the form of natural language as may be parsed into tokens”, “The chatbot application 300 may receive a user input 310 (for example, a user query in the context of an ongoing chat session)”, “the user input 310 may be phrased as a question (e.g., “how do I add a product to my online store?”) or the user input may not be phrased as a question”].
“retrieving, by the one or more processors, contextual information associated with the natural language query by:” See Fig. 4, Para. 0064, 0086 of Cox wherein the input query is parsed to identify the context of the query, [“the transformer 50 may process textual input data is now described…”, “the SA may be provided with a summary of the ongoing chat session (e.g., user-agent chat summary) for providing context to the SA and enabling the SA to understand the nature of the user query prior to engaging with the user directly via the chatbot”].
“applying a retrieval-augmented-generation (RAG) model to the natural language query to identify relevant metadata entities” See Fig. 4, RAG-based engine 350, Para. 0087 - 0092 of Cox wherein the user input the query into the RAG-based engine 350 to identify responses, [“The RAG-based engine 350 may be a software that is implemented in the computing system 200 of FIG. 2, in which the processor 202 is configured to execute instructions of the RAG-based engine 350 stored in the memory 204”, “responsive to a user query received during an ongoing chat session 420, the embedding generator 330 may obtain a query embedding 353 based on the user query”, “…may identify a relevant synthetic question embedding ..”].
“accessing a session memory module to obtain related previous queries and corresponding insights from the current session” See Para. 0091 - 0092 of Cox wherein search history or the QA pair 355 are accessed, [“the identified QA pair 355 may be ranked, for example, taking into account a context of a user's current page, or recent viewing or search history, the identity or user type (e.g., merchant, customer etc.) of the user, among other user information”].
Cox does not clearly disclose a “sematic model data stored in a vector database, wherein the relevant metadata entities comprise attributes within the semantic model data that are semantically related to the natural language query; and accessing a session memory module to obtain related previous queries and analytical insights corresponding to the previous queries from the current session, wherein the session memory module is configured to store the previous queries of the user from the current session and maintain query-insight relationships between the previous queries and the analytical insights corresponding to the previous queries”.
However, Amalapurapu, in the same field of endeavor, discloses a method, system to monitor user activities (recorded as user profile), and “prior user behavior can be ingested into a feedback system at the serving end … to generate dynamic categories customized to the user's preferences” (col. 7 lines 27 – 41, col. 10 lines 15 – 20, col. 14 lines 56 – col. 15 line 8). Amalapurapu teaches:
A user attribute preference matrix is created and stored as attribute vector: See col. 14 lines 56 – 67.
Matching user query with the previous user interests: col. 13 lines 66 – col. 14 lines 11.
“dynamic categories created for the user based on the user's previous product browsing activity”, based on received user input (Fig. 5 – 6, col. 16 lines 6 – 54).
Therefore, Amalapurapu teaches a “sematic model data stored in a vector database (user profile/matrix data), wherein the relevant metadata entities comprise attributes within the semantic model data that are semantically related to the natural language query; and accessing a session memory module to obtain related previous queries and analytical insights corresponding to the previous queries from the current session, wherein the session memory module is configured to store the previous queries of the user from the current session and maintain query-insight relationships between the previous queries and the analytical insights corresponding to the previous queries”.
It would have been obvious to one with ordinary skill in the art before the effective filling date of the claim invention to apply the teaching of Amalapurapu into the invention of Con since both inventions were available and the combination would provide the user with more desirable results and reduce the time searching for information.
“processing, by a large language model (LLM), the natural language query based on the contextual information to generate an analytical query” See Fig. 4, LLM 370, Para. 0084, 0092 of Cox wherein the “rephrased user input or synthetic question” is generated using the LLM, “the chatbot application 300 may cooperate with the LLM 370 to automatically generate a rephrased user input that reflects the user input 310 phrased in a question format”, “the prompt generator 358 may provide a prompt to the LLM 370 instructing the LLM 370 to generate a set of synthetic questions (and corresponding answers), based on a source text 357 stored in the text database 255”.
“executing, by the one or more processors, the analytical query against a data source to generate an analytical insight” See Fig. 4, LLM 370, Para. 0092, 0103 of Cox wherein “the prompt generator 358 may provide a prompt to the LLM 370 instructing the LLM 370 to generate a set of synthetic questions (and corresponding answers), based on a source text 357 stored in the text database 255”, “where the prompt 360 instructs the LLM 370 (or multiple LLMs or other models) to generate a textual response to the user query”].
“updating, by the one or more processors, the session memory module with the natural language query and the analytical insight” See Para. 0105, 0119, 0123 of Cox wherein new information is updated in reference database, [“new or updated information may be organically compiled and captured during the ongoing chat session 420 that answers a particular user query that was previously unanswerable using the information contained in the reference database”, “the system 500 may update the existing reference database documentation”, “responsive to updating the reference database using the updated textual content 375, one or more new synthetic question embeddings (e.g., new synthetic QA pairs) may be generated by the synthetic QA pair generator 390 for inclusion in the vector database 250”].
“providing the analytical insight to the user” See Para. 0103 - 0104 of Cox wherein responses are provided to the user, [“where the prompt 360 instructs the LLM 370 (or multiple LLMs or other models) to generate a textual response to the user query. …and to output an answer to the user query”].
♦As per claims 2, 11,
“wherein applying the RAG model comprises: tokenizing the natural language query into constituent tokens” See Para. 0064 of Cox wherein “Input to a language model (whether transformer-based or otherwise) typically is in the form of natural language as may be parsed into tokens …the process of parsing textual input…into a sequence of shorter segments that are converted to numerical representations referred to as tokens”.
“generating vector embeddings for the constituent tokens” See abstract, Para. 0065, 0088 – 0089 of Cox wherein “a query embedding associated with the user query is obtained”, “Each token 56 in the token sequence is converted into an embedding vector 60”.
“comparing the generated vector embeddings against semantic model data stored in a vector database to determine semantic similarities” See Para. 0090 - 0091 of Cox wherein “the vector similarity search operator 354 may search the embedding space defined by the plurality of synthetic question embeddings to identify the one or more relevant synthetic QA pairs 355, based on a similarity measure”.
“and selecting metadata entities based on the determined semantic similarities” See abstract, Para. 0090 – 0091, 0105 of Cox wherein one or more relevant synthetic QA pairs 355 are selected/identified, [ “the vector similarity search operator 354 may search the embedding space defined by the plurality of synthetic question embeddings to identify the one or more relevant synthetic QA pairs 355, based on a similarity measure”].
♦As per claim 3,
“wherein comparing the generated vector embeddings and selecting metadata entities comprises: computing similarity scores between the vector embeddings and the stored semantic model data; identifying specific attributes within the semantic model data that match the natural language query; ranking the identified attributes based on the computed similarity scores; and selecting a subset of highest-ranked attributes that exceed a similarity threshold as the relevant metadata entities to minimize contextual information volume” See Para. 0091, 0105 - 0106 of Cox wherein “a vector similarity score may be generated for each of the plurality of synthetic QA pairs 355 in the vector database 250, based on the similarity measure or additionally, based on the ranking or based on a similarity threshold, among other possibilities”.
♦As per claim 4,
“wherein processing the natural language query comprises: identifying potential reference relationships between the natural language query and the previous queries by: analyzing the natural language query for presence of explicit references including pronouns and reference terms; analyzing the natural language query for implicit references based on query structure and content; matching the analyzed explicit and implicit references with entities mentioned in the previous queries; and determining temporal relationships between the natural language query and the previous queries within the current session” See Para. 0072, 0088 of Cox (relationship of two objects, relationships in the data).
♦As per claim 5, 14,
“wherein updating the session memory module comprises: storing the natural language query with a temporal identifier; associating the generated analytical insight with the stored natural language query; maintaining reference chains between related queries in the current session, wherein maintaining the reference chains comprises: maintaining a chronological sequence of queries from the current session; maintaining entity mappings between successive queries within the chronological sequence; maintaining relationships between the queries and their corresponding insights; and maintaining contextual information utilized during generation of each corresponding insight” See Para. 0082, 0088 of Cox wherein “the ongoing chat session may be associated with a ticket, for example, a support ticket or another type of ticket, for identifying and/or tracking the ongoing chat session”, “embeddings may represent a mapping between discrete variables and a vector of continuous numbers that effectively capture meaning and/or relationships in the data”, and Para. 0105, 0119, 0123 of Cox wherein new information is updated in reference database, [“new or updated information may be organically compiled and captured during the ongoing chat session 420 that answers a particular user query that was previously unanswerable using the information contained in the reference database”, “the system 500 may update the existing reference database documentation”, “responsive to updating the reference database using the updated textual content 375, one or more new synthetic question embeddings (e.g., new synthetic QA pairs) may be generated by the synthetic QA pair generator 390 for inclusion in the vector database 250”].
♦As per claim 6, 12, 13
“wherein processing the natural language query comprises: generating a chain-of-thought prompt containing the contextual information and processing instructions; and applying the LLM to perform at least one of resolving entity references from the current session, correcting linguistic errors, and adapting the natural language query format for analytical processing” See Para. 0060, 0092, Fig. 4 and associated texts of Cox wherein an LLM model applied, [“…to perform natural language processing (NLP) tasks such as language translation, image captioning, grammatical error correction, and language generation, among others. A language model may be trained to model how words relate to each other in a textual sequence, based on probabilities”].
♦As per claim 7,
“wherein resolving entity references comprises: identifying pronouns and references in the natural language query; matching the identified pronouns and references with entities from previous queries; and substituting resolved entities to maintain semantic coherence” See Para. 0084 of Cox wherein “the chatbot application 300 may cooperate with the LLM 370 to automatically generate a rephrased user input that reflects the user input 310 phrased in a question format, or that rephrases the user input 310 into a format that may enable more effective similarity matching with synthetic question embeddings”.
♦As per claim 8,
“wherein correcting linguistic errors comprises: identifying and correcting misspelled terms in the natural language query; evaluating relevance of tokens to the domain context; and reconstructing the natural language query by either removing tokens determined to be irrelevant while preserving grammatical structure or generating a notification when no relevant tokens are identified” See Para. 0084 of Cox wherein “the chatbot application 300 may cooperate with the LLM 370 to automatically generate a rephrased user input that reflects the user input 310 phrased in a question format, or that rephrases the user input 310 into a format that may enable more effective similarity matching with synthetic question embeddings… the chatbot application 300 may gather further information to clarify the user's intent, to request that the user rephrase the user input 310 in a question format, or to confirm that the rephrased user input reflects an accurate rephrasing of the user input”.
♦As per claim 9,
“wherein the analytical query remains in natural language format or is converted to a structured format based on implementation requirements” See Para. 0063, 0071 of Cox wherein “generating human-like natural language responses to natural language input”, “…may be expected to result in the desired outputs”.
♦As per claim 15,
“in a case where the natural language query lacks the explicit references, automatically carrying forward relevant context from the previous queries and the analytical insights corresponding to the previous queries to resolve the natural language query” col. 11 lines 60 – col. 12 lines 5 of Amalapurapu, wherein “user preference computations can be based on various user events or absence of user events, which may indicate a preference or lack of preference for a particular attribute or set of attributes”.
The Following is another closet art:
Low et al (U.S. 2025/0078969 A1) discloses a method and system for processing a natural language question including the teaching of using LLM model to process the question (Para. 0060 – 0061). Also using RAG technique to provide contextual information (Para. 0068, 0075, 0088 – 0091).
Response to Arguments
Applicant’s arguments, with respect to the rejection(s) of claim(s) 1 - 15 under 35 USC 102 have been fully considered and are persuasive. Therefore, the rejection has been withdrawn. However, upon further consideration, a new ground(s) of rejection is made in view of Amalapurapu et al.
Conclusion
Applicant's amendment necessitated the new ground(s) of rejection presented in this Office action. Accordingly, THIS ACTION IS MADE FINAL. See MPEP § 706.07(a). 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 CAM LINH T NGUYEN whose telephone number is (571)272-4024. The examiner can normally be reached M-F: 7:00 - 3:00 pm.
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, Apu Mofiz can be reached at 571-272-4080. 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.
/CAM LINH T NGUYEN/Primary Examiner, Art Unit 2161