DETAILED ACTION
Request for Continued Examination
A request for continued examination under 37 CFR 1.114, including the fee set forth in 37 CFR 1.17(e), was filed in this application after final rejection. Since this application is eligible for continued examination under 37 CFR 1.114, and the fee set forth in 37 CFR 1.17(e) has been timely paid, the finality of the previous Office action has been withdrawn pursuant to 37 CFR 1.114. Applicant's submission filed on 5/18/26 has been entered, in which Applicant amended claims 1, 5, 13, 15, 18, 20, and 22 and cancelled claims 14 and 19. Claims 1-13, 15-18, and 20-22 are pending in this application and have been rejected as indicated below.
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 Amendments
Applicant’s amendments are acknowledged.
The 35 USC 101 rejection of claims 1-13, 15-18, and 20-22 in regard to abstract ideas has been withdrawn in light of Applicant’s amendments and explanations.
The 35 USC § 103 rejections of claims 1-13, 15-18, and 20-22 are maintained in light of Applicant’s amendments explanations.
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.
The factual inquiries set forth in Graham v. John Deere Co., 383 U.S. 1, 148 USPQ 459 (1966), that are applied for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows:
1. Determining the scope and contents of the prior art.
2. Ascertaining the differences between the prior art and the claims at issue.
3. Resolving the level of ordinary skill in the pertinent art.
4. Considering objective evidence present in the application indicating obviousness or nonobviousness.
Claims 1-10, 12, 13, 15-18, and 20-22 are rejected under 35 U.S.C. 103 as being unpatentable over U.S. Patent Application Publication Number 2021/0019309 to Yadav et al. (hereafter referred to as Yadav), in view of U.S. Patent Application Publication Number 2022/0358005 to Saha et al. (hereafter referred to as Saha), in further view of U.S. Patent Application Publication Number 2022/0237383 to Park et al. (hereafter referred to as Park), and in even further view of U.S. Patent Application Publication Number 2020/0218988 to Boxwell et al. (hereafter referred to as Boxwell).
As per claim 1, Yadav teaches:
A method comprising: obtaining static data operated on by a process and dynamic data from event logs of the process (Paragraph Number [0099] teaches a goal of the system for providing a database interface may be to, given a string (full or partial natural language question), produce the following: (1) Context sensitive suggestions; (2) Possible N translations of the question into a database query (e.g., possibly generating a formula and/or query on query workflows); (3) Confidence Score around how confident the system is that the question has properly translated to a database query; and (4) Clarifying questions that provide a way to take input from the user about what they mean. For example, the question may be “top product by profit” but the data set may not contain profit column and contain an “item” column instead. Or, the profit column may not be defined and may require someone to define it as revenue−cost. Paragraph Number [0527] teaches patterns (e.g., static patterns or dynamic patterns) may be applied to the string and/or the set of tokens to modify the query graph. The technique 2400 includes determining 2420 that the string and the set of tokens matches a pattern. For example, the set of tokens or a subset of the set of tokens may satisfy a set token type constraints associated with (e.g., stored with) a pattern. For example, the string fragments of the string matched to tokens of the set of tokens may satisfy a set of text constraints (e.g., a regular expression) associated with the pattern).
generating, from the static data and the dynamic data, a causal graph of dependencies between features of the process (Paragraph Number [0515] teaches the technique 2300 includes generating 2330 a query graph for the set of tokens using a finite state machine representing a query grammar. Nodes of the finite state machine represent token types. Directed edges of the finite state machine represent valid transitions between token types in the query grammar. An example of a finite state machine 2100 is depicted in the state diagram of FIG. 21. Vertices of the query graph correspond to respective tokens of the set of tokens. Directed edges of the query graph represent a transition between two tokens in a sequencing of the tokens. An example, of a query graph 2200 is depicted in FIG. 22. The query graph may be used to select a sequence tokens in the set of tokens as a database query that makes sense under the query grammar. For example, in forming a database query as a sequence of tokens, a directed edge of the query graph may be selected, which would cause the token of the vertex at the source of the selected directed edge to immediately precede the token of the vertex at the destination of the selected directed edge in the resulting sequence of tokens).
prompting a ... natural language model using a prompt comprising representations of the causal graph (Paragraph Number [0368] teaches some implementations include translation of a string (e.g., including natural language text) into a database query. For example, in order to generate a database query from a natural language question or command multiple stages of transformation may be implemented. The following diagram describes an example workflow for query translation. Paragraph Number [0500] teaches given a finite state machine (FSM) G which represents the underlying query grammar of a database syntax and a string (e.g., a natural language string) from a user, extract a query graph S from the finite state machine G consisting of tokens matched to fragments (e.g., words or sequences of words) of the string (e.g., a natural language string) from a user. The query graph S may have nodes corresponding to the words in the user string and directed edges which are derived from the finite state machine G. In some implementations, the query graph S may be used to find a desired (e.g., an optimal) arrangement of tokens (e.g., corresponding to user words) which are compatible with the underlying query grammar by first removing cycles in the query graph using a greedy heuristic (e.g., the Eades algorithm, described in Eades, Peter, et al., “A Fast & Effective Heuristic for the Feedback Arc Set Problem,” Information Processing Letters, Volume 47, Issue 6, 18 Oct. 1993, pp. 319-323) and then finding a topological sort of the nodes in S on which a modified Dijkstra algorithm is applied to find the sequence of words (i.e., a graph tour T where each node is visited exactly once) with the maximum score).
and a request that the ...natural language model (Paragraph Number [0257] teaches the technique 700 includes receiving 710, via a user interface (e.g., a webpage), an indication that a string entered via the user interface matches a database query. In some implementations, the indication includes receiving the string via the user interface in response to a prompt presented in the user interface, wherein the prompt requested a natural language translation of the database query. Paragraph Number [0271] teaches there are several sources from which inferences about the dataset can be derived. For example, the set of sources may include: (1.) Refinements: The refinements can come from different sources, such as, (a) natural language string to database query translation refinements (e.g., captured through interactions with the like icon 170, or through answers to questions posed to the user in a prompt of the user interface)).
Yadav teaches determining metrics in a data model by analyzing a causal graph through application of a natural language model but does not explicitly teach determining causal relationships for inefficiencies as described by the following citations from Saha:
wherein the features include representations of time spent in various states of the process (Paragraph Number [0033] teaches diagram 400 shows the ICM pipeline over the repository of PRB documents, serving as an isolated Incident Search tool specialized for RCA. An example use case starting with detection of an ongoing incident and its symptom through time-series analysis and rule-based workflows. This auto-triggers the Incident Search and Retrieval based RCA for the query symptom and outputs an auto-generated Incident Report consisting of i) detected symptom ii) relevant past incidents matching the symptom iii) distribution of the most likely root causes and remedial actions to temporarily resolve the issue. In some embodiments, an incident report may be generated for the anomalous incident listing some or all of the retrieved root causes as the root causes of the anomalous incident. Paragraph Number [0037] teaches a rule-based symptom extraction module 309a may extract the generic symptom indicating the incident (e.g., connpool) from the PRB Subject, by removing specific Host Machine details. At inference time, symptom is detected for new incidents through automated workflows for analyzing key metrics (e.g., CPU or DB). Paragraph Number [0079] teaches the input 1640 can be an indication of the occurrence of an incident. For example, a time series analysis of an IT system such as a cloud service may indicate an anomalous incident, an example of which for a cloud service includes but is not limited to average page time (APT) that is high. In such cases, the input 1640 can be an anomalous incident detection report including descriptions (e.g., symptoms, etc.) of the anomalous incident. In such embodiments, the output 1650 may include an incident report automatically generated based on the anomalous incident detection report and the causal knowledge graph).
causalities between features in the causal graph (Paragraph Number [0047] teaches a simplified diagram of a method 400 for generating a causal knowledge graph, according to some embodiments. One or more of the processes of method 400 may be implemented, at least in part, in the form of executable code stored on non-transitory, tangible, machine-readable media that when run by one or more processors may cause the one or more processors to perform one or more of the processes. In some embodiments, method 400 corresponds to the operation of RCA module 130 (FIG. 1) to perform the task of generating the causal knowledge graph for root cause analysis. As illustrated, the method 400 includes a number of enumerated steps, but aspects of the method 400 may include additional steps before, after, and in between the enumerated steps. In some respects, one or more of the enumerated steps may be omitted or performed in a different order).
identify inefficiencies in the process (Paragraph Number [0024] teaches the statistics of the original PRB documents as well as the extracted information is shown in FIG. 6. In other words, when a new incident is detected, the RCA analysis would often need to repeat the processes 102-112 to identify the root cause, which largely compromise the system efficiency. Paragraph Number [0028] teaches a block diagram illustrating a retrieval-based RCA pipeline 200 using PRB, according to embodiments described herein. In view of a lack of automated RCA pipeline that streamlines the RCA process, an AI-driven pipeline 200 of ICM to extract crisp causal information from the unstructured PRB documents (e.g., the highlighted snippets in FIG. 1) and construct a causal knowledge graph from incident symptoms, root causes and resolutions. The pipeline 200 includes neural natural language processing, information extraction and knowledge mining components. The core of ICM uses rich distributional semantics of natural language to compactly represent prior knowledge and efficiently retrieve and reuse the appropriate information from them to avoid the cold-start problem when investigating repeating or similar issues).
obtaining, from the generative natural language model, indications of an inefficiency in the process based on the prompt. (Paragraph Number [0024] teaches the statistics of the original PRB documents as well as the extracted information is shown in FIG. 6. In other words, when a new incident is detected, the RCA analysis would often need to repeat the processes 102-112 to identify the root cause, which largely compromise the system efficiency. Paragraph Number [0028] teaches a block diagram illustrating a retrieval-based RCA pipeline 200 using PRB, according to embodiments described herein. In view of a lack of automated RCA pipeline that streamlines the RCA process, an AI-driven pipeline 200 of ICM to extract crisp causal information from the unstructured PRB documents (e.g., the highlighted snippets in FIG. 1) and construct a causal knowledge graph from incident symptoms, root causes and resolutions. The pipeline 200 includes neural natural language processing, information extraction and knowledge mining components. The core of ICM uses rich distributional semantics of natural language to compactly represent prior knowledge and efficiently retrieve and reuse the appropriate information from them to avoid the cold-start problem when investigating repeating or similar issues).
wherein the inefficiency comprises cycle traversals of the process (Paragraph Number [0026] teaches an incident is repeated if it has similar symptom, root cause and resolution as any past incident. For example, the extent of repetition may be qualitatively defined as the maximum obtainable Word-Overlap of the concatenation of these three fields, when compared with all past incidents. Historical data shows that over a timeline of few years, the quarterly count of all and various degrees of repeating incidents, showing that the latter consistently persists throughout the period. The distribution of incident severity is quite similar across repeating and non-repeating incidents, thus indicating that repeating incidents typically need as much attention as the non-repeating ones. The distribution of the incident resolution time may also be quite similar across repeating and non-repeating incidents, due to the lack of a framework to reuse knowledge from past investigations. Especially with many high-stake recurring incidents, AI-driven pipelines become essential to extract and represent the RCA knowledge embedded in PRBs. Paragraph Number [0028] teaches a block diagram illustrating a retrieval-based RCA pipeline 200 using PRB, according to embodiments described herein. In view of a lack of automated RCA pipeline that streamlines the RCA process, an AI-driven pipeline 200 of ICM to extract crisp causal information from the unstructured PRB documents (e.g., the highlighted snippets in FIG. 1) and construct a causal knowledge graph from incident symptoms, root causes and resolutions. The pipeline 200 includes neural natural language processing, information extraction and knowledge mining components. The core of ICM uses rich distributional semantics of natural language to compactly represent prior knowledge and efficiently retrieve and reuse the appropriate information from them to avoid the cold-start problem when investigating repeating or similar issues).
Both Yadav and Saha are directed to natural language modelling. Yadav discloses determining metrics in a data model by analyzing a causal graph through application of a natural language model. Saha improves upon Yadav by disclosing determining causal relationships for inefficiencies. One of ordinary skill in the art would be motivated to further include determining causal relationships for inefficiencies, to efficiently utilize relationships in a causal graph to determine where changes can be made in a process to increase effectiveness and efficiencies in a process. Accordingly, 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 and method of determining metrics in a data model by analyzing a causal graph through application of a natural language model in Yadav to further utilize determining causal relationships for inefficiencies as disclosed in Saha, since the claimed invention is merely a combination of old elements, and in combination each element merely would have performed the same function as it did separately, and one of ordinary skill in the art would have recognized that the results of the combination were predictable.
Yadav teaches determining metrics in a data model by analyzing a causal graph through application of a natural language model but does not explicitly teach determining the specific efficiency as a threshold of limits or time as described by the following citations from Park:
in response to receiving the indications of the inefficiency in the process, automatically modifying a type or amount of hardware or software that performs the process. (Paragraph Number [0073] teaches it should be appreciated that the cloud-based platform 20 discussed above provides an example architecture that may utilize NLU technologies. In particular, the cloud-based platform 20 may include or store a large corpus of source data that can be mined, to facilitate the generation of a number of outputs, including an intent/entity model. For example, the cloud-based platform 20 may include ticketing source data having requests for changes or repairs to particular systems, dialog between the requester and a service technician or an administrator attempting to address an issue, a description of how the ticket was eventually resolved, and so forth. Then, the generated intent/entity model can serve as a basis for classifying intents in future requests, and can be used to generate and improve a conversational model to support a virtual agent that can automatically address future issues within the cloud-based platform 20 based on natural language requests from users. As such, in certain embodiments described herein, the disclosed agent automation framework is incorporated into the cloud-based platform 20, while in other embodiments, the agent automation framework may be hosted and executed (separately from the cloud-based platform 20) by a suitable system that is communicatively coupled to the cloud-based platform 20 to process utterances, as discussed below).
Both the combination of Yadav and Saha and Park are directed to natural language modelling. The combination of Yadav and Saha discloses determining metrics in a data model by analyzing a causal graph through application of a natural language model. Park improves upon the combination of Yadav and Saha by disclosing determining the specific efficiency as a threshold of limits or time. One of ordinary skill in the art would be motivated to further include determining the specific efficiency as a threshold of limits or time, to efficiently determine specific forms of efficiency that are particular to the situation needed. Accordingly, 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 and method of determining metrics in a data model by analyzing a causal graph through application of a natural language model in the combination of Yadav and Saha to further utilize determining the specific efficiency as a threshold of limits or time as disclosed in Park, since the claimed invention is merely a combination of old elements, and in combination each element merely would have performed the same function as it did separately, and one of ordinary skill in the art would have recognized that the results of the combination were predictable.
Yadav teaches determining metrics in a data model by analyzing a causal graph through application of a natural language model but does not explicitly teach utilizing a generative natural language model as described by the following citations from Boxwell:
generative natural language model (Paragraph Number [0052] teaches during a training of the QA supplement system 120, each edge of the knowledge graph stored in the QA element data structure 126 is analyzed by a Generative Language Model (GLM) engine 129 to identify relationships between the linked entities and to train a corresponding generative language model 132 to generate one or more natural language passages representing the relationships between the syntactic entities corresponding to a particular edge of the analyzed knowledge graph. Advantageously, as noted above, generative language model 132 may employ an n-best generation scheme described below).
Both the combination of Yadav, Saha, and Park and Boxwell are directed to natural language modelling. The combination of Yadav, Saha, and Park discloses determining metrics in a data model by analyzing a causal graph through application of a natural language model. Boxwell improves upon the combination of Yadav, Saha, and Park by disclosing utilizing a generative natural language model. One of ordinary skill in the art would be motivated to further include utilizing a generative natural language model, to efficiently identify relationships between the linked entities and to train a corresponding generative language model to generate one or more natural language passages representing the relationships. Accordingly, 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 and method of determining metrics in a data model by analyzing a causal graph through application of a natural language model in the combination of Yadav, Saha, and Park to further utilize a generative natural language model as disclosed in Boxwell, since the claimed invention is merely a combination of old elements, and in combination each element merely would have performed the same function as it did separately, and one of ordinary skill in the art would have recognized that the results of the combination were predictable.
As per claim 15, Yadav teaches:
A non-transitory computer-readable medium, having stored thereon program instructions that, upon execution by a computing system, cause the computing system to perform operations comprising (Paragraph Number [0436] teaches the user device 1820 may be a computing device, such as the computing device 1900 shown in FIG. 19. Although one user device 1820 is shown for simplicity, multiple user devices may be used. A user may use the user device 1820 to access the database analysis server 1830. The user device 1820 may comprise a personal computer, computer terminal, mobile device, smart phone, electronic notebook, or the like, or any combination thereof. The user device 1820 may communicate with the database analysis server 1830 via an electronic communication medium 1822, which may be a wired or wireless electronic communication medium. For example, the electronic communication medium 1822 may include a LAN, a WAN, a fiber channel network, the Internet, or a combination thereof).
The remainer of the claim limitations are substantially similar to those found in claim 1 and are rejected for the same reasons put forth in regard to claim 1.
As per claim 20, Yadav teaches:
A system comprising: one or more processors; and memory, containing program instructions that, upon execution by the one or more processors, cause the system to perform operations comprising (Paragraph Number [0436] teaches the user device 1820 may be a computing device, such as the computing device 1900 shown in FIG. 19. Although one user device 1820 is shown for simplicity, multiple user devices may be used. A user may use the user device 1820 to access the database analysis server 1830. The user device 1820 may comprise a personal computer, computer terminal, mobile device, smart phone, electronic notebook, or the like, or any combination thereof. The user device 1820 may communicate with the database analysis server 1830 via an electronic communication medium 1822, which may be a wired or wireless electronic communication medium. For example, the electronic communication medium 1822 may include a LAN, a WAN, a fiber channel network, the Internet, or a combination thereof).
The remainer of the claim limitations are substantially similar to those found in claim 1 and are rejected for the same reasons put forth in regard to claim 1.
As per claim 2, the combination of Yadav, Saha, Park, and Boxwell teaches each of the limitations of claim 1.
Yadav teaches determining inefficiencies in a data model by analyzing a causal graph through application of a natural language model but does not explicitly teach determining causal relationships for inefficiencies as described by the following citations from Saha:
wherein the process is an incident management workflow (Paragraph Number [0029] teaches anomaly incident detection 202 may be performed through various multivariate time-series analysis 203 of the key performance indices (e.g., APT). At stage 204, different hand-crafted static workflows may be auto-triggered to analyze related performance metrics via traffic/database/CPU analysis 104a-c, targeted at detecting the incident symptom 205. The generated symptom 205 is then sent to a searchable index database 219 as input query for searching the past incidents with the detected symptom description).
and wherein the event logs record changes to incidents as they progress through the incident management workflow (Paragraph Number [0032] teaches the infrastructure of the auto-pipeline 200 may yield a holistic RCA engine over multimodal multi-source data like log data, memory dumps, execution traces and time series. By unifying the causal knowledge from multiple data sources, the pipeline 200 thus can yield a richer incident representation and model cross-modal causality to potentially discover unknown root causes).
A person of ordinary skill would have been motivated to combine these references for the same reasons put forth in regard to claim 1.
As per claim 3, the combination of Yadav, Saha, Park, and Boxwell teaches each of the limitations of claim 1.
In addition, Yadav teaches:
wherein the features are represented as nodes in the causal graph (Paragraph Number [0178] teaches a probabilistic graphical model may be implemented where a node is built from each match found in the matching 510 phase. These nodes are assigned some prior probabilities based on the relative match scores. In some implementations, the scores are normalized so that they add up to 1.0 and can be treated as probabilities. For example, the probabilistic graphical model 1200 of FIG. 12 may be used for ranking 550).
As per claims 4 and 21, the combination of Yadav, Saha, Park, and Boxwell teaches each of the limitations of claims 1 and 15 respectively.
In addition, Yadav teaches:
generating the features from the static data and the dynamic data (Paragraph Number [0099] teaches a goal of the system for providing a database interface may be to, given a string (full or partial natural language question), produce the following: (1) Context sensitive suggestions; (2) Possible N translations of the question into a database query (e.g., possibly generating a formula and/or query on query workflows); (3) Confidence Score around how confident the system is that the question has properly translated to a database query; and (4) Clarifying questions that provide a way to take input from the user about what they mean. For example, the question may be “top product by profit” but the data set may not contain profit column and contain an “item” column instead. Or, the profit column may not be defined and may require someone to define it as revenue−cost. Paragraph Number [0527] teaches patterns (e.g., static patterns or dynamic patterns) may be applied to the string and/or the set of tokens to modify the query graph. The technique 2400 includes determining 2420 that the string and the set of tokens matches a pattern. For example, the set of tokens or a subset of the set of tokens may satisfy a set token type constraints associated with (e.g., stored with) a pattern. For example, the string fragments of the string matched to tokens of the set of tokens may satisfy a set of text constraints (e.g., a regular expression) associated with the pattern).
As per claims 5 and 22, the combination of Yadav, Saha, Park, and Boxwell teaches each of the limitations of claims 1 and 15.
In addition, Yadav teaches:
wherein the features include representations of: classes or categories of the work items, whether particular types of database entries are attached to the work items, or cycles exhibited by the work items as they progress through the process. (Paragraph Number [0174] teaches at the match level: Matches are first sorted by their type; that is exact, prefix, suffix, substring, approximate_prefix, approximate and within each type, sorted by their score. In some implementations, the match type may be a categorical feature and a weight associated with a match type may be learned independently. For example, the match type may be weighted as a feature. (Examiner asserts that this section teaches at least the alternative of particular types of database entries are attached to the work items)).
As per claims 6 and 16, the combination of Yadav, Saha, Park, and Boxwell teaches each of the limitations of claims 1 and 15 respectively.
Yadav teaches determining inefficiencies in a data model by analyzing a causal graph through application of a natural language model but does not explicitly teach determining causal relationships for inefficiencies as described by the following citations from Saha:
wherein generating the causal graph comprises: classifying at least some of the features as either coarse-grained because their values were known when an associated work item was created, fine-grained because their values became known during performance of the process on the associated work item, or target because their values are observable outcomes of the process (Paragraph Number [0028] teaches a block diagram illustrating a retrieval-based RCA pipeline 200 using PRB, according to embodiments described herein. In view of a lack of automated RCA pipeline that streamlines the RCA process, an AI-driven pipeline 200 of ICM to extract crisp causal information from the unstructured PRB documents (e.g., the highlighted snippets in FIG. 1) and construct a causal knowledge graph from incident symptoms, root causes and resolutions. The pipeline 200 includes neural natural language processing, information extraction and knowledge mining components. The core of ICM uses rich distributional semantics of natural language to compactly represent prior knowledge and efficiently retrieve and reuse the appropriate information from them to avoid the cold-start problem when investigating repeating or similar issues. Paragraph Number [0060] teaches a few examples of the root cause and remedial actions respectively extracted from the raw Post Action Review and Immediate Resolution data field of various past incidents. Some of the salient observations about the model predictions are i) the unsupervised QA models are able to extract relevant root cause or resolution spans, despite the long unstructured nature of the document having abundant unseen technical jargon ii) the model does not show any undesirable stark bias towards passage location in span selection iii) the selected spans are well-formed crisp phrases that are short yet self-explanatory. In fact, this performance is particularly appreciable as the use case only targets “cause/effect” seeking questions that rarely occur in the pretraining QA datasets. (Examiner asserts that this section teaches at least the alternative of target because their values are observable outcomes of the process)).
A person of ordinary skill would have been motivated to combine these references for the same reasons put forth in regard to claim 1.
As per claims 7, and 17, the combination of Yadav, Saha, Park, and Boxwell teaches each of the limitations of claims 1 and 6 and 15 and 16 respectively.
Yadav teaches determining inefficiencies in a data model by analyzing a causal graph through application of a natural language model but does not explicitly teach determining causal relationships for inefficiencies as described by the following citations from Saha:
wherein generating the causal graph further comprises: applying prior constraints to structure of the causal graph (Paragraph Number [0014] teaches artificial intelligence (AI) models-powered methods and systems for the generation a causal knowledge graph for root cause analysis of incidents disrupting cloud services, and the generation of an incident report of a service disrupting incident based on said causal knowledge graph. [0046] Thus, the retrieval-based RCA may generate a query specific causal knowledge subgraph 210, which gives an interactive visualization of subgraph over the symptoms, root causes and resolutions associated with the top-K retrieved search results. With this, users can get an extensive global view of the causal structure underlying the past similar incidents and arbitrarily navigate to other related nodes in the overall graph. For example, the subgraph 210 may be used to generate an output of a distribution of the suggested resolutions 322 and the detected root causes 324).
wherein the prior constraints include: fine-grained features not causing coarse-grained features, the coarse-grained features not causing other coarse-grained features, and target features not causing either the fine-grained features or the coarse-grained features (Paragraph Number [0028] teaches a block diagram illustrating a retrieval-based RCA pipeline 200 using PRB, according to embodiments described herein. In view of a lack of automated RCA pipeline that streamlines the RCA process, an AI-driven pipeline 200 of ICM to extract crisp causal information from the unstructured PRB documents (e.g., the highlighted snippets in FIG. 1) and construct a causal knowledge graph from incident symptoms, root causes and resolutions. The pipeline 200 includes neural natural language processing, information extraction and knowledge mining components. The core of ICM uses rich distributional semantics of natural language to compactly represent prior knowledge and efficiently retrieve and reuse the appropriate information from them to avoid the cold-start problem when investigating repeating or similar issues. Paragraph Number [0060] teaches a few examples of the root cause and remedial actions respectively extracted from the raw Post Action Review and Immediate Resolution data field of various past incidents. Some of the salient observations about the model predictions are i) the unsupervised QA models are able to extract relevant root cause or resolution spans, despite the long unstructured nature of the document having abundant unseen technical jargon ii) the model does not show any undesirable stark bias towards passage location in span selection iii) the selected spans are well-formed crisp phrases that are short yet self-explanatory. In fact, this performance is particularly appreciable as the use case only targets “cause/effect” seeking questions that rarely occur in the pretraining QA datasets. (Examiner asserts that this section teaches at least the alternative of target because their values are observable outcomes of the process)).
A person of ordinary skill would have been motivated to combine these references for the same reasons put forth in regard to claim 1.
As per claim 8, the combination of Yadav, Saha, Park, and Boxwell teaches each of the limitations of claim 1.
In addition, Yadav teaches:
wherein generating the causal graph comprises: applying expert-derived constraints to structure of the causal graph (Paragraph Number [0500] teaches given a finite state machine (FSM) G which represents the underlying query grammar of a database syntax and a string (e.g., a natural language string) from a user, extract a query graph S from the finite state machine G consisting of tokens matched to fragments (e.g., words or sequences of words) of the string (e.g., a natural language string) from a user. The query graph S may have nodes corresponding to the words in the user string and directed edges which are derived from the finite state machine G. In some implementations, the query graph S may be used to find a desired (e.g., an optimal) arrangement of tokens (e.g., corresponding to user words) which are compatible with the underlying query grammar by first removing cycles in the query graph using a greedy heuristic (e.g., the Eades algorithm, described in Eades, Peter, et al., “A Fast & Effective Heuristic for the Feedback Arc Set Problem,” Information Processing Letters, Volume 47, Issue 6, 18 Oct. 1993, pp. 319-323) and then finding a topological sort of the nodes in S on which a modified Dijkstra algorithm is applied to find the sequence of words (i.e., a graph tour T where each node is visited exactly once) with the maximum score).
As per claim 9, the combination of Yadav, Saha, Park, and Boxwell teaches each of the limitations of claim 1.
In addition, Yadav teaches:
wherein the dependencies are conditional probabilities (Paragraph Number [0381] teaches this probabilistic graphical model approach may be used to build a node from each match that we find in the matching phase of a database query determination for a string. These nodes are assigned some prior probabilities based on the relative match scores. In some implementations, scores are normalized so that they add up to 1.0 and they may be treated as probabilities. Then edges may be added between the nodes. For example, an edge may be added from node S to node T iff, the input text that matches T immediately comes after the input text that matches S. In some implementations, conditional probabilities may be assigned to the edges representing state transitions, which says that given that we are at State S, what is the probability that the next node will be T. So, all the probabilities across all nodes going out from S may add up to 1).
As per claim 10, the combination of Yadav, Saha, Park, and Boxwell teaches each of the limitations of claim 1.
In addition, Yadav teaches:
performing a causal inference technique on the causal graph (Paragraph Number [0303] teaches a flowchart illustrating an example of a technique 900 for learning inferences from a string and an associated query. The technique 900 includes extracting 910 an inference pattern from a string and a database query; classifying 920 the inference pattern to determine an inference type; determining 930 a resolution, wherein the resolution includes one or more tokens of a database syntax; identifying 940 a set of context features for the inference pattern, wherein the set of context features includes words from the string and tokens from the database query; determining 950 a confidence score based on the set of context features; and storing 960 an inference record in an inference store, wherein the inference record includes the set of context features, the resolution, and the confidence score. For example, the technique 900 may be implemented by the database analysis server 1830 of FIG. 18. For example, the technique 900 may be implemented using the computing device 1900 of FIG. 19).
Yadav teaches determining inefficiencies in a data model by analyzing a causal graph through application of a natural language model but does not explicitly teach determining causal relationships for inefficiencies as described by the following citations from Saha:
to simulate effects of making changes to the process (Paragraph Number [0033] teaches an example block diagram 300 illustrating a framework for incident causation mining pipeline with downstream incident search and retrieval-based RCA over PRB data, according to one embodiment described herein. Diagram 400 shows the ICM pipeline over the repository of PRB documents, serving as an isolated Incident Search tool specialized for RCA. An example use case starting with detection of an ongoing incident and its symptom through time-series analysis and rule-based workflows. This auto-triggers the Incident Search and Retrieval based RCA for the query symptom and outputs an auto-generated Incident Report consisting of i) detected symptom ii) relevant past incidents matching the symptom iii) distribution of the most likely root causes and remedial actions to temporarily resolve the issue. In some embodiments, an incident report may be generated for the anomalous incident listing some or all of the retrieved root causes as the root causes of the anomalous incident).
A person of ordinary skill would have been motivated to combine these references for the same reasons put forth in regard to claim 1.
As per claim 12, the combination of Yadav, Saha, Park, and Boxwell teaches each of the limitations of claim 1.
Yadav teaches determining inefficiencies in a data model by analyzing a causal graph through application of a natural language model but does not explicitly teach determining causal relationships for inefficiencies as described by the following citations from Saha:
wherein the natural language model is a large language model (Paragraph Number [0042] teaches the generated document level information from modules 305, 307, 309 (including 309a-c) may then be sent to search index database 219. When a new incident occurs, a core Incident Management task is to efficiently search over the past related incidents and promptly detect the likely root causes based on the past similar investigations. Hence, a specialized Neural Search and Retrieval system 315 is built over PRB data, that support any open-ended Natural Language Query. Neural search functions by representing documents as dense, high-dimensional real-valued vectors and constructing a searchable index over these representations, which will allow fast retrieval of the most relevant documents for any open-ended query. Large-scale pretrained neural language models make it possible to represent general linguistic semantics and match domain specific text even without any in-domain training).
A person of ordinary skill would have been motivated to combine these references for the same reasons put forth in regard to claim 1.
As per claims 13 and 18, the combination of Yadav, Saha, Park, and Boxwell teaches each of the limitations of claims 1 and 15 respectively.
Yadav teaches determining metrics in a data model by analyzing a causal graph through application of a natural language model but does not explicitly teach determining the specific efficiency as a threshold of limits or time as described by the following citations from Park:
wherein the inefficiency in the process is an outcome of the process taking more than a threshold amount of time to achieve, or time spent in a state of the process being more than a further threshold amount of time. (Paragraph Number [0199] teaches the process 1300 continues with the scoring weight optimization subsystem 1092 deciding whether the current value of the objective function is greater than or equal to a predefined threshold or if any limits have been reached (decision block 1314). For example, the scoring weight optimization subsystem 1092 may retrieve threshold values and/or limit values from a configuration of the scoring weight optimization subsystem 1092 or the lookup source system 1016, or may receive these values as user-provided inputs to the process 1300 along with the training data 1302. The threshold value dictates the value of the objective function that should be reached or exceeded to indicate that the scoring weight values have been sufficiently optimized. In certain embodiments, a default value may be used (e.g., 90%). The limit values may be other constraints applied to the process 1300, such as a time limit, a memory size limit, a number of iterations limit, and so forth. (Examiner asserts that this section teaches at least the alternative of taking more than a threshold amount of time to achieve)).
A person of ordinary skill would have been motivated to combine these references for the same reasons put forth in regard to claim 1.
Claim 11 is rejected under 35 U.S.C. 103 as being unpatentable over U.S. Patent Application Publication Number 2021/0019309 to Yadav et al. (hereafter referred to as Yadav) in view of U.S. Patent Application Publication Number 2022/0358005 to Saha et al. (hereafter referred to as Saha) in further view of U.S. Patent Application Publication Number 2022/0237383 to Park et al. (hereafter referred to as Park), in even further view of U.S. Patent Application Publication Number 2020/0218988 to Boxwell et al. (hereafter referred to as Boxwell) and in even further view of U.S. Patent Application Publication Number 2019/0236464 to Feinson et al. (hereafter referred to as Feinson).
As per claim 11, the combination of Yadav, Saha, Park, and Boxwell teaches each of the limitations of claim 10.
Yadav teaches determining metrics in a data model by analyzing a causal graph through application of a natural language model but does not explicitly teach determining causal relationships using do-calculus as described by the following citations from Feinson:
wherein the causal inference technique comprises do-calculus (Paragraph Number [0175] teaches one or more databases (or portions thereof) may include one or more graph databases (e.g., a directed graph concept and data structure). In some embodiments, a graph associated with the AI entity (described herein) may include information from knowledge database 134 and affective concepts database 138 (and/or growth/decay factor database 136 or other databases), and the AI entity may query the graph (also referred to herein as “the ontology-affect graph”) to process inputs, generate responses, or perform other operations. In some embodiments, ontological categories and entries (e.g., from knowledge database 134 or other sources) may be grounded by semantically meaningful visceral and affect information. In some embodiments, the graph may additionally be augmented with probabilistic information (e.g., similar to probabilistic information provided in a Bayesian factor graph) as well as casual information (e.g., via Judea Perl's do calculus and/or operator)).
Both the combination of Yadav, Saha, Park, and Boxwell and Feinson are directed to natural language modelling. The combination of Yadav, Saha, Park, and Boxwell discloses determining metrics in a data model by analyzing a causal graph through application of a natural language model. Feinson improves upon the combination of Yadav, Saha, Park, and Boxwell by disclosing determining causal relationships using do-calculus. One of ordinary skill in the art would be motivated to further include determining causal relationships using do-calculus, to efficiently determine both direct and indirect effects from the causal graph. Accordingly, 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 and method of determining metrics in a data model by analyzing a causal graph through application of a natural language model in the combination of Yadav, Saha, Park, and Boxwell to further utilize determining causal relationships using do-calculus as disclosed in Feinson, since the claimed invention is merely a combination of old elements, and in combination each element merely would have performed the same function as it did separately, and one of ordinary skill in the art would have recognized that the results of the combination were predictable.
Response to Arguments
Applicant’s arguments filed 5/4/2026 have been fully considered but they are not fully persuasive.
Applicant argues that the previously cited reference does not teach the newly amended portions including the new limitations recited by the independent claims. (See Applicant’s Remarks, 5/4/2026, pgs. 12-13). Examiner respectfully disagrees. Examiner notes that new citations from the previously cited references have been applied to the newly presented claim limitations as indicated in the above in the new 35 USC 103 rejection. Additionally, the new Boxwell reference was added. Examiner has added and emphasized specific portions of the Yadav and Saha references to read on the new independent claims. As such, Applicant’s arguments directed towards the previous rejection are moot. In response to Applicant’s arguments, Examiner directs Applicant to review the new citations and explanations provided in the new 35 USC 103 rejection presented above.
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to MATTHEW H. DIVELBISS whose telephone number is (571) 270-0166. The fax phone number is 571-483-7110. The examiner can normally be reached on M-Th, 7:00 - 5:00. 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, Jerry O'Connor can be reached on (571) 272-6787.
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).
/M.H.D/Examiner, Art Unit 3624
/Jerry O'Connor/Supervisory Patent Examiner,Group Art Unit 3624