DETAILED ACTION
The action is responsive to the Application filed on 09/17/2024. Claims 1-20 are pending in the case. Claims 1, 11 and 20 are independent claims.
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 .
Specification
The title of the invention is not descriptive. A new title is required that is clearly indicative of the invention to which the claims are directed.
The following title is suggested: METHOD, APPARATUS, DEVICE, AND STORAGE MEDIUM FOR PROCESSING INFORMATION IN A CHAT SESSION BETWEEN A USER AND A DIGITAL ASSISTANT.
Claim Rejections - 35 USC § 112
The following is a quotation of 35 U.S.C. 112(b):
(b) CONCLUSION.—The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the inventor or a joint inventor regards as the invention.
The following is a quotation of 35 U.S.C. 112 (pre-AIA ), second paragraph:
The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the applicant regards as his invention.
Claims 9 and 19 are rejected under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph, as being indefinite for failing to particularly point out and distinctly claim the subject matter which the inventor or a joint inventor (or for applications subject to pre-AIA 35 U.S.C. 112, the applicant), regards as the invention. The claims recite “sending the target message and the operation information to the service end a session message link” which is grammatically incorrect therefore making the claims indefinite. For the purposes of examination, Examiner assumed the claims to recite “sending the target message and the operation information to the service via a session message link”.
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)(2) the claimed invention was described in a patent issued under section 151, or in an application for patent published or deemed published under section 122(b), in which the patent or application, as the case may be, names another inventor and was effectively filed before the effective filing date of the claimed invention.
Claims 1-20 are rejected under 35 U.S.C. 102(a)(2) as being anticipated by Salowitz et al. (US 20250005072 A1, hereinafter Salowitz).
As to claim 1, Salowitz discloses a method for processing information, comprising:
opening a session in response to a predetermined operation associated with an application ("For example, the user may provide a keyboard shortcut to activate the discovery mode," Salowitz paragraph 0074; "FIG. 1A illustrates searching a timeline 130 of user interactions. AI explorer 102 is a user interface that enables a user to browse through timeline 130 of interactions that the user has had with one or more computing devices," Salowitz paragraph 0037; "Chat interface 150 enables a conversational or chatbot style interaction with AI explorer 102. In some configurations, chat interface 150 is integrated into search bar 110 or vice-versa," Salowitz paragraph 0045);
obtaining a target message input by a user in the session; wherein both the user and a digital assistant are members of the session, and the target message is sent for the digital assistant by the user ("Disclosed are systems and methods that leverage machine learning techniques to provide personalized assistance on a computing device," Salowitz paragraph 0005; "A user may supply prompt 152 to chat interface 150. Prompt 152 may include text that is provided to a machine learning model, such as a large language model or multi-modal generative model," Salowitz paragraph 0045);
obtaining operation information of the user in the application ("Prompt 152 may be augmented with additional information derived from the current context, such as the applications that are currently open, conversations or meetings that are currently active and their participants, documents that are open, content that is visible on the screen, etc.," Salowitz paragraph 0045, getting application that is open and content that is visible on the screen on the application); and
sending the target message and the operation information to a server ("Although the following illustration refers to the components of the figures, it should be appreciated that the operations of the routines 600 & 700 may be also implemented in many other ways. For example, the routines 600 & 700 may be implemented, at least in part, by a processor of another remote computer or a local circuit," Salowitz paragraph 0102; "Next at operation 706, a current interaction 520 of an individual application 400 is received. The current interaction may be a screenshot taken when the content of the individual application 400 changed," Salowitz paragraph 0092; "Next at operation 708, the current interaction 520 is provided to the machine learning model 330 with prompt 525," Salowitz paragraph 0093).
As to claim 2, Salowitz discloses the method of claim 1, wherein obtaining the operation information of the user in the application comprises:
providing an interface to the application ("Context engine 210 may determine usernames, file names, and the like via automation or usability application programming interfaces (APIs). In some configurations, context engine uses these APIs to extract information from an application that is rendered by the application, such as the content of a web form, but which is not practically or efficiently obtained by analyzing a screenshot of the application," Salowitz paragraph 0051);
obtaining the operation information of the user in the application sent by the application through the interface ("Context engine 210 may determine usernames, file names, and the like via automation or usability application programming interfaces (APIs). In some configurations, context engine uses these APIs to extract information from an application that is rendered by the application, such as the content of a web form, but which is not practically or efficiently obtained by analyzing a screenshot of the application," Salowitz paragraph 0051).
As to claim 3, Salowitz discloses the method of claim 1, wherein a first data structure is predefined, the first data structure comprises one or more parameters, and the operation information has the first data structure ("Context engine 210 may determine usernames, file names, and the like via automation or usability application programming interfaces (APIs). In some configurations, context engine uses these APIs to extract information from an application that is rendered by the application, such as the content of a web form, but which is not practically or efficiently obtained by analyzing a screenshot of the application," Salowitz paragraph 0051; "Each timeline entry 132 represents an interaction the user had with an application. Interactions may represent outputs generated by the application, such as graphics, text, images, audio, virtual reality projections, tactile output, or the like. Interactions may also represent inputs, such as microphone input, keyboard or mouse input, touch input, etc. Interactions may be stored as screenshots, audio recordings, transcripts, or any other direct or indirect representation of the output generated or input received by the computing device," Salowitz paragraph 0037).
As to claim 4, Salowitz discloses the method of claim 3, wherein the one or more parameters and corresponding parameter values are represented in a string format ("Each timeline entry 132 represents an interaction the user had with an application. Interactions may represent outputs generated by the application, such as graphics, text, images, audio, virtual reality projections, tactile output, or the like. Interactions may also represent inputs, such as microphone input, keyboard or mouse input, touch input, etc. Interactions may be stored as screenshots, audio recordings, transcripts, or any other direct or indirect representation of the output generated or input received by the computing device," Salowitz paragraph 0037).
As to claim 5, Salowitz discloses the method of claim 3, further comprising:
receiving, by the server, registration information of the application, the registration information comprising definition information of the first data structure ("Context engine 210 may determine usernames, file names, and the like via automation or usability application programming interfaces (APIs). In some configurations, context engine uses these APIs to extract information from an application that is rendered by the application, such as the content of a web form, but which is not practically or efficiently obtained by analyzing a screenshot of the application," Salowitz paragraph 0051).
As to claim 6, Salowitz discloses the method of claim 1, wherein the operation information comprises at least one of:
a type of operation of the user in the application ("Timeline entry 132 may be generated automatically as the user interacts with the computing device. For example, timeline entries 132 may be created in response to particular events, such as bringing an application into or out of focus, an application receiving user input such as a keyboard press or mouse click, an application being refreshed to display different content, or the like. For example, a screenshot may be taken in response to the user opening a new document in an application, or as the user scrolls through a document that is open in the application," Salowitz paragraph 0039);
a content targeted by the operation in the application ("Context engine 210 captures information about applications. In some configurations, context information refers to information that is not derived from content rendered by the application. For example, the size and location may be obtained for any application, as can whether the application has the operating system focus. Specific applications may have specific types of context information that is discoverable by context engine 210. For example, an electronic message application may display a conversation between two or more people. The electronic message application may display first and last names of each participant, while context engine 210 may determine the usernames of the participants. Similarly, context engine 210 may determine which document an application has open," Salowitz paragraph 0051).
As to claim 7, Salowitz discloses the method of claim 1, further comprising:
sending information of the application to the server ("Although the following illustration refers to the components of the figures, it should be appreciated that the operations of the routines 600 & 700 may be also implemented in many other ways. For example, the routines 600 & 700 may be implemented, at least in part, by a processor of another remote computer or a local circuit," Salowitz paragraph 0102; "Next at operation 706, a current interaction 520 of an individual application 400 is received. The current interaction may be a screenshot taken when the content of the individual application 400 changed," Salowitz paragraph 0092; "Next at operation 708, the current interaction 520 is provided to the machine learning model 330 with prompt 525," Salowitz paragraph 0093).
As to claim 8, Salowitz discloses the method of claim 7, wherein the information of the application comprises at least one of:
a type of the application ("Context engine 210 captures information about applications. In some configurations, context information refers to information that is not derived from content rendered by the application. For example, the size and location may be obtained for any application, as can whether the application has the operating system focus. Specific applications may have specific types of context information that is discoverable by context engine 210. For example, an electronic message application may display a conversation between two or more people. The electronic message application may display first and last names of each participant, while context engine 210 may determine the usernames of the participants. Similarly, context engine 210 may determine which document an application has open," Salowitz paragraph 0051);
a link to a page associated with the session in the application ("Context engine 210 captures information about applications. In some configurations, context information refers to information that is not derived from content rendered by the application. For example, the size and location may be obtained for any application, as can whether the application has the operating system focus. Specific applications may have specific types of context information that is discoverable by context engine 210. For example, an electronic message application may display a conversation between two or more people. The electronic message application may display first and last names of each participant, while context engine 210 may determine the usernames of the participants. Similarly, context engine 210 may determine which document an application has open. Context engine 210 may determine usernames, file names, and the like via automation or usability application programming interfaces (APIs)," Salowitz paragraph 0051; “However, context information may also include data that has been rendered by the application or operating system, such as a filename of an open document,” Salowitz paragraph 0066).
As to claim 9, Salowitz discloses the method of claim 1, wherein sending the target message and the operation information to the server comprises:
sending the target message and the operation information to the service via a session message link ("Although the following illustration refers to the components of the figures, it should be appreciated that the operations of the routines 600 & 700 may be also implemented in many other ways. For example, the routines 600 & 700 may be implemented, at least in part, by a processor of another remote computer or a local circuit," Salowitz paragraph 0102; "Next at operation 706, a current interaction 520 of an individual application 400 is received. The current interaction may be a screenshot taken when the content of the individual application 400 changed," Salowitz paragraph 0092; "Next at operation 708, the current interaction 520 is provided to the machine learning model 330 with prompt 525," Salowitz paragraph 0093; "According to various configurations, the computer architecture 800 may operate in a networked environment using logical connections to remote computers through the network 820. The computer architecture 800 may connect to the network 820 through a network interface unit 822 connected to the bus 810," Salowitz paragraph 0109).
As to claim 10, Salowitz discloses the method of claim 1, wherein the session is a single chat session between the user and the digital assistant ("Chat interface 150 enables a conversational or chatbot style interaction with AI explorer 102. In some configurations, chat interface 150 is integrated into search bar 110 or vice-versa. A user may supply prompt 152 to chat interface 150. Prompt 152 may include text that is provided to a machine learning model, such as a large language model or multi-modal generative model," Salowitz paragraph 0045).
As to claim 11, Salowitz discloses an electronic device, comprising:
at least one processing unit (“FIG. 8 shows additional details of an example computer architecture 800 for a device, such as a computer or a server configured as part of the systems described herein, capable of executing computer instructions (e.g., a module or a program component described herein). The computer architecture 800 illustrated in FIG. 8 includes processing unit(s) 802, a system memory 804,” Salowitz paragraph 0103); and
at least one memory coupled to the at least one processing unit and storing instructions for execution by the at least one processing unit, the instructions, when executed by the at least one processing unit, causing the electronic device to perform the operations (“FIG. 8 shows additional details of an example computer architecture 800 for a device, such as a computer or a server configured as part of the systems described herein, capable of executing computer instructions (e.g., a module or a program component described herein). The computer architecture 800 illustrated in FIG. 8 includes processing unit(s) 802, a system memory 804,” Salowitz paragraph 0103) comprising:
opening a session in response to a predetermined operation associated with an application ("For example, the user may provide a keyboard shortcut to activate the discovery mode," Salowitz paragraph 0074; "FIG. 1A illustrates searching a timeline 130 of user interactions. AI explorer 102 is a user interface that enables a user to browse through timeline 130 of interactions that the user has had with one or more computing devices," Salowitz paragraph 0037; "Chat interface 150 enables a conversational or chatbot style interaction with AI explorer 102. In some configurations, chat interface 150 is integrated into search bar 110 or vice-versa," Salowitz paragraph 0045);
obtaining a target message input by a user in the session; wherein both the user and a digital assistant are members of the session, and the target message is sent for the digital assistant by the user ("Disclosed are systems and methods that leverage machine learning techniques to provide personalized assistance on a computing device," Salowitz paragraph 0005; "A user may supply prompt 152 to chat interface 150. Prompt 152 may include text that is provided to a machine learning model, such as a large language model or multi-modal generative model," Salowitz paragraph 0045);
obtaining operation information of the user in the application ("Prompt 152 may be augmented with additional information derived from the current context, such as the applications that are currently open, conversations or meetings that are currently active and their participants, documents that are open, content that is visible on the screen, etc.," Salowitz paragraph 0045, getting application that is open and content that is visible on the screen on the application); and
sending the target message and the operation information to a server ("Although the following illustration refers to the components of the figures, it should be appreciated that the operations of the routines 600 & 700 may be also implemented in many other ways. For example, the routines 600 & 700 may be implemented, at least in part, by a processor of another remote computer or a local circuit," Salowitz paragraph 0102; "Next at operation 706, a current interaction 520 of an individual application 400 is received. The current interaction may be a screenshot taken when the content of the individual application 400 changed," Salowitz paragraph 0092; "Next at operation 708, the current interaction 520 is provided to the machine learning model 330 with prompt 525," Salowitz paragraph 0093).
As to claim 12, it is substantially similar to claim 2 and is therefore rejected using the same rationale as above.
As to claim 13, it is substantially similar to claim 3 and is therefore rejected using the same rationale as above.
As to claim 14, it is substantially similar to claim 4 and is therefore rejected using the same rationale as above.
As to claim 15, it is substantially similar to claim 5 and is therefore rejected using the same rationale as above.
As to claim 16, it is substantially similar to claim 6 and is therefore rejected using the same rationale as above.
As to claim 17, it is substantially similar to claim 7 and is therefore rejected using the same rationale as above.
As to claim 18, it is substantially similar to claim 8 and is therefore rejected using the same rationale as above.
As to claim 19, it is substantially similar to claim 9 and is therefore rejected using the same rationale as above.
As to claim 20, Salowitz discloses a non-transitory computer-readable storage medium having a computer program stored thereon, the computer program being executable by a processor to implement operations (“FIG. 8 shows additional details of an example computer architecture 800 for a device, such as a computer or a server configured as part of the systems described herein, capable of executing computer instructions (e.g., a module or a program component described herein). The computer architecture 800 illustrated in FIG. 8 includes processing unit(s) 802, a system memory 804,” Salowitz paragraph 0103) comprising:
opening a session in response to a predetermined operation associated with an application ("For example, the user may provide a keyboard shortcut to activate the discovery mode," Salowitz paragraph 0074; "FIG. 1A illustrates searching a timeline 130 of user interactions. AI explorer 102 is a user interface that enables a user to browse through timeline 130 of interactions that the user has had with one or more computing devices," Salowitz paragraph 0037; "Chat interface 150 enables a conversational or chatbot style interaction with AI explorer 102. In some configurations, chat interface 150 is integrated into search bar 110 or vice-versa," Salowitz paragraph 0045);
obtaining a target message input by a user in the session; wherein both the user and a digital assistant are members of the session, and the target message is sent for the digital assistant by the user ("Disclosed are systems and methods that leverage machine learning techniques to provide personalized assistance on a computing device," Salowitz paragraph 0005; "A user may supply prompt 152 to chat interface 150. Prompt 152 may include text that is provided to a machine learning model, such as a large language model or multi-modal generative model," Salowitz paragraph 0045);
obtaining operation information of the user in the application ("Prompt 152 may be augmented with additional information derived from the current context, such as the applications that are currently open, conversations or meetings that are currently active and their participants, documents that are open, content that is visible on the screen, etc.," Salowitz paragraph 0045, getting application that is open and content that is visible on the screen on the application); and
sending the target message and the operation information to a server ("Although the following illustration refers to the components of the figures, it should be appreciated that the operations of the routines 600 & 700 may be also implemented in many other ways. For example, the routines 600 & 700 may be implemented, at least in part, by a processor of another remote computer or a local circuit," Salowitz paragraph 0102; "Next at operation 706, a current interaction 520 of an individual application 400 is received. The current interaction may be a screenshot taken when the content of the individual application 400 changed," Salowitz paragraph 0092; "Next at operation 708, the current interaction 520 is provided to the machine learning model 330 with prompt 525," Salowitz paragraph 0093).
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure:
US 20120265528 A1 to Gruber et al. discloses using context information to facilitate processing of commands in a virtual assistant where a user can provide a prompt to a virtual assistant in addition to context data comprising names and values;
US 20250077237 A1 to Sachindran et al. discloses a GAI to app interface engine where prompts and current application context data are provided to a large language model to obtain an output; and
US 20250078822 A1 to Perkins et al. discloses prompting language models to select API calls where a large language model is provided with context data comprising context parameter names and context parameter values.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to DANIEL SAMWEL whose telephone number is (313) 446-6549. The examiner can normally be reached Monday through Thursday 8:00-6:00 EST.
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, Kieu Vu can be reached at (571) 272-4057. 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.
/DANIEL SAMWEL/Primary Examiner, Art Unit 2171