DETAILED ACTION
This office action is a First Action on the Merits (FAOM) for the claim set submitted on 03/14/2024. Claims 1-20 are pending and have been considered.
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 .
Priority
Acknowledgment is made of applicant’s claim for foreign priority under 35 U.S.C. 119
(a)-(d). The certified copy has been filed for the parent Application No. JP2023-151708, filed on 09/19/2023.
Information Disclosure Statement
The information disclosure statement(s) submitted on 03/14/2024 and 09/05/2024 is/are in compliance with the provisions of 37 CFR 1.97. Accordingly, the information disclosure statement(s) is/are being considered by the examiner.
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 examiner suggests incorporating the invention’s concept of decomposed question answering into the title as the means of information processing.
The disclosure is objected to because of the following informalities:
Applicant is recommended to define “database (DB)” (emphasis added to underlined portion) in paragraph [0004] of the specification. Currently, there is this disclosure in [0016] of the instant application, but this does not consider the references of “DB” with regard to Figure 1.
[0076] of the instant application makes reference to “FIG. 19”. There is no such associated figure in the submitted drawings. The examiner believes this reference number should be changed to “FIG. 8” as that is the figure illustrating a hardware configuration.
Appropriate correction is required.
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.
Claim(s) 1-20 is/are rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea without significantly more.
Independent claim(s) 1, 19, 20 recite:
select[ing], based on a content of an input question, a database corresponding to the question among a plurality of databases respectively storing different kinds of data;
generat[ing] a prompt to be input to a language model based on the selected database and the question; and
generat[ing] an answer based on the prompt and the language model.
These limitations, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components. For example, the claim(s) read(s) on selecting the correct location, i.e. database, to find an answer given a question, generating instructions for gathering the answer based on the determined answer location and input question, and generating an answer based on the instructions. That is, other than reciting “language model”, nothing in the claim element precludes the step from practically being performed in the mind.
For example, consider researching a topic in a physical library. Based on a given research topic which can be physically written on paper, a user will know which sections of the library to look in, i.e. if the research topic/question is about determining who discovered the speed of light, the researcher will look towards physical science, engineering, etc., whereas if the research topic/question is about a fictional event/character, the researcher will direct themselves towards that area, e.g. “database”, of the library, wherein each section of the library containing different books will also inherently contain different kinds of written data. Further, generation of a prompt can be written on paper and provided to a person, i.e. researcher, representing the “language model” ([0007] of the instant application discloses use of “any other language model than the LLM which is capable of handling and understanding a natural language may be used”). In view of this definition provided in the spec, any person who understand the natural language the prompt is written in can classify as a “language model”; therefore, generation of a written instruction based on previous written data to be presented to a user is a mental process associated with reading/writing the research question/topic. Further, generating an answer based on the prompt and language model, wherein the prompt can be written and the language model can be a human user, indicates a text retrieval task based on the received question transformed into a prompt which will be entirely based on the reading and writing comprehension of the researching “language model” (user) as would be determined mentally.
All of these steps can be performed in the mind and/or using pen and paper. If a claim limitation, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components, then it falls within the “Mental Processes” grouping of abstract ideas. Accordingly, the claim recites an abstract idea (Step 2A, Prong one, Yes).
This judicial exception is not integrated into a practical application because the addition of generically recited computer elements does not add a meaningful limitation to the abstract idea because they amount to simply implementing the abstract idea on a computer. The claims are directed to an abstract idea. The claims do not include additional elements that are sufficient to amount to significantly more than the judicial exception ( Step 2A, Prong two, No). As discussed above, with respect to integration of an abstract idea into a practical application, the additional element of “select[ing]” and “generat[ing]” are merely for the purpose of data gathering, storing, processing, and/or insignificant extra-solution activity that amount to no more than mere instructions to apply the exception using a generic computer component. Paragraph(s) [0076]-[0084] of the instant application disclose(s) applying the method to a generic computing device such as a PC. These paragraphs make reference to Fig. 8 which appears to be nothing beyond a generic processing device with generic components, i.e. “computer device 900”. Mere instructions to apply the exception using a generic computer component cannot provide an inventive concept. Therefore, the claims are not patent eligible (Step 2B, No).
Similarly, dependent claim(s) 2-18 include additional steps that are considered “insignificant extra-solution activity to judicial exception” because they fail to provide meaningful significance that goes beyond generally linking the use of an abstract idea to a particular technological environment.
For example, claim 2 reads on a question matching rule based on the input question and plurality of databases. Determining to match the topic of a question to an area related to the question is a mental process, i.e. if the question is related to the speed of light, one will likely look towards a physics/electrical area as would be determined mentally.
Claim 3 reads on generating partial questions and an order of the partial questions based on the original question, and generating individual question-database pairings for the partial questions to be turned into prompts. As previously discussed, generation of questions, prompts, and answers can be performed mentally with the aid of pen and paper. Extending this operation into partial questions and/or more than one questions does not prevent this operation from being performed mentally.
Claim 4 reads on the switch rule associating questions to prompts for producing questions to be included in prompts and generating prompts based on the selected prompt associated with the question pairing, wherein the second prompt is dependent upon the answer from the first prompt. As previously discussed, generation of questions/prompts/answers are mental processes aided with pen and paper. Generating a relationship or connection from a question to a prompt can similarly be achieved through physically writing/establishing the connection. Updating a selected prompt based on a new question is essentially a “fill-in-the-blank” operation with information from the new question which can be written and/or processed mentally. Generating a second answer based on a first answer is also a mental process related to extended chains of thought as are produced mentally, i.e. for an overall question “When was the speed of light discovered?” there could be a first sub-question “Who discovered the speed of light?”, the answer from which would be required for a second question “When did [discoverer_entity] determine that to be the speed of light?”.
Claim 5 reads on including a variable in the second text prompt, wherein the value of the variable is determined based upon the answer to the first partial question, and the second prompt is generated based on the updated prompt text-database relation. Consider the previously cited example: for an overall question “When was the speed of light discovered?” there could be a first sub-question “Who discovered the speed of light?”, the answer from which would be required for a second question “When did [discoverer_entity] determine that to be the speed of light?”. In this example, the variable is the discoverer and the value, i.e. their name, is assigned in the second prompt text associated with an inventor/discoverer section of physical media. Updating the formatting of prompts is equivalent to a word replacement operation which can be performed mentally with the aid of pen and paper.
Claim 6 reads on determining the consistency of generated answers based on a comparison to the prompt or question, wherein corrections are made to inconsistent answers. Performing error checking on generated answers is a mental process. One can read the generated answers and check to see if the answers are correct based on knowledge of the correct answers. Further, corrections can be physically written on a physical document presenting physically written answers to written questions/prompts.
Claim 7 reads on presenting generated answers to a user to determine the consistency of generated answers based on a comparison to the prompt or question, wherein corrections are made to inconsistent answers. Performing error checking on generated answers is a mental process. One can read the generated answers and check to see if the answers are correct based on knowledge of the correct answers. Further, corrections can be physically written on a physical document presenting physically written answers to written questions/prompts.
Claim 8 reads on extracting data related to the question from the related database and generating the prompt based on the question and extracted data. Extracting data from a physical data source is equivalent to writing notes based on the topic being researched. Generating a prompt based on the extracted data is equivalent to writing instructions to be performed.
Claim 9 reads on generating the prompt through storing the question in a first field of a sentence template for prompt generation and storing the extracted data in the second field of a prompt template, wherein the question and data are to be stored. Writing a prompt so that the ordering is first a question followed by related, extracted data is a mental decision to be made when writing the prompt using pen and paper; therefore, this is a mental process.
Claim 10 reads on a code executer configured to execute a program code in a case where program code is included in the answer. A code executer is a generic computing component being used to perform mental processes. No inventive step is introduced through use of a generic computing component for performing mental processes.
Claim 11 reads on the program code including a variable representing a sensor and a command for executing processing based on a value of the variable, wherein the value is time series data of the sensor assigned to the variable for executing and outputting results. Tracking sensor data is a mental process, i.e. a user can visually check a sensor, e.g. analog thermometer, every five minutes. Based on this data, they can then execute a command to increase the temperature in the room if the thermometer reading goes too low. All of these operations can be performed mentally with the aid of pen and paper.
Claim 12 reads on generating a graph based on the variable data, wherein the graph is output. Generating a graph based on time series data is a mental process aided by pen and paper. Considering the previously cited temperature example, the user monitoring the temp will be able to plot a Temperature v. Time line graph using pen and paper.
Claim 13 reads on the input question being input by a user and the output being presented to the user. A user can speak and/or write the command “Will you please monitor the temperature of this room every five minutes?” based on which another user can generate the plot on paper to be shown to the user asking for the monitoring. The generated plot can similarly be shown to the requesting user via the drawn plot. Nothing precludes this operation from being performed in the mind with the aid of pen and paper.
Claim 14 reads on a language model executer configured to execute the language model, wherein the answer is acquired from the language model by inputting the prompt to the language model. There is no limitation that the language model executer must be a computing component and cannot be an instruction written on paper to be performed by the person representing the language model. Further, gathering an answer from a person given a written prompt is a mental process.
Claim 15 reads on the language model being a large language model. Incorporating a generic, well-known language model into a mental process to perform the mental process does not provide an inventive step.
Claim 16 reads on the question being related to a state of a facility in which a plurality of sensors are disposed, wherein the sensors monitor the state of the facility, further wherein the plurality of databases includes at least each of a database related to a kind of monitored state, equipment, and sensors. As previously disclosed, consider the sensors to be analog thermometers which can be mentally processed by a user. Based on the temperature, the user can make conclusions about facility states as would be performed mentally, i.e. this room is colder than the other room. Further, with regard to the databases, there is no limitation preventing all of the information required from each of the databases from being written and stored in a physical repository which can be accessed and read through mental process aided with pen and paper.
Claim 17 reads on generating the plurality of partial questions and determination of the order of questions through applying, to the question, a planning algorithm that plans partial questions and an order of the partial questions. There is no limitation preventing the “planning algorithm” from being a written instruction on paper, i.e. “Generate a list of partial questions based on your received question, wherein each partial question will sequentially answer a part of the original question to be combined with other partial question answers”. The partial questions and associated ordering can be determined mentally with the aid of pen and paper.
Claim 18 reads on a question input device configured to accept an input question from a user through a screen of an application, wherein the partial questions and ordering of partial question are based on the received question sent by the user to the input device. As previously disclosed, generation of questions and/or partial question based on an original question is a mental process. Providing this mentally generated question via screen of an application is assigning a mental process to a generic technological environment; therefore, no inventive step is provided with this claim. The examiner respectfully asserts that the question could be written on paper and presented with the same functionality as that of the screen of an application, i.e. the paper represents the “screen”.
Therefore, these claims are also not patent eligible.
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.
Claim(s) 1-5, 8-9, 14-15, 17-20 is/are rejected under 35 U.S.C. 102(a)(2) as being anticipated by Mohammed et al. (US-20240403112-A1), hereinafter Mohammed.
Regarding claim 1, Mohammed discloses: an information processing apparatus (Abstract, apparatuses… for executing complex computing tasks…planning agent decomposes, by the planning agent, the use case input into a plurality of tasks for achieving the objective, [Decomposes a use case into tasks indicates a processing of that use case through decomposition]) comprising a processing circuitry ([0091] Hardware processor 139 comprises electrical circuitry) configured to:
select, based on a content of an input question ([Fig. 4, Use Case Input 401], [0040] the use case input may be a natural language input comprising a text string defining an objective in natural language. The natural language input may be typed into a user interface of the computing device or be provided as spoken language recorded by a microphone, [Comparing the format of the input 401 of Mohammed to that of the instant application, see [0011] “want to know whether Room RM 101 was appropriately cooled yesterday, show it in a graph”, the “questions” between the two sources appear to be synonymous, indicating the input of Mohammed to be a question]), a database corresponding to the question among a plurality of databases respectively storing different kinds of data ([Fig. 1, Task Agent 107 Connected to an Associated Tool Repository 108], [0044] The planning agent provides each of the plurality of tasks to a respective task agent for execution. Each task agent identifies a tool suitable for performing the task in the computing platform based on the task. Each task agent uses the respective identified tool to execute an operation corresponding to the respective task in the computing platform, [0067] a tool repository 108 includes a plurality of tools that the task agent can access. In some embodiments, additional tools can be provided to the tool repository 108 to allow further operations to be performed in the computing platform 102, [Defining individual task agents for performing tasks separately, wherein each task agent has its own associated tool repository, indicates each tool repository to be a database corresponding to the question, i.e. task, among the plurality of task agents (indicating a plurality of databases/repositories), wherein different tasks being performed by the agents indicates different data associated with the different tasks for performing the different tasks, otherwise there would be no need to have multiple task agents/tool repositories. Further, the examiner asserts that tools for performing operations will necessarily be comprised of data to perform those operations]);
generate a prompt to be input to a language model based on the selected database and the question ([Fig. 5, Task Prompt 503 based on selected tool, i.e. database, and input task, i.e. question], [0123] wherein each task agent provides the respective task prompt to the second large language model); and,
generate an answer based on the prompt and the language model ([0076] the task agent generates a structured response based on the results of the execution. This may involve requiring that the task agent calls a further tool at the end of every task execution so that all necessary responses are communicated to a file that can be read by listeners, [In the context of the input being a “question”, output in response to a question will be an answer]).
Regarding claim 2, Mohammed discloses: the information processing apparatus according to claim 1.
Mohammed further discloses:
wherein the processing circuitry specifies a question matching the input question based on a switch rule associating the plurality of databases with a plurality of questions and selects a database corresponding to the specified question ([0046] The planning agent may retrieve the use case template from a template repository 106 storing different template examples, [0075] Deterministic input for the tools is ensured by providing a task prompt template that mandates a structured format, [Retrieving use case templates based on operations to answer questions indicates the template to be selected for a particular case based on a mandated match. Further, in view of the plurality of task agents with associated tool (see Fig. 3), this indicates the template to be used by the tools to be one of many based on type of question received, wherein the tools used can be switched based on the required tasks comprising the input question]).
Regarding claim 3, Mohammed discloses: the information processing apparatus according to claim 2.
Mohammed further discloses:
wherein the processing circuitry
performs, based on the question, generation of a plurality of partial questions and determination of an order of the plurality of partial questions ([0044] a planning agent may receive a use case input from a user indicating an objective for completion in the computing platform. The planning agent decomposes the use case input into a plurality of tasks for achieving the objective, [0055] Decomposing a use case input into a plurality of tasks may comprise building a directed dependency graph of the plurality of tasks based on dependencies between the tasks of the plurality of tasks. The directed dependency graph indicates which other tasks must be completed before execution of a given task can begin. Tasks upon which other tasks are dependent are prioritized, [0056] the planning agent may also determine a schedule for execution of the plurality of tasks, [Prioritizing and being aware of task dependencies suggests a priority order of each task, i.e. partial question, comprising the overall use case, i.e. input question]),
selects a first partial question among the plurality of partial questions in accordance with the order and selects a first database based on a content of the first partial question ([Fig. 3, Task Agent A 107 with selected Tool 1 110], [In view of the previously cited scheduling/prioritizing of tasks based on dependencies, one of the tasks, i.e. partial question, with an associated tool, i.e. database, will necessarily require representation of a first partial question in view of the remaining tasks/partial question, i.e. Task Agent A, and a first database, i.e. Tool 1, based on the content of the partial question]),
generates a first prompt to be input to the language model based on the first database and the first partial question and generates an answer to the first partial question based on the first prompt and the language model ([Fig. 5, Task Prompt 503 based on selected tool, i.e. database, and input task, i.e. question], [0123] wherein each task agent provides the respective task prompt to the second large language model, [0076] the task agent generates a structured response based on the results of the execution. This may involve requiring that the task agent calls a further tool at the end of every task execution so that all necessary responses are communicated to a file that can be read by listeners, [In the context of the input being a “question”, output in response to a question will be an answer]), and
selects a second partial question among the plurality of partial questions in accordance with the order and selects a second database based on a content of the second partial question ([Fig. 3, Task Agent B 107 with selected Tool 2 110], [In view of the previously disclosed scheduling/prioritizing and first task/tool, any of the other task agents/tools represent partial questions/databases respectively, wherein the tools are selected based on what is required by the task, i.e. question]), and
generates a second prompt to be input to the language model based on the second database, the second partial question, and the answer to the first partial question ([In view of the previous disclosure of [0123] defining each task agent to be providing respective task prompts to the language model indicates at least a second prompt to be input to the language model based on the second partial question and database, wherein the previously cited task dependencies/schedule necessarily requires a second prompt dependent upon the answer to a first partial question to answer the second partial question, i.e. task]).
Regarding claim 4, Mohammed discloses: the information processing apparatus according to claim 3.
Mohammed further discloses:
wherein the switch rule associates the plurality of questions with a plurality of prompt texts for producing a question to be included in the prompt ([0046] The planning agent may retrieve the use case template from a template repository 106 storing different template examples, [0075] Deterministic input for the tools is ensured by providing a task prompt template that mandates a structured format),
the processing circuitry selects a first prompt text from the switch rule based on the content of the first partial question and generates the first prompt based on the first database and the first prompt text ([0062] The task prompt may be generated by combining the some or all of the task (such as the information defining the task type and the task parameters) with a task prompt template. The task prompt template may be retrieved by the task agent 107 from the template repository 106, [In view of the previously disclosed plurality of prompt texts from prompt text repository 106, gathering a prompt template for a task, i.e. question, based on a mandated match (see [0075]) indicates the template to be selected based on the content of the first partial question. Further, combining the current task with the task template indicates a dependency upon the first database, i.e. tools associated with the task, and first prompt text, i.e. task, to come to the current prompt]), and
the processing circuitry selects a second prompt text from the switch rule based on the content of the second partial question and generates the second prompt based on the second database, the second prompt text, and the answer to the first partial question ([In view of the previous disclosure of [0123] defining each task agent to be providing respective task prompts to the language model indicates at least a second prompt to be selected based on the second partial question and database, wherein the previously cited task dependencies/schedule necessarily requires a second prompt dependent upon the answer to a first partial question to answer the second partial question, i.e. task. Further, the combining of a current task with a task prompt template as previously cited ([0062]) could be extended to this second, dependent task, i.e. partial question, without a change in functionality to Mohammed as Mohammed defines multiple tasks, i.e. partial questions, with associated tools, i.e. databases]).
Regarding claim 5, Mohammed discloses: the information processing apparatus according to claim 4.
Mohammed further discloses:
wherein
a variable is included in the second prompt text ([0084] generate an alert when data from a first sensor stored at a first data source is greater than a certain threshold. A use case prompt is generated by a planning agent based on the use case input and a planning template. Based on the use case prompt, the first LLM may output a plurality of tasks including a first task relating to the creation of an object corresponding to the sensor and a second task relating to ingestion of data relating to the sensor, [The variable in this instance is a Boolean variable representative of whether or not the data gathered from the first sensor exceeds a threshold and/or a quantity representing the amount of data. Further, the variable is included in the second prompt, i.e. the data ingestion, as would be required to gather the data from the sensor for ingestion]),
the second prompt text is updated by assigning, to the variable, a value included in the answer to the first partial question ([0084] The task agent may determine that a Dataset Uploader Tool is suitable for performing the second task and may determine that an identifier of the first database and a file name for the first sensor data are required as inputs for the Dataset Uploader tool as tool input parameters. The task agent may then extract an identifier of the first database and a file name for the first sensor data from the second task and provide these to the Dataset Uploader tool for execution. Further tasks may define tasks resulting in the generation of alert parameters, such as the generation of further objects linked to the object corresponding to the sensor, [In order to ingest data from an object, that object must first be defined. This indicates a first partial question variable relating to object creation/definition and a second prompt text associated with data ingestion of said previously defined variable, wherein that prompt is updated based on the object the data is gathered from (in view of the plurality of task agents performing tasks). Further still, linking objects to the sensor indicates a required generation of the sensor object, i.e. first partial question, for the linking operation, i.e. second partial question, between objects, wherein a linking prompt text would be updated through the names of object which are/have been linked as would be determined through the first partial question relating to object creation/definition]), and
the second prompt is generated based on the updated second prompt text and the second database ([0123] wherein each task agent provides the respective task prompt to the second large language model, [0076] the task agent generates a structured response based on the results of the execution. This may involve requiring that the task agent calls a further tool at the end of every task execution so that all necessary responses are communicated to a file that can be read by listeners, [Generating a structured response based on a result of execution, in view of the previously disclosed template updating for the plurality of task agents/tools, indicates not only a second prompt generated, but also executed]).
Regarding claim 8, Muhammed discloses: the information processing apparatus according to claim 1.
Muhammed further discloses:
wherein the processing circuitry extracts data related to the question from data stored in the selected database and generates the prompt based on the extracted data and the question ([0084] the use case input may indicate that the user wishes to generate an alert when data from a first sensor stored at a first data source is greater than a certain threshold. A use case prompt is generated by a planning agent based on the use case input and a planning template. Based on the use case prompt, the first LLM may output a plurality of tasks including a first task relating to the creation of an object corresponding to the sensor and a second task relating to ingestion of data relating to the sensor, [Data related to the sensor, gathered by a tool of the task agent, indicates the tool to be extracting the data from the sensor (wherein a sensor is reasonably understood to be consisting of its own personal data store, i.e. database) to be collected for ingestion. Further, generating an alert based on when data is greater than a threshold indicates the prompt is based on the extracted data, i.e. so the language model running the prompt will know when to send the alert, and the question, i.e. alert when the data is greater than a threshold]).
Regarding claim 9, Muhammed discloses: the information processing apparatus according to claim 8.
Muhammed further discloses:
wherein the prompt is generated by storing the question in a first field of a sentence template for prompt generation and storing the extracted data in a second field of the sentence template ([Fig. 5, Task Prompt 503 containing question “Upload equipment dataset” and extracted data “./equipment_raw_data.csv” which form fields of the overall sentence “Upload…’Equipment Raw’”]),
the sentence template including the first field in which the question is to be stored and the second field in which data from the database is to be stored ([In view of the previous claim element defining the sentence template to be containing similarly defined first and second fields, they will inherently be present in the sentence template defined here with the same mapping cited above]).
Regarding claim 14, Muhammed discloses: the information processing apparatus according to claim 1.
Muhammed further discloses:
further comprising a language model executer configured to execute the language model ([0129] the second large language model should provide as an output an identification of a tool capable of performing the operation in the computing platform an indication of one or more tool inputs for identified tool in order to perform the operation, [Using a language model to produce output indicates a required executer to execute the language model and produce output]), wherein the processing circuitry acquires the answer from the language model executer by inputting the prompt to the language model executer ([0123] wherein each task agent provides the respective task prompt to the second large language model, [In view of the above cited section of Muhammed disclosing language model output, when the same model receives a prompt as input, it is indicated that the answer, i.e. output, is acquired from the language model executer, i.e. that performing the operations of the language model, through inputting the prompt to the language model]).
Regarding claim 15, Muhammed discloses: the information processing apparatus according to claim 14.
Muhammed further discloses:
wherein the language model is a large language model ([0123] wherein each task agent provides the respective task prompt to the second large language model, [i.e. the language model responsible for generating answers]).
Regarding claim 17, Muhammed discloses: the information processing apparatus according to claim 3.
Muhammed further discloses:
wherein the processing circuitry performs the generation of the plurality of partial questions and the determination of the order of the plurality of partial questions by applying, to the question, a planning algorithm that plans partial questions and an order of the partial questions to obtain a correct answer to the question ([0044] The planning agent decomposes the use case input into a plurality of tasks for achieving the objective, [0056] the planning agent may also determine a schedule for execution of the plurality of tasks. Determining a schedule for execution of tasks may include building a directed dependency graph of the plurality of tasks based on dependencies between the tasks of the plurality of tasks. The directed dependency graph indicates which other tasks must be completed before execution of a given task can begin, [Scheduling execution of tasks indicates the schedule to be an ordering so there are no dependence discrepancies, considering the previously disclosed output of Muhammed which will necessarily be an answer to a received input question]).
Regarding claim 18, Muhammed discloses: the information processing apparatus according to claim 17.
Muhammed further discloses:
further comprising a question input device configured to accept an input of the question from a user through a screen of an application ([Fig. 6, Display 143 connected to Input Device 144], [0083] FIG. 3 schematically illustrates a flow of data from a user input to operations in the computing platform. A user 101 provides a use case input to the planning agent, [In view of use case input 401 of Fig. 4, indicating this to be a question in view of the instant application’s definition of question disclosed in [0011]. Further, disclosure of user input and a computing device containing a display and input device indicates the user input can be entered through the display connected to input device]),
wherein the processing circuitry performs the generation of the plurality of partial questions and the determination of the order of the plurality of partial questions for the question received by the question input device ([Fig. 3, output from Planning Agent 103 based on input from User 101], [0083] The planning agent generates a plurality of tasks based on the use case input. Each task is provided to a task agent 107. Each task agent identifies a tool 110 based on the description of the task. The identified tool 110 is used to perform an operation on the computing platform, [In view of previously cited section of Muhammed for claim 17, disclosing decomposition of input into tasks and scheduling of tasks based on task dependency, indicating the plurality of tasks, i.e. partial questions, to be performed in Fig. 3 are scheduled/ordered and determined based on received user input 101, i.e. a question]).
Regarding claim 19, Muhammed discloses: an information processing method (Abstract, Methods, apparatuses and computer programs are for executing complex computing tasks, [A complex computing task will process information on the computing device]) comprising:
selecting, based on a content of an input question ([Fig. 4, Use Case Input 401], [0040] the use case input may be a natural language input comprising a text string defining an objective in natural language. The natural language input may be typed into a user interface of the computing device or be provided as spoken language recorded by a microphone, [Comparing the format of the input 401 of Mohammed to that of the instant application, see [0011] “want to know whether Room RM 101 was appropriately cooled yesterday, show it in a graph”, the “questions” between the two sources appear to be synonymous, indicating the input of Mohammed to be a question]), a database corresponding to the question among a plurality of databases respectively storing different kinds of data ([Fig. 1, Task Agent 107 Connected to an Associated Tool Repository 108], [0044] The planning agent provides each of the plurality of tasks to a respective task agent for execution. Each task agent identifies a tool suitable for performing the task in the computing platform based on the task. Each task agent uses the respective identified tool to execute an operation corresponding to the respective task in the computing platform, [0067] a tool repository 108 includes a plurality of tools that the task agent can access. In some embodiments, additional tools can be provided to the tool repository 108 to allow further operations to be performed in the computing platform 102, [Defining individual task agents for performing tasks separately, wherein each task agent has its own associated tool repository, indicates each tool repository to be a database corresponding to the question, i.e. task, among the plurality of task agents (indicating a plurality of databases/repositories), wherein different tasks being performed by the agents indicates different data associated with the different tasks for performing the different tasks, otherwise there would be no need to have multiple task agents/tool repositories. Further, the examiner asserts that tools for performing operations will necessarily be comprised of data to perform those operations]);
generating a prompt to be input to a language model based on the selected database and the question ([Fig. 5, Task Prompt 503 based on selected tool, i.e. database, and input task, i.e. question], [0123] wherein each task agent provides the respective task prompt to the second large language model); and,
generating an answer based on the prompt and the language model ([0076] the task agent generates a structured response based on the results of the execution. This may involve requiring that the task agent calls a further tool at the end of every task execution so that all necessary responses are communicated to a file that can be read by listeners, [In the context of the input being a “question”, output in response to a question will be an answer]).
Regarding claim 20, Muhammed discloses: a non-transitory computer readable medium having a computer program stored therein which causes a computer to perform processes ([0092] Such instructions, when stored in non-transitory storage media accessible to the processor 139, render the computer system 137 into a special-purpose machine that is customized to perform the operations specified in the instructions) comprising:
selecting, based on a content of an input question ([Fig. 4, Use Case Input 401], [0040] the use case input may be a natural language input comprising a text string defining an objective in natural language. The natural language input may be typed into a user interface of the computing device or be provided as spoken language recorded by a microphone, [Comparing the format of the input 401 of Mohammed to that of the instant application, see [0011] “want to know whether Room RM 101 was appropriately cooled yesterday, show it in a graph”, the “questions” between the two sources appear to be synonymous, indicating the input of Mohammed to be a question]), a database corresponding to the question among a plurality of databases respectively storing different kinds of data ([Fig. 1, Task Agent 107 Connected to an Associated Tool Repository 108], [0044] The planning agent provides each of the plurality of tasks to a respective task agent for execution. Each task agent identifies a tool suitable for performing the task in the computing platform based on the task. Each task agent uses the respective identified tool to execute an operation corresponding to the respective task in the computing platform, [0067] a tool repository 108 includes a plurality of tools that the task agent can access. In some embodiments, additional tools can be provided to the tool repository 108 to allow further operations to be performed in the computing platform 102, [Defining individual task agents for performing tasks separately, wherein each task agent has its own associated tool repository, indicates each tool repository to be a database corresponding to the question, i.e. task, among the plurality of task agents (indicating a plurality of databases/repositories), wherein different tasks being performed by the agents indicates different data associated with the different tasks for performing the different tasks, otherwise there would be no need to have multiple task agents/tool repositories. Further, the examiner asserts that tools for performing operations will necessarily be comprised of data to perform those operations]);
generating a prompt to be input to a language model based on the selected database and the question ([Fig. 5, Task Prompt 503 based on selected tool, i.e. database, and input task, i.e. question], [0123] wherein each task agent provides the respective task prompt to the second large language model); and,
generating an answer based on the prompt and the language model ([0076] the task agent generates a structured response based on the results of the execution. This may involve requiring that the task agent calls a further tool at the end of every task execution so that all necessary responses are communicated to a file that can be read by listeners, [In the context of the input being a “question”, output in response to a question will be an answer]).
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claim(s) 6-7, 10-11, 13 is/are rejected under 35 U.S.C. 103 as being unpatentable over Mohammed in view of Hettige et al. (US-20250094821-A1), hereinafter Hettige.
Regarding claim 6, Mohammed discloses: the information processing apparatus according to claim 1.
Mohammed does not disclose:
wherein the processing circuitry determines whether the generated answer is consistent with the prompt or the question based on which the answer is generated, and
in a case where the consistency is not obtained, the processing circuitry corrects the prompt based on an inconsistent part of the answer and regenerates an answer based on the corrected prompt and the language model.
Hettige discloses:
wherein the processing circuitry determines whether the generated answer is consistent with the prompt or the question based on which the answer is generated ([0033] generating one or more responses associated with each of the one or more prompts based on the dialog script and the response template for the predefined scenario, wherein generating the one or more responses includes inserting response values into the response placeholders associated with the executable actions based on the dialog script for the predefined scenario and the associated one or more prompts, [0135] evaluating the model's ability to generate factually correct and contextually appropriate responses, particularly in high-stakes domains like healthcare, finance, or customer service. To minimize hallucinations, LLMs may be evaluated using knowledge-grounded tasks, where their outputs are compared against known factual information, [Generating responses based on prompts wherein those responses are evaluated for correctness, i.e. consistency, indicates the correctness is performed based upon whether or not the answer answers the question]), and
in a case where the consistency is not obtained, the processing circuitry corrects the prompt based on an inconsistent part of the answer and regenerates an answer based on the corrected prompt and the language model ([0167] The pre-fine-tuned LLM may randomly pick one concept and generate inaccurate, incorrect, logically inconsistent, or fabricated responses. Fine-tuning a slot-filling LLM involves training the model to generate responses that ask clarifying questions in order to gather the necessary information for slot-filling or to resolve ambiguity between similar concepts, [Adding additional clarifying question to resolve ambiguity indicates the additional questions to be representative of a corrected prompt which generates a corrected answer based on the “corrected” prompt featuring the additional questions. Consider the corrected prompts of Hettige in view of the prompts fed into language models of Muhammed for generating answers]).
Muhammed and Hettige are considered analogous art within multi-task language model processing for question-answering. Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified the teachings of Muhammed to incorporate the teachings of Hettige, because of the novel way to fine-tune LLMs on specific tasks to enhance their understanding of the assets that will be used when performing as an agent, improving the LLM’s ability to conform to natural language tasks and reducing likelihood of hallucinations in generated responses (Hettige, [0030]-[0031]).
Regarding claim 7, Muhammed discloses: the information processing apparatus according to claim 1.
Muhammed does not disclose:
wherein the processing circuitry determines whether the generated answer is consistent with the prompt or the question based on which the answer is generated, and
in a case where the consistency is not obtained, the processing circuitry presents an inconsistent part of the answer and the answer to a user, receives a correction instruction for the prompt from the user, corrects the prompt based on the correction instruction, and regenerates an answer based on the corrected prompt and the language model.
Hettige discloses:
wherein the processing circuitry determines whether the generated answer is consistent with the prompt or the question based on which the answer is generated ([0033] generating one or more responses associated with each of the one or more prompts based on the dialog script and the response template for the predefined scenario, wherein generating the one or more responses includes inserting response values into the response placeholders associated with the executable actions based on the dialog script for the predefined scenario and the associated one or more prompts, [0135] evaluating the model's ability to generate factually correct and contextually appropriate responses, particularly in high-stakes domains like healthcare, finance, or customer service. To minimize hallucinations, LLMs may be evaluated using knowledge-grounded tasks, where their outputs are compared against known factual information, [Generating responses based on prompts wherein those responses are evaluated for correctness, i.e. consistency, indicates the correctness is performed based upon whether or not the answer answers the question]), and
in a case where the consistency is not obtained, the processing circuitry presents an inconsistent part of the answer and the answer to a user, receives a correction instruction for the prompt from the user, corrects the prompt based on the correction instruction, and regenerates an answer based on the corrected prompt and the language model ([0135] Human-in-the-loop evaluation also plays a role, as human feedback can highlight cases where the model produces responses that, while coherent, deviate from the truth. By addressing hallucinations, testing ensures the reliability of LLMs and their suitability for real-world applications where factual accuracy is critical, [Applying human-in-the-loop feedback indicates the loop is for purposes of generating improved answers to questions, wherein the answers/questions are necessarily provided to the LLM as a prompt (in view of Muhammed), indicating each loop’s output receiving human feedback is representative of a regenerated answer based on a corrected prompt and language model]).
Muhammed and Hettige are considered analogous art within multi-task language model processing for question-answering. Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified the teachings of Muhammed to incorporate the teachings of Hettige, because of the novel way to fine-tune LLMs on specific tasks to enhance their understanding of the assets that will be used when performing as an agent, improving the LLM’s ability to conform to natural language tasks and reducing likelihood of hallucinations in generated responses (Hettige, [0030]-[0031]).
Regarding claim 10, Muhammed discloses: the information processing apparatus according to claim 1.
Muhammed does not disclose:
further comprising a code executer configured to execute a program code in a case where the program code is included in the answer.
Hettige discloses:
further comprising a code executer configured to execute a program code in a case where the program code is included in the answer ([0142] The system and subsystems depicted in FIG. 4 may be implemented in software (e.g., code, instructions, program) executed by one or more processing units, [Wherein the fine-tuned model 430 is disclosed to be implemented using code is also defined to be used for a question-answering task ([0130]) indicating a code to be executed in an answer produced by the model of Hettige is within the scope of Hettige]).
Muhammed and Hettige are considered analogous art within multi-task language model processing for question-answering. Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified the teachings of Muhammed to incorporate the teachings of Hettige, because of the novel way to fine-tune LLMs on specific tasks to enhance their understanding of the assets that will be used when performing as an agent, improving the LLM’s ability to conform to natural language tasks and reducing likelihood of hallucinations in generated responses (Hettige, [0030]-[0031]).
Regarding claim 11, Muhammed in view of Hettige discloses: the information processing apparatus according to claim 10.
Muhammed further discloses:
wherein in a case where the program code ([Considering the previously disclosed program code of Hettige]) includes a variable representing a sensor and a command for executing processing based on a value of the variable ([0084] use case input may indicate that the user wishes to generate an alert when data from a first sensor stored at a first data source is greater than a certain threshold, [The command tracks to sending an alert based on the data amount variable]), the code executer reads data of the sensor from a time series database storing time series data of the sensor ([It is reasonable to assume that a sensor monitoring data will store associated times with the data (consider the time stamp and/or time series data types defined in [0164] of Hettige for training LLMs which perform question-answering tasks)]), assigns the read data to the variable ([0084] a second task relating to ingestion of data relating to the sensor, [Ingestion of data in view of prompt 503 of Fig. 5 wherein the dataset variable has been assigned to that gathered by the sensor]), executes the command, and outputs a result of the processing ([0084] Further tasks may define tasks resulting in the generation of alert parameters, such as the generation of further objects linked to the object corresponding to the sensor, [Further tasks generating alert parameters indicates execution of the ‘alert’ command with the alert being output based on processing the sensor data as compared to the threshold alert parameters]).
Regarding claim 13, Muhammed in view of Hettige discloses: the information processing apparatus according to claim 11.
Muhammed further discloses:
wherein the input question is a question input from a user ([Fig. 4, Use Case Input 401], [0040] the use case input may be a natural language input comprising a text string defining an objective in natural language. The natural language input may be typed into a user interface of the computing device or be provided as spoken language recorded by a microphone, [Comparing the format of the input 401 of Mohammed to that of the instant application, see [0011] “want to know whether Room RM 101 was appropriately cooled yesterday, show it in a graph”, the “questions” between the two sources appear to be synonymous, indicating the input of Mohammed to be a question]), and
the information processing apparatus further comprises an output device configured to display the result of the processing in a way that the result is visible to the user ([0094] Computer system 137 can be coupled via the bus 138 to a display 143, such as a cathode ray tube (CRT), liquid crystal display, or touch screen, for displaying information to a user).
Claim(s) 12 is/are rejected under 35 U.S.C. 103 as being unpatentable over Muhammed in view of Hettige, further in view of Cai et al. (US-20250036376-A1), hereinafter Cai.
Regarding claim 12, Muhammed in view of Hettige discloses: the information processing apparatus according to claim 11.
Muhammed in view of Hettige does not disclose:
wherein the command is a command for generating a graph based on data of the variable, and the code executer outputs the graph as the result of the processing.
Cai discloses:
wherein the command is a command for generating a graph based on data of the variable, and the code executer outputs the graph as the result of the processing ([0128] As another example, the machine-learned model(s) can process the sensor data to generate a visualization output, [A visualization output tracks to a graph, wherein citing it as “output” indicates it to be output as a result of processing, i.e. generation, (in view of the code executer of Hettige)]).
Muhammed, Hettige, and Cai are considered analogous art within multi-task natural language processing. Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified the teachings of Muhammed in view of Hettige to incorporate the teachings of Cai, because of the novel way to chain one or more machine-learning language models together to provide improved model interpretability of complex, multi-task problems to be solved (Cai, [0011]-[0012]).
Claim(s) 16 is/are rejected under 35 U.S.C. 103 as being unpatentable over Muhammed in view of Crupi et al. (US-20160179922-A1), hereinafter Crupi.
Regarding claim 16, Muhammed discloses: the information processing apparatus according to claim 1.
Muhammed does not disclose:
wherein the question is a question related to a state of a facility in which a plurality of sensors are disposed and the state of which is monitored by the sensors, and
the plurality of databases include at least a database related to a kind of the monitored state, a database related to equipment included in the facility, and a database related to the sensors.
Crupi discloses:
wherein the question is a question related to a state of a facility in which a plurality of sensors are disposed and the state of which is monitored by the sensors ([Fig. 4, “Concrete Question”], [0103] FIG. 9 shows an example of voltage sensor data from three oil wells, [The question disclosed in Fig. 4 is related to the voltage states of oil wells, i.e. the oil well facility, wherein each oil well has its own sensor and the voltage state is being monitored by said sensor]), and
the plurality of databases include at least a database related to a kind of the monitored state ([Fig. 3, Timestamp Data], [0061] There is a single instance of the timestamp model, which represents timestamp data and the timestamp partition (which in this example case is expressed in minutes). This implies that the measures and dimensions analyzer 108 determined the “best fit” time partition is “minutes” because the data, on average, arrives every minute, [0065] Timestamps that indicate that data is incoming every second may suggest that the distinct time dimensions are seconds, minutes, and hours, and timestamps that indicate that data is incoming once an hour may suggest that the distinct dimensions are hours and days, [Determining to analyze every second/minute/hour indicates that the monitored state is only “monitored/on” every second/minute/hour]), a database related to equipment included in the facility ([Fig. 3, Dimension Data], [Storing data related to the type of engines in a facility tracks to equipment of the facility]), and a database related to the sensors ([Fig. 3, Measure Data], [Measuring voltage data from sensors (as previously cited and disclosed) indicates the measure data to be a database related to the sensors]).
Muhammed and Crupi are considered analogous art within multi-source question-answering using machine-learning. Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified the teachings of Muhammed to incorporate the teachings of Crupi, because of the novel way to generate questions and answers on multi-source, real-time, and historical data without requiring a priori knowledge of the data stream, improving question-answering for complex temporal business questions (Crupi, [0014]).
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
Liu et al. (US-20240249113-A1) discloses “Embodiments described herein provide systems and methods for question answering using a hybrid question parser and executor model. The hybrid question parser and executor model includes a hybrid parser model and a hybrid executor model. The hybrid parser model includes a first neural network model, and generates a representation of an input question. The representation includes primitives and operations representing relationships among the primitives. The hybrid executor model generates an answer to the input question by executing the representation based on an input text document. The hybrid executor model includes an execution neural network model for executing the primitives of the representation, and an execution programming model for executing the operations of the representation” (abstract). See entire document.
Poirier et al. (US-20240202464-A1) discloses “Systems and methods managing a plurality of agents to generate a response to a query using a multimodal model. An example method uses the plurality of agents to iteratively determine subsequent outputs of the multimodal model satisfies the query. It can generate a respective context associated with a respective output of the multimodal model. And determine, by the multimodal model based on the respective context, whether the respective subsequent output satisfies the query.” (abstract). See entire document.
Massoudian et al. (US-20250028743-A1) discloses “This disclosure improves computer functionality by enabling various hierarchies of chatbot application programs operative based on data structures containing unstructured texts. Therefore, such hierarchies enable some chatbot application programs to manage other chatbot application programs, which improves virtual assistance, reduces programming efforts, customizes output by user types, and enhances process management” (abstract). See entire document.
Dua et al. (“Successive Prompting for Decomposing Complex Questions”) discloses “We introduce “Successive Prompting”, where we iteratively break down a complex task into a simple task, solve it, and then repeat the process until we get the final solution. Successive prompting decouples the supervision for decomposing complex questions from the supervision for answering simple questions, allowing us to (1) have multiple opportunities to query in context examples at each reasoning step (2) learn question decomposition separately from question answering, including using synthetic data, and (3) use bespoke (fine-tuned) components for reasoning steps where a large LM does not perform well” (abstract). See entire document.
Khot et al. (“Decomposed Prompting: A Modular Approach for Solving Complex Tasks”) discloses “To address this, we propose Decomposed Prompting, a new approach to solve complex tasks by decomposing them (via prompting) into simpler sub-tasks that can be delegated to a shared library of prompting-based LLMs dedicated to these sub-tasks. This modular structure allows each prompt to be optimized for its specific sub-task, further decomposed if necessary, and even easily replaced with more effective prompts, trained models, or symbolic functions if desired” (abstract). See entire document.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to THEODORE JOHN WITHEY whose telephone number is (703)756-1754. The examiner can normally be reached Monday - Friday, 8am-5pm.
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, Andrew Flanders can be reached at (571) 272-7516. 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.
/THEODORE WITHEY/
Examiner, Art Unit 2655
/BHAVESH M MEHTA/Supervisory Patent Examiner, Art Unit 2656