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
This office action is in response to Applicant’s submission filed on 02/05/2025 (with priority date of 02/14/2022). Claims 1-20 are pending of which claims 1, and 11 are independent. As such, claims 1-20 have been examined.
This Application was published as US 20250181840.
This Application is a continuation of 17671034 issued as U.S. 12242811. A Terminal Disclaimer over the term of the parent is required as provided below.
Claim Objections
Claim 19 is objected to because of the following informalities: The claim does not end with a period, and instead ends with a semicolon instead. Appropriate correction is required.
Double Patenting
The nonstatutory double patenting rejection is based on a judicially created doctrine grounded in public policy (a policy reflected in the statute) so as to prevent the unjustified or improper timewise extension of the “right to exclude” granted by a patent and to prevent possible harassment by multiple assignees. A nonstatutory double patenting rejection is appropriate where the conflicting claims are not identical, but at least one examined application claim is not patentably distinct from the reference claim(s) because the examined application claim is either anticipated by, or would have been obvious over, the reference claim(s). See, e.g., In re Berg, 140 F.3d 1428, 46 USPQ2d 1226 (Fed. Cir. 1998); In re Goodman, 11 F.3d 1046, 29 USPQ2d 2010 (Fed. Cir. 1993); In re Longi, 759 F.2d 887, 225 USPQ 645 (Fed. Cir. 1985); In re Van Ornum, 686 F.2d 937, 214 USPQ 761 (CCPA 1982); In re Vogel, 422 F.2d 438, 164 USPQ 619 (CCPA 1970); In re Thorington, 418 F.2d 528, 163 USPQ 644 (CCPA 1969).
A timely filed terminal disclaimer in compliance with 37 CFR 1.321(c) or 1.321(d) may be used to overcome an actual or provisional rejection based on nonstatutory double patenting provided the reference application or patent either is shown to be commonly owned with the examined application, or claims an invention made as a result of activities undertaken within the scope of a joint research agreement. See MPEP § 717.02 for applications subject to examination under the first inventor to file provisions of the AIA as explained in MPEP § 2159. See MPEP § 2146 et seq. for applications not subject to examination under the first inventor to file provisions of the AIA . A terminal disclaimer must be signed in compliance with 37 CFR 1.321(b).
The filing of a terminal disclaimer by itself is not a complete reply to a nonstatutory double patenting (NSDP) rejection. A complete reply requires that the terminal disclaimer be accompanied by a reply requesting reconsideration of the prior Office action. Even where the NSDP rejection is provisional the reply must be complete. See MPEP § 804, subsection I.B.1. For a reply to a non-final Office action, see 37 CFR 1.111(a). For a reply to final Office action, see 37 CFR 1.113(c). A request for reconsideration while not provided for in 37 CFR 1.113(c) may be filed after final for consideration. See MPEP §§ 706.07(e) and 714.13.
The USPTO Internet website contains terminal disclaimer forms which may be used. Please visit www.uspto.gov/patent/patents-forms. The actual filing date of the application in which the form is filed determines what form (e.g., PTO/SB/25, PTO/SB/26, PTO/AIA /25, or PTO/AIA /26) should be used. A web-based eTerminal Disclaimer may be filled out completely online using web-screens. An eTerminal Disclaimer that meets all requirements is auto-processed and approved immediately upon submission. For more information about eTerminal Disclaimers, refer to www.uspto.gov/patents/apply/applying-online/eterminal-disclaimer.
Claims 1-20 are rejected on the ground of nonstatutory double patenting as being unpatentable over claims 1-15 of U.S. Patent No. 12242811 (hereinafter as the ‘811 patent). Although the claims at issue are not identical, they are not patentably distinct from each other because the claims of the issued patent are narrower in scope than that of the instant application.
Claim 1 of the instant application is recited by claim 1 of ‘811 patent, and therefore is rejected under a similar rationale as claim 1.
Claims 2 of the instant application are rejected by claim 2 of the ‘811 patent,
Claims 3 of the instant application are rejected by claim 3 of the ‘811 patent,
Claim 4 of the instant application is rejected by claim 4 of the ‘811 patent.
Claims 5 and 15 of the instant application are rejected by claim 5 of the ‘811 patent.
Claim 6 of the instant application is rejected by claim 5 of the ‘811 patent.
Claim 7 and 17 of the instant application are rejected by claim 7 of the ‘811 patent.
Claim 8 of the instant application is rejected by claim 6 of the ‘811 patent.
Claims 9 and 19 of the instant application are rejected by claim 7 of the ‘811 patent.
Claim 10 of the instant application is rejected by claim 7 of the ‘811 patent.
Claim 11 of the instant application is rejected by claim 9 of the ‘811 patent.
Claim 12 of the instant application is rejected by claim 10 of the ‘811 patent.
Claim 13 of the instant application is rejected by claim 11 of the ‘811patent.
Claim 14 of the instant application is rejected by claim 12 of the ‘811 patent.
Claim 16 of the instant application is rejected by claim 13 of the ‘811 patent.
Claim 18 of the instant application is rejected by claim 14 of the ‘811 patent.
Claim 20 of the instant application is rejected by claim 15 of the ‘811 patent.
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-10 are drawn to a "software" per se as recited in the claim, “communication layer” and “language processing layer”, appears to be fundamentally software. This invention is about using software to manage conversation flow, and as such is non-statutory subject matter. See MPEP § 2106.1V.B.1 .a. Software not claimed as embodied in computer readable media are descriptive material per se and are not statutory because they are not capable of causing functional change in the computer. See, e.g., Warmerdam, 33 F.3d at 1361, 31 USPQ2d at 1760 (claim to a data structure per se held nonstatutory). Such claimed data structures do not define any structural and functional interrelationships between the data structure and other claimed aspects of the invention, which permit the data structure's functionality to be realized. In contrast, a claimed computer readable medium encoded with a data structure defines structural and functional interrelationships between the data structure and the computer software and hardware components which permit the data structure's functionality to be realized, and is thus statutory. Similarly, computer programs claimed as computer listings per se, i.e., the descriptions or expressions of the programs are not physical "things." They are neither computer components nonstatutory processes, as they are not "acts" being performed. Such claimed computer programs do not define any structural and functional interrelationships between the computer program and other claimed elements of a computer, which permit the computer program's functionality to be realized.
Claims 1-6, 9, 12-16 and 19 are rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea without significantly more.
Claim 1 recites a system that, under the broadest reasonable interpretation, claims limitations that cover performance of the limitations in the human mind with the assistance of physical aids (e.g., pen and paper), but for the recitation of generic or well-known or conventional computer components. That is, other than reciting “communication layer, language processing layer and machine learning model”, nothing in these claim limitations precludes the steps from practically being performed in the mind and/or organizing human activity. As a whole, claim 1 pertains to managing conversation, which is a mental process and/or organizing human activity that a human can do. Individually, each of the limitations also pertains to a mental process/organizing human activity, and/or insignificant extra solution activity, for example:
store a predefined conversation graph including a plurality of nodes, (e.g., keeping and storing a record of a conversation graph which contains flow of the conversation in a notebook.)
store a current node of the conversation graph with respect to an ongoing session with a user, (e.g., keeping track of the current discussion/topic.)
receive a user input from the user in the ongoing session with the user, and output a corresponding response to the user input, wherein the response to the user input is associated with a next node of the conversation graph; (e.g., listen to a user talk, and respond back to the user.)
and a language processing layer configured to: receive the user input and the current node of the conversation graph from the communication layer, (e.g., listen to a user talk, and keep track of the current discussion/topic.)
process the user input using a machine learning model based on the current node of the conversation graph, (e.g., analyze the conversation according to the current discussion.)
and output a function call for traversal of the conversation graph to the next node of the conversation graph based on the processing of the user input. (e.g., based on the current discussion, move to next discussion point.)
The judicial exception is not integrated into a practical application. In particular, the claims only recites generic computing components. Such generic computing components are recited at a high-level of generality (i.e., as a generic processor performing a generic computer function of receiving, determining, or outputting information) such that they amount to no more than mere instructions to apply the exception using generic computer components. Accordingly, these additional elements do not integrate the abstract idea into a practical application because they do not impose any meaningful limits on practicing the abstract idea. The claim is directed to an abstract idea.
Claim 1 does not include additional elements that are sufficient to amount to significantly more than the judicial exception. As discussed above with respect to integration of the abstract idea into a practical application, the additional limitations of using generic computer components amount to no more than mere instructions to apply the exception using generic computer components. Mere instructions to apply an exception using generic computer components cannot provide an inventive concept. Claim 1 is not patent eligible.
The examiner further notes that the use of claimed generic computer components (“communication layer, language processing layer and machine learning model”) to obtain, extract, and/or generate data invokes such generic computer components “merely as a tool to perform an existing process”. MPEP 2106.05(f). MPEP 2106.05(f) further explains:
Use of a computer or other machinery in its ordinary capacity for economic or other tasks (e.g., to receive, store, or transmit data) or simply adding a general purpose computer or computer components after the fact to an abstract idea (e.g., a fundamental economic practice or mathematical equation) does not integrate a judicial exception into a practical application or provide significantly more. See Affinity Labs v. DirecTV, 838 F.3d 1253, 1262, 120 USPQ2d 1201, 1207 (Fed. Cir. 2016) (cellular telephone); TLI Communications LLC v. AV Auto, LLC, 823 F.3d 607, 613, 118 USPQ2d 1744, 1748 (Fed. Cir. 2016) (computer server and telephone unit). Similarly, "claiming the improved speed or efficiency inherent with applying the abstract idea on a computer" does not integrate a judicial exception into a practical application or provide an inventive concept. Intellectual Ventures I LLC v. Capital One Bank (USA), 792 F.3d 1363, 1367, 115 USPQ2d 1636, 1639 (Fed. Cir. 2015).
Claim 1 recites generic computer components (“communication layer, language processing layer and machine learning model”), with respect to performing tasks. MPEP 2106.05(d) and (f) further provides examples of court decisions where the courts found generic computing components to be mere instructions to apply a judicial exception, and further explains “increased speed” (e.g., using a computer to increase the speed of an otherwise mental process) does not provide an inventive concept. For example:
A commonplace business method or mathematical algorithm being applied on a general purpose computer, Alice Corp. Pty. Ltd. V. CLS Bank Int’l, 573 U.S. 208, 223, 110 USPQ2d 1976, 1983 (2014); Gottschalk v. Benson, 409 U.S. 63, 64, 175 USPQ 673, 674 (1972); Versata Dev. Group, Inc. v. SAP Am., Inc., 793 F.3d 1306, 1334, 115 USPQ2d 1681, 1701 (Fed. Cir. 2015).
A process for monitoring audit log data that is executed on a general-purpose computer where the increased speed in the process comes solely from the capabilities of the general-purpose computer, FairWarning IP, LLC v. Iatric Sys., 839 F.3d 1089, 1095, 120 USPQ2d 1293, 1296 (Fed. Cir. 2016) (emphasis added).
Performing repetitive calculations. Bancorp Services v. Sun Life, 687 F.3d 1266, 1278, 103 USPQ2d 1425, 1433 (Fed. Cir. 2012) ("The computer required by some of Bancorp’s claims is employed only for its most basic function, the performance of repetitive calculations, and as such does not impose meaningful limits on the scope of those claims.")
Claim 11 recites a method claim that corresponds to the system of claim 1 and is therefore rejected under the same grounds as claim 1 above. Claim 11 is not patent eligible.
Claims 2-6, 9, 12-16, and 19 depend from independent claims 1 and 11, do not remedy any of the deficiencies of claims 1 and 11, and therefore are rejected on the same grounds as claims 1 and 11 from above.
Claim 2 further comprising: wherein the communication layer is further configured to: update the current node of the conversation graph to the next node specified in the function call. (e.g., keeping track of the conversation as the conversation moves from one point or topic/discussion onto the next.)
Claim 3 further recite: wherein the corresponding response to the user input comprises one or more of: a prompt to the user requesting more information from the user; providing information to the user; and updating one or more parameter values with information provided from the user input, wherein the one or more parameter values are stored in one or more memory devices of the system. (e.g., ask or request more information from the user, providing information to user and updating information from user by making notes in the notebook.)
Claim 4 further comprising: wherein the language processing layer is further configured to: receive a history of previous nodes of the conversation graph traversed during the session, and process the user input based further on the history. (e.g., receiving a transcript of the earlier conversation and help the user based on the conversation history.)
Claim 5 further recites: wherein the language processing layer is further configured to: receive information collected from prior user inputs during the session, and process the user input based further on the information. (e.g., listen to or based on transcript of the conversation with the user, taking notes and assist the user with their request based on the information obtained from the user.)
Claim 6 further recites: wherein the communication layer includes a user frontend and a state handler, wherein the state handler is configured to: navigate the conversation graph from the current node to the next node according to the function call from the language processing layer; and perform one or more predetermined actions. (e.g., looking at the conversation graph, looking how the conversation flow from the current discussion to the next point of discussion, like if the user wants to book a hotel, the predetermine action could be requesting the user for budget range and/or type of hotel.) [user frontend and state handler are considered generic computer components]
Claim 9 further recites: wherein the communication layer includes a plurality of conversation graphs including the predefined conversation graph, and the language processing layer includes a plurality of models including the machine learning model, wherein each model is associated with a respective conversation graph. (e.g., multiple of conversation flow graph can be keep in a notebook, each with a predefined conversation flow, and multiple agent can handle a specific conversation flow, like one agent handles a sales call, another one handles service/repair, and another one handles customer retention.)
Claims 12-16, and 19 correspond to claims 2-6 and 9, therefore similar rationale of rejection is applicable to these claims.
Claim 19 further comprise: and wherein receiving the current node of the conversation graph from the communication layer comprises the model associated with the predefined conversation graph receiving the current node of the conversation graph; (e.g., keeping track of the flow of conversation by looking at the current discussion, and one of the agent who is specialized at certain script or conversation topic takes over the conversation with the user.)
In sum, claims 2-6, 9, and 12-16, and 19 depend from claims 1 and 11, and further recite mental processes as explained above. None of the additional limitations recited in claims 2-6, 9, and 12-16, and 19 amount to anything more than the same or a similar abstract idea as recited in claims 1 and 11. Nor do any limitations in claims 2-6, 9, and 12-16, and 19: (a) integrate the abstract idea into a practical application because they do not impose any meaningful limits on practicing the abstract idea or (b) amount to significantly more than the judicial exception because the additional limitations of using generic computer components amounts to no more than mere instructions to apply the exception using generic computer components. Claims 2-6, 9, and 12-16, and 19 are not patent eligible.
Claim Edibility
Dependent claims 7-8, 10, 17-18 and 20 appears to recite a specific method of training a machine learning model, therefore it is beyond what a human can practical perform in their mind, and although the claim involve mathematical calculation, but the claim appears to address and improve as technological solution to a technological problem, therefore the claims are considered patent eligible.
Claim Rejections - 35 USC § 112
The following is a quotation of 35 U.S.C. 112(b):
(b) CONCLUSION.—The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the inventor or a joint inventor regards as the invention.
The following is a quotation of 35 U.S.C. 112 (pre-AIA ), second paragraph:
The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the applicant regards as his invention.
Claims 1-20 are rejected under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph, as being indefinite for failing to particularly point out and distinctly claim the subject matter which the inventor or a joint inventor (or for applications subject to pre-AIA 35 U.S.C. 112, the applicant), regards as the invention.
It is not clear what “communication layer” and “language processing layer” means. For the sake of compact prosecution and prior art purposes, it will be interpreted it as software that is part of a computing component.
Claims 8 and 18 are rejected under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph, as being indefinite for failing to particularly point out and distinctly claim the subject matter which the inventor or a joint inventor (or for applications subject to pre-AIA 35 U.S.C. 112, the applicant), regards as the invention.
Claims 8 and 18 recites the limitation “wherein the computed loss” in line 1. There is insufficient antecedent basis for this limitation in the claim.
For sake of compact prosecution, the claims will be interpreted as depended on claims 7 and 17 respectively because they recite “computed loss”.
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-5, and 11-15 are rejected under 35 U.S.C. 103 as being unpatentable over haradwaj (US 20190341039 A1), in view of Loghmani (US 20190251169).
Regarding claim 1, Bharadwaj discloses: 1. A system comprising: a communication layer configured to: ([0005] using one or more processors may include determining an action to be performed by a computing service for a user of a computing device in communication with an automated assistant implemented at least in part by the one or more processors,) Also see para 0052.
store a predefined conversation graph including a plurality of nodes, ([0008] A first node among the plurality of nodes in the dependency graph data structure identifies a first assistant method that includes a first prompt that requests a first parameter, and generating the one or more natural language outputs includes executing the first assistant method to generate a first natural language output including the first prompt. Determining the action to be performed by the computing service is performed by the automated assistant and is based upon an initial natural language input received at the computing device of the user and specifying a first parameter identified by a first directed edge in the dependency graph data structure, the first directed edge connects a first node that identifies a first assistant method that generates the first parameter and a second node that identifies a first action method that utilizes the first parameter, and conducting the human-to-computer dialog session between the user and the automated assistant includes bypassing generation of a natural language output to request the first parameter in response to determining that the first parameter is specified in the initial natural language input.)
store a current node of the conversation graph with respect to an ongoing session with a user, ([0008] A first node among the plurality of nodes in the dependency graph data structure identifies a first assistant method that includes a first prompt that requests a first parameter, and generating the one or more natural language outputs includes executing the first assistant method to generate a first natural language output including the first prompt. Determining the action to be performed by the computing service is performed by the automated assistant and is based upon an initial natural language input received at the computing device of the user and specifying a first parameter identified by a first directed edge in the dependency graph data structure, the first directed edge connects a first node that identifies a first assistant method that generates the first parameter and a second node that identifies a first action method that utilizes the first parameter, and conducting the human-to-computer dialog session between the user and the automated assistant includes bypassing generation of a natural language output to request the first parameter in response to determining that the first parameter is specified in the initial natural language input.)
receive a user input from the user in the ongoing session with the user, ([0008] Determining the action to be performed by the computing service is performed by the automated assistant and is based upon an initial natural language input received at the computing device of the user)
and output a corresponding response to the user input, wherein the response to the user input is associated with a next node of the conversation graph; ([0008] executing the first assistant method to generate a first natural language output including the first prompt. … the first directed edge connects a first node that identifies a first assistant method that generates the first parameter and a second node that identifies a first action method that utilizes the first parameter,)
and a language processing layer configured to: receive the user input and the current node of the conversation graph from the communication layer, ([0008] … performed by the automated assistant and is based upon an initial natural language input received at the computing device of the user and specifying a first parameter identified by a first directed edge …)
Bharadwaj is silent regarding process the user input using a machine learning model based on the current node of the conversation graph,
Loghmani in the related art discloses: process the user input using a machine learning model based on the current node of the conversation graph, ([0111] Conversation graph 500 can include a series of states/nodes … The series of nodes can alternate between user actions … and conversational-search engine responses … An action can be a user input such as question related to the relevant domain response can be an answer, a query to the user for more information, etc. … The conversational search and planning engine can ease sequence 2 sequence deep learning techniques to translate low level system decisions, returned as a result of system queries over knowledge graph, to colloquial, personalized and contextualized decisions/answers/responses. This can happen in parallel to other machine learning and artificial intelligence techniques.)
Bharadwaj and Loghmani are considered analogous art. Therefore, 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 teachings of Bharadwaj to combine the teaching of Loghmani, because there is needed new computerized methods to automatically understand a user's needs and preferences in a specific narrow domain (Loghmani, [0004]).
Regarding claim 2, Bharadwaj and Loghmani disclose all the elements of claim 1,
Bharadwaj further discloses: wherein the communication layer is further configured to: update the current node of the conversation graph to the next node specified in the function call. ([0012] The computing service is a cloud computing service, and the computing service is resident on the computing device operated by the user. The dependency graph data structure defines a directed acyclic graph. The action creates a reservation, a first node among the plurality of nodes identifies a first action method that calls the computing service to search for available time slots, and a second node among the plurality of nodes identifies a second action method that calls the computing service to reserve an available time slot. The action obtains a product or a ticket to an event.) Additionally, in fig. 6, it can be seen that the dependency graph is navigated by language model that is generating a function call based on the received input. Access and traverse dependency graph and set parameters based on prior user input and user data which is similar to the instant application.)
Regarding claim 3, Bharadwaj and Loghmani disclose all the elements of claim 1,
Bharadwaj further discloses: The system of wherein the corresponding response to the user input comprises one or more of: a prompt to the user requesting more information from the user; ([0008] identifies a first assistant method that includes a first prompt that requests a first parameter, and generating the one or more natural language outputs includes executing the first assistant method to generate a first natural language output including the first prompt.)
providing information to the user; ([0041] In many implementations, the user can utter commands, searches, etc., and automated assistant 120 may utilize speech recognition to convert the utterances into text, and respond to the text accordingly, e.g., by providing search results, general information, and/or taking one or more responsive actions (e.g., playing media, launching a game, ordering food, etc.)
and updating one or more parameter values with information provided from the user input, wherein the one or more parameter values are stored in one or more memory devices of the system.([0125] Returning to block 306, if the intent is determined to be associated with an action for which a dependency graph data structure exists for modeling a conversation, control may pass from block 306 to block 310 to access and traverse the dependency graph data structure and optionally set one or more parameters based upon prior user input and/or stored user data. For example, if an initial input from a user includes text that defines one or more parameters used by an action when requesting the action, there is generally no need to prompt a user for those parameters. Thus, if a user inputs “please book a table for four at O'Briens” the desired party size is known, so there is no need to ask the user to provide that data. Also, where a dependency graph data structure models a reservation conversation for multiple restaurants, the restaurant “O'Briens” would already be known from the initial input. This may feed into the effects discussed above, resulting in more efficient overall usage of aspects of the hardware at the client computing device.)
Regarding claim 4, Bharadwaj and Loghmani disclose all the elements of claim 1,
Loghmani further discloses: wherein the language processing layer is further configured to: receive a history of previous nodes of the conversation graph traversed during the session, and process the user input based further on the history. ([0109] Conversation graph 500 can illustrate e history of different prior conversation over a period of time (e.g. for a plurality of users). A conversational-search engine can utilize these conversations to learn from. Conversational search and planning engine can use the generalized and actual conversation graph for search and planning. As the conversation graph aggregates sore and more conversations the function of goal prediction of a conversation based on its early interactions can become more accurate. Conversation graph 500 can be a log of past actions and/or responses. Conversational-search engine can review the historical log and determine a similarity with later conversations. In this way, conversational-search engine can leverage this historical information in determining a more-informed current response to a user action.)
Where the rationale for the combination would be similar to the one provided earlier.
Regarding claim 5, Bharadwaj and Loghmani disclose all the elements of claim 1,
Loghmani further discloses: wherein the language processing layer is further configured to: receive information collected from prior user inputs during the session, and process the user input based further on the information. ([0100] Therefore, using the product graph (which is created from the list of outstanding dependencies associated to that node), the system can strategize a series of steps to guide the conversation to a weight loss program. The system can review the conversation context and user's history to collect and fulfill the variables required for a weight loss program, if possible. The remaining variables, if any, can be collected through a series of questions strategized in this step of the algorithm. In this state the system can proactively guide the conversation to eventually suggest a product or offering.)
Where the rationale for the combination would be similar to the one provided earlier.
Claim 11 is a method claim that corresponds to claim 1, and the similar rationale applied in the rejection of claim 1 can also be applied.
Claims 12-15 are method claims that corresponds to claims 2-5 respectively, and the similar rationale applied in the rejection of claims 2-5 can also be applied to claims 12-15.
Claims 6 and 16 are rejected under 35 U.S.C. 103 as being unpatentable over Bharadwaj, in view of Loghmani, and further in view of Bedell et al. (US 20200334740 A1).
Regarding claim 6, Bharadwaj in view of Loghmani disclose all the elements of claim 1,
Bharadwaj discloses: a user frontend ([0040] The automated assistant 120 engages in human-to-computer dialog sessions with one or more users via user interface input and output devices of one or more client devices 106.sub.1-N. The automated assistant 120 may engage in a human-to-computer dialog session with a user in response to user interface input provided by the user via one or more user interface input devices of one of the client devices 106.sub.1-N.) [also disclosed in Bedell reference see below]
Bharadwaj and Loghmani are silent on wherein the communication layer includes a user frontend and a state handler, wherein the state handler is configured to: navigate the conversation graph from the current node to the next node according to the function call from the language processing layer; and perform one or more predetermined actions.
Bedell in the related art discloses: wherein the communication layer includes a user frontend ([0008] According to an aspect, a computer-implemented method is provided, for modifying a Conversational User Interface (CUI) and Graphical User Interface (GUI) associated with a website or a web application, running on a front-end device.) and a state handler, wherein the state handler is configured to:(see fig. 1A, 510, channel handler)
navigate the conversation graph from the current node to the next node according to the function call from the language processing layer; ([0064] Channel actions 466 can be classified in two sub-categories: CUI actions 463 and GUI actions 465. CUI actions involve altering the state of the Conversational User Interface (e.g. saying a message from the conversational agent), including the graphical representation of the CUI, if it exists (e.g. displaying suggestions of replies that the user can use as a follow-up in their conversation with the conversational agent).)
and perform one or more predetermined actions. (see fig. 1A, the channel handler (510) performs the action data and transmit it to user)
Bharadwaj, Loghmani, and Bedell are considered analogous art. Therefore, 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 teachings of Bharadwaj and Loghmani to combine the teaching of Bedell, because there is a need for improved conversational and graphical user interfaces (Bedell, [0007]).
Claim 16 is a method claim that corresponds to claim 6, and the similar rationale applied in the rejection of claim 6 can also be applied.
Claims 7 and 17 are rejected under 35 U.S.C. 103 as being unpatentable over Bharadwaj, in view of Loghmani, and further in view of Bachrach (US 20180307745 A1).
Regarding claim 7, Bharadwaj and Loghmani disclose all the elements of claim 1,
Bharadwaj further discloses: computing a loss between a generated output of the machine learning model from the training example, and the labeled function call, ([0058] For example, training data may be provided that includes individual training examples. Each training example may include, for instance, free form input from a user (e.g., in textual or non-textual form) and may be labeled (e.g., by hand) with an intent. The training example may be applied as input across the machine learning model (e.g., a neural network) to generate output. The output may be compared to the label to determine an error.))
and updating one or more model parameter values of the machine learning model based on the computed loss. ([0058] The output may be compared to the label to determine an error. This error may be used to train the model, e.g., using techniques such as gradient descent (e.g., stochastic, batch, etc.) and/or back propagation to adjust weights associated with hidden layer(s) of the model.)
Bharadwaj and Loghmani is silent on wherein the language processing layer is further configured to train the machine learning model using one or more iterations of: sending, as input to the machine learning model, a training example representing at least a portion of a session log labeled with a function call, the session log generated using the conversation graph.
Bachrach in the related art discloses: wherein the language processing layer is further configured to train the machine learning model using one or more iterations of: sending, as input to the machine learning model, a training example representing at least a portion of a session log ([0090] The training set uses conversations along with their API call invocation. Iteration is disclosed in [0090]. [labeling is disclosed in Bharadwaj in above and in [0058].
the session log generated using the conversation [graph], ([0090] The training set uses conversations along with their API call invocation. [conversation graph is disclosed in Bharadwaj-see claim 1, para 0005] [logs of interactions between users and automated assistants-also by Bharadwaj in claim 1 and para 0005]
Bharadwaj, Loghmani, and Bachrach are considered analogous art. Therefore, 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 teachings of Bharadwaj and Loghmani to combine the teaching of Bachrach, because the present invention provides a way to automatically take actions based on dialogue (Bachrach, [0005]).
Claim 17 is a method claim that corresponds to claim 7, and the similar rationale applied in the rejection of claim 7 can also be applied.
Claims 8 and 18 are rejected under 35 U.S.C. 103 as being unpatentable over Bharadwaj, in view of Loghmani, and further in view of Zhou (US 20050097455 A1).
Regarding claim 8, Bharadwaj in view of Loghmani disclose all the elements of claim 1,
Bharadwaj in view of Loghmani is silent on wherein the computed loss is based on a lexicographical distance between the labeled function call and the generated output.
Zhou in the related art discloses: wherein the computed loss is based on a lexicographical distance between the ([0046] Reconfigurable parser 603 then compares between every pair of adjacent XML elements to determine a minimal lexicographical distance between them.) [Labeled AP call and generated output already disclosed in Bharadwaj above in claim 7 as well as para 0058]
Bharadwaj, Loghmani, and Zhou are considered analogous art. Therefore, 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 teachings of Bharadwaj and Loghmani to combine the teaching of Zhou, because the parsing technique employed is faster than the interpretive parsers of the prior art and the memory requirement for string matching can be much reduced (Zhou, [0012]).
Claim 18 is a method claim that corresponds to claim 8, and the similar rationale applied in the rejection of claim 8 can also be applied.
Claims 9 and 19 are rejected under 35 U.S.C. 103 as being unpatentable over Bharadwaj, in view of Loghmani, further in view of Koneru (US 20230169273).
Regarding claim 9, Bharadwaj in view of Loghmani disclose all the elements of claim 1,
Bharadwaj and Loghmani is silent on wherein the communication layer includes a plurality of conversation graphs including the predefined conversation graph, and the language processing layer includes a plurality of models including the machine learning model, wherein each model is associated with a respective conversation graph.
Koneru in the related art discloses: wherein the communication layer includes a plurality of conversation graphs including the predefined conversation graph, ([0073] At step 650, the VA server 110 identifies a first set of LM's from a group of LM's of the virtual assistant based on the current-node to interpret the second utterance. Among the group of LM's created by the VA server 110, the VA server 110 identifies the first set of LM's comprising: the current-node LM's, the global LM's, and the peripheral LM's to interpret the second utterance. In this example, as the current-node of the conversation is the “date” entity node 715(3), the VA server 110 identifies: the current-node LM's as the one or more LM's associated with the group of nodes—travel details 715, the global LM's as the one or more LM's of the travel virtual assistant 232, and the peripheral LM as the small talk LM.)
and the language processing layer includes a plurality of models including the machine learning model, ([0073] At step 650, the VA server 110 identifies a first set of LM's from a group of LM's of the virtual assistant based on the current-node to interpret the second utterance. Among the group of LM's created by the VA server 110, the VA server 110 identifies the first set of LM's comprising: the current-node LM's, the global LM's, and the peripheral LM's to interpret the second utterance. In this example, as the current-node of the conversation is the “date” entity node 715(3), the VA server 110 identifies: the current-node LM's as the one or more LM's associated with the group of nodes—travel details 715, the global LM's as the one or more LM's of the travel virtual assistant 232, and the peripheral LM as the small talk LM.)
wherein each model is associated with a respective conversation graph. ([0073] At step 650, the VA server 110 identifies a first set of LM's from a group of LM's of the virtual assistant based on the current-node to interpret the second utterance. Among the group of LM's created by the VA server 110, the VA server 110 identifies the first set of LM's comprising: the current-node LM's, the global LM's, and the peripheral LM's to interpret the second utterance. In this example, as the current-node of the conversation is the “date” entity node 715(3), the VA server 110 identifies: the current-node LM's as the one or more LM's associated with the group of nodes—travel details 715, the global LM's as the one or more LM's of the travel virtual assistant 232, and the peripheral LM as the small talk LM.)
Bharadwaj, Loghmani, and Koneru are considered analogous art. Therefore, 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 teachings of Bharadwaj and Loghmani to combine the teaching of Koneru, because by prioritizing the execution of the current-node LM's over the global LM's or the peripheral LM's, the VA server improves the utterance understanding, response accuracy, end user satisfaction, end user experience, and reduces the number of volleys required to fulfill intents. The prioritization of the current-node LM's also advantageously reduces the processing power and memory required to execute the conversation (Koneru, [0066]).
Claim 19 is a method claim that corresponds to claim 9, and the similar rationale applied in the rejection of claim 9 can also be applied.
Claim 19 has one additional feature not recited in claim 9, and wherein receiving the current node of the conversation graph from the communication layer comprises the model associated with the predefined conversation graph receiving the current node of the conversation graph;
Koneru further discloses: and wherein receiving the current node of the conversation graph from the communication layer comprises the model associated with the predefined conversation graph receiving the current node of the conversation graph; ([0073] At step 650, the VA server 110 identifies a first set of LM's from a group of LM's of the virtual assistant based on the current-node to interpret the second utterance. Among the group of LM's created by the VA server 110, the VA server 110 identifies the first set of LM's comprising: the current-node LM's, the global LM's, and the peripheral LM's to interpret the second utterance. In this example, as the current-node of the conversation is the “date” entity node 715(3), the VA server 110 identifies: the current-node LM's as the one or more LM's associated with the group of nodes—travel details 715, the global LM's as the one or more LM's of the travel virtual assistant 232, and the peripheral LM as the small talk LM.)
Where the rationale for the combination would be similar to the one already provided earlier.
Claims 10 and 20 are rejected under 35 U.S.C. 103 as being unpatentable over Bharadwaj, in view of Loghmani, further in view of Koneru, and furthermore in view Bachrach, and Malkiel (US 20210182935 A1).
Regarding claim 10, Bharadwaj/Loghmani/Koneru disclose all the elements of claim 9,
Bharadwaj/Loghmani/Koneru are silent on wherein each model of the plurality of models is derived from a base language model trained using training examples other than session logs generated using the plurality of conversation graphs; and each model of the plurality of models is further trained using training examples representing at least portions of session logs generated using the conversation graph associated with the model.
Bachrach in the related art discloses: and each model of the plurality of models is further trained using training examples representing at least portions of session logs generated using the conversation ([0090] The training set uses conversations along with their API call invocation. Iteration is disclosed in [0090], [conversation graph and logs of interactions between users and automated assistants-also disclosed by Bharadwaj in claim 1 and para 0005]
Bharadwaj/Loghmani/Koneru/Bachrach are considered analogous art. Therefore, 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 system of teachings to combine with the teaching of Bachrach, because the present invention provides a way to automatically take actions based on dialogue (Bachrach, [0005]).
Bharadwaj/Loghmani/Koneru/Bachrach are silent on wherein each model of the plurality of models is derived from a base language model trained using training examples other than session logs generated using the plurality of conversation graphs;
Malkiel in the related art discloses: wherein each model of the plurality of models is derived from a base language model trained using training examples other than session logs generated using the plurality of conversation graphs; ([0028] FIG. 1 is an exemplary block diagram illustrating a system 100 for generating cold start recommendations using text-based similarities between items. The system 100 includes an untrained language model 102.)
Bharadwaj/Loghmani/Koneru/Bachrach/Malkiel are considered analogous art. Therefore, 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 system of teachings to combine with the teaching of Malkiel, because it may reduce undesirable item recommendations while improving the likelihood the user will choose to utilize or purchase a recommended item (Malkiel, [0026]).
Claim 20 is a method claim that corresponds to claim 10, and the similar rationale applied in the rejection of claim 10 can also be applied.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure: Jalalvand US 12573401 – discloses training an utterance encoding model for encoding utterance of conversation. See Abstract, col. 4 and figs. 5-7 and 9 for additional details.
Yang, S., Zhang, R., & Erfani, S. (2020, November). GraphDialog: Integrating graph knowledge into end-to-end task-oriented dialogue systems. In Proceedings of the 2020 Conference on Empirical Methods in Natural Language Processing (EMNLP) (pp. 1878-1888).- discloses use of graph structure in knowledge base and dependency parsing tree of dialog to improve end to end task oriented dialogue system. See Abstract, section 3 and fig. 1 for additional details.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to Philip H Lam whose telephone number is (571)272-1721. The examiner can normally be reached 9 AM-2 PM Pacific time.
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, Bhavesh Mehta can be reached on 571-272-7453. 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.
/PHILIP H LAM/Examiner, Art Unit 2656