DETAILED ACTION
Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Response to Amendment/Arguments
1. Amendment to claims 2 and 14 overcomes the rejection under 35 U.S.C. 112(b).
2. Applicant’s argument filed on January 15, 2026 regarding the rejection under 35 U.S.C. 101 have been fully considered but are not persuasive. Applicant’s arguments presented on pages 8-9 of the Remarks have been fully considered but are not persuasive. Applicant asserts that amended claim 1 is not directed to an abstract idea because it recites a convolutional neural network, tokenized natural language processing, and operations that allegedly cannot be performed in the human mind, and further asserts that the claim is directed to a specific improvement of computer functionality. However, Applicant’s arguments are not commensurate with the scope of the claims.
Under the broadest reasonable interpretation, the claim recites mental processes, supported by mathematical calculations. As set forth in the rejection, the claim includes limitations directed to representing a query, comparing the representation to stored information, computing a distance in a multi-dimensional space, and determining whether the query corresponds to a stored prompt based on that comparison. These steps constitute evaluations, comparisons, and judgements of information, as well as mathematical calculations (e.g., determining a distance value), which are types of mental processes. These mathematical operations, including vectorization and distance computation in a multi-dimensional space, fall within the “mathematical concepts” grouping identified in MPEP 2106.04(a)(2)(I). Such operations can be performed in the human mind, or with the aid of basic computational tools such as a calculator and pen and paper. See MPEP 2106.04(a)(2)(III).
Applicant’s argument that the claimed operations cannot be performed in the human mind because they are implemented using a convolutional neural network is not persuasive. The determination whether a claim recites a mental process focuses on the underlying concept recited in the claim, not the particular tool used to perform it. As explained in MPEP 2106.04(a)(2)(III)(C), mental processes include concepts that can be performed in the human mind, and a claim is not rendered non-abstract merely because the steps are performed by a computer. Hence, the claimed steps of representing information, comparing representations, computing similarity, and determining correspondence are types of analysis that can be performed conceptually in the human mind, even if carried out using a computer-based tool. The recitation of a convolutional neural network therefore does not change the nature of these operations, but merely implements the mental process using a computer.
Applicant further argues that a convolutional neural network is a specific technological tool that cannot exist or function outside of a computer system. This argument is not persuasive because the analysis focuses on whether the claimed concept can be performed conceptually, not whether the specific implementation requires a computer. The claim recites the convolutional neural network at a high level of generality and does not include any specific architectural details or technological improvements to the functioning of the neural network or the computer itself. Instead, the convolutional neural network is used as a tool to perform the abstract mental process of evaluating and comparing information.
Applicant’s assertions regarding tokenization, embeddings, and multi-dimensional vector operations are likewise not persuasive. These features describe mathematical representations and calculations performed on data, including vectorization and distance computations, which support the underlying mental process of comparing and evaluating information. The fact that such operations are implemented using computer-based techniques does not remove them from the mental process grouping, as they still amount to comparing and evaluating information using basic computational tools.
Accordingly, the amended claim recites mental processes, supported by mathematical calculations, and thus is directed to an abstract idea.
Applicant’s arguments presented on pages 9-10 of the Remarks with respect to the Step 2A, Prong Two have been fully considered but are not persuasive. Applicant asserts that the amended claim integrates the alleged abstract idea into a practical application by improving the operation of a contact-center computer system, reducing processing load and latency, and providing a specific technological solution using a convolutional neural network. However, Applicant’s arguments are not commensurate with the scope of the claims.
Under Step 2A, Prong Two, the claimed invention does not integrate the abstract idea into a practical application. The claim recites determining whether a query corresponds to a stored prompt, computing a distance, and providing a response or routing based on the determination. These steps amount to analyzing information and making a decision, which is the abstract idea itself. The additional elements, including the recitation of a “semantic engine comprising a convolutional neural network,” merely use a generic machine learning model as a tool to perform the abstract idea and does not improve any meaningful limit on the claim.
Applicant’s argument that the claim improves contact-center performance (e.g., reduced latency or processing load) is not persuasive because such improvements are not recited in the claim and instead relate only to an alleged improvement in results. The claim does not recite any special mechanism by which the convolutional neural network or the system improves functionality computer functionality. Rather, the claim is result-oriented, requiring only that a query be processed and a response be provided or routed based on a comparison, without reciting how the computer or model is technically improved.
Furthermore, the recited contact-center environment constitutes a field-of-use limitation and does not integrate the abstract idea into a practical application. Limiting the use of an abstract idea to a practical technological environment, such as a contact-center system, does not render the claim patent-eligible.
The recitation of a convolutional neural network likewise does not integrate the abstract idea into a practical application. The claims do not recite any specific architecture, training technique, or improvement to the operation of the neural network itself. Instead, the neural network is invoked at a high level of generality to perform the abstract idea of comparing and evaluating information. As such, it amounts to merely using a generic computer component to perform the abstract idea, which does not constitute integration into a practical application.
Applicant’s reliance on USPTO eligibility Examples 42 and 47 is also not persuasive. Example 42 is directed to a system that provides a specific improvement in how computer systems operate, namely converting non-standardized data into a standardized format and enabling real-time sharing of updated information across multiple users in a networked environment. Example 47 similarly illustrates that merely reciting an artificial neural network to perform data analysis (e.g., detecting anomalies) does not render a claim eligible, and that eligibility is only found where the claim includes a specific improvement to the operation of a computer system.
In contrast, the present claim does not recite any specific improvement to the functioning of a computer system, neural network, or a technological process. The claim does not specify how the convolutional neural network is structured, trained, or improved, nor does it recite any particular technique for performing the vectorization or distance computation. Instead, the claim merely uses a machine learning model as a tool to compare and evaluate information and produce a result.
Accordingly, unlike the cited examples, the present claim does not integrate the abstract idea into a practical application, but instead merely applies the abstract idea using a generic computer implementation.
Accordingly, under Step 2A, Prong Two, the claim does not integrate the abstract idea into a practical application.
Applicant’s arguments directed to Step 2B have been fully considered but are not persuasive. Applicant asserts that the ordered combination of elements amount to significantly more than the alleged abstract idea because the claimed chatbot, convolutional neural network, and knowledgebase operate in a non-conventional manner. However, Applicant has not identified, and the claim does not recite, any specific arrangement or implementation that is not well-understood, routine, or conventional.
The claim recites generic components, including a chatbot, a knowledgebase, and a “semantic engine comprising a convolutional neural network,” performing their expected functions of receiving input, processing data, comparing information, and providing a response or routing decision. The use of a convolutional neural network to convert input data into vector representations and to perform similarity determinations constitutes routine data processing using machine learning techniques. The claim does not recite any specific architecture, training technique, or technical improvement to the operation of the neural network or computer system.
Further, the ordered combination of limitations does not amount to significantly more than the abstract idea because the steps follow a standard functional sequence of receiving data, processing data, comparing data, and acting on the result, which is well-understood, routine, and conventional.
Applicant’s assertion that the claimed combination is non-conventional is not supported by the claim language. The claim is result-oriented and merely describes the desired outcome of converting a query into a vector representation and using that representation to determine a response or routing, without reciting how this is achieved in a non-conventional manner. Merely applying known machine learning techniques in a particular environment, such as a contact-center system, does not amount to significantly more than the abstract idea.
Accordingly, the additional elements, considered individually and as an ordered combination, do not amount to significantly more than the abstract idea.
Applicant’s arguments regarding independent claim 6 and 13, and dependent claims 2-5, 7-12, and 14-20 have been fully considered but are not persuasive. Applicant asserts that claims 6 and 13 are patent-eligible for at least the same reasons or include additional features rendering them allowable. However, these arguments are not persuasive for the reasons set forth above with respect to claim 1.
Independent claims 6 and 13 recite limitations similar in substance to those claim 1 and therefore are directed to the same abstract idea and do not integrate the abstract idea into a practical application or amount to significantly more. The dependent claims do not recite any additional elements that would overcome the rejection under 35 U.S.C. 101, as the additional limitations likewise amount to insignificant extra-solution activity, field-of-use limitations, or the use of generic computer components performing routine functions.
Accordingly, the rejection of claims 1-20 under 35 U.S.C. 101 is maintained.
3. Applicant’s arguments filed on January 15, 2025 regarding the rejections under 35 U.S.C. 103 have been fully considered but are not persuasive. Applicant asserts that Magliozzi fails to disclose “providing,” via the chatbot, the stored response to the user device in response to determining that the query corresponds to the stored prompt automatically answering the query and preventing routing the user device to an agent device,” and argues that Magliozzi generates responses rather than retrieving stored responses and does not determine correspondence to stored prompts. However, Applicant’s arguments are not commensurate with the scope of the claims.
As set forth in the Office Action, Magliozzi expressly teaches that a database “may include a knowledgebase, with question and answer data” (paragraph [0040]), and that responses are provided to user queries based on this stored information. Under the broadest reasonable interpretation, stored question-answer pairs correspond to stored prompts and stored responses. Magliozzi further teaches that system determines whether to provide a response based on a comparison (e.g., confidence value relative to a threshold) and transmits the response to the user when the threshold is satisfied (paragraph [0107]). Under the broadest reasonable interpretation, transmitting the response to the user based on this determination corresponds to providing a stored response via a chatbot in response to determining that the query corresponds to stored information.
Magliozzi also teaches conditional routing, as it discloses that routing to an administrator occurs only when the confidence value is less than a threshold (paragraph [0108]). Thus, when the response is determined to be sufficient (i.e., the query is answerable), the chatbot provides the response without routing to the administrator. Under the broadest reasonable interpretation, the administrator corresponds to an agent device, and the disclosed conditional routing teaches preventing routing when the query is answerable.
Applicant’s arguments improperly focus on whether Magliozzi generates responses using a language model rather than retrieving pre-defined responses. However, the claims do not require any particular implementation of how the response is obtained, and under the broadest reasonable interpretation encompasses derived from stored knowledge, including question-answer data used by the system. Accordingly, Applicant’s argument improperly reads limitations into the claims that are not recited.
Additionally, Applicant’s arguments are not persuasive with respect to the combined teachings of the applied references. The rejection relies on Magliozzi for the chatbot framework, knowledgebase, and response/routing behavior, and on Zhao for computing vector representations and determining similarity using distance in a multi-dimensional space. As set forth in the Office Action, Zhao teaches determining similarity between queries using vector distance, which corresponds to determining that a query corresponds to stored information based on similarity proximity. When considered together in the manner set forth in the rejection, the references collectively teach the claimed limitations.
Applicant’s argument that Zhao does not disclose providing responses or routing behavior is not persuasive because Zhao is not relied upon for those features. Rather, Zhao is relied upon for teaching the vector-space distance computation and threshold-based similarity determination, which complements the teachings of Magliozzi.
Further Applicant’s argument regarding Zhao’s e-commerce context is not persuasive, as Zhao is relied upon for its teachings of vector-space similarity and distance computation, which are applicable regardless of a particular filed of use. Under the broadest reasonable interpretation, such teachings are not limited to any specific application domain and are properly combinable with the chatbot system of Magliozzi.
Accordingly, the references are considered together in the manner set forth in the Office Action, the combined teachings of Magliozzi and Zhao teach or suggest the claimed limitations.
Applicant’s arguments with respect to the independent claims 6 and 13 are not persuasive. Applicant asserts that these claims are allowable for similar reasons as claim 1. However, as discussed above with respect to claim 1, such arguments are not persuasive. Claims 6 and 13 are amended similarly and recite limitations commensurate in scope with claim 1, and the applied references, when considered in combination as set forth in the Office Action, teach or suggest these limitations.
Accordingly, the rejection of claims 6 and 13 under 35 U.S.C. 103 is maintained.
Applicant’s arguments with respect to claim 2 have been fully considered but are not persuasive. Applicant asserts that Venkatasubramanyam fails to disclose “generating the query comprising text by applying a speech-to-text engine to the received audio input.” However, Applicant’s arguments are not commensurate with the scope of the claims.
As set forth in the Office Action, Venkatasubramanyam expressly teaches a translate layer comprising “speech to text services” that processes input received from the user (paragraph [0075]). Venkatasubramanyam further teaches receiving a query from a user through various interfaces, including voice interfaces, and processing that input through the translate layer (paragraph [0058]). Under the broadest reasonable interpretation, converting received audio input to text using speech-to-text services corresponds to generating the query comprising text by applying a speech-to-text engine to the received audio input.
Applicant’s argument that Venkatasubramanyam does not explicitly state that generated test is a “query” is not persuasive, as the references discloses receiving user input (including voice input) and processing it into text for use by the system. Under the broadest reasonable interpretation, such processed text corresponds to the claimed query.
Accordingly, the applied references, when considered in combination as set forth in the Office Action, teach or suggest the additional limitations of claim 2. Therefore, the rejection of claim 2 under 35 U.S.C. 103 is maintained.
Applicant’s argument with respect to dependent claims 2-5, 7-12, and 14-20 have been fully considered but are not persuasive. Applicant asserts that the dependent claims are allowable for at least the same reasons as the independent claims and further recite additional features rendering them allowable independently.
However, as discussed above, the arguments with respect to the independent claims are not persuasive. With respect to the additional limitations. Applicant does not identify any specific limitation that is not taught or suggested by the applied references. As set forth in the Office Action, the additional features recited in the dependent claims are taught or suggested by the applied references, either individually or in combination.
Accordingly, the dependent claims do not recite any additional limitations that would overcome the rejection under 35 U.S.C. 103, the rejection of claims 2-5, 7-12, and 14-20 is maintained.
Accordingly, for at least the reasons set forth above, the rejections of claims 1-20 under 35 U.S.C. 103 is maintained.
Claim Rejections - 35 USC § 101
35 U.S.C. 101 reads as follows:
Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title.
Claims 1-20 are rejected under 35 U.S.C. 101 because the claimed invention is directed to a judicial exception (i.e., a law of nature, a natural phenomenon, or an abstract idea) without significantly more.
101 Subject Matter Eligibility Analysis
Step 1: Claims 1-20 are within the four statutory categories (a process, machine, manufacture or composition of matter).
Step 2A Prong One, Step 2A Prong Two, and Step 2B Analysis:
Step 2A Prong One asks if the claim recites a judicial exception (abstract idea, law of nature, or natural phenomenon). If the claim recites a judicial exception, analysis proceeds to Step 2A Prong Two, which asks if the claim recites additional elements that integrate the abstract idea into a practical application. If the claim does not integrate the judicial exception, analysis proceeds to Step 2B, which asks if the claim amounts to significantly more than the judicial exception. If the claim does not amount to significantly more than the judicial exception, the claim is not eligible subject matter under 35 U.S.C. 101.
None of the claims represent an improvement to technology.
Claims 1-5 are directed to a method consisting of a series of steps, meaning that it is directed to the statutory category of process. Claims 6-20 are directed to storage mediums, memory, and processors which are machines.
Regarding claim 1, the following claim elements are abstract ideas:
determining that the query corresponds to a stored prompt associated with a stored response in a contact center knowledgebase by (This is an abstract idea of a “mental process.” It amounts to reading a user question, comparing its contents to known prompts, and deciding that one matches – i.e., observation, comparison, and judgement that can be performed in the human mind or with pen and paper (e.g., scanning a FAQ list and selecting the most similar prompt to use its canned response. See MPEP 2106.04(a)(2)(III).):
determining that the query corresponds to a stored prompt associated with a stored response in a contact center knowledgebase by (This is an abstract idea of a “mental process.” It amounts to reading a user question, comparing its contents to known prompts, and deciding that one matches – i.e., observation, comparison, and judgement that can be performed in the human mind or with pen and paper (e.g., scanning a FAQ list and selecting the most similar prompt to use its canned response. See MPEP 2106.04(a)(2)(III).):
computing a distance in the multi-dimensional space between the input vector and a stored vector corresponding to a meaning of the stored prompt (This is an abstract idea of a mental process and mathematical concept. The limitation recites performing mathematical calculation to determine a distance between two vectors, which constitutes a mathematical operation. Further, it involves comparing representations of information to determine similarity, which can be performed in the human mind with the aid of computational tools such a calculator and pen and paper. For example, a person could assign values to representations of two phrases and calculate or estimate how close those values are to determine similarity. Since it involves mathematical calculations and mental evaluation of similarity, it falls within the mental process and mathematical concept groupings of abstract ideas.),
determining that the distance is less than or equal to a threshold distance (This recites both a mathematical concept – computing a numerical distance and comparing a cutoff – and a mental process – observing the result and judging pass/fail. A person could list coordinates for the query and the prompt, compute a Euclidean or cosine distance with pen-and-paper or basic scientific calculator/spreadsheet, then check whether the value is at or below a chosen threshold. Such calculation and comparison can be performed in the mind or with simple tools. See MPEP 2106.04(a)(2)(I) and MPEP 2106.04(a)(2)(III).);
determining that the query corresponds to the stored prompt (This is an abstract idea of a mental process. It involves comparing information and determining whether two items correspond, which can be performed in the human mind with observation and judgement.)
The following claim elements are additional elements which, taken alone or in combination with the other elements, do not integrate the judicial exception into a practical application nor amount to significantly more than the judicial exception:
receiving, during a contact center engagement and via a chat bot of a contact center server, a query from a user device (This limitation amounts to adding insignificant extra-solution activity to the judicial exception, as discussed in MPEP 2106.05(g). Receiving a query (i.e., mere data gathering in conjunction with an abstract idea) is directed to a well understood routine conventional activity of data transmission see MPEP 2106.05(d)(II)(i).);
providing, via the chat bot, the stored response to the user device… providing, via the chat bot, the stored response to the user device in response to… automatically answering the query and preventing routing the user device to an agent device when the query is answerable from the knowledge base. (The step of “providing” is merely a generic computer function that amounts to transmitting over a network between conventional components, which has been recognized by the courts as well-understood, routine, and conventional activity/ See MPEP 2106.05(d)(II)(i). Such transmission is insignificant extra-solution activity that does not meaningfully limit or integrate the abstract idea. See MPEP 2106.05(g).).
converting, using a semantic engine comprising a convolutional neural network that receives an input comprising at least one of a word, a sub-word, or a punctuation mark of the query, the query to an input vector in a multi-dimensional space, wherein the input vector represents a meaning of the query, and wherein queries with similar meanings map to input vectors that are proximate in the multi-dimensional space (This limitation merely uses a generic machine learning model as a tool to perform the abstract idea, and thus amounts to insignificant extra solution activity. The convolutional neural network is recited at a high level of generality and performs data representation and transformation without any specific technological improvement to the functioning of the neural network or the computer. See MPEP 2106.05(f) and 2106.05(g).),
Regarding claim 2, the rejection of claim 1 is incorporated herein. Further, claim 2 recites the following additional elements, which, taken alone or in combination with the other elements, do not integrate the judicial exception into a practical application nor amount to significantly more than the judicial exception:
receiving an audio input from the user device (This limitation amounts to adding insignificant extra-solution activity to the judicial exception, as discussed in MPEP 2106.05(g). Receiving a query (i.e., mere data gathering in conjunction with an abstract idea) is directed to a well understood routine conventional activity of data transmission see MPEP 2106.05(d)(II)(i).);
generating the query comprising text by applying a speech-to-text engine to the received audio input (This is merely an instruction to apply the abstract idea using generic computer components and does not provide a meaningful limitation. See MPEP 2106.05(f).)
Regarding claim 3, the rejection of claim 1 is incorporated herein. Further, claim 3 recites the following additional elements, which, taken alone or in combination with the other elements, do not integrate the judicial exception into a practical application nor amount to significantly more than the judicial exception:
prompting a user of the user device to specify a reason for the contact center engagement (This is merely an instruction to apply the abstract idea using generic computer components and does not provide a meaningful limitation. See MPEP 2106.05(f).);
Regarding claim 4, the rejection of claim 1 is incorporated herein. Further, claim 4 recites the following additional elements, which, taken alone or in combination with the other elements, do not integrate the judicial exception into a practical application nor amount to significantly more than the judicial exception:
wherein the chat bot is configured, using a natural language processing engine, to perform audio communication in a spoken language (This is merely an instruction to apply the abstract idea using generic computer components and amounts to adding insignificant extra-solution activity to the judicial exception, as discussed in MPEP 2106.05(g) and MPEP 2106.05(f).).
Regarding claim 5, the rejection of claim 1 is incorporated herein. Further, claim 5 recites the following additional elements, which, taken alone or in combination with the other elements, do not integrate the judicial exception into a practical application nor amount to significantly more than the judicial exception:
providing a link to a page including a representation of the stored response (This is merely an instruction to apply the abstract idea using generic computer components and amounts to adding insignificant extra-solution activity to the judicial exception, as discussed in MPEP 2106.05(g) and MPEP 2106.05(f).).
Regarding claim 6, the following claim elements are abstract ideas:
determining that the query corresponds to a stored prompt associated with a stored response in a contact center knowledgebase by (This is an abstract idea of a “mental process.” It amounts to reading a user question, comparing its contents to known prompts, and deciding that one matches – i.e., observation, comparison, and judgement that can be performed in the human mind or with pen and paper (e.g., scanning a FAQ list and selecting the most similar prompt to use its canned response. See MPEP 2106.04(a)(2)(III).):
determining that the query corresponds to a stored prompt associated with a stored response in a contact center knowledgebase by (This is an abstract idea of a “mental process.” It amounts to reading a user question, comparing its contents to known prompts, and deciding that one matches – i.e., observation, comparison, and judgement that can be performed in the human mind or with pen and paper (e.g., scanning a FAQ list and selecting the most similar prompt to use its canned response. See MPEP 2106.04(a)(2)(III).):
computing a distance in the multi-dimensional space between the input vector and a stored vector corresponding to a meaning of the stored prompt (This is an abstract idea of a mental process and mathematical concept. The limitation recites performing mathematical calculation to determine a distance between two vectors, which constitutes a mathematical operation. Further, it involves comparing representations of information to determine similarity, which can be performed in the human mind with the aid of computational tools such a calculator and pen and paper. For example, a person could assign values to representations of two phrases and calculate or estimate how close those values are to determine similarity. Since it involves mathematical calculations and mental evaluation of similarity, it falls within the mental process and mathematical concept groupings of abstract ideas.),
determining that the distance is less than or equal to a threshold distance (This recites both a mathematical concept – computing a numerical distance and comparing a cutoff – and a mental process – observing the result and judging pass/fail. A person could list coordinates for the query and the prompt, compute a Euclidean or cosine distance with pen-and-paper or basic scientific calculator/spreadsheet, then check whether the value is at or below a chosen threshold. Such calculation and comparison can be performed in the mind or with simple tools. See MPEP 2106.04(a)(2)(I) and MPEP 2106.04(a)(2)(III).);
determining that the query corresponds to the stored prompt (This is an abstract idea of a mental process. It involves comparing information and determining whether two items correspond, which can be performed in the human mind with observation and judgement.)
The following claim elements are additional elements which, taken alone or in combination with the other elements, do not integrate the judicial exception into a practical application nor amount to significantly more than the judicial exception:
A non-transitory computer readable medium (This a high-level recitation of generic computer components for performing the abstract idea. See MPEP 2106.05(f).)
one or more processors (This a high-level recitation of generic computer components for performing the abstract idea. See MPEP 2106.05(f).)
receiving, during a contact center engagement and via a chat bot of a contact center server, a query from a user device (This limitation amounts to adding insignificant extra-solution activity to the judicial exception, as discussed in MPEP 2106.05(g). Receiving a query (i.e., mere data gathering in conjunction with an abstract idea) is directed to a well understood routine conventional activity of data transmission see MPEP 2106.05(d)(II)(i).);
providing, via the chat bot, the stored response to the user device… providing, via the chat bot, the stored response to the user device in response to… automatically answering the query and preventing routing the user device to an agent device when the query is answerable from the knowledge base. (The step of “providing” is merely a generic computer function that amounts to transmitting over a network between conventional components, which has been recognized by the courts as well-understood, routine, and conventional activity/ See MPEP 2106.05(d)(II)(i). Such transmission is insignificant extra-solution activity that does not meaningfully limit or integrate the abstract idea. See MPEP 2106.05(g).).
converting, using a semantic engine comprising a convolutional neural network that receives an input comprising at least one of a word, a sub-word, or a punctuation mark of the query, the query to an input vector in a multi-dimensional space, wherein the input vector represents a meaning of the query, and wherein queries with similar meanings map to input vectors that are proximate in the multi-dimensional space (This limitation merely uses a generic machine learning model as a tool to perform the abstract idea, and thus amounts to insignificant extra solution activity. The convolutional neural network is recited at a high level of generality and performs data representation and transformation without any specific technological improvement to the functioning of the neural network or the computer. See MPEP 2106.05(f) and 2106.05(g).),
Regarding claim 7, the rejection of claim 6 is incorporated herein. Further, claim 7 recites the following additional elements, which, taken alone or in combination with the other elements, do not integrate the judicial exception into a practical application nor amount to significantly more than the judicial exception:
receiving an audio or video query from the user device (This limitation amounts to adding insignificant extra-solution activity to the judicial exception, as discussed in MPEP 2106.05(g). Receiving a query (i.e., mere data gathering in conjunction with an abstract idea) is directed to a well understood routine conventional activity of data transmission see MPEP 2106.05(d)(II)(i).);
generating the query by applying a speech-to-text engine to the received audio or video query (This is merely an instruction to apply the abstract idea using generic computer components and does not provide a meaningful limitation. See MPEP 2106.05(f).)
Regarding claim 8, the rejection of claim 6 is incorporated herein. Further, claim 8 recites the following abstract idea:
recording a contact center engagement between a second user device and an agent device (This is an abstract idea of a “mental process.” It involves observing an interaction and writing down the details, i.e., observation, transcription, and categorization that can be performed in the human mind or with pen and paper.);
determining, using an artificial intelligence engine, a question of a user of the second user device and an answer provided by the agent of the agent device (This is an abstract idea of a “mental process.” It amounts to listening/reading a dialog, identifying the user’s question, and selecting a corresponding answer – the same judgement an operator can perform by reviewing the exchange and matching the question to a known response with pen and paper. See MPEP 2106.04(a)(2)(III).);
The following claim elements are additional elements which, taken alone or in combination with the other elements, do not integrate the judicial exception into a practical application nor amount to significantly more than the judicial exception:
adding the stored prompt and the stored response to the contact center knowledgebase by (This is merely an instruction to apply the abstract idea using generic computer functionality and amounts to storing and retrieving information in memory, a well-understood, routine, and conventional data operation. See MPEP 2106.05(f) and 2106.05(d)(II)(iv). Such storage is insignificant extra-solution activity.):
removing, from the question and from the answer by the artificial intelligence engine, at least one of: personally identifiable information of the user, voice information of the user, or imagery of the user (This is merely an instruction to apply the abstract idea using generic redaction and is insignificant extra-solution activity.)
storing, in the contact center knowledgebase, the question and the answer as the stored prompt and the stored response (This is merely an instruction to apply the abstract idea using generic computer functionality and amounts to storing and retrieving information in memory, a well-understood, routine, and conventional data operation. See MPEP 2106.05(f) and 2106.05(d)(II)(iv). Such storage is insignificant extra-solution activity.).
Regarding claim 9, the rejection of claim 6 is incorporated herein. Further, claim 9 recites the following additional elements, which, taken alone or in combination with the other elements, do not integrate the judicial exception into a practical application nor amount to significantly more than the judicial exception:
adding the stored prompt and the stored response to the contact center knowledgebase by (This is merely an instruction to apply the abstract idea using generic computer functionality and amounts to storing and retrieving information in memory, a well-understood, routine, and conventional data operation. See MPEP 2106.05(f) and 2106.05(d)(II)(iv). Such storage is insignificant extra-solution activity.):
receiving, from an administrator device, a question and an answer (This limitation amounts to adding insignificant extra-solution activity to the judicial exception, as discussed in MPEP 2106.05(g). Receiving a question and an answer(i.e., mere data gathering in conjunction with an abstract idea) is directed to a well understood routine conventional activity of data transmission see MPEP 2106.05(d)(II)(i).);
storing the received question and the received answer as the stored prompt and the stored response in the contact center knowledgebase (This is merely an instruction to apply the abstract idea using generic computer functionality and amounts to storing and retrieving information in memory, a well-understood, routine, and conventional data operation. See MPEP 2106.05(f) and 2106.05(d)(II)(iv). Such storage is insignificant extra-solution activity.).
Regarding claim 10, the rejection of claim 6 is incorporated herein. Further, claim 10 recites the following additional elements, which, taken alone or in combination with the other elements, do not integrate the judicial exception into a practical application nor amount to significantly more than the judicial exception:
prompting, by the chat bot, a user of the user device to specify a reason for the contact center engagement (This is merely an instruction to apply the abstract idea using generic computer components and does not provide a meaningful limitation. See MPEP 2106.05(f).);
receiving the query in response to prompting the user (This limitation amounts to adding insignificant extra-solution activity to the judicial exception, as discussed in MPEP 2106.05(g). Receiving a query (i.e., mere data gathering in conjunction with an abstract idea) is directed to a well understood routine conventional activity of data transmission, see MPEP 2106.05(d)(II)(i).).
Regarding claim 11, the rejection of claim 6 is incorporated herein. Further, claim 11 recites the following additional elements, which, taken alone or in combination with the other elements, do not integrate the judicial exception into a practical application nor amount to significantly more than the judicial exception:
wherein the chat bot is configured, using a natural language processing engine, to perform at least one of text communication or audio communication in a natural language (This is merely an instruction to apply the abstract idea using generic computer components and amounts to adding insignificant extra-solution activity to the judicial exception, as discussed in MPEP 2106.05(g) and MPEP 2106.05(f).).
Regarding claim 12, the rejection of claim 6 is incorporated herein. Further, claim 12 recites the following additional elements, which, taken alone or in combination with the other elements, do not integrate the judicial exception into a practical application nor amount to significantly more than the judicial exception:
providing a link to a video representing the stored response (This is merely an instruction to apply the abstract idea using generic computer components and amounts to adding insignificant extra-solution activity to the judicial exception, as discussed in MPEP 2106.05(g) and MPEP 2106.05(f).).
Regarding claim 13, the following claim elements are abstract ideas:
determining that the query corresponds to a stored prompt associated with a stored response in a contact center knowledgebase by (This is an abstract idea of a “mental process.” It amounts to reading a user question, comparing its contents to known prompts, and deciding that one matches – i.e., observation, comparison, and judgement that can be performed in the human mind or with pen and paper (e.g., scanning a FAQ list and selecting the most similar prompt to use its canned response. See MPEP 2106.04(a)(2)(III).):
determining that the query corresponds to a stored prompt associated with a stored response in a contact center knowledgebase by (This is an abstract idea of a “mental process.” It amounts to reading a user question, comparing its contents to known prompts, and deciding that one matches – i.e., observation, comparison, and judgement that can be performed in the human mind or with pen and paper (e.g., scanning a FAQ list and selecting the most similar prompt to use its canned response. See MPEP 2106.04(a)(2)(III).):
computing a distance in the multi-dimensional space between the input vector and a stored vector corresponding to a meaning of the stored prompt (This is an abstract idea of a mental process and mathematical concept. The limitation recites performing mathematical calculation to determine a distance between two vectors, which constitutes a mathematical operation. Further, it involves comparing representations of information to determine similarity, which can be performed in the human mind with the aid of computational tools such a calculator and pen and paper. For example, a person could assign values to representations of two phrases and calculate or estimate how close those values are to determine similarity. Since it involves mathematical calculations and mental evaluation of similarity, it falls within the mental process and mathematical concept groupings of abstract ideas.),
determining that the distance is less than or equal to a threshold distance (This recites both a mathematical concept – computing a numerical distance and comparing a cutoff – and a mental process – observing the result and judging pass/fail. A person could list coordinates for the query and the prompt, compute a Euclidean or cosine distance with pen-and-paper or basic scientific calculator/spreadsheet, then check whether the value is at or below a chosen threshold. Such calculation and comparison can be performed in the mind or with simple tools. See MPEP 2106.04(a)(2)(I) and MPEP 2106.04(a)(2)(III).);
determining that the query corresponds to the stored prompt (This is an abstract idea of a mental process. It involves comparing information and determining whether two items correspond, which can be performed in the human mind with observation and judgement.)
The following claim elements are additional elements which, taken alone or in combination with the other elements, do not integrate the judicial exception into a practical application nor amount to significantly more than the judicial exception:
a memory (This a high-level recitation of generic computer components for performing the abstract idea. See MPEP 2106.05(f).);
a processor (This a high-level recitation of generic computer components for performing the abstract idea. See MPEP 2106.05(f).)
receiving, during a contact center engagement and via a chat bot of a contact center server, a query from a user device (This limitation amounts to adding insignificant extra-solution activity to the judicial exception, as discussed in MPEP 2106.05(g). Receiving a query (i.e., mere data gathering in conjunction with an abstract idea) is directed to a well understood routine conventional activity of data transmission, see MPEP 2106.05(d)(II)(i).);
providing, via the chat bot, the stored response to the user device… providing, via the chat bot, the stored response to the user device in response to… automatically answering the query and preventing routing the user device to an agent device when the query is answerable from the knowledge base. (The step of “providing” is merely a generic computer function that amounts to transmitting over a network between conventional components, which has been recognized by the courts as well-understood, routine, and conventional activity/ See MPEP 2106.05(d)(II)(i). Such transmission is insignificant extra-solution activity that does not meaningfully limit or integrate the abstract idea. See MPEP 2106.05(g).).
converting, using a semantic engine comprising a convolutional neural network that receives an input comprising at least one of a word, a sub-word, or a punctuation mark of the query, the query to an input vector in a multi-dimensional space, wherein the input vector represents a meaning of the query, and wherein queries with similar meanings map to input vectors that are proximate in the multi-dimensional space (This limitation merely uses a generic machine learning model as a tool to perform the abstract idea, and thus amounts to insignificant extra solution activity. The convolutional neural network is recited at a high level of generality and performs data representation and transformation without any specific technological improvement to the functioning of the neural network or the computer. See MPEP 2106.05(f) and 2106.05(g).),
Regarding claim 14, the rejection of claim 13 is incorporated herein. Further, claim 14 recites the following abstract idea:
determine that the query does not correspond to the stored prompt (This is an abstract idea of a “mental process.” It involves reviewing the query, comparing it to known prompts, and judging that none matches – observation, comparison, and judgement that can be performed in the human mind or with pen and paper (e.g., scanning a FAQ list and concluding no prompt corresponds).);
The following claim elements are additional elements which, taken alone or in combination with the other elements, do not integrate the judicial exception into a practical application nor amount to significantly more than the judicial exception:
transmit query to an agent device for manual processing in response to determining that the query does not correspond to the stored prompt (The step of “transmitting” is a generic network routing/forwarding operation between conventional computer components, which is well-understood, routine, and conventional computer activity. Such transmission is insignificant extra-solution activity that does not meaningfully limit or integrate the abstract idea.).
Regarding claim 15, the rejection of claim 13 is incorporated herein. Further, claim 15 recites the following additional elements, which, taken alone or in combination with the other elements, do not integrate the judicial exception into a practical application nor amount to significantly more than the judicial exception:
receiving an audio or video query from the user device (This limitation amounts to adding insignificant extra-solution activity to the judicial exception, as discussed in MPEP 2106.05(g). Receiving a query (i.e., mere data gathering in conjunction with an abstract idea) is directed to a well understood routine conventional activity of data transmission, see MPEP 2106.05(d)(II)(i).);
Regarding claim 16, the rejection of claim 13 is incorporated herein. Further, claim 16 recites the following abstract idea:
recording a contact center engagement between a client device and an agent device (This is an abstract idea of a “mental process.” It involves observing an interaction and writing down the details, i.e., observation, transcription, and categorization that can be performed in the human mind or with pen and paper.);
determining, using an artificial intelligence engine, a question of a user of the client device and an answer provided by the agent of the agent device (This is an abstract idea of a “mental process.” It amounts to listening/reading a dialog, identifying the user’s question, and selecting a corresponding answer – the same judgement an operator can perform by reviewing the exchange and matching the question to a known response with pen and paper. See MPEP 2106.04(a)(2)(III).);
The following claim elements are additional elements which, taken alone or in combination with the other elements, do not integrate the judicial exception into a practical application nor amount to significantly more than the judicial exception:
add the stored prompt and the stored response to the contact center knowledgebase by (This is merely an instruction to apply the abstract idea using generic computer functionality and amounts to storing and retrieving information in memory, a well-understood, routine, and conventional data operation. See MPEP 2106.05(f) and 2106.05(d)(II)(iv). Such storage is insignificant extra-solution activity.):
removing, from the question and from the answer by the artificial intelligence engine, at least one of: personally identifiable information of the user, voice information of the user, or imagery of the user (This is merely an instruction to apply the abstract idea using generic redaction and is insignificant extra-solution activity.);
storing, in the contact center knowledgebase, the question and the answer as the stored prompt and the stored response (This is merely an instruction to apply the abstract idea using generic computer functionality and amounts to storing and retrieving information in memory, a well-understood, routine, and conventional data operation. See MPEP 2106.05(f) and 2106.05(d)(II)(iv). Such storage is insignificant extra-solution activity.).
Regarding claim 17, the rejection of claim 13 is incorporated herein. Further, claim 17 recites the following additional elements, which, taken alone or in combination with the other elements, do not integrate the judicial exception into a practical application nor amount to significantly more than the judicial exception:
add the stored prompt and the stored response to the contact center knowledgebase by (This is merely an instruction to apply the abstract idea using generic computer functionality and amounts to storing and retrieving information in memory, a well-understood, routine, and conventional data operation. See MPEP 2106.05(f) and 2106.05(d)(II)(iv). Such storage is insignificant extra-solution activity.):
receiving, from an administrator device, the stored prompt and the stored response for storage in the contact center knowledgebase (This limitation amounts to adding insignificant extra-solution activity to the judicial exception, as discussed in MPEP 2106.05(g). Receiving a prompt and a response (i.e., mere data gathering in conjunction with an abstract idea) is directed to a well understood routine conventional activity of data transmission see MPEP 2106.05(d)(II)(i).).
Regarding claim 18, the rejection of claim 13 is incorporated herein. Further, claim 18 recites the following additional elements, which, taken alone or in combination with the other elements, do not integrate the judicial exception into a practical application nor amount to significantly more than the judicial exception:
prompting, by the chat bot, a user of the user device to specify a reason for the contact center engagement (This is merely an instruction to apply the abstract idea using generic computer components and does not provide a meaningful limitation. See MPEP 2106.05(f).);
receiving the query from the user device in response to prompting the user (This limitation amounts to adding insignificant extra-solution activity to the judicial exception, as discussed in MPEP 2106.05(g). Receiving a query (i.e., mere data gathering in conjunction with an abstract idea) is directed to a well understood routine conventional activity of data transmission see MPEP 2106.05(d)(II)(i).).
Regarding claim 19, the rejection of claim 13 is incorporated herein. Further, claim 19 recites the following additional elements, which, taken alone or in combination with the other elements, do not integrate the judicial exception into a practical application nor amount to significantly more than the judicial exception:
wherein the chat bot is configured, using a natural language processing engine, to perform at least one of text communication, audio communication, or video communication (This is merely an instruction to apply the abstract idea using generic computer components and amounts to adding insignificant extra-solution activity to the judicial exception, as discussed in MPEP 2106.05(g) and MPEP 2106.05(f).).
Regarding claim 20, the rejection of claim 13 is incorporated herein. Further, claim 20 recites the following additional elements, which, taken alone or in combination with the other elements, do not integrate the judicial exception into a practical application nor amount to significantly more than the judicial exception:
providing a link to a page comprising text or a video representing the stored response (This is merely an instruction to apply the abstract idea using generic computer components and amounts to adding insignificant extra-solution activity to the judicial exception, as discussed in MPEP 2106.05(g) and MPEP 2106.05(f).).
Claim Rejections - 35 USC § 103
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
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, 3, 6, 9,10, 13, 14, 17 and 18 are rejected under the 35 U.S.C. 103 as being unpatentable over Magliozzi et al., (Pub. No.: US 20180131645 A1 (Filed: 2017)) in view of Zhao et al., (Pub No.: US 20210073224 A1 (Filed: 2020)).
Regarding claim 1, Magliozzi discloses:
A method comprising: receiving, during a contact center engagement and via a chat bot of a contact center server, a query from a user device (Paragraph [0027] “FIG. 1 is an illustration of a chatbot system 100 that can provide continuous, two-way support…The chatbot system 100 includes a first (user) communications interface 102,… The processor 106 implements a dialogue manager 108 and Holocene module 120, which includes a Natural Language Processing (NLP) server 110” and paragraph [0116] “ At 302, the user transmits a chat-based query to the user (e.g., via text message, Facebook™ message, web chat, Kik message, etc.). The chatbot obtains the query via an interface (e.g., first communications interface 102 in FIG. 1) that is compatible with chat-based inputs.”) ;
determining that the query corresponds to a stored prompt associated with a stored response in a contact center knowledgebase by (Paragraph [0040] “The database 112 is communicatively coupled with the dialogue manager 108 and the NLP server 110. It may include a knowledge base, with question and answer data for the NLP server 110, and a user database, with user data for the dialogue manager 108.” And paragraph [0105] “In some aspects, in order to respond to the question, a natural language processor included in the chatbot (e.g., NLP server 110 in FIG. 1)…The NLP server determines the meaning of a sentence by analyzing the concatenation of vectors. If two sentences have a similar and/or same resulting vector, then even if the individual vectors that are concatenated together in each of these sentences are not the same, these sentences can be regarded as synonymous. Hence, the chatbot can provide the same response to both sentences. In this manner, the chatbot can generate responses to user queries based on the language model(s).”):
converting, using a semantic engine comprising a convolutional neural network that receives an input comprising at least one of a word, a sub-word, or a punctuation mark of the query, the query to an input vector in a multi-dimensional space (Magliozzi, paragraph [0104] “If the chatbot detects a question from the user… If the semantically informed pattern match does not provide a match that exceeds a pre-defined match threshold, the chatbot implements an ensemble of two complementary language models—a character-aware convolutional model that handles misspells but does not generalize the semantics much and a word-vector and bag-of-keywords single-hidden-layer model that generalizes the semantics of training inputs in a robust fashion but is highly sensitive to misspell noise.” [0105] “ For example, the NLP server can generate a language model by assigning a vector to each word. Synonyms of words have similar vectors.” [0134] “The word is now a concatenation of features from word-level encoding and character-level encoding. Therefore, the description of the word is in a certain number of dimensions and/or features.” – teaches converting a query using a semantic engine comprising a convolutional neural network, as it expressly discloses a “character-aware convolutional model” for processing user queries. The character-aware convolutional model processes character-level input, which under BRI, corresponds to at least one of a word or a sub-word of the query. Further, Magliozzi teaches converting the query into a vector representation, as it discloses generating a language model by assigning a vector to each word. Magliozzi further teaches that the representation of a word comprises a number of dimensions or features based on a word-level and character-level encodings. Under BRI, such feature-based representations correspond to converting the query to an input vector in a multi-dimensional space.),
wherein the input vector represents a meaning of the query, and wherein queries with similar meanings map to input vectors that are proximate in the multi-dimensional space (Magliozzi, paragraph [0105] “In some aspects, in order to respond to the question, a natural language processor included in the chatbot (e.g., NLP server 110 in FIG. 1) can parse the question based on natural language techniques and process the question using the language model. For example, the NLP server can generate a language model by assigning a vector to each word. Synonyms of words have similar vectors. The NLP server determines the meaning of a sentence by analyzing the concatenation of vectors. If two sentences have a similar and/or same resulting vector, then even if the individual vectors that are concatenated together in each of these sentences are not the same, these sentences can be regarded as synonymous.” – teaches that the input vector represents a meaning of the query, as it discloses that the meaning of a sentence is determined based on vectors. Magliozzi further teaches that queries with similar meanings map to similar vectors, as it states that synonyms have similar vectors and that sentences with similar resulting vectors are regarded as synonymous. Under BRI, similar vectors correspond to vectors that are proximate in a multi-dimensional space.),
providing, via the chat bot, the stored response to the user device in response to determining that the query corresponds to the stored prompt, automatically answering the query and preventing routing the user device to an agent device when the query is answerable from the knowledge base (Magliozzi, paragraph [0041] “The database 112 can store question-answer pairs, user data, user preferences, important reminders, and tips… In some cases, the database 112 may include or be augmented with databases for users, bot knowledgebase, and message queue.” [0107] “The chatbot system can assign a confidence value to every response that is generated by the NLP server…The NLP server can compare this confidence value against a pre-defined confidence threshold to determine if the response should be relayed to the user. For example, if the confidence value is greater than the pre-defined threshold the chatbot transmits this response to the user as a response to the question posed by the user.” [0108] “ If the confidence value is less than the pre-defined threshold, the NLP server can transmit the question along with the multiple possible responses to an administrator via a communications interface (e.g., second communications interface 114).” – teaches providing a stored response from a knowledgebase, as it discloses the question-answer pairs are stored in a database that may include a bot knowledgebase. Under BRI, stored answers correspond to stored responses and stored questions correspond to stored prompts. Magliozzi further teaches providing, via a chatbot, the response to the user device in response to determining that the query corresponds to stored information, as it discloses that the system compares a confidence value to a threshold to determine whether the response should be relayed to the user, and when the confidence value is greater than the threshold, the chatbot transmits to the response to the user. Under BRI, the chatbot transmitting the response to the user based on a threshold determination corresponds to automatically answering the query. Magliozzi further teaches conditional routing of queries, as it discloses that routing to an administrator occurs when the confidence value is less than the threshold. Under BRI, an administrator corresponds to an agent device, and because routing occurs only when the query is not answerable, when the query is answerable the chatbot provides the response without invoking routing to the administrator.).
However, Magliozzi does not teach, but Magliozzi in view of Zhao teaches the following limitations:
computing a distance in the multi-dimensional space between the input vector and a stored vector corresponding to a meaning of the stored prompt (Magliozzi, [0036] “The workflow can be designed such that each time the dialogue manager 108 obtains an answer from the user to a question, the question-answer pair is stored in the database 112.” [0105] “The NLP server determines the meaning of a sentence by analyzing the concatenation of vectors. If two sentences have a similar and/or same resulting vector, then even if the individual vectors that are concatenated together in each of these sentences are not the same, these sentences can be regarded as synonymous.” [0062] “As an example, for a target word, queries containing a target word that co-occur in at least three (3) user search sessions within a threshold distance of one another according to the mapped vectors (e.g., with a cosine distance or confidence level greater or equal to 0.9) may be used as embeddings for the neural network. For example, words included in queries such as “ryobi drill bit” and “drill bit ryobi” that are be located within the threshold distance of one another in the vector space may be defined as related….Negative correlations of queries…For example, for the target word “pot,” the queries that share the word “pot” “tea pot” and “flower pot” may be associated with vectors that are quite far from one another as mapped in the vector space” – Magliozzi teaches storing query information, as it discloses that question-answer pairs are stored in a database. Under BRI, a question corresponds to a prompt, and storing answer-question pairs corresponds to storing prompts. Magliozzi further teaches representing queries using vector representations corresponding to their meaning, as it discloses that sentences with similar vectors as regarded as synonymous. Zhao teaches computing a distance between vector representations in a vector space, as it discloses determining whether queries are within a threshold distance of one another based on cosine distance and that queries may be located far from one another in vector space. Under BRI, computing distance between vectors in a vector space corresponds to computing a distance in a multi-dimensional space between an input vector and a stored vector corresponding to a meaning of a stored prompt.), and
determining that the distance is less than or equal to a threshold distance (Zhao, paragraph [0062] “for a target word, queries containing a target word that co-occur in at least three (3) user search sessions within a threshold distance of one another according to the mapped vectors (e.g., with a cosine distance or confidence level greater or equal to 0.9) may be used as embeddings for the neural network. For example, words included in queries such as “ryobi drill bit” and “drill bit ryobi” that are be located within the threshold distance of one another in the vector space may be defined as related. Therefore, those phrases (“ryobi drill bit” and “drill bit ryobi”) may be fed into a neural network so that the meaning of the word “Ryobi™” may be better understood in context. Negative correlations of queries where a target word co-occurs (e.g., are outside a threshold distance from one another such as with a cosine distance or confidence level greater or equal to 0.1) may also be fed into a neural network as initial embeddings to further provide context for words.”)
Accordingly, it would have been obvious to a person of ordinary skill in the art, before the effective filing date of the claimed invention, having a combination of Magliozzi and Zhao before them, to incorporate the use of vector distance against a threshold distance, as taught in Zhao, into the system of Magliozzi’s chatbot. One would have been motivated to make such a combination in order to improve the accuracy and precision of the Magliozzi chatbot’s core function. This is achieved by substituting the general “confidence score” check with the known, mathematically defined technique (e.g., cosine distance) to more reliably determine the semantic closeness between the customer’s query and a stored answer, thereby boosting automation and reducing contact center costs.
Regarding claim 3, Magliozzi in view of Zhao, as outlined above, all the elements of claim 1, therefore is rejected for the same reasons as those presented for claim 1, mutatis mutandis. Magliozzi further teaches the limitation:
wherein receiving the query from the user device comprises: prompting a user of the user device to specify a reason for the contact center engagement (Magliozzi, paragraph [0046] “ In step 206, the chatbot obtains a first query from a user. The first query can be obtained via a communications interface (e.g., first communication interface 102 in FIG. 1). In some instances, the first query represents the first user interaction with the chatbot. For example, the first time the user signs up for a service (e.g., a student signing up as a prospective student on a university website for the first time, or a prospective student sending a single text message to a specific phone number belonging to a university).” Paragraph [0048] “The chatbot system may chat with a user about a variety of topics, including pre- and post-matriculation topics. Examples of pre-matriculation message workflow topics include, but are not limited to: [0049] Getting Ready for College [0050] Getting a Campus ID [0051] FAFSA Completion and Follow Up…“ Paragraph [0092] “The communications interface (e.g., first communications interface 102 in FIG. 1) transmits the question to the user.”) ; and receiving the query in response to prompting the user (Magliozzi, paragraph [0092] “In step 210, in response to obtaining the question, the user transmits an answer to the chatbot via the communications interface. In step 212, the chatbot stores the answer to the question in a memory (e.g., database 112 in FIG. 1).” Paragraph [0093] “In step 214, the chatbot updates the language model based on the answer obtained from the user. For example, in step 208, if the chatbot asked the user a question regarding the user's children and in step 210, the user responds to the question stating that the user has three children, then the processor can analyze the language model to determine if the language model includes the number of children for that user.”).
Regarding claim 6, Magliozzi discloses:
A non-transitory computer readable medium storing instructions operable to cause one or more processors to perform operations comprising (Paragraph [0029] “ As readily appreciated by those of skill in the art, the dialogue manager 108, and the NLP server 110 can each be implemented as computer-executable code stored in computer-readable, non-volatile memory and executed by the processor 106.”):
A method comprising: receiving, during a contact center engagement and via a chat bot of a contact center server, a query from a user device (Paragraph [0027] “FIG. 1 is an illustration of a chatbot system 100 that can provide continuous, two-way support…The chatbot system 100 includes a first (user) communications interface 102,… The processor 106 implements a dialogue manager 108 and Holocene module 120, which includes a Natural Language Processing (NLP) server 110” and paragraph [0116] “ At 302, the user transmits a chat-based query to the user (e.g., via text message, Facebook™ message, web chat, Kik message, etc.). The chatbot obtains the query via an interface (e.g., first communications interface 102 in FIG. 1) that is compatible with chat-based inputs.”) ;
determining that the query corresponds to a stored prompt associated with a stored response in a contact center knowledgebase by (Paragraph [0040] “The database 112 is communicatively coupled with the dialogue manager 108 and the NLP server 110. It may include a knowledge base, with question and answer data for the NLP server 110, and a user database, with user data for the dialogue manager 108.” And paragraph [0105] “In some aspects, in order to respond to the question, a natural language processor included in the chatbot (e.g., NLP server 110 in FIG. 1)…The NLP server determines the meaning of a sentence by analyzing the concatenation of vectors. If two sentences have a similar and/or same resulting vector, then even if the individual vectors that are concatenated together in each of these sentences are not the same, these sentences can be regarded as synonymous. Hence, the chatbot can provide the same response to both sentences. In this manner, the chatbot can generate responses to user queries based on the language model(s).”):
converting, using a semantic engine comprising a convolutional neural network that receives an input comprising at least one of a word, a sub-word, or a punctuation mark of the query, the query to an input vector in a multi-dimensional space (Magliozzi, paragraph [0104] “If the chatbot detects a question from the user… If the semantically informed pattern match does not provide a match that exceeds a pre-defined match threshold, the chatbot implements an ensemble of two complementary language models—a character-aware convolutional model that handles misspells but does not generalize the semantics much and a word-vector and bag-of-keywords single-hidden-layer model that generalizes the semantics of training inputs in a robust fashion but is highly sensitive to misspell noise.” [0105] “ For example, the NLP server can generate a language model by assigning a vector to each word. Synonyms of words have similar vectors.” [0134] “The word is now a concatenation of features from word-level encoding and character-level encoding. Therefore, the description of the word is in a certain number of dimensions and/or features.” – teaches converting a query using a semantic engine comprising a convolutional neural network, as it expressly discloses a “character-aware convolutional model” for processing user queries. The character-aware convolutional model processes character-level input, which under BRI, corresponds to at least one of a word or a sub-word of the query. Further, Magliozzi teaches converting the query into a vector representation, as it discloses generating a language model by assigning a vector to each word. Magliozzi further teaches that the representation of a word comprises a number of dimensions or features based on a word-level and character-level encodings. Under BRI, such feature-based representations correspond to converting the query to an input vector in a multi-dimensional space.),
wherein the input vector represents a meaning of the query, and wherein queries with similar meanings map to input vectors that are proximate in the multi-dimensional space (Magliozzi, paragraph [0105] “In some aspects, in order to respond to the question, a natural language processor included in the chatbot (e.g., NLP server 110 in FIG. 1) can parse the question based on natural language techniques and process the question using the language model. For example, the NLP server can generate a language model by assigning a vector to each word. Synonyms of words have similar vectors. The NLP server determines the meaning of a sentence by analyzing the concatenation of vectors. If two sentences have a similar and/or same resulting vector, then even if the individual vectors that are concatenated together in each of these sentences are not the same, these sentences can be regarded as synonymous.” – teaches that the input vector represents a meaning of the query, as it discloses that the meaning of a sentence is determined based on vectors. Magliozzi further teaches that queries with similar meanings map to similar vectors, as it states that synonyms have similar vectors and that sentences with similar resulting vectors are regarded as synonymous. Under BRI, similar vectors correspond to vectors that are proximate in a multi-dimensional space.),
providing, via the chat bot, the stored response to the user device in response to determining that the query corresponds to the stored prompt, automatically answering the query and preventing routing the user device to an agent device when the query is answerable from the knowledge base (Magliozzi, paragraph [0041] “The database 112 can store question-answer pairs, user data, user preferences, important reminders, and tips… In some cases, the database 112 may include or be augmented with databases for users, bot knowledgebase, and message queue.” [0107] “The chatbot system can assign a confidence value to every response that is generated by the NLP server…The NLP server can compare this confidence value against a pre-defined confidence threshold to determine if the response should be relayed to the user. For example, if the confidence value is greater than the pre-defined threshold the chatbot transmits this response to the user as a response to the question posed by the user.” [0108] “ If the confidence value is less than the pre-defined threshold, the NLP server can transmit the question along with the multiple possible responses to an administrator via a communications interface (e.g., second communications interface 114).” – teaches providing a stored response from a knowledgebase, as it discloses the question-answer pairs are stored in a database that may include a bot knowledgebase. Under BRI, stored answers correspond to stored responses and stored questions correspond to stored prompts. Magliozzi further teaches providing, via a chatbot, the response to the user device in response to determining that the query corresponds to stored information, as it discloses that the system compares a confidence value to a threshold to determine whether the response should be relayed to the user, and when the confidence value is greater than the threshold, the chatbot transmits to the response to the user. Under BRI, the chatbot transmitting the response to the user based on a threshold determination corresponds to automatically answering the query. Magliozzi further teaches conditional routing of queries, as it discloses that routing to an administrator occurs when the confidence value is less than the threshold. Under BRI, an administrator corresponds to an agent device, and because routing occurs only when the query is not answerable, when the query is answerable the chatbot provides the response without invoking routing to the administrator.).
However, Magliozzi does not teach, but Magliozzi in view of Zhao teaches the following limitations:
computing a distance in the multi-dimensional space between the input vector and a stored vector corresponding to a meaning of the stored prompt (Magliozzi, [0036] “The workflow can be designed such that each time the dialogue manager 108 obtains an answer from the user to a question, the question-answer pair is stored in the database 112.” [0105] “The NLP server determines the meaning of a sentence by analyzing the concatenation of vectors. If two sentences have a similar and/or same resulting vector, then even if the individual vectors that are concatenated together in each of these sentences are not the same, these sentences can be regarded as synonymous.” [0062] “As an example, for a target word, queries containing a target word that co-occur in at least three (3) user search sessions within a threshold distance of one another according to the mapped vectors (e.g., with a cosine distance or confidence level greater or equal to 0.9) may be used as embeddings for the neural network. For example, words included in queries such as “ryobi drill bit” and “drill bit ryobi” that are be located within the threshold distance of one another in the vector space may be defined as related….Negative correlations of queries…For example, for the target word “pot,” the queries that share the word “pot” “tea pot” and “flower pot” may be associated with vectors that are quite far from one another as mapped in the vector space” – Magliozzi teaches storing query information, as it discloses that question-answer pairs are stored in a database. Under BRI, a question corresponds to a prompt, and storing answer-question pairs corresponds to storing prompts. Magliozzi further teaches representing queries using vector representations corresponding to their meaning, as it discloses that sentences with similar vectors as regarded as synonymous. Zhao teaches computing a distance between vector representations in a vector space, as it discloses determining whether queries are within a threshold distance of one another based on cosine distance and that queries may be located far from one another in vector space. Under BRI, computing distance between vectors in a vector space corresponds to computing a distance in a multi-dimensional space between an input vector and a stored vector corresponding to a meaning of a stored prompt.),
determining that the distance is less than or equal to a threshold distance (Zhao, paragraph [0062] “for a target word, queries containing a target word that co-occur in at least three (3) user search sessions within a threshold distance of one another according to the mapped vectors (e.g., with a cosine distance or confidence level greater or equal to 0.9) may be used as embeddings for the neural network. For example, words included in queries such as “ryobi drill bit” and “drill bit ryobi” that are be located within the threshold distance of one another in the vector space may be defined as related. Therefore, those phrases (“ryobi drill bit” and “drill bit ryobi”) may be fed into a neural network so that the meaning of the word “Ryobi™” may be better understood in context. Negative correlations of queries where a target word co-occurs (e.g., are outside a threshold distance from one another such as with a cosine distance or confidence level greater or equal to 0.1) may also be fed into a neural network as initial embeddings to further provide context for words.”)
Accordingly, it would have been obvious to a person of ordinary skill in the art, before the effective filing date of the claimed invention, having a combination of Magliozzi and Zhao before them, to incorporate the use of vector distance against a threshold distance, as taught in Zhao, into the system of Magliozzi’s chatbot. One would have been motivated to make such a combination in order to improve the accuracy and precision of the Magliozzi chatbot’s core function. This is achieved by substituting the general “confidence score” check with the known, mathematically defined technique (e.g., cosine distance) to more reliably determine the semantic closeness between the customer’s query and a stored answer, thereby boosting automation and reducing contact center costs.
Regarding claim 9, Magliozzi in view of Zhao, as outlined above, all the elements of claim 6, therefore is rejected for the same reasons as those presented for claim 6, mutatis mutandis. Magliozzi in view of Zhao further teaches the limitation:
adding the stored prompt and the stored response to the contact center knowledgebase by: receiving, from an administrator device, a question and an answer (Magliozzi, paragraph [0028] “The second communications interface 114 enables bidirectional communication between an administrator and the chatbot system 100, enabling the administrator to participate in conversations with the user.” [0108] “If the confidence value is less than the pre-defined threshold, the NLP server can transmit the question along with the multiple possible responses to an administrator via a communications interface (e.g., second communications interface 114). The administrator can review the question and the possible responses generated by the NLP server. The administrator can select the best possible answer from among the possible responses or provide an entirely new answer to the NLP server. “[0110] “If the NLP server cannot predict an answer to a question using the language model, it may route the question to an administrator for an answer. The response from the administrator can be transmitted back to the NLP server. The NLP server can then update the language model to include the question and the answer.”);
storing the received question and the received answer as the stored prompt and the stored response in the contact center knowledgebase (Magliozzi, paragraph [0110] “ The response from the administrator can be transmitted back to the NLP server. The NLP server can then update the language model to include the question and the answer.” Paragraph [0041] “The database 112 can store question-answer pairs, user data, user preferences, important reminders, and tips. The NLP server 110 and the dialogue manager 108 can access the database 112 to obtain appropriate information that can be used to engage the user with the system 100. Structured and unstructured data obtained from the user, the administrator, the NLP server 110, and the dialogue manager 108 can be stored in the database 112. In some cases, the database 112 may include or be augmented with databases for users, bot knowledgebase, and message queue.”).
Regarding claim 10, Magliozzi in view of Zhao, as outlined above, all the elements of claim 6, therefore is rejected for the same reasons as those presented for claim 6, mutatis mutandis. Magliozzi further teaches the limitation:
wherein receiving the query from the user device comprises: prompting, by the chat bot, a user of the user device to specify a reason for the contact center engagement (Magliozzi, paragraph [0046] “ In step 206, the chatbot obtains a first query from a user. The first query can be obtained via a communications interface (e.g., first communication interface 102 in FIG. 1). In some instances, the first query represents the first user interaction with the chatbot. For example, the first time the user signs up for a service (e.g., a student signing up as a prospective student on a university website for the first time, or a prospective student sending a single text message to a specific phone number belonging to a university).” Paragraph [0048] “The chatbot system may chat with a user about a variety of topics, including pre- and post-matriculation topics. Examples of pre-matriculation message workflow topics include, but are not limited to: [0049] Getting Ready for College [0050] Getting a Campus ID [0051] FAFSA Completion and Follow Up…“ Paragraph [0092] “The communications interface (e.g., first communications interface 102 in FIG. 1) transmits the question to the user.”); and receiving the query in response to prompting the user (Magliozzi, paragraph [0092] “In step 210, in response to obtaining the question, the user transmits an answer to the chatbot via the communications interface. In step 212, the chatbot stores the answer to the question in a memory (e.g., database 112 in FIG. 1).” Paragraph [0093] “In step 214, the chatbot updates the language model based on the answer obtained from the user. For example, in step 208, if the chatbot asked the user a question regarding the user's children and in step 210, the user responds to the question stating that the user has three children, then the processor can analyze the language model to determine if the language model includes the number of children for that user.”).
Regarding claim 13, Magliozzi discloses:
An apparatus comprising: a memory; and a processor configured to execute instructions stored in the memory to (Paragraph [0027] “As readily appreciated by those of ordinary skill in the art, the chatbot system 100 may include other components, such as volatile and non-volatile memory. It may also include more processors, e.g., one for the dialogue manager 108 and one for the NLP server 110.” and paragraph [0029] “and the NLP server 110 can each be implemented as computer-executable code stored in computer-readable, non-volatile memory and executed by the processor 106”):
A method comprising: receiving, during a contact center engagement and via a chat bot of a contact center server, a query from a user device (Paragraph [0027] “FIG. 1 is an illustration of a chatbot system 100 that can provide continuous, two-way support…The chatbot system 100 includes a first (user) communications interface 102,… The processor 106 implements a dialogue manager 108 and Holocene module 120, which includes a Natural Language Processing (NLP) server 110” and paragraph [0116] “ At 302, the user transmits a chat-based query to the user (e.g., via text message, Facebook™ message, web chat, Kik message, etc.). The chatbot obtains the query via an interface (e.g., first communications interface 102 in FIG. 1) that is compatible with chat-based inputs.”) ;
determining that the query corresponds to a stored prompt associated with a stored response in a contact center knowledgebase by (Paragraph [0040] “The database 112 is communicatively coupled with the dialogue manager 108 and the NLP server 110. It may include a knowledge base, with question and answer data for the NLP server 110, and a user database, with user data for the dialogue manager 108.” And paragraph [0105] “In some aspects, in order to respond to the question, a natural language processor included in the chatbot (e.g., NLP server 110 in FIG. 1)…The NLP server determines the meaning of a sentence by analyzing the concatenation of vectors. If two sentences have a similar and/or same resulting vector, then even if the individual vectors that are concatenated together in each of these sentences are not the same, these sentences can be regarded as synonymous. Hence, the chatbot can provide the same response to both sentences. In this manner, the chatbot can generate responses to user queries based on the language model(s).”):
converting, using a semantic engine comprising a convolutional neural network that receives an input comprising at least one of a word, a sub-word, or a punctuation mark of the query, the query to an input vector in a multi-dimensional space (Magliozzi, paragraph [0104] “If the chatbot detects a question from the user… If the semantically informed pattern match does not provide a match that exceeds a pre-defined match threshold, the chatbot implements an ensemble of two complementary language models—a character-aware convolutional model that handles misspells but does not generalize the semantics much and a word-vector and bag-of-keywords single-hidden-layer model that generalizes the semantics of training inputs in a robust fashion but is highly sensitive to misspell noise.” [0105] “ For example, the NLP server can generate a language model by assigning a vector to each word. Synonyms of words have similar vectors.” [0134] “The word is now a concatenation of features from word-level encoding and character-level encoding. Therefore, the description of the word is in a certain number of dimensions and/or features.” – teaches converting a query using a semantic engine comprising a convolutional neural network, as it expressly discloses a “character-aware convolutional model” for processing user queries. The character-aware convolutional model processes character-level input, which under BRI, corresponds to at least one of a word or a sub-word of the query. Further, Magliozzi teaches converting the query into a vector representation, as it discloses generating a language model by assigning a vector to each word. Magliozzi further teaches that the representation of a word comprises a number of dimensions or features based on a word-level and character-level encodings. Under BRI, such feature-based representations correspond to converting the query to an input vector in a multi-dimensional space.),
wherein the input vector represents a meaning of the query, and wherein queries with similar meanings map to input vectors that are proximate in the multi-dimensional space (Magliozzi, paragraph [0105] “In some aspects, in order to respond to the question, a natural language processor included in the chatbot (e.g., NLP server 110 in FIG. 1) can parse the question based on natural language techniques and process the question using the language model. For example, the NLP server can generate a language model by assigning a vector to each word. Synonyms of words have similar vectors. The NLP server determines the meaning of a sentence by analyzing the concatenation of vectors. If two sentences have a similar and/or same resulting vector, then even if the individual vectors that are concatenated together in each of these sentences are not the same, these sentences can be regarded as synonymous.” – teaches that the input vector represents a meaning of the query, as it discloses that the meaning of a sentence is determined based on vectors. Magliozzi further teaches that queries with similar meanings map to similar vectors, as it states that synonyms have similar vectors and that sentences with similar resulting vectors are regarded as synonymous. Under BRI, similar vectors correspond to vectors that are proximate in a multi-dimensional space.),
providing, via the chat bot, the stored response to the user device in response to determining that the query corresponds to the stored prompt, automatically answering the query and preventing routing the user device to an agent device when the query is answerable from the knowledge base (Magliozzi, paragraph [0041] “The database 112 can store question-answer pairs, user data, user preferences, important reminders, and tips… In some cases, the database 112 may include or be augmented with databases for users, bot knowledgebase, and message queue.” [0107] “The chatbot system can assign a confidence value to every response that is generated by the NLP server…The NLP server can compare this confidence value against a pre-defined confidence threshold to determine if the response should be relayed to the user. For example, if the confidence value is greater than the pre-defined threshold the chatbot transmits this response to the user as a response to the question posed by the user.” [0108] “ If the confidence value is less than the pre-defined threshold, the NLP server can transmit the question along with the multiple possible responses to an administrator via a communications interface (e.g., second communications interface 114).” – teaches providing a stored response from a knowledgebase, as it discloses the question-answer pairs are stored in a database that may include a bot knowledgebase. Under BRI, stored answers correspond to stored responses and stored questions correspond to stored prompts. Magliozzi further teaches providing, via a chatbot, the response to the user device in response to determining that the query corresponds to stored information, as it discloses that the system compares a confidence value to a threshold to determine whether the response should be relayed to the user, and when the confidence value is greater than the threshold, the chatbot transmits to the response to the user. Under BRI, the chatbot transmitting the response to the user based on a threshold determination corresponds to automatically answering the query. Magliozzi further teaches conditional routing of queries, as it discloses that routing to an administrator occurs when the confidence value is less than the threshold. Under BRI, an administrator corresponds to an agent device, and because routing occurs only when the query is not answerable, when the query is answerable the chatbot provides the response without invoking routing to the administrator.).
However, Magliozzi does not teach, but Magliozzi in view of Zhao teaches the following limitations:
computing a distance in the multi-dimensional space between the input vector and a stored vector corresponding to a meaning of the stored prompt (Magliozzi, [0036] “The workflow can be designed such that each time the dialogue manager 108 obtains an answer from the user to a question, the question-answer pair is stored in the database 112.” [0105] “The NLP server determines the meaning of a sentence by analyzing the concatenation of vectors. If two sentences have a similar and/or same resulting vector, then even if the individual vectors that are concatenated together in each of these sentences are not the same, these sentences can be regarded as synonymous.” [0062] “As an example, for a target word, queries containing a target word that co-occur in at least three (3) user search sessions within a threshold distance of one another according to the mapped vectors (e.g., with a cosine distance or confidence level greater or equal to 0.9) may be used as embeddings for the neural network. For example, words included in queries such as “ryobi drill bit” and “drill bit ryobi” that are be located within the threshold distance of one another in the vector space may be defined as related….Negative correlations of queries…For example, for the target word “pot,” the queries that share the word “pot” “tea pot” and “flower pot” may be associated with vectors that are quite far from one another as mapped in the vector space” – Magliozzi teaches storing query information, as it discloses that question-answer pairs are stored in a database. Under BRI, a question corresponds to a prompt, and storing answer-question pairs corresponds to storing prompts. Magliozzi further teaches representing queries using vector representations corresponding to their meaning, as it discloses that sentences with similar vectors as regarded as synonymous. Zhao teaches computing a distance between vector representations in a vector space, as it discloses determining whether queries are within a threshold distance of one another based on cosine distance and that queries may be located far from one another in vector space. Under BRI, computing distance between vectors in a vector space corresponds to computing a distance in a multi-dimensional space between an input vector and a stored vector corresponding to a meaning of a stored prompt.),
determining that the distance is less than or equal to a threshold distance (Zhao, paragraph [0062] “for a target word, queries containing a target word that co-occur in at least three (3) user search sessions within a threshold distance of one another according to the mapped vectors (e.g., with a cosine distance or confidence level greater or equal to 0.9) may be used as embeddings for the neural network. For example, words included in queries such as “ryobi drill bit” and “drill bit ryobi” that are be located within the threshold distance of one another in the vector space may be defined as related. Therefore, those phrases (“ryobi drill bit” and “drill bit ryobi”) may be fed into a neural network so that the meaning of the word “Ryobi™” may be better understood in context. Negative correlations of queries where a target word co-occurs (e.g., are outside a threshold distance from one another such as with a cosine distance or confidence level greater or equal to 0.1) may also be fed into a neural network as initial embeddings to further provide context for words.”)
Accordingly, it would have been obvious to a person of ordinary skill in the art, before the effective filing date of the claimed invention, having a combination of Magliozzi and Zhao before them, to incorporate the use of vector distance against a threshold distance, as taught in Zhao, into the system of Magliozzi’s chatbot. One would have been motivated to make such a combination in order to improve the accuracy and precision of the Magliozzi chatbot’s core function. This is achieved by substituting the general “confidence score” check with the known, mathematically defined technique (e.g., cosine distance) to more reliably determine the semantic closeness between the customer’s query and a stored answer, thereby boosting automation and reducing contact center costs.
Regarding claim 14, Magliozzi in view of Zhao, as outlined above, all the elements of claim 13, therefore is rejected for the same reasons as those presented for claim 13, mutatis mutandis. Magliozzi in view of Zhao further teaches the limitation:
determine that the query does not correspond to the stored prompt (Magliozzi, paragraph [0104[ “If the chatbot detects a question from the user, the chatbot determines a response to the question based on the language model. In some aspects, the chatbot determines a context for the question and attempts a semantically informed pattern match. If the semantically informed pattern match does not provide a match that exceeds a pre-defined match threshold,” and paragraph [0105] “In some aspects, in order to respond to the question, a natural language processor included in the chatbot (e.g., NLP server 110 in FIG. 1) can parse the question based on natural language techniques and process the question using the language model.” [0107] “The chatbot system can assign a confidence value to every response that is generated by the NLP server. The confidence value indicates the probability of the response being an accurate response to a particular question.” [0108] “If the confidence value is less than the pre-defined threshold,” – teaches determining that a query does not correspond to a stored prompt information, as it discloses that when a pattern match or confidence value does not exceed a predefined threshold, the system determines that an appropriate match has not been found. Under BRI, determining that no match exceeds a threshold corresponds to determining that the query does not correspond to a stored prompt.);
transmit the query to an agent device for manual processing in response to determining that the query does not correspond to the stored prompt (Magliozzi, paragraph [0108] “If the confidence value is less than the pre-defined threshold, the NLP server can transmit the question along with the multiple possible responses to an administrator via a communications interface (e.g., second communications interface 114). The administrator can review the question and the possible responses generated by the NLP server. The administrator can select the best possible answer from among the possible responses or provide an entirely new answer to the NLP server. The chatbot can transmit this answer to the user as an answer to the user's question and update the language model based on the administrator's answer.” – teaches transmitting the query to an agent device for manual processing in response to determining that no suitable match has been found, as it discloses that when the confidence value is less than a predefined threshold, the system transmits the question to an administrator who reviews and manually selects or provides a response. Under BRI, a “question” corresponds to a “query” and transmitting the question to an administrator for review and response corresponds to transmitting a query to an agent device for manual processing.).
Regarding claim 17, Magliozzi in view of Zhao, as outlined above, all the elements of claim 13, therefore is rejected for the same reasons as those presented for claim 13, mutatis mutandis. Magliozzi in view of Zhao further teaches the limitation:
add the stored prompt and the stored response to the contact center knowledgebase by: receiving, from an administrator device, the stored prompt and the stored response for storage in the contact center knowledgebase (Magliozzi, paragraph [0110] “If the NLP server cannot predict an answer to a question using the language model, it may route the question to an administrator for an answer. The response from the administrator can be transmitted back to the NLP server. The NLP server can then update the language model to include the question and the answer.” Paragraph [0041] “The database 112 can store question-answer pairs, user data, user preferences, important reminders, and tips…Structured and unstructured data obtained from the user, the administrator, the NLP server 110, and the dialogue manager 108 can be stored in the database 112. In some cases, the database 112 may include or be augmented with databases for users, bot knowledgebase, and message queue.”).
Regarding claim 18, Magliozzi in view of Zhao, as outlined above, all the elements of claim 13, therefore is rejected for the same reasons as those presented for claim 13, mutatis mutandis. Magliozzi further teaches the limitation:
wherein receiving the query from the user device comprises: prompting, by the chat bot, a user of the user device to specify a reason for the contact center engagement (Magliozzi, paragraph [0046] “ In step 206, the chatbot obtains a first query from a user. The first query can be obtained via a communications interface (e.g., first communication interface 102 in FIG. 1). In some instances, the first query represents the first user interaction with the chatbot. For example, the first time the user signs up for a service (e.g., a student signing up as a prospective student on a university website for the first time, or a prospective student sending a single text message to a specific phone number belonging to a university).” Paragraph [0048] “The chatbot system may chat with a user about a variety of topics, including pre- and post-matriculation topics. Examples of pre-matriculation message workflow topics include, but are not limited to: [0049] Getting Ready for College [0050] Getting a Campus ID [0051] FAFSA Completion and Follow Up…“ Paragraph [0092] “The communications interface (e.g., first communications interface 102 in FIG. 1) transmits the question to the user.”); and receiving the query from the user device in response to prompting the user (Magliozzi, paragraph [0092] “In step 210, in response to obtaining the question, the user transmits an answer to the chatbot via the communications interface. In step 212, the chatbot stores the answer to the question in a memory (e.g., database 112 in FIG. 1).” Paragraph [0093] “In step 214, the chatbot updates the language model based on the answer obtained from the user. For example, in step 208, if the chatbot asked the user a question regarding the user's children and in step 210, the user responds to the question stating that the user has three children, then the processor can analyze the language model to determine if the language model includes the number of children for that user.”).
Claims 2 is rejected under the 35 U.S.C. 103 as being unpatentable over Magliozzi et al., (Pub. No.: US 20180131645 A1 (Filed: 2017)) in view of Zhao et al., (Pub. No.: US 20210073224 A1 (Filed: 2020)) further in view of Venkatasubramanyam (Pub. No.: US 20210264804 A1 (Filed: 2020)).
Regarding claim 2, Magliozzi in view of Zhao, as outlined above, all the elements of claim 1, therefore is rejected for the same reasons as those presented for claim 1, mutatis mutandis. However, Magliozzi in view of Zhao does not teach, but Magliozzi in view of Zhao further in view of Venkatasubramanyam teaches the limitation:
wherein the query comprises text, wherein receiving the query from the user device comprises: receiving an audio input from the user device(Magliozzi, [0087] “Also, a computer may have one or more input and output devices. These devices can be used, among other things, to present a user interface... a computer may receive input information through speech recognition or in other audible format.” Venkatasubramanyam, paragraph [0058] “The data transfer module 201k receives a query from a knowledge seeker through one of multiple interfaces via the graphical user interface (GUI) 201c on the electronic device 201. The multiple interfaces comprise text boxes, chat interfaces, voice interfaces, phone applications, interactive chat bots, virtual reality interfaces and augmented reality interfaces.”) ; and generating the query comprising text by applying a speech-to-text engine to the received audio input (Venkatasubramanyam, paragraph [0058] “The data transfer module receives the query and the feedback from the knowledge seeker, and sends the retrieved experience to the knowledge seeker through a translate layer comprising text to speech, speech to text, and language translations on receiving a request for the translate layer from the knowledge seeker. The translate layer is disclosed in the detailed description of FIG. 1.” Paragraph [0075] “The chatbot platform 403 also comprises the translate layer 705 disclosed in the detailed description of FIG. 1. The translate layer comprises text to speech and speech to text services, and a translation application programming interface (API), which provides translation services when requested by other services of the smart-learning and knowledge retrieval system (SLKRS) 201e and ultimately by a knowledge seeker...the pattern recognition module 707 checks simplified and rephrased questions against a knowledge base 710 using pattern recognition, and the NLP module 708 utilizes trained models 711 to determine a close match for a query received from a knowledge seeker.” – teaches applying a speech-to-text engine to input data to generate text, as it discloses a translate layer comprising speech-to-text services. Under BRI, converting received audio input into text corresponds to generating the query comprising text by applying a speech-to-text engine to the received audio input.).
Accordingly, it would have been obvious to a person of ordinary skill in the art, before the effective filing date of the claimed invention, having a combination of Magliozzi, Zhao and Venkatasubramanyam before them, to incorporate speech-to-text (STT) conversion capability, as taught by Venkatasubramanyam, into the communication framework of Magliozzi’s chatbot. One would have been motivated to make the combination to achieve the predictable result of making Magliozzi chatbot’s text-based semantic engine usable with voice queries, thereby expanding the chatbot’s utility and maximizing automation across common contact center communication channels.
Claims 4, 11, and 19 are rejected under the 35 U.S.C. 103 as being unpatentable over Magliozzi et al., (Pub. No.: US 20180131645 A1 (Filed: 2017)) in view of Zhao et al., (Pub. No.: US 20210073224 A1 (Filed: 2020)) further in view of Jethwa et al., (Pub. No.: US 20220318679 A1 (Filed: 2022)).
Regarding claim 4, Magliozzi in view of Zhao, as outlined above, all the elements of claim 1, therefore is rejected for the same reasons as those presented for claim 1, mutatis mutandis. Magliozzi in view of Zhao further in view of Jethwa further teaches the limitation:
wherein the chat bot is configured, using a natural language processing engine, to perform audio communication in a spoken language (Magliozzi, [0028] “The NLP server 110 implements machine learning techniques to understand user intent, determine responses, learn responses, and train the chatbot system 100. Structured and unstructured data can be stored in the database 112 and accessed by the NLP server 110 and the dialogue manager 108.” Jethwa, [0074] “The ML engine may also identify a primary potential intent among the one or more potential intents for the user query…at 308 the step of predicting, using the ML engine, the one or more responses in any or combination of the textual form, the audio form, and video form based on the extracted set of attributes and the generated trained model.” and [0053] “In an embodiment, the ML engine may be configured with language processing engines to receive the user query in any language and provide the response corresponding to the user query in any language.”).
Accordingly, it would have been obvious to a person of ordinary skill in the art, before the effective filing date of the claimed invention, having a combination of Magliozzi, Zhao, and Jethwa before them, to incorporate the audio response capability, as taught by Jethwa into the chatbot system of Magliozzi. One would have been motivated to make such a combination in order to expand the deployment channels (e.g., telephone or smart device) and to increase accessibility for users who require spoken language interaction.
Regarding claim 11, Magliozzi in view of Zhao, as outlined above, all the elements of claim 6, therefore is rejected for the same reasons as those presented for claim 6, mutatis mutandis. Magliozzi in view of Zhao further in view of Jethwa further teaches the limitation:
wherein the chat bot is configured, using a natural language processing engine, to perform at least one of text communication or audio communication in a natural language (Magliozzi, [0028] “The NLP server 110 implements machine learning techniques to understand user intent, determine responses, learn responses, and train the chatbot system 100. Structured and unstructured data can be stored in the database 112 and accessed by the NLP server 110 and the dialogue manager 108.” Jethwa, [0074] “The ML engine may also identify a primary potential intent among the one or more potential intents for the user query…at 308 the step of predicting, using the ML engine, the one or more responses in any or combination of the textual form, the audio form, and video form based on the extracted set of attributes and the generated trained model.” and [0053] “In an embodiment, the ML engine may be configured with language processing engines to receive the user query in any language and provide the response corresponding to the user query in any language.”).
Accordingly, it would have been obvious to a person of ordinary skill in the art, before the effective filing date of the claimed invention, having a combination of Magliozzi, Zhao, and Jethwa before them, to incorporate the audio response capability, as taught by Jethwa into the chatbot system of Magliozzi. One would have been motivated to make such a combination in order to expand the deployment channels (e.g., telephone or smart device) and to increase accessibility for users who require spoken language interaction.
Regarding claim 19, Magliozzi in view of Zhao, as outlined above, all the elements of claim 13, therefore is rejected for the same reasons as those presented for claim 13, mutatis mutandis. Magliozzi in view of Zhao further in view of Jethwa further teaches the limitation:
wherein the chat bot is configured, using a natural language processing engine, to perform at least one of text communication, audio communication, or video communication (Magliozzi, [0028] “The NLP server 110 implements machine learning techniques to understand user intent, determine responses, learn responses, and train the chatbot system 100. Structured and unstructured data can be stored in the database 112 and accessed by the NLP server 110 and the dialogue manager 108.” Jethwa, [0074] “The ML engine may also identify a primary potential intent among the one or more potential intents for the user query…at 308 the step of predicting, using the ML engine, the one or more responses in any or combination of the textual form, the audio form, and video form based on the extracted set of attributes and the generated trained model.” and [0053] “In an embodiment, the ML engine may be configured with language processing engines to receive the user query in any language and provide the response corresponding to the user query in any language.”).
Accordingly, it would have been obvious to a person of ordinary skill in the art, before the effective filing date of the claimed invention, having a combination of Magliozzi, Zhao, and Jethwa before them, to incorporate the audio response capability, as taught by Jethwa into the chatbot system of Magliozzi. One would have been motivated to make such a combination in order to expand the deployment channels (e.g., telephone or smart device) and to increase accessibility for users who require spoken language interaction.
Claims 5, 12, and 20 are rejected under the 35 U.S.C. 103 as being unpatentable over Magliozzi et al., (Pub. No.: US 20180131645 A1 (Filed: 2017)) in view of Zhao et al., (Pub No.: US 20210073224 A1 (Filed: 2020)) further in view of Yadu et al., (Pub. No.: US 20200412671 A1 (Filed: 2019)).
Regarding claim 5, Magliozzi in view of Zhao, as outlined above, all the elements of claim 1, therefore is rejected for the same reasons as those presented for claim 1, mutatis mutandis. However, Magliozzi in view of Zhao does not teach, but Magliozzi in view of Zhao further in view of Yadu teaches the limitation:
wherein providing the stored response to the user device comprises: providing a link to a page including a representation of the stored response (Magliozzi, paragraph [0035] “the user may send a question and/or conversation via the first communications interface 102…to the dialogue manager 108. The dialogue manager 108 can trigger a fallthrough (e.g., execute a series of if-else statements or a series of switch statements) to send the request from the dialogue manager 108 to the NLP server 110 for further processing.” [0036] “ the dialogue manager 108 obtains an answer from the user to a question, the question-answer pair is stored in the database 112.” Yadu, paragraph [0033] “The chat bot, named “Helpbot” in this example, furnishes a response 602b that includes a hyperlink 602c and an explanation of the relevance of hyperlink 602c…A chat bot response 604d includes a hyperlink 602e for documentation on the subject of user question 604c.”).
Accordingly, it would have been obvious to a person of ordinary skill in the art, before the effective filing date of the claimed invention, having a combination Magliozzi, Zhao, and Yadu before them, to incorporate the function for providing a hyperlink in a response, as taught by Yadu, into the Magliozzi chatbot system. One would have been motivated to make such a combination in order to give a more thorough explanation to a question than with a short simple response.
Regarding claim 12, Magliozzi in view of Zhao, as outlined above, all the elements of claim 6, therefore is rejected for the same reasons as those presented for claim 6, mutatis mutandis. However, Magliozzi in view of Zhao does not teach, but Magliozzi in view of Zhao further in view of Yadu teaches the limitation:
wherein providing the stored response to the user device comprises: providing a link to a video representing the stored response (Magliozzi, paragraph [0035] “the user may send a question and/or conversation via the first communications interface 102…to the dialogue manager 108. The dialogue manager 108 can trigger a fallthrough (e.g., execute a series of if-else statements or a series of switch statements) to send the request from the dialogue manager 108 to the NLP server 110 for further processing.” [0036] “ the dialogue manager 108 obtains an answer from the user to a question, the question-answer pair is stored in the database 112.” Yadu, paragraph [0033] “The chat bot, named “Helpbot” in this example, furnishes a response 602b that includes a hyperlink 602c and an explanation of the relevance of hyperlink 602c…A chat bot response 604d includes a hyperlink 602e for documentation on the subject of user question 604c.” – a hyperlink could inherently include a link to a video response).
Accordingly, it would have been obvious to a person of ordinary skill in the art, before the effective filing date of the claimed invention, having a combination Magliozzi, Zhao, and Yadu before them, to incorporate the function for providing a hyperlink to a video in a response into the Magliozzi chatbot system. One would have been motivated to make such a combination in order to communicate an answer in a more effective and engaging way possible.
Regarding claim 20, Magliozzi in view of Zhao, as outlined above, all the elements of claim 13, therefore is rejected for the same reasons as those presented for claim 13, mutatis mutandis. However, Magliozzi in view of Zhao does not teach, but Magliozzi in view of Zhao further in view of Yadu teaches the limitation:
wherein providing the stored response to the user device comprises: providing a link to a page comprising text or a video representing the stored response (Magliozzi, paragraph [0035] “the user may send a question and/or conversation via the first communications interface 102…to the dialogue manager 108. The dialogue manager 108 can trigger a fallthrough (e.g., execute a series of if-else statements or a series of switch statements) to send the request from the dialogue manager 108 to the NLP server 110 for further processing.” [0036] “ the dialogue manager 108 obtains an answer from the user to a question, the question-answer pair is stored in the database 112.” Yadu, paragraph [0033] “The chat bot, named “Helpbot” in this example, furnishes a response 602b that includes a hyperlink 602c and an explanation of the relevance of hyperlink 602c…A chat bot response 604d includes a hyperlink 602e for documentation on the subject of user question 604c.” - a hyperlink could inherently include a link to a video response.).
Accordingly, it would have been obvious to a person of ordinary skill in the art, before the effective filing date of the claimed invention, having a combination Magliozzi, Zhao, and Yadu before them, to incorporate the function for providing a hyperlink to a video in a response into the Magliozzi chatbot system. One would have been motivated to make such a combination in order to communicate an answer in a more effective and engaging way possible.
Claims 7 and 15 are rejected under the 35 U.S.C. 103 as being unpatentable over Magliozzi et al., (Pub. No.: US 20180131645 A1 (Filed: 2017)) in view of Zhao et al., (Pub. No.: US 20210073224 A1 (Filed: 2020)) further in view of Venkatasubramanyam (Pub. No.: US 20210264804 A1 (Filed: 2020)) further in view of Jethwa et al., (Pub. No.: US 20220318679 A1 (Filed: 2022)).
Regarding claim 7, Magliozzi in view of Zhao, as outlined above, all the elements of claim 6, therefore is rejected for the same reasons as those presented for claim 6, mutatis mutandis. However, Magliozzi in view of Zhao does not teach, but Magliozzi in view of Zhao further in view of Venkatasubramanyam further in view of Jethwa teaches the limitation:
wherein the query comprises text, wherein receiving the query from the user device comprises: receiving an audio or video query from the user device (Magliozzi, [0087] “Also, a computer may have one or more input and output devices. These devices can be used, among other things, to present a user interface... a computer may receive input information through speech recognition or in other audible format.” Venkatasubramanyam, paragraph [0058] “The data transfer module 201k receives a query from a knowledge seeker through one of multiple interfaces via the graphical user interface (GUI) 201c on the electronic device 201. The multiple interfaces comprise text boxes, chat interfaces, voice interfaces, phone applications, interactive chat bots, virtual reality interfaces and augmented reality interfaces.” Jethwa, paragraph [0019] “a knowledgebase may include a set of expressions associated with one or more potential intents corresponding to the user queries; extract, by a bot maker engine, a set of attributes corresponding to form of the user query, where the form of the user query is selected from any or a combination of a textual form, an audio form, and a video form;”); and generating the query by applying a speech-to-text engine to the received audio or video query (Venkatasubramanyam, paragraph [0058] “The data transfer module receives the query and the feedback from the knowledge seeker, and sends the retrieved experience to the knowledge seeker through a translate layer comprising text to speech, speech to text, and language translations on receiving a request for the translate layer from the knowledge seeker. The translate layer is disclosed in the detailed description of FIG. 1.” Paragraph [0075] “The chatbot platform 403 also comprises the translate layer 705 disclosed in the detailed description of FIG. 1. The translate layer comprises text to speech and speech to text services, and a translation application programming interface (API), which provides translation services when requested by other services of the smart-learning and knowledge retrieval system (SLKRS) 201e and ultimately by a knowledge seeker...the pattern recognition module 707 checks simplified and rephrased questions against a knowledge base 710 using pattern recognition, and the NLP module 708 utilizes trained models 711 to determine a close match for a query received from a knowledge seeker.”).
Accordingly, it would have been obvious to a person of ordinary skill in the art , before the effective filing date of the claimed invention, having Magliozzi, Zhao, Venkatasubramanyam, and Jethwa before them, to incorporate the ability to process audio and video queries into the Magliozzi chatbot framework. One would have been motivated to do this to achieve the predictable result of enabling the chatbot’s text-based semantic engine to function across all major customer communication channels.
Regarding claim 15 , Magliozzi in view of Zhao, as outlined above, all the elements of claim 13, therefore is rejected for the same reasons as those presented for claim 13, mutatis mutandis. However, Magliozzi in view of Zhao does not teach, but Magliozzi in view of Zhao further in view of Venkatasubramanyam further in view of Jethwa teaches the limitation:
wherein receiving the query from the user device comprises: receiving an audio or video query from the user device (Magliozzi, [0087] “Also, a computer may have one or more input and output devices. These devices can be used, among other things, to present a user interface... a computer may receive input information through speech recognition or in other audible format.” Venkatasubramanyam, paragraph [0058] “The data transfer module 201k receives a query from a knowledge seeker through one of multiple interfaces via the graphical user interface (GUI) 201c on the electronic device 201. The multiple interfaces comprise text boxes, chat interfaces, voice interfaces, phone applications, interactive chat bots, virtual reality interfaces and augmented reality interfaces.” Jethwa, paragraph [0019] “a knowledgebase may include a set of expressions associated with one or more potential intents corresponding to the user queries; extract, by a bot maker engine, a set of attributes corresponding to form of the user query, where the form of the user query is selected from any or a combination of a textual form, an audio form, and a video form;”); and generating the text query by applying a speech-to-text engine to the received audio or video query (Venkatasubramanyam, paragraph [0058] “The data transfer module receives the query and the feedback from the knowledge seeker, and sends the retrieved experience to the knowledge seeker through a translate layer comprising text to speech, speech to text, and language translations on receiving a request for the translate layer from the knowledge seeker. The translate layer is disclosed in the detailed description of FIG. 1.” Paragraph [0075] “The chatbot platform 403 also comprises the translate layer 705 disclosed in the detailed description of FIG. 1. The translate layer comprises text to speech and speech to text services, and a translation application programming interface (API), which provides translation services when requested by other services of the smart-learning and knowledge retrieval system (SLKRS) 201e and ultimately by a knowledge seeker...the pattern recognition module 707 checks simplified and rephrased questions against a knowledge base 710 using pattern recognition, and the NLP module 708 utilizes trained models 711 to determine a close match for a query received from a knowledge seeker.”).
Accordingly, it would have been obvious to a person of ordinary skill in the art , before the effective filing date of the claimed invention, having Magliozzi, Zhao, Venkatasubramanyam, and Jethwa before them, to incorporate the ability to process audio and video queries into the Magliozzi chatbot framework. One would have been motivated to do this to achieve the predictable result of enabling the chatbot’s text-based semantic engine to function across all major customer communication channels.
Claims 8 and 16 are rejected under the 35 U.S.C. 103 as being unpatentable over Magliozzi et al., (Pub. No.: US 20180131645 A1 (Filed: 2017)) in view of Zhao et al., (Pub. No.: US 20210073224 A1 (Filed: 2020)) further in view of Mao et al., (Pub. No.: US 20230092702 A1 (Filed: 2022))
Regarding claim 8, Magliozzi in view of Zhao, as outlined above, all the elements of claim 6, therefore is rejected for the same reasons as those presented for claim 6, mutatis mutandis. Magliozzi in view of Zhao further teaches:
adding the stored prompt and the stored response to the contact center knowledgebase by: recording a contact center engagement between a second user device and an agent device (Magliozzi, [0104] ”If the chatbot detects a question from the user, the chatbot determines a response to the question based on the language model.” [0105] “In some aspects, in order to respond to the question, a natural language processor included in the chatbot (e.g., NLP server 110 in FIG. 1) can parse the question based on natural language techniques and process the question using the language model.” [0107] “The chatbot system can assign a confidence value to every response that is generated by the NLP server. The confidence value indicates the probability of the response being an accurate response to a particular question. That is, for each question from a user, the NLP server can determine multiple possible responses to the question.” [0110] “If the NLP server cannot predict an answer to a question using the language model, it may route the question to an administrator (agent) for an answer. The response from the administrator can be transmitted back to the NLP server. The NLP server can then update the language model to include the question and the answer.” );
determining, using an artificial intelligence engine, a question of a user of the second user device and an answer provided by the agent of the agent device (Magliozzi, [0108] “If the confidence value is less than the pre-defined threshold, the NLP server can transmit the question along with the multiple possible responses to an administrator via a communications interface (e.g., second communications interface 114). The administrator can review the question and the possible responses generated by the NLP server. The administrator can select the best possible answer from among the possible responses or provide an entirely new answer to the NLP server. The chatbot can transmit this answer to the user as an answer to the user's question and update the language model based on the administrator's answer.”);
storing, in the contact center knowledgebase, the question and the answer as the stored prompt and the stored response (Magliozzi, [0041] “The database 112 can store question-answer pairs, user data, user preferences, important reminders, and tips. The NLP server 110 and the dialogue manager 108 can access the database 112 to obtain appropriate information that can be used to engage the user with the system 100. Structured and unstructured data obtained from the user, the administrator, the NLP server 110, and the dialogue manager 108 can be stored in the database 112. In some cases, the database 112 may include or be augmented with databases for users, bot knowledgebase, and message queue.”).
However, Magliozzi in view of Zhao does not teach, but Mao does teach the limitation:
removing, from the question and from the answer by the artificial intelligence engine, at least one of: personally identifiable information of the user, voice information of the user, or imagery of the user (Mao, paragraph [0090] “ the enhanced utterance identification process 700 also parses or otherwise analyzes the transcript of the conversation to automatically remove personally identifiable information, such as, names, addresses, email addresses, telephone numbers, and/or the like…utilizes a neural network named entity recognition model that identifies or otherwise tags the type of speech for different words or terms within an utterance (e.g., adjective, noun, verb, pronoun, etc.) to identify proper nouns or other candidate words or terms that could contain personally identifiable information. The set of candidate words or terms are compared to a reference library of names, and identified candidate words or terms are removed from the conversation utterances when they match or are otherwise substantially similar to (e.g., within a threshold cosine distance of) a name in the reference library.”);
Accordingly, it would have been obvious to a person of ordinary skill in the art, before the effective filing date of the claimed invention, having a combination of Magliozzi, Zhao, and Mao before them, to incorporate the function of removing personally identifiable information (PII), as taught by Mao, into the Magliozzi chatbot system. One would have been motivated to make such a combination in order to protect the privacy of the user and ensure regulatory compliance when creating a robust knowledge base.
Regarding claim 16, Magliozzi in view of Zhao, as outlined above, all the elements of claim 13, therefore is rejected for the same reasons as those presented for claim 13, mutatis mutandis. Magliozzi in view of Zhao further teaches:
add the stored prompt and the stored response to the contact center knowledgebase by: recording a contact center engagement between a client device and an agent device (Magliozzi, [0104]”If the chatbot detects a question from the user (client), the chatbot determines a response to the question based on the language model.” [0105] “In some aspects, in order to respond to the question, a natural language processor included in the chatbot (e.g., NLP server 110 in FIG. 1) can parse the question based on natural language techniques and process the question using the language model.” [0107] “The chatbot system can assign a confidence value to every response that is generated by the NLP server. The confidence value indicates the probability of the response being an accurate response to a particular question. That is, for each question from a user, the NLP server can determine multiple possible responses to the question.” [0110] “If the NLP server cannot predict an answer to a question using the language model, it may route the question to an administrator (agent) for an answer. The response from the administrator can be transmitted back to the NLP server. The NLP server can then update the language model to include the question and the answer.” );
determining, using an artificial intelligence engine, a question of a user of the client device and an answer provided by the agent of the agent device (Magliozzi, [0108] “If the confidence value is less than the pre-defined threshold, the NLP server can transmit the question along with the multiple possible responses to an administrator via a communications interface (e.g., second communications interface 114). The administrator can review the question and the possible responses generated by the NLP server. The administrator can select the best possible answer from among the possible responses or provide an entirely new answer to the NLP server. The chatbot can transmit this answer to the user as an answer to the user's question and update the language model based on the administrator's answer.”);
storing, in the contact center knowledgebase, the question and the answer as the stored prompt and the stored response (Magliozzi, [0041] “The database 112 can store question-answer pairs, user data, user preferences, important reminders, and tips. The NLP server 110 and the dialogue manager 108 can access the database 112 to obtain appropriate information that can be used to engage the user with the system 100. Structured and unstructured data obtained from the user, the administrator, the NLP server 110, and the dialogue manager 108 can be stored in the database 112. In some cases, the database 112 may include or be augmented with databases for users, bot knowledgebase, and message queue.”).
However, Magliozzi in view of Zhao does not teach, but Mao does teach the limitation:
removing, from the question and from the answer by the artificial intelligence engine, at least one of: personally identifiable information of the user, voice information of the user, or imagery of the user (Mao, paragraph [0090] “ the enhanced utterance identification process 700 also parses or otherwise analyzes the transcript of the conversation to automatically remove personally identifiable information, such as, names, addresses, email addresses, telephone numbers, and/or the like…utilizes a neural network named entity recognition model that identifies or otherwise tags the type of speech for different words or terms within an utterance (e.g., adjective, noun, verb, pronoun, etc.) to identify proper nouns or other candidate words or terms that could contain personally identifiable information. The set of candidate words or terms are compared to a reference library of names, and identified candidate words or terms are removed from the conversation utterances when they match or are otherwise substantially similar to (e.g., within a threshold cosine distance of) a name in the reference library.”);
Accordingly, it would have been obvious to a person of ordinary skill in the art, before the effective filing date of the claimed invention, having a combination of Magliozzi, Zhao, and Mao before them, to incorporate the function of removing personally identifiable information (PII), as taught by Mao, into the Magliozzi chatbot system. One would have been motivated to make such a combination in order to protect the privacy of the user and ensure regulatory compliance when creating a robust knowledge base.
Conclusion
Applicant's amendment necessitated the new ground(s) of rejection presented in this Office action. Accordingly, THIS ACTION IS MADE FINAL. See MPEP § 706.07(a). Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to Daravanh Phakousonh whose telephone number is (571)272-6324. The examiner can normally be reached Mon - Thurs 7 AM - 5 PM, Every other Friday 7 AM - 4PM.
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, Li B Zhen can be reached at 571-272-3768. 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.
/Daravanh Phakousonh/Examiner, Art Unit 2121
/Li B. Zhen/Supervisory Patent Examiner, Art Unit 2121