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 .
Status of the Claims
Claims 1-20 are pending.
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 an abstract idea without significantly more.
Step 1
Claims 1-15 is directed to a series of steps, and therefore is a process.
Claim 16-20 is directed to a system with multiple components, and therefore is a machine.
Independent Claims
Step 2A Prong One
The limitation of Claim 1 recites:
A method, comprising:
receiving, from a customer, a customer request …;
displaying … the customer request;
processing the customer request … to determine a suggested response to the customer request; and
displaying in … …:
the suggested response to the customer request;
a first … element configured to implement the suggested response; and
a second … element configured to dismiss or modify the suggested response.
The limitation of Claim 16 recites:
receive, from a customer, a customer request …;
display … the customer request;
process the customer request … to determine a suggested response to the customer request; and
display … … :
the suggested response to the customer request;
a first …element configured to implement the suggested response; and
a second … element configured to dismiss or modify the suggested response.
The claim limitations as drafted, recite a concept, that, under broadest reasonable interpretation, is a certain method of organizing human activity. The limitations are analogous to managing personal behavior or interactions between people (interactions between people), or a commercial or legal interaction (sales activity) such as preparing suggested responses for customer tickets. The generic computer implementations (see below) do not change the character of the limitations. Accordingly, the claims recite an abstract idea.
Step 2A Prong Two
The judicial exception is not integrated into a practical application. In particular, the claims recite the following additional elements:
Claim 1:
Communication channel
Customer support user interface
First machine learning model
Agent assistance user interface element
First user interface element
Second user interface element
Claim 16:
A processing system, comprising:
one or more memories comprising computer-executable instructions; and
one or more processors, coupled to the one or more memories, configured to execute the computer-executable instructions and cause the processing system to:
Communication channel
Customer support user interface
First machine learning model
Agent assistance user interface element
First user interface element
Second user interface element
These additional elements are recited at a high-level of generality such that they amount to no more than generally linking the use of a judicial exception to a particular technological environment or field of use. Accordingly, the additional elements, when viewed individually and in combination, do not integrate the abstract idea into a practical application because they do not impose any meaningful limits on practicing the abstract idea. The claims do not amount to more than generally linking the use of a judicial exception to a particular technological environment or field of use (see MPEP 2106.05(h))
Therefore, the claims recite an abstract idea.
Step 2B
As discussed above with respect to Step 2A Prong Two, the additional elements, amount to no more than generally linking the use of a judicial exception to a particular technological environment or field of use. The same analysis applies here in 2B. The additional elements, when considered separately and in combination, do not add significantly more to the exception. They are generally linking the use of a judicial exception to a particular technological environment or field of use and cannot integrate a judicial exception into a practical application at Step 2A or provide an inventive concept in Step 2B. The claims are ineligible.
Dependent Claims
Dependent claims 2-15 and 17-20 further narrow the same abstract ideas recited in Claims 1 and 16. Therefore, Dependent claims 2-15 and 17-20 are directed to an abstract idea for the reasons given above.
Step 2A Prong Two
The judicial exception is not integrated into a practical application. In particular, the dependent claims recite the following additional elements:
Claim 3
API
Claim 7
API
Claim 12
Training of the first machine learning model
Claim 14
Second machine learning model
Claim 18
API
Claim 20
Second machine learning model
Training of the first machine learning model
These additional elements are recited at a high-level of generality such that they amount to no more than generally linking the use of a judicial exception to a particular technological environment or field of use. Accordingly, the additional elements, when viewed individually and in combination, do not integrate the abstract idea into a practical application because they do not impose any meaningful limits on practicing the abstract idea. The claims do not amount to more than generally linking the use of a judicial exception to a particular technological environment or field of use (see MPEP 2106.05(h)). Therefore, the claims recite an abstract idea.
Step 2B
As discussed above with respect to Step 2A Prong Two, the additional elements, amount to no more than generally linking the use of a judicial exception to a particular technological environment or field of use. The same analysis applies here in 2B. The additional elements, when considered separately and in combination, do not add significantly more to the exception. They are generally linking the use of a judicial exception to a particular technological environment or field of use and cannot integrate a judicial exception into a practical application at Step 2A or provide an inventive concept in Step 2B. The claims are ineligible.
Claim Rejections - 35 USC § 102
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 the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action:
A person shall be entitled to a patent unless –
(a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale, or otherwise available to the public before the effective filing date of the claimed invention.
Claims 1-2, 4-17 and 19-20 are rejected under 35 U.S.C. 102(a)(1) as being unpatentable by Sait (US20230059605A1).
Claim 1: Sait teaches A method, comprising:
receiving, from a customer, a customer request via a communication channel; (Sait, Par. 0017)
Sait, in par. 0017, teaches a problem or customer issue may be identified from a real case and the case details may be presented to a human agent, such as an expert agent, as a query on a user interface.
displaying in a customer support user interface the customer request; (Sait, Par. 0017)
Sait, in par. 0017, teaches a problem or customer issue may be identified from a real case and the case details may be presented to a human agent, such as an expert agent, as a query on a user interface.
processing the customer request with a first machine learning model to determine a suggested response to the customer request; and (Sait, Par. 0017)
Sait, in par. 0017, teaches a problem or customer issue may be identified from a real case and the case details may be presented to a human agent, such as an expert agent, as a query on a user interface. A real case may refer to a call that may have been handled by a human agent in the past. In one example, the case details may be obtained from historical call data. The user interface may list a set of resolution steps, also referred to as troubleshooting steps, for the issue identified from the real case. The troubleshooting steps may be determined from the historical call data, for example, using a first machine learning model. The troubleshooting steps determined from the historical call data may be presented contextually on the user interface to the human agent as suggested responses.
displaying in an agent assistance user interface element in the customer support user interface:
the suggested response to the customer request; (Sait, Par. 0017)
Sait, in par. 0017, teaches a problem or customer issue may be identified from a real case and the case details may be presented to a human agent, such as an expert agent, as a query on a user interface. A real case may refer to a call that may have been handled by a human agent in the past. In one example, the case details may be obtained from historical call data. The user interface may list a set of resolution steps, also referred to as troubleshooting steps, for the issue identified from the real case. The troubleshooting steps may be determined from the historical call data, for example, using a first machine learning model. The troubleshooting steps determined from the historical call data may be presented contextually on the user interface to the human agent as suggested responses.
a first user interface element configured to implement the suggested response; and (Sait, Par. 0018; 0062 Fig. 4b)
Sait, par. 0018, teaches the human agent may select a response from the suggested responses as their response, also referred to as agent response, or may provide a different troubleshooting step as the agent response.
Sait, in par. 0062, teaches as shown in FIG. 4b, the communication window 414 displays the conversation between the expert agent and the system 100 acting as the customer. For example, if the expert agent selects ‘check for wireless light blinking’ from the suggestion window 410, it may be displayed in the communication window 414 as block 412.
a second user interface element configured to dismiss or modify the suggested response. (Sait, Par. 0018; 0062 Fig. 4b)
Sait, par. 0018, teaches The human agent may select a response from the suggested responses as their response, also referred to as agent response, or may provide a different troubleshooting step as the agent response.
Sait, in par. 0062, teaches In one example, the expert agent may provide an agent response as shown in block 430 asking the customer to check the printer status by selecting block 432 from the suggestion window 410. (i.e. modify response)
Claim 2: Sait teaches The method of Claim 1, wherein processing the customer request with the first machine learning model to determine the suggested response to the customer request comprises:
providing a prompt to the first machine learning model, the prompt comprising:
first information related to an intended purpose for the first machine learning model (Sait, Par. 0060)
Sait, Par. 0060, teaches On providing the query, the system 100 may also provide a set of troubleshooting steps related to the query in a suggestion window 410. The troubleshooting steps may be determined from historical call data based on the query provided in the query window 408 and the background information provided in block 406 as discussed earlier. In an example, the first machine learning model 206 may be executed by the system 100 to determine the set of troubleshooting steps to be displayed in the suggestion window 410. In one example, the troubleshooting steps may be presented contextually. For example, the troubleshooting steps may be ordered based on their complexity or frequency of usage or similarity to the issue.
second information related to a format of response to be provided by the first machine learning model; and (Sait, Par. 0060)
Sait, Par. 0060, teaches On providing the query, the system 100 may also provide a set of troubleshooting steps related to the query in a suggestion window 410. The troubleshooting steps may be determined from historical call data based on the query provided in the query window 408 and the background information provided in block 406 as discussed earlier. In an example, the first machine learning model 206 may be executed by the system 100 to determine the set of troubleshooting steps to be displayed in the suggestion window 410. In one example, the troubleshooting steps may be presented contextually. For example, the troubleshooting steps may be ordered based on their complexity or frequency of usage or similarity to the issue.
third information related to one or more rules associated with a response to be provided by the first machine learning model; (Sait, Par. 0060)
Sait, Par. 0060, teaches On providing the query, the system 100 may also provide a set of troubleshooting steps related to the query in a suggestion window 410. The troubleshooting steps may be determined from historical call data based on the query provided in the query window 408 and the background information provided in block 406 as discussed earlier. In an example, the first machine learning model 206 may be executed by the system 100 to determine the set of troubleshooting steps to be displayed in the suggestion window 410. In one example, the troubleshooting steps may be presented contextually. For example, the troubleshooting steps may be ordered based on their complexity or frequency of usage or similarity to the issue.
providing data corresponding to a list of available actions for the first machine learning model to choose from, wherein each available action of the list of available actions comprises one or more parameters related to each available action; (Sait, par. 0029; Par. 0012)
Sait, Par. 0029, teaches the processor 102 may execute instructions 106 to receive an agent response to the query from a human agent, for example, an expert agent. An expert human agent may be a person who is able to efficiently resolve the customer issue through a series of troubleshooting steps. In one example, based on the query, a set of suggested troubleshooting steps may be provided by the processor 102 on the user interface to help the human agent provide a response. In one example, the suggested troubleshooting steps may be identified by a first machine learning model based on historical call data. The human agent may select a step from the list of troubleshooting steps as the agent response or may provide a different troubleshooting step as the agent response
Sait, Par. 0012 teaches Historical call data used to train the agent assistance applications may include details of calls (including voice calls and text messages) that were handled by human agents in the past. The details may include, for example, queries posed by customers, customer background information, resolution steps provided, customer messages received, whether the call succeeded, suggestions for more efficient resolution, and the like. The details of calls may be obtained from transcripts of the calls and notes provided by the human agents.
providing the customer request to the first machine learning model; (Sait, par. 0029)
Sait, Par. 0029, teaches the processor 102 may execute instructions 106 to receive an agent response to the query from a human agent, for example, an expert agent. An expert human agent may be a person who is able to efficiently resolve the customer issue through a series of troubleshooting steps. In one example, based on the query, a set of suggested troubleshooting steps may be provided by the processor 102 on the user interface to help the human agent provide a response. In one example, the suggested troubleshooting steps may be identified by a first machine learning model based on historical call data. The human agent may select a step from the list of troubleshooting steps as the agent response or may provide a different troubleshooting step as the agent response
receiving first classification output corresponding to an intent associated with the customer request and second classification output corresponding to a procedure associated with the customer request; and (Sait, par. 0021)
The present subject matter may thus learn from a variety of resolution routes used by the expert agents for different types of issues, which may not be otherwise available in historical call data. Thus, the present subject matter can help codify the knowledge of expert agents for efficient resolution of customer issues. In one example, the user interface used may be a gamification interface. In the gamification interface, various game-like elements may be provided, such as score keeping, competition between different expert agents, recording time to resolution, and the like, to increase the engagement of expert agents and collect more and better quality data for training the third machine learning model.
receiving the suggested response to the customer request. (Sait, Par. 0029)
Sait, Par. 0029, teaches the processor 102 may execute instructions 106 to receive an agent response to the query from a human agent, for example, an expert agent. An expert human agent may be a person who is able to efficiently resolve the customer issue through a series of troubleshooting steps. In one example, based on the query, a set of suggested troubleshooting steps may be provided by the processor 102 on the user interface to help the human agent provide a response. In one example, the suggested troubleshooting steps may be identified by a first machine learning model based on historical call data. The human agent may select a step from the list of troubleshooting steps as the agent response or may provide a different troubleshooting step as the agent response
Claim 4: The method of Claim 2, wherein the list of available actions comprises at least one of:
one or more supervised actions that require an operator approval to be implemented; or (Sait, Fig. 4b: Suggestion window 410, various options that require an operator)
one or more safe actions that do not require the operator approval to be implemented.
Claim 5: The method of Claim 2, wherein:
the intent associated with the customer request comprises fourth information related to what the customer is requesting to achieve in the customer request, and the procedure associated with the customer request comprises fifth information related to one or more steps to follow in order to fulfill the customer request. (Sait, Par. 0030;0062)
Sait, Par. 0030, teaches Based on the agent response, the processor 102 may execute instructions 108 to provide a simulated customer message in response to the agent response. The simulated customer message may also be generated based on the historical call data. In an example, the simulated customer message may be determined using a second machine learning model and may be presented on the user interface.
Sait, Par. 0062, teaches As shown in FIG. 4b, the communication window 414 displays the conversation between the expert agent and the system 100 acting as the customer. For example, if the expert agent selects ‘check for wireless light blinking’ from the suggestion window 410, it may be displayed in the communication window 414 as block 412. A simulated customer message for example, ‘IP not connected’ may be provided by the block 416. As discussed earlier, the simulated customer message may be determined based on the historical call data, for example, using the second machine learning model 208.
Claim 6: The method of Claim 5, further comprising:
implementing the one or more steps corresponding to the procedure based on the intent associated with the customer request. (Sait, Par. 0062)
Sait, Par. 0062, teaches As shown in FIG. 4b, the communication window 414 displays the conversation between the expert agent and the system 100 acting as the customer. For example, if the expert agent selects ‘check for wireless light blinking’ from the suggestion window 410, it may be displayed in the communication window 414 as block 412. A simulated customer message for example, ‘IP not connected’ may be provided by the block 416. As discussed earlier, the simulated customer message may be determined based on the historical call data, for example, using the second machine learning model 208.
Claim 7: Sait teaches The method of Claim 1, further comprising:
receiving a selection of the first user interface element; and implementing the suggested response by executing at least one of:
one or more external actions each implemented by an Application Programming Interface (API) for an external service;
or one or more internal actions implemented without an API for an external service. (Sait, Par. 0017, not done through API)
Claim 8: The method of Claim 7, wherein implementing the suggested response comprises sending a response to the customer request via the communication channel. (Sait, Par. 0064 and fig. 4b)
Sait, Par. 0064, teaches In one example, after each simulated customer message is received in the communication window 414, the suggested troubleshooting steps in the suggestion window 410 may be updated by the system 100 based on the last customer message received and in the context of the query and previous troubleshooting steps provided in the communication window 414. For example, the suggested troubleshooting steps shown in suggestion window 410 of FIG. 4b may be provided after the simulated customer message ‘done’ is received at block 428 from the system 100 indicating that it has been ensured that the correct port has been selected. In one example, the expert agent may provide an agent response as shown in block 430 asking the customer to check the printer status by selecting block 432 from the suggestion window 410.
Claim 9: The method of Claim 7, wherein implementing the suggested response comprises taking an action to modify an account associated with the customer. (Sait, Par. 4b: accessing account (i.e. admin access))
Claim 10: Sait teaches The method of Claim 1, further comprising:
receiving a selection of the second user interface element; and (Sait, Par. 0056: The human agent may select a troubleshooting step from the suggested troubleshooting steps to respond to the customer query or may also provide their own troubleshooting step)
dismissing the suggested response. (Sait, Par. 0056: The human agent may select a troubleshooting step from the suggested troubleshooting steps to respond to the customer query or may also provide their own troubleshooting step)
Claim 11: Sait teaches The method of Claim 1, further comprising:
receiving a selection of the second user interface element;(Sait, Par. 0056) and
displaying in the customer support user interface an editor user interface element comprising:
a third user interface element configured to receive an input to edit the suggested response; (Sait, Par. 0056: The human agent may select a troubleshooting step from the suggested troubleshooting steps to respond to the customer query or may also provide their own troubleshooting step)
a fourth user interface element configured to implement the edited suggested response; and (Sait, Par. 0056: The human agent may select a troubleshooting step from the suggested troubleshooting steps to respond to the customer query or may also provide their own troubleshooting step)
a fifth user interface element configured to cancel editing the suggested response. (Sait, Par. 0056: The human agent may select a troubleshooting step from the suggested troubleshooting steps to respond to the customer query or may also provide their own troubleshooting step)
Claim 12: Sait teaches The method of Claim 1, further comprising:
receiving an input from an operator comprising a selection of the first user interface element or the second user interface element; and (Sair, par. 0065: Thus, sequences of agent responses and customer messages usable to resolve the query may be learned from multiple expert agents and used to subsequently train support applications as discussed earlier.)
triggering an offline training or evaluating instance for the first machine learning model by processing the received input from the operator as a feedback for the first machine learning model. (Sait, Par. 0065: Thus, sequences of agent responses and customer messages usable to resolve the query may be learned from multiple expert agents and used to subsequently train support applications as discussed earlier.)
Claim 13: Sait teaches The method of Claim 12, wherein triggering the offline training or evaluating instance for the first machine learning model comprises determining a performance metric associated with the suggested response. (Sait, par. 0067)
Claim 14: Sait teaches The method of Claim 1, further comprising:
processing with a second machine learning model the suggested response; (Sait, Par. 0068-0070)
receiving an output from the second machine learning model related to the suggested response; and (Sait, Par. 0068-0070)
triggering an offline training or evaluating instance for the first machine learning model by processing the received output from the second machine learning model related to the suggested response as a feedback for the first machine learning model. (Sait, Par. 0068-0070)
Claim 15: Sait teaches The method of Claim 1, further comprising:
receiving in an inquiry user interface element in the customer support user interface an inquiry from an operator; (Sait, Par. 0029; Fig. 4b)
processing the inquiry from the operator with the first machine learning model to determine a response; and (Sait, Par. 0029; Fig. 4B)
displaying in the customer support user interface the response from the first machine learning model. (Sait, Par. 0029; Fig. 4b)
Claims 16-17 and 19-20:
Claim 16 is directed to a system. Claim 16 recites limitations that are parallel in nature as those addressed above for claims 1-2, 4 and 14 which are directed towards a method. Claim 16 is therefore rejected for the same reasons as set forth above for claims 1-2, 4 and 14, respectively. Furthermore, claim 16 recites memories and processors instructions which are taught by Sait in Par. 0024 and 0035.
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.
This application currently names joint inventors. In considering patentability of the claims the examiner presumes that the subject matter of the various claims was commonly owned as of the effective filing date of the claimed invention(s) absent any evidence to the contrary. Applicant is advised of the obligation under 37 CFR 1.56 to point out the inventor and effective filing dates of each claim that was not commonly owned as of the effective filing date of the later invention in order for the examiner to consider the applicability of 35 U.S.C. 102(b)(2)(C) for any potential 35 U.S.C. 102(a)(2) prior art against the later invention.
The factual inquiries for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows:
1. Determining the scope and contents of the prior art.
2. Ascertaining the differences between the prior art and the claims at issue.
3. Resolving the level of ordinary skill in the pertinent art.
4. Considering objective evidence present in the application indicating obviousness or nonobviousness.
Claims 3 and 18 are rejected under 35 U.S.C. 103 unpatentable by Sait (US20230059605A1) and in further view of DeFilippo (US20220366277A1)
Claim 3: Sait teaches The method of Claim 2, but it does not teach but DeFilippo teaches wherein:
at least a first one of the list of available actions comprises an external action that is implemented by an Application Programming Interface (API) for an external service, and at least a second one of the list of available actions comprises an internal action that is implemented without an API for an external service. (DeFilippo, Par. 0167: While illustrated as an integrated component of the computer 2002, in alternative implementations, the API 2012 or the service layer 2013 can be stand-alone components in relation to other components of the computer 2002 and other components communicably coupled to the computer 2002. Moreover, any or all parts of the API 2012 or the service layer 2013 can be implemented as child or sub-modules of another software module, enterprise application, or hardware module without departing from the scope of the present disclosure.)
It would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to include actions performed through API or stand alone as taught by DeFilippo the system of Sait, since the claimed invention is merely a combination of old elements, and in the combination each element merely would have performed the same function as it did separately, and one of ordinary skill in the art would have recognized that the results of the combination were predictable.
Claims 18:
Claim 18 is directed to a system. Claim 18 recites limitations that are parallel in nature as those addressed above for claim 3 which is directed towards a method. Claim 18 is therefore rejected for the same reasons as set forth above for claim 3.
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to ISMAIL A MANEJWALA whose telephone number is (571)272-8904. The examiner can normally be reached M-F 8-5.
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, Nathan Uber can be reached at 571-270-3923. 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.
/ISMAIL A MANEJWALA/Primary Examiner, Art Unit 3628