DETAILED ACTION
Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
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 17-24 are drawn to a “signal” per se as recited in the preamble and as such is non-statutory subject matter. On paragraph [0228] of the specification, the term “computer readable medium” is defined including any other medium from which a computer can read. Hence, one of ordinary skill in the art can interpret such language to include transitory signals and non-transitory signals. It does not appear that a claim reciting a signal encoded on a computer readable medium, when defined so broadly as to encompass transitory propagating signals, falls within any of the four statutory categories of 35 U.S.C. § 101 (process, machine, manufacture, or composition of matter). Under the Broadest Reasonable Interpretation (BRI) in view of the specification, the term 'computer readable medium' is not limited to non-transitory storage. Because the claim as a whole encompasses a non-statutory embodiment (i.e., a transitory signal per se), the claims 17-24 are rejected as being directed to non-statutory subject matter.
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.
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.
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.
Claim(s) 1, 2, 3, 4, 8, 9, 10, 11, 12, 16, 17, 18, 19, 20, 24 is/are rejected under 35 U.S.C. 103 as being unpatentable over Chen et al. (US 20240020116 A1) (hereinafter Chen_1) in view of Gray et al. (US 11769017 B1) (hereinafter Gray).
Chen_1 teaches:A method, comprising:
operating a software application that utilizes an interface to receive commands from a user (Chen_1, P[0005]: "receiving a docstring representing natural language text, wherein the docstring specifies a digital programming result," which reads on an interface receiving user intent to trigger logic generation (a command));
Chen_1 does not teach:
receiving a command during execution of the software application for functionality that is not programmed into the software application, wherein the functionality corresponds to integration with a third-party application; generating a context for a large language model (LLM) to generate code corresponding to the functionality to integrate with the third-party application;
Gray teaches:
receiving a command during execution of the software application for functionality that is not programmed into the software application, wherein the functionality corresponds to integration with a third-party application (Gray, Abstract: "Processing the additional content can, for example, mitigate occurrences of the NL based summary including inaccuracies that would otherwise be included in the NL based summary," which reads on the system fetching and processing outside logic, like third-party data or APIs, to satisfy unprogrammed user requests);
generating a context for a large language model (LLM) to generate code corresponding to the functionality to integrate with the third-party application (Gray, Abstract: "in generating the NL based summary, additional content is processed using the LLM, wherein the additional content is in addition to query content of the query itself," which reads on building an "augmented" context or prompt with external data to guide the LLM's output for specific integrations);
Chen_1 further teaches:
and receiving the code generated from the LLM to implement the functionality to integrate with the third-party application (Chen_1, P[0016]: "generating, using a trained machine-learning model and based on the docstring, a computer code sample" and "identifying, based on the executing, a computer code sample configured to produce a particular candidate result," which reads on receiving the LLM-generated code and implementing it to fulfill the requested functionality).
It would have been prima facie obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified Chen_1 in view of Gray. Doing so would have provided the adaptability from unprogrammed requests of Gray (Gray, Abstract) with the user interaction and generation modeling of Chen_1 (Chen_1, Abstract) thus improving the capabilities of satisfying custom user requests.
Regarding claim 2, Chen_1 in view of Gray teaches the method according to claim 1.
Chen_1 in view of Gray further teaches:
wherein information used by the LLM to generate the code include at least one of LLM general knowledge, common code, or API documentation for the third-party application (Gray, Abstract: "additional content is processed using the LLM, wherein the additional content is in addition to query content," which reads on fetching outside logic like third-party API documentation; Chen_1, P[0016]: "generating, using a trained machine-learning model," which reads on the model utilizing its internal general knowledge and common code training to produce the result).
Regarding claim 3, Chen_1 in view of Gray teaches the method according to claim 1.
Chen further teaches:wherein English actions are mapped to function definitions in a programming language to provide information to the LLM to generate the code (Chen_1, P[0005]: "receiving a docstring representing natural language text, wherein the docstring specifies a digital programming result," which reads on mapping English intent in the docstring to the required programming logic/definitions).
Regarding claim 4, Chen_1 in view of Gray teaches the method according to claim 1.
Chen_1 in view of Gray further teaches:The method of claim 1, wherein natural language processing is performed to identify the functionality corresponds to integration with a third-party application (Chen_1, P[0005]: "receiving a docstring representing natural language text," and Gray, Abstract: "mitigate occurrences of the NL based summary including inaccuracies," which reads on performing natural language processing to interpret the user's intent regarding external integrations).
Regarding claim 8, Chen_1 in view of Gray teaches the method according to claim 1.
Chen_1 further teaches:
The method of claim 1, wherein the code is generated during a processing run by a user (Chen_1, P[0016]: "causing each of the one or more computer code samples to be executed" and "identifying, based on the executing, at least one of the computer code samples," which reads on a dynamic process where code is generated, executed, and identified in real-time during a user's active session).
Regarding claim 9, claim 9 recites the computer system corresponding to the method presented in claim 1 and is rejected under the same grounds stated above. Additionally, the combination further discloses or makes obvious:
A system, comprising:
a processor (Gray, P[0082]);
a memory for holding programmable code (Gray, P[0082).
Regarding claim 10, claim 10 recites the system corresponding to the method presented in claim 2 and is rejected under the same grounds as above.
Regarding claim 11, claim 10 recites the system corresponding to the method presented in claim 3 and is rejected under the same grounds as above.
Regarding claim 12, claim 10 recites the system corresponding to the method presented in claim 4 and is rejected under the same grounds as above.
Regarding claim 16, claim 10 recites the system corresponding to the method presented in claim 8 and is rejected under the same grounds as above.
Regarding claim 17, claim 17 recites the computer program product corresponding to the method presented in claim 1 and is rejected under the same grounds stated above. Additionally, the combination further discloses or makes obvious:
A computer program product embodied on a computer readable medium, the computer readable medium having stored thereon a sequence of instructions which, when executed by a processor, performs (Gray, [0118]).
Regarding claim 18, claim 18 recites the computer program product corresponding to the method presented in claim 2 and is rejected under the same grounds as above.
Regarding claim 19, claim 19 recites the computer program product corresponding to the method presented in claim 3 and is rejected under the same grounds as above.
Regarding claim 20, claim 20 recites the computer program product corresponding to the method presented in claim 4 and is rejected under the same grounds as above.
Regarding claim 24, claim 24 recites the computer program product corresponding to the method presented in claim 8 and is rejected under the same grounds as above.
Claim(s) 5, 6, 7, 13, 14, 15, 21, 22, 23 is/are rejected under 35 U.S.C. 103 as being unpatentable over Chen et al. (US 20240020116 A1) (hereinafter Chen_1) in view of Gray et al. (US 11769017 B1) (hereinafter Gray) in further view of Chen et al. (US 20240020096 A1) (hereinafter Chen_2).
Regarding claim 5, Chen_1 in view of Gray teaches the method according to claim 1.
Chen_1 in view of Gray does not teach:
wherein an iterative process is performed to generate the code, whereby a plurality of cycles of code generation followed by error handling is performed to correct an error identified for the generated code
Chen_2 teaches:
wherein an iterative process is performed to generate the code, whereby a plurality of cycles of code generation followed by error handling is performed to correct an error identified for the generated code (Chen_2, P[0140]: "model refinement engine 860 may transmit the received output to featurization engine 820 or ML modeling engine 830 in one or more iterative cycles" and "output validation engine 850 (e.g., configured to apply validation data to machine learning model output)," and P[0078]: "automated testing (e.g., generating test cases and test code, which may help developers ensure that their code is functioning correctly and catch bugs from the outset)," which reads on a system performing iterative cycles where code is generated, validated via testing to "catch bugs," and refined to correct identified errors).
It would have been prima facie obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified Chen_1 in view of Gray in further view of Chen_2. Doing so would have provided the iterative error handling process of Chen_2 (Chen_2, P[0140]) with the adaptability from unprogrammed requests of Gray (Gray, Abstract) with the user interaction and generation modeling of Chen_1 (Chen_1, Abstract) thus improving the capabilities of satisfying custom user requests via being able to handle errors before it is time to give the user an output.
Regarding claim 6, Chen_1 in view of Gray in further view of Chen_2 teaches the method according to claim 5.
Chen_2 further teaches:
The method of claim 5, wherein a revised context is provided to the LLM in an iterative manner to generate revised code to correct for the error (Chen_2, P[0140]: "infer a change to input or model parameters to cause a particular model output or type of model output," and P[0078]: "automatically generating code changes based on code review comments, which may save time and improve the efficiency of the code review process," which reads on providing a revised context (specifically code review feedback or an inferred change to the model's input) to the generator in an iterative manner to correct errors).
Regarding claim 7, Chen_1 in view of Gray in further view of Chen_2 teaches the method according to claim 5.
Chen_2 further teaches:
The method of claim 5, wherein a learned procedure for error resolution is stored for a future processing (Chen_2, P[0140]: "Outcome metrics database 880 may be configured to store output from one or more models" and "configured to correlate output, detect trends in output data, and/or infer a change to input or model parameters to cause a particular model output," which reads on storing model outputs and learned trends/correlations in a persistent database to serve as a learned procedure for informing future generation cycles).
Regarding claim 13, claim 13 recites the system corresponding to the method presented in claim 5 and is rejected under the same grounds as above.
Regarding claim 14, claim 14 recites the system corresponding to the method presented in claim 6 and is rejected under the same grounds as above.
Regarding claim 15, claim 15 recites the system corresponding to the method presented in claim 7 and is rejected under the same grounds as above.
Regarding claim 21, claim 21 recites the computer program product corresponding to the method presented in claim 5 and is rejected under the same grounds as above.
Regarding claim 22, claim 22 recites the computer program product corresponding to the method presented in claim 6 and is rejected under the same grounds as above.
Regarding claim 23, claim 23 recites the computer program product corresponding to the method presented in claim 7 and is rejected under the same grounds as above.
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to SHASHIDHAR S MANOHARAN whose telephone number is (571)272-6772. The examiner can normally be reached M-F 8:00-4:00.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, 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.
/SHASHIDHAR SHANKAR MANOHARAN/Examiner, Art Unit 2655
/BHAVESH M MEHTA/Supervisory Patent Examiner, Art Unit 2656