Prosecution Insights
Last updated: July 05, 2026
Application No. 18/371,281

PROFILE-BASED KNOWLEDGE EMBEDDING FOR AI-ASSISTED DEVELOPMENT

Non-Final OA §101§103§112
Filed
Sep 21, 2023
Examiner
BERMAN, STEPHEN DAVID
Art Unit
2192
Tech Center
2100 — Computer Architecture & Software
Assignee
Aktiengesellschaft SAP
OA Round
3 (Non-Final)
78%
Grant Probability
Favorable
3-4
OA Rounds
0m
Est. Remaining
99%
With Interview

Examiner Intelligence

Grants 78% — above average
78%
Career Allowance Rate
267 granted / 341 resolved
+23.3% vs TC avg
Strong +58% interview lift
Without
With
+58.2%
Interview Lift
resolved cases with interview
Typical timeline
2y 8m
Avg Prosecution
22 currently pending
Career history
361
Total Applications
across all art units

Statute-Specific Performance

§101
2.5%
-37.5% vs TC avg
§103
90.6%
+50.6% vs TC avg
§102
3.7%
-36.3% vs TC avg
§112
2.8%
-37.2% vs TC avg
Black line = Tech Center average estimate • Based on career data from 341 resolved cases

Office Action

§101 §103 §112
DETAILED ACTION Remarks The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA . This Office Action is filed in response to Applicant’s Request for Continued Examination dated December 16, 2025. Claims 1, 8, and 15 are currently amended and claims 1-20 remain pending in the application and have been fully considered by Examiner. Applicant's arguments with respect to the rejections under 35 USC 101 have been fully considered, but are not persuasive, as addressed below in the 35 USC 101 Arguments – Rejections section. Applicant's arguments with respect to the prior art rejections have been considered, but are moot in view of the new grounds of rejection presented herein. Continued Examination Under 37 CFR 1.114 A request for continued examination under 37 CFR 1.114, including the fee set forth in 37 CFR 1.17(e), was filed in this application after final rejection. Since this application is eligible for continued examination under 37 CFR 1.114, and the fee set forth in 37 CFR 1.17(e) has been timely paid, the finality of the previous Office action has been withdrawn pursuant to 37 CFR 1.114. Applicant's submission filed on December 16, 2025, has been entered. Examiner Notes Examiner cites particular columns, paragraphs, figures and line numbers in the references as applied to the claims below for the convenience of the applicant. Although the specified citations are representative of the teachings in the art and are applied to the specific limitations within the individual claim, other passages and figures may apply as well. It is respectfully requested that, in preparing responses, the applicant fully consider the references in their entirety as potentially teaching all or part of the claimed invention, as well as the context of the passage as taught by the prior art or disclosed by the examiner. Arguments -- 35 USC 101 Applicant’s arguments with respect to the 35 USC 101 rejections have been fully considered by Examiner, but are not persuasive, as follows: With respect to claims 1, 8 and 15, Applicant first argues “Similar to Example 39, the claim language in the instant case, as amended, describes adjusting input to the AI proxy, which generates updated source code to improve the results of AI models over iterations. The Specification explains that ‘[i]n this way, the source code generated by the AI assistant tools can be improved over iterations.’ (Specification, [0019].) Thus, similar to Example 39, independent claims do not recite any of the judicial exceptions.”1 Examiner respectfully disagrees. The claim of Example 39 recites “training the neural network.” Examiner agrees that training a neural network, or any such AI/ML model, is not a mental process. However, Applicant’s has not claimed training an AI/ML model. In fact, Applicant has not even claimed an AI/ML model at all (Applicant’s specification discloses that the AI Proxy is distinct from the model2), let alone training such as model. Instead, the claims merely recite limitations that generate commands, which is a mental process, generic computing components applying the mental process, and sending and receiving information to and from the AI Proxy, which is insignificant extra-solution data gathering activity (see the Claim Rejections – 35 USC 101 section below for details). None of these limitations require training an AI/ML model. Examiner further notes that the claim does not require that the AI Proxy “generates updated source code”, as argued here by Applicant. Rather the claims recite “receive the source code from the AI Proxy”. Applicant’s argument is therefore unpersuasive. Applicant further argues, “The [12/5/25 USPTO guidance] update explains that ‘at least the limitation 'adjust the first values of the plurality of parameters to optimize performance of the machine learning model on the second machine learning task while protecting performance of the machine learning model on the first machine learning task' reflected the improvement disclosed in the specification.’ The update then concludes that ‘the claims as a whole integrated what would otherwise be a judicial exception instead into a practical application at Step 2A Prong Two, and therefore the claims were deemed to be outside any specific, enumerated judicial exception (Step 2A: NO).’ Similar to the claimed discussed in the update, the claim language in the instant case, as amended, describes adjusting the input to the AI model that reflects the improvement disclosed in the Specification as discussed above.”3 Examiner respectfully disagrees. As noted above, Applicant has not claimed an AI model. Nor has do the claims require “adjusting the input to the AI model”. Instead, information is merely sent to and from the AI Proxy, which is distinct from an AI/ML model, as noted in the preceding paragraph. Furthermore, “adjusting the input to the AI model,” even if claimed, which it is not, would not necessarily result in or require adjusting model parameter values, as described in the 12/5/25 USPTO guidance. Applicant’s argument is therefore unpersuasive. Examiner further notes that a claim amendment requiring training an AI/ML model, as in Example 39 and the 12/5/25 updated guidance, could potentially overcome the current 35 USC 101 rejections. Claim Objections Claims 8-20 are objected to because of the following informalities: With respect to claim 8, “receiving”, “generate”, “transmit”, “receive”, and “transmit”, as respectively recited on lines 10, 17, 19, 20, and 22, should be recited in the gerund form, consistent with lines 3-10. With respect to claim 15, the claim recites limitations similar to claim 8 and suffer from the same informalities. With respect to claims 9-14 and 16-20, each inherits the deficiencies of its respective base claim (see the objections to claims 8 and 15 above). Appropriate correction is required. 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 7, 14, and 20 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. With respect to claim 7, lines 3-9 recite, with emphasis added, “receive a feedback from the user device, wherein the feedback includes an updated user description; generate a second command … receive an updated source code.” It is unclear if this is the same as “a feedback … an updated user description … a second command … an updated source code”, as recited in parent claim 1, which renders the scope of the claim indefinite. For purposes of compact prosecution only, Examiner has interpreted claim 7 as reciting “receive [[a]] the feedback from the user device, wherein the feedback includes [[an]] the updated user description; generate [[a]] the second command … receive [[a]] the updated source code”. With respect to claims 14 and 20, each recites limitations similar to claim 7, and each depends from a claim reciting limitations similar to claim 1. Accordingly, claims 14 and 20 are indefinite for the same reasons set forth above with respect to claim 7. For purposes of compact prosecution only, Examiner has interpreted claims 14 and 20 similarly to claim 7, as indicated above. The following is a quotation of 35 U.S.C. 112(d): (d) REFERENCE IN DEPENDENT FORMS.—Subject to subsection (e), a claim in dependent form shall contain a reference to a claim previously set forth and then specify a further limitation of the subject matter claimed. A claim in dependent form shall be construed to incorporate by reference all the limitations of the claim to which it refers. The following is a quotation of pre-AIA 35 U.S.C. 112, fourth paragraph: Subject to the following paragraph [i.e., the fifth paragraph of pre-AIA 35 U.S.C. 112], a claim in dependent form shall contain a reference to a claim previously set forth and then specify a further limitation of the subject matter claimed. A claim in dependent form shall be construed to incorporate by reference all the limitations of the claim to which it refers. Claims 7, 14, and 20 rejected under 35 U.S.C. 112(d) or pre-AIA 35 U.S.C. 112, 4th paragraph, as being of improper dependent form for failing to further limit the subject matter of the claim upon which it depends, or for failing to include all the limitations of the claim upon which it depends. With respect to claims 7, 14, and 20, each recites “receive a feedback from the user device, wherein the feedback includes an updated user description; generate a second command by combining the updated user description and the first command; transmit the second command to the AI proxy; receive an updated source code; and transmit the updated source code to the user device.” These limitations were incorporated into respective parent claims 1, 8, and 15 in the most recent amendment4, which was filed on December 16, 2025. Specifically, claim 1, as currently amended, recites “receive a feedback from the user device, wherein the feedback includes an updated user description … generate a second command by combining the updated user description … and the first command; transmit the second command to the Al proxy; receive an updated source code … and transmit the updated source code to the user device”, with similar limitations recited in claims 8 and 15. Thus, claims 7, 14, and 20 are rejected under 35 USC 112(d) as failing to further limit the subject matter of claims 1, 15, and 20 respectively. Applicant may cancel the claims, amend the claims to place the claims in proper dependent form, rewrite the claims in independent form, or present a sufficient showing that the dependent claims comply with the statutory requirements. Claim Rejections - 35 USC § 101 35 U.S.C. 101 reads as follows: Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title. Claims 1-20 are rejected under 35 U.S.C. 101 because the claimed invention recites a judicial exception, is directed to that judicial exception, specifically an abstract idea, as it has not been integrated into a practical application and the claims further do not recite significantly more than the judicial exception. Examiner has evaluated the claims under the framework provided in the 2019 Patent Eligibility Guidance published in the Federal Register 01/07/2019 and has provided such analysis below. Step 1: Claims 1-7 are directed to systems and fall within the statutory category of machines; Claims 8-14 are directed to computer implemented methods and fall within the statutory category of processes; Claims 15-20 are directed to non-transitory computer-readable media and fall within the statutory category of articles of manufacture. Therefore, “Are the claims to a process, machine, manufacture or composition of matter?” Yes. In order to evaluate the Step 2A inquiry “Is the claim directed to a law of nature, a natural phenomenon or an abstract idea?” we must determine, at Step 2A Prong 1, whether the claim recites a law of nature, a natural phenomenon, or an abstract idea (see MPEP § 2106.04). Step 2A Prong 1: With respect to claims 1, 8, and 15, The limitations of “generate a first command by combining the user description and the code profile … generate a second command by combining the updated user description, the second code profile, and the first command,” as claimed, is a process that, but for the recitation of generic computing components and under its broadest reasonable interpretation, covers performance of the limitation in the mind with no more than pen and paper. For example, with no more than pen and paper, a human developer could (1) draft a first prompt consisting of a natural language task description and a human-readable source code example, and (2) draft an updated prompt consisting of an updated natural language task description and another human-readable source code example. Therefore, Yes, claims 1, 8, and 15 recite limitations that fall within the “Mental Processes” grouping of abstract ideas. As the claims have been identified as reciting a judicial exception, Step 2A Prong 2 will evaluate whether the claim as a whole integrates the recited judicial exception into a practical application (see MPEP § 2106.04(d)). Step 2A Prong 2: With respect to claims 1, 8, and 15, The judicial exception is not integrated into a practical application. In particular, the claims recite the following additional elements: “A … system, comprising: a memory; and at least one processor coupled to the memory and configured to:”5, “A computer-implemented method … comprising:”6, “A non-transitory computer-readable device having instructions stored thereon that, when executed by at least one computing device, cause the at least one computing device to perform operations, the operations comprising:”7, which merely recite instructions to implement an abstract idea on a generic computer, or merely uses a generic computer or computer components to perform the abstract idea, which does not integrate a judicial exception into a practical application (see MPEP § 2106.05(f)). The claims further recite the following additional element(s): “receive an instruction to generate a source code, wherein the instruction includes a user description and information of a code profile; in response to receiving the instruction, retrieve the code profile from a profile manager based on the information of the code profile … transmit the first command to an artificial intelligence (AI) proxy; receive the source code from the Al proxy; transmit the source code to a user device, receive a feedback from the user device, wherein the feedback includes an updated user description and information of a second code profile, wherein the user description indicates a first set of features and the updated user description indicates a second set of features; in response to receiving the feedback, retrieve the second code profile from the profile manager based on the information of the second code profile … transmit the second command to the AI proxy; receive an updated source code, wherein the source code realizes the first set of features and the updated source code realizes the second set of features; and transmit the updated source code to the user device”, which is/are merely insignificant extra-solution activity such as gathering, transmitting, and storing data, which does not integrate the judicial exception into a practical application (see MPEP § 2106.05(g)), and will be analyzed further below in Step 2B as being well-understood, routine, and conventional. Lastly, the claims recite the following additional element(s): “code generating”8 and “for a code generating system”9, which is/are merely a recitation of a field of use/technological environment that does not integrate the judicial exception into a practical application (see MPEP § 2106.05(h)). Therefore, “Do the claims recite additional elements that integrate the judicial exception into a practical application? No, even when viewed in combination, these additional elements do not integrate the abstract idea into a practical application and they do not impose any meaningful limits on practicing the abstract idea. After having evaluated the inquires set forth in Steps 2A Prong 1 and 2, it has been concluded that claims 1, 8, and 15 not only recite a judicial exception but are directed to the judicial exception as the judicial exception has not been integrated into a practical application. Accordingly, Step 2B will evaluate whether the claim as a whole amounts to significantly more than the recited exception, i.e., whether any additional element, or combination of additional elements, adds an inventive concept to the claim. See MPEP § 2106.05. Step 2B: With respect to claims 1, 8, and 15, The claims do not include additional elements, alone or in combination, that are sufficient to amount to significantly more than the judicial exception. As discussed above with respect to the integration of the abstract idea into a practical application, the additional elements amount to no more than generic computing components applying the abstract idea, recitation of a field of use/technological environment, and insignificant extra-solution activity such as gathering, displaying, updating, transmitting, and storing data, which is well-understood, routine, and conventional (see MPEP § 2106.05(d)(II) for court decisions recognizing that this activity is well-understood, routine, and conventional.). Therefore, “Do the claims recite additional elements that amount to significantly more than the judicial exception?” No, these additional elements, alone or in combination, do not amount to significantly more than the judicial exception. Having concluded the analysis within the provided framework, claims 1, 8, and 15 do not recite patent eligible subject matter under 35 U.S.C. § 101. With respect to claims 2, 9, and 16, the limitations recite “wherein to retrieve the code profile, the at least one processor is further configured to: retrieve an identifier of the code profile from the information of the code profile, wherein the identifier of the code profile distinguishes the code profile from other code profiles in the profile manager; transmit a request for the code profile to the profile manager, wherein the request includes the identifier of the code profile; and receive the code profile from the profile manager” which (1) merely uses a generic computer or computer components to perform the abstract idea, which does not integrate a judicial exception into a practical application (see MPEP § 2106.05(f)), and (2) recites insignificant extra-solution activity such as gathering, transmitting, and/or storing data (see MPEP § 2106.05(g)). Furthermore, this extra-solution activity is well-understood, routine, and conventional (see § 2106.05(d)(II) for court decisions recognizing that this activity is well-understood, routine, and conventional). Thus, the claims are directed to the judicial exception and do not have elements amounting to significantly more than the abstract idea itself. Therefore, the claims do not recite patent eligible subject matter under 35 U.S.C. § 101. With respect to claims 3, 10, and 17, the limitations recite “wherein the code profile comprises: one or more coding languages indications, one or more existing source code sections, one or more functions to be used in the source code, or one or more illustration requirements”, which merely provides details of the retrieved code profile and thus is also insignificant extra-solution activity, such as gathering, transmitting, and/or storing data (see MPEP § 2106.05(g)). Furthermore, this extra-solution activity is well-understood, routine, and conventional (see § 2106.05(d)(II) for court decisions recognizing that this activity is well-understood, routine, and conventional). Thus, the claims are directed to the judicial exception and do not have elements amounting to significantly more than the abstract idea itself. Therefore, the claims do not recite patent eligible subject matter under 35 U.S.C. § 101. With respect to claims 4, and 11, the limitations recite “wherein the user description comprises one or more features to be realized by the source code, and wherein the user description is a natural language description”, which merely provide additional details of the received user description and thus is also insignificant extra-solution activity, such as gathering, transmitting, and/or storing data (see MPEP § 2106.05(g)). Furthermore, this extra-solution activity is well-understood, routine, and conventional (see §2106.05(d)(II)). Thus, the claims are directed to the judicial exception and do not have elements amounting to significantly more that the abstract idea itself. Therefore, claims 4 and 11 do not recite patent eligible subject matter under 35 U.S.C. § 101. With respect to claims 5, 12, and 18, the limitations recite, “wherein the code profile comprises domain knowledge and context of the source code”, which merely provides additional details of the retrieved code profile and thus is also insignificant extra-solution activity, such as gathering, transmitting, and/or storing data (see MPEP § 2106.05(g)). Furthermore, this extra-solution activity is well-understood, routine, and conventional (see §2106.05(d)(II)). Thus, the claims are directed to the judicial exception and do not have elements amounting to significantly more that the abstract idea itself. Therefore, the claims do not recite patent eligible subject matter under 35 U.S.C. § 101. With respect to claims 6, 13, and 19, the limitations recite “wherein the at least one processor is further configured to extract the context from a runtime environment”, which is also insignificant extra-solution activity, such as gathering, transmitting, and/or storing data. Furthermore, this extra-solution activity is well-understood, routine, and conventional (see §2106.05(d)(II)). Thus, the claims are directed to the judicial exception and do not have elements amounting to significantly more that the abstract idea itself. Therefore, the claims do not recite patent eligible subject matter under 35 U.S.C. § 101. With respect to claims 7, 14, and 20, the limitations recite subject matter that has already been incorporated into independent claims 1, 8, and 15 (see the above rejections of claims 7, 14, 20 under 35 USC 112(d)). Thus, for the same reasons set forth above with respect to claims 1, 8, and 15, claims 7, 14, and 20 are directed to the judicial exception and do not have elements amounting to significantly more that the abstract idea itself. Therefore, the claims do not recite patent eligible subject matter under 35 U.S.C. § 101 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. Claims 1, 3, 4, 7, 8, 10, 11, 14, 15, 17, and 20 are ejected under 35 U.S.C. 103 as being unpatentable over Chandel et al. (US 20250068665, hereinafter Chandel) in view of Denny et al. “Conversing with Copilot: Exploring Prompt Engineering for Solving CS1 Problems Using Natural Language” (hereinafter Denny). With respect to claim 1, Chandel discloses A code system (e.g., Figs. 1, 2, and 7-8.), comprising: a memory; and at least one processor coupled to the memory (e.g., Figs. 2, 7, 8 along with associated text, e.g., [0053], The computing device … may include one or more processors … and one or more memory devices.) and configured to: receive an instruction to a source code, wherein the instruction includes a user description and information of a code profile (e.g., Figs. 1-7, particularly “User Query + Context 214” in Fig. 2, “Obtain User Query and Context 406” in Fig. 4, and “User Query + Context 708” in Fig. 7 along with associated text, e.g., [0015], The query [user description] is a question, instruction, or short paragraph that describes the task and the context is the identity of the codebase (e.g., location, URI, file path, etc.) [information of a code profile] that is the subject of the query; [0033], The user query 304 consists of a question, ‘How to Build a BPE Encoder?’ and the context 304 includes a URL to a location in GitHub that contains a codebase MinGPT, https://Github.com/Karpathy/MinGPT; [0034], The model's response 302 includes specific references found in the codebase. For example, the model's response includes … an example of the method [source code]; [0035], the model's response contains specific code elements from the codebase [0049], The code query engine 710 receives a user query and a context 708 from the user interface 704.); in response to receiving the instruction, retrieve the code profile from a profile manager based on the information of the code profile (e.g., Figs. 1-4 and 7 along with associated text, e.g., [0044], The search engine searches the codebase segment table for examples [code profile] that are similar to the user query and context; [0045], An embedding is generated using the encoder given the user query and the context (block 602). The search engine uses the embedding of the user query and context to find the closest embeddings from the codebase segment table … The metadata and code segments [code profile] associated with the closest similar embeddings to the embedding of the user query and context are selected as examples (block 604); see also [0025], [0033], and [0049].); generate a first command by combining the user description and the code profile (e.g., Figs. 1-4 and 7 along with associated text, e.g., [0044], once the examples are obtained (block 408), the prompt generator then constructs a prompt [first command] that includes the query [user description], context, and the one or more examples [code profile] (block 410); see also [0026] and [0049].); transmit the first command to an artificial intelligence (AI) proxy (e.g., Figs. 1-4 and 7 along with associated text, e.g., [0047], The prompt [first command] is applied to the large language model (block 412); [0031], the large language model resides on a remote server and receives the prompt at an endpoint of a server [AI proxy] hosting the large language model via a network; see also [0026] and [0049].); receive the source code from the AI proxy (e.g., Figs. 1-4 and 7 along with associated text, e.g., [0047], The large language model returns a response (block 414) which is output or returned to the application or user interface requesting the query (block 416); [0034], The model's response 302 includes specific references found in the codebase. For example, the model's response includes … an example of the method; [0035], the model's response contains specific code elements from the codebase; see also [0031] and [0049].); transmit the source code to a user device (Id., particularly, [0047], The large language model returns a response (block 414) which is output or returned to the application or user interface requesting the query, and [0034], the model's response includes … an example of the method; [0035], the model's response contains specific code elements from the codebase; see also [0049], The large language model 728 generates a response given the prompt which is then returned to the user interface.); receive a from the user device, wherein the includes an user description and information of a second code profile, (e.g., Figs. 1-4 and 7 along with associated text, e.g., [0031], the user and the large language model may engage in a conversation that consists of several prompts and responses within a single network session; [0015], The query is a question, instruction, or short paragraph that describes the task and the context is the identity of the codebase (e.g., location, URI, file path, etc.) that is the subject of the query; see also [0033] and [0049].); in response to receiving the , retrieve the second code profile from the profile manager based on the information of the second code profile (e.g., Figs. 1-4 and 7 along with associated text, e.g., [0031], the user and the large language model may engage in a conversation that consists of several prompts and responses within a single network session; [0044], The search engine searches the codebase segment table for examples that are similar to the user query and context; [0045], The search engine uses the embedding of the user query and context to find the closest embeddings from the codebase segment table … The metadata and code segments associated with the closest similar embeddings to the embedding of the user query and context are selected as examples (block 604); see also [0025] and [0049].); generate a second command by combining the user description, the second code profile, ; transmit the second command to the Al proxy (e.g., Figs. 1-4 and 7 along with associated text, e.g., [0031], the user and the large language model may engage in a conversation that consists of several prompts and responses within a single network session; [0047], The prompt is applied to the large language model (block 412); [0031], the large language model resides on a remote server and receives the prompt at an endpoint of a server hosting the large language model via a network; see also [0026] and [0049].); receive an associated text, e.g., [0047], The large language model returns a response (block 414) which is output or returned to the application or user interface requesting the query (block 416); [0034], The model's response 302 includes specific references found in the codebase. For example, the model's response includes … an example of the method; [0035], the model's response contains specific code elements from the codebase; see also [0049].); and transmit to the user device (e.g., Figs. 1-4 and 7 along with associated text, e.g., [0031], the user and the large language model may engage in a conversation that consists of several prompts and responses within a single network session; [0047], The large language model returns a response (block 414) which is output or returned to the application or user interface requesting the query (block 416); see also [0049].). Although Chandel discloses an instruction requesting source code and a conversion with the LLM that consists of multiple prompt/response interactions (see above), it does not appear to disclose the following, which is taught in analogous art, Denny: generating … generate (e.g., Abstract, GitHub Copilot is an artificial intelligence model for automatically generating source code from natural language problem descriptions; p. 3, § 4.2 Using Copilot, (2) Wait for Copilot to generate a suggestion.) … feedback … feedback … updated (e.g., p. 4, left col., top, (6) If any test cases fail, delete the “buggy” code that was suggested by Copilot. (7) Observe the failing test cases and engineer the description by adding comments to it that clarify the problem or that provide a strategy for solving the problem [feedback includes an updated user description]. Do not modify any code—only provide natural language descriptions. Repeat steps 6–7 until all test cases pass, or there are no obvious clarifications that can be made to the description; p. 5, top, Prompt engineering (see comment lines 4-7) that explicitly suggested building two lists was successful … Figure 3 … The manually added comments appear on lines 4-7; p. 6, left col., 1st full para., engineer prompts … by adding to them as we have done.) … wherein the user description indicates a first set of features and the updated user description indicates a second set of features (Id.; p. 5, left col., last para., Figure 3 illustrates one of these two problems, with the original description shown on lines 1-3 [user description indicates a first set of features]. The initial solution generated by Copilot swapped only the first positive and first negative number. Prompt engineering (see comment lines 4-7) that explicitly suggested building two lists [the updated user description indicates a second set of features] was successful) … feedback (e.g., p. 4, left col., top, (7) Observe the failing test cases and engineer the description by adding comments to it that clarify the problem or that provide a strategy for solving the problem [feedback]. Do not modify any code—only provide natural language descriptions.) … updated … and the first command (e.g., p. 5, left col., last para., Figure 3 illustrates one of these two problems, with the original description shown on lines 1-3 [user description]. The initial solution generated by Copilot swapped only the first positive and first negative number. Prompt engineering (see comment lines 4-7) that explicitly suggested building two lists [updated user description] was successful; p. 5, top, Figure 3 … The manually added comments [updated user description] appear on lines 4-7; p. 6, left col., 1st full para., It may be possible to engineer prompts [second command] more effectively by rewriting the original prompts [first command], rather than by adding to them [by combining the updated user description and the first command] as we have done; see also pp. 3-4, § 4.2.) … updated source code, wherein the source code realizes the first set of features and the updated source code realizes the second set of features (e.g., p. 5, left col., last para., Only two of the six problems in this category were solved by Copilot, and both required prompt engineering. Figure 3 illustrates one of these two problems, with the original description shown on lines 1-3. The initial solution generated by Copilot swapped only the first positive and first negative number [source code realizes the first set of features]. Prompt engineering (see comment lines 4-7) that explicitly suggested building two lists was successful … Figure 3: Suggested solution (correct after prompt engineering) [the updated source code realizes the second set of features]; see also pp. 3-4, § 4.2.) … the updated source code (e.g., p. 5, Fig. 3: Suggested solution (correct after prompt engineering). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to combine the invention of Chandel with the prompt engineering technique of Denny, such that subsequent interactions in the conversation with the LLM provide feedback in order to generate a second prompt that will instruct the LLM to generate updated source code, because (1) Chandel suggests using their invention to generate source code (see [0050], The techniques described herein may be used in any chatbot environment … This includes … test generation, example generation, method generation.) and (2) the prompt-engineering technique of Denny can improve generated source code, as suggested by Denny (see p. 5, left col., last para., “Only two of the six problems in this category were solved by Copilot, and both required prompt engineering.”). With respect to claim 8, Chandel discloses A computer-implemented method for a code system (e.g., Figs. 1, 2, 4, and 7-8.), comprising: receiving an instruction to a source code, wherein the instruction includes a user description and information of a code profile (e.g., Figs. 1-7, particularly “User Query + Context 214” in Fig. 2, “Obtain User Query and Context 406” in Fig. 4, and “User Query + Context 708” in Fig. 7 along with associated text, e.g., [0015], The query [user description] is a question, instruction, or short paragraph that describes the task and the context is the identity of the codebase (e.g., location, URI, file path, etc.) [information of a code profile] that is the subject of the query; [0033], The user query 304 consists of a question, ‘How to Build a BPE Encoder?’ and the context 304 includes a URL to a location in GitHub that contains a codebase MinGPT, https://Github.com/Karpathy/MinGPT; [0034], The model's response 302 includes specific references found in the codebase. For example, the model's response includes … an example of the method; [0035], the model's response contains specific code elements from the codebase [0049], The code query engine 710 receives a user query and a context 708 from the user interface 704.); in response to receiving the instruction, retrieving the code profile from a profile manager based on the information of the code profile (e.g., Figs. 1-4 and 7 along with associated text, e.g., [0044], The search engine searches the codebase segment table for examples [code profile] that are similar to the user query and context; [0045], An embedding is generated using the encoder given the user query and the context (block 602). The search engine uses the embedding of the user query and context to find the closest embeddings from the codebase segment table … The metadata and code segments [code profile] associated with the closest similar embeddings to the embedding of the user query and context are selected as examples (block 604); see also [0025], [0033], and [0049].); generating a first command by combining the user description and the code profile (e.g., Figs. 1-4 and 7 along with associated text, e.g., [0044], once the examples are obtained (block 408), the prompt generator then constructs a prompt [first command] that includes the query [user description], context, and the one or more examples [code profile] (block 410); see also [0026] and [0049].); transmitting the first command to an artificial intelligence (AI) proxy (e e.g., Figs. 1-4 and 7 along with associated text, e.g., [0047], The prompt [first command] is applied to the large language model (block 412); [0031], the large language model resides on a remote server and receives the prompt at an endpoint of a server [AI proxy] hosting the large language model via a network; see also [0026] and [0049].); receiving the source code from the AI proxy (e.g., Figs. 1-4 and 7 along with associated text, e.g., [0047], The large language model returns a response (block 414) which is output or returned to the application or user interface requesting the query (block 416); [0034], The model's response 302 includes specific references found in the codebase. For example, the model's response includes … an example of the method; [0035], the model's response contains specific code elements from the codebase; see also [0031] and [0049].); transmitting the source code to a user device (Id., particularly, [0047], The large language model returns a response (block 414) which is output or returned to the application or user interface requesting the query, and [0034], the model's response includes … an example of the method; [0035], the model's response contains specific code elements from the codebase; see also [0049], The large language model 728 generates a response given the prompt which is then returned to the user interface.); receive a from the user device, wherein the includes an user description and information of a second code profile, (e.g., Figs. 1-4 and 7 along with associated text, e.g., [0031], the user and the large language model may engage in a conversation that consists of several prompts and responses within a single network session; [0015], The query is a question, instruction, or short paragraph that describes the task and the context is the identity of the codebase (e.g., location, URI, file path, etc.) that is the subject of the query; see also [0033] and [0049].); in response to receiving the , retrieve the second code profile from the profile manager based on the information of the second code profile (e.g., Figs. 1-4 and 7 along with associated text, e.g., [0031], the user and the large language model may engage in a conversation that consists of several prompts and responses within a single network session; [0044], The search engine searches the codebase segment table for examples that are similar to the user query and context; [0045], The search engine uses the embedding of the user query and context to find the closest embeddings from the codebase segment table … The metadata and code segments associated with the closest similar embeddings to the embedding of the user query and context are selected as examples (block 604); see also [0025] and [0049].); generate a second command by combining the user description, the second code profile, ; transmit the second command to the AI proxy (e.g., Figs. 1-4 and 7 along with associated text, e.g., [0031], the user and the large language model may engage in a conversation that consists of several prompts and responses within a single network session; [0047], The prompt is applied to the large language model (block 412); [0031], the large language model resides on a remote server and receives the prompt at an endpoint of a server hosting the large language model via a network; see also [0026] and [0049].); receive an (e.g., Figs. 1-4 and 7 along with associated text, e.g., [0047], The large language model returns a response (block 414) which is output or returned to the application or user interface requesting the query (block 416); [0034], The model's response 302 includes specific references found in the codebase. For example, the model's response includes … an example of the method; [0035], the model's response contains specific code elements from the codebase; see also [0049].); and transmit to the user device (e.g., Figs. 1-4 and 7 along with associated text, e.g., [0031], the user and the large language model may engage in a conversation that consists of several prompts and responses within a single network session; [0047], The large language model returns a response (block 414) which is output or returned to the application or user interface requesting the query (block 416); see also [0049].). Although Chandel discloses an instruction requesting source code and a conversion with the LLM that consists of multiple prompt/response interactions (see above), it does not appear to disclose the following, which is taught in analogous art, Denny: generating … generate (e.g., Abstract, GitHub Copilot is an artificial intelligence model for automatically generating source code from natural language problem descriptions; p. 3, § 4.2 Using Copilot, (2) Wait for Copilot to generate a suggestion.) … feedback … feedback … updated (e.g., p. 4, left col., top, (6) If any test cases fail, delete the “buggy” code that was suggested by Copilot. (7) Observe the failing test cases and engineer the description by adding comments to it that clarify the problem or that provide a strategy for solving the problem [feedback includes an updated user description]. Do not modify any code—only provide natural language descriptions. Repeat steps 6–7 until all test cases pass, or there are no obvious clarifications that can be made to the description; p. 5, top, Prompt engineering (see comment lines 4-7) that explicitly suggested building two lists was successful … Figure 3 … The manually added comments appear on lines 4-7; p. 6, left col., 1st full para., engineer prompts … by adding to them as we have done.) … wherein the user description indicates a first set of features and the updated user description indicates a second set of features (Id.; p. 5, left col., last para., Figure 3 illustrates one of these two problems, with the original description shown on lines 1-3 [user description indicates a first set of features]. The initial solution generated by Copilot swapped only the first positive and first negative number. Prompt engineering (see comment lines 4-7) that explicitly suggested building two lists [the updated user description indicates a second set of features] was successful) … feedback (e.g., p. 4, left col., top, (7) Observe the failing test cases and engineer the description by adding comments to it that clarify the problem or that provide a strategy for solving the problem [feedback]. Do not modify any code—only provide natural language descriptions.) … updated … and the first command (e.g., p. 5, left col., last para., Figure 3 illustrates one of these two problems, with the original description shown on lines 1-3 [user description]. The initial solution generated by Copilot swapped only the first positive and first negative number. Prompt engineering (see comment lines 4-7) that explicitly suggested building two lists [updated user description] was successful; p. 5, top, Figure 3 … The manually added comments [updated user description] appear on lines 4-7; p. 6, left col., 1st full para., It may be possible to engineer prompts [second command] more effectively by rewriting the original prompts [first command], rather than by adding to them [by combining the updated user description and the first command] as we have done; see also pp. 3-4, § 4.2.) … updated source code, wherein the source code realizes the first set of features and the updated source code realizes the second set of features (e.g., p. 5, left col., last para., Only two of the six problems in this category were solved by Copilot, and both required prompt engineering. Figure 3 illustrates one of these two problems, with the original description shown on lines 1-3. The initial solution generated by Copilot swapped only the first positive and first negative number [source code realizes the first set of features]. Prompt engineering (see comment lines 4-7) that explicitly suggested building two lists was successful … Figure 3: Suggested solution (correct after prompt engineering) [the updated source code realizes the second set of features]; see also pp. 3-4, § 4.2.) … the updated source code (e.g., p. 5, Fig. 3: Suggested solution (correct after prompt engineering). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to combine the invention of Chandel with the prompt engineering technique of Denny, such that subsequent interactions in the conversation with the LLM provide feedback in order to generate a second prompt that will instruct the LLM to generate updated source code, because (1) Chandel suggests using their invention to generate source code (see [0050], The techniques described herein may be used in any chatbot environment … This includes … test generation, example generation, method generation.) and (2) the prompt-engineering technique of Denny can improve generated source code, as suggested by Denny (see p. 5, left col., last para., “Only two of the six problems in this category were solved by Copilot, and both required prompt engineering.”). With respect to claim 15, Chandel discloses A non-transitory computer-readable device having instructions stored thereon that, when executed by at least one computing device (e.g., Figs. 2 and 7-8, along with associated text, e.g., [0054] A memory device or memory 816, 838 may be any non-transitory computer-readable storage media that may store executable procedures.), cause the at least one computing device to perform operations, the operations comprising: receiving an instruction to a source code, wherein the instruction includes a user description and information of a code profile (e.g., Figs. 1-7, particularly “User Query + Context 214” in Fig. 2, “Obtain User Query and Context 406” in Fig. 4, and “User Query + Context 708” in Fig. 7 along with associated text, e.g., [0015], The query [user description] is a question, instruction, or short paragraph that describes the task and the context is the identity of the codebase (e.g., location, URI, file path, etc.) [information of a code profile] that is the subject of the query; [0033], The user query 304 consists of a question, ‘How to Build a BPE Encoder?’ and the context 304 includes a URL to a location in GitHub that contains a codebase MinGPT, https://Github.com/Karpathy/MinGPT; [0034], The model's response 302 includes specific references found in the codebase. For example, the model's response includes … an example of the method; [0035], the model's response contains specific code elements from the codebase [0049], The code query engine 710 receives a user query and a context 708 from the user interface 704.); in response to receiving the instruction, retrieving the code profile from a profile manager based on the information of the code profile (e.g., Figs. 1-4 and 7 along with associated text, e.g., [0044], The search engine searches the codebase segment table for examples [code profile] that are similar to the user query and context; [0045], An embedding is generated using the encoder given the user query and the context (block 602). The search engine uses the embedding of the user query and context to find the closest embeddings from the codebase segment table … The metadata and code segments [code profile] associated with the closest similar embeddings to the embedding of the user query and context are selected as examples (block 604); see also [0025], [0033], and [0049].); generating a first command by combining the user description and the code profile (e.g., Figs. 1-4 and 7 along with associated text, e.g., [0044], once the examples are obtained (block 408), the prompt generator then constructs a prompt [first command] that includes the query [user description], context, and the one or more examples [code profile] (block 410); see also [0026] and [0049].); transmitting the first command to an artificial intelligence (AI) proxy (e.g., Figs. 1-4 and 7 along with associated text, e.g., [0047], The prompt [first command] is applied to the large language model (block 412); [0031], the large language model resides on a remote server and receives the prompt at an endpoint of a server [AI proxy] hosting the large language model via a network; see also [0026] and [0049].); receiving the source code from the AI proxy (e.g., Figs. 1-4 and 7 along with associated text, e.g., [0047], The large language model returns a response (block 414) which is output or returned to the application or user interface requesting the query (block 416); [0034], The model's response 302 includes specific references found in the codebase. For example, the model's response includes … an example of the method; [0035], the model's response contains specific code elements from the codebase; see also [0031] and [0049].); transmitting the source code to a user device (Id., particularly, [0047], The large language model returns a response (block 414) which is output or returned to the application or user interface requesting the query, and [0034], the model's response includes … an example of the method; [0035], the model's response contains specific code elements from the codebase; see also [0049], The large language model 728 generates a response given the prompt which is then returned to the user interface.); receive a from the user device, wherein the includes an user description and information of a second code profile, ; in response to receiving the , retrieve the second code profile from the profile manager based on the information of the second code profile (e.g., Figs. 1-4 and 7 along with associated text, e.g., [0031], the user and the large language model may engage in a conversation that consists of several prompts and responses within a single network session; [0044], The search engine searches the codebase segment table for examples that are similar to the user query and context; [0045], The search engine uses the embedding of the user query and context to find the closest embeddings from the codebase segment table … The metadata and code segments associated with the closest similar embeddings to the embedding of the user query and context are selected as examples (block 604); see also [0025] and [0049].); generate a second command by combining the user description, the second code profile, (e.g., Figs. 1-4 and 7 along with associated text, e.g., [0031], the user and the large language model may engage in a conversation that consists of several prompts and responses within a single network session; [0044], once the examples are obtained (block 408), the prompt generator then constructs a prompt that includes the query, context, and the one or more examples (block 410); see also [0026] and [0049].); transmit the second command to the AI proxy (e.g., Figs. 1-4 and 7 along with associated text, e.g., [0031], the user and the large language model may engage in a conversation that consists of several prompts and responses within a single network session; [0047], The prompt is applied to the large language model (block 412); [0031], the large language model resides on a remote server and receives the prompt at an endpoint of a server hosting the large language model via a network; see also [0026] and [0049].); receive an (e.g., Figs. 1-4 and 7 along with associated text, e.g., [0047], The large language model returns a response (block 414) which is output or returned to the application or user interface requesting the query (block 416); [0034], The model's response 302 includes specific references found in the codebase. For example, the model's response includes … an example of the method; [0035], the model's response contains specific code elements from the codebase; see also [0049].); and transmit to the user device (e.g., Figs. 1-4 and 7 along with associated text, e.g., [0031], the user and the large language model may engage in a conversation that consists of several prompts and responses within a single network session; [0047], The large language model returns a response (block 414) which is output or returned to the application or user interface requesting the query (block 416); see also [0049].). Although Chandel discloses an instruction requesting source code and a conversion with the LLM that consists of multiple prompt/response interactions (see above), it does not appear to disclose the following, which is taught in analogous art, Denny: generate (e.g., Abstract, GitHub Copilot is an artificial intelligence model for automatically generating source code from natural language problem descriptions; p. 3, § 4.2 Using Copilot, (2) Wait for Copilot to generate a suggestion.) … feedback … feedback … updated (e.g., p. 4, left col., top, (6) If any test cases fail, delete the “buggy” code that was suggested by Copilot. (7) Observe the failing test cases and engineer the description by adding comments to it that clarify the problem or that provide a strategy for solving the problem [feedback includes an updated user description]. Do not modify any code—only provide natural language descriptions. Repeat steps 6–7 until all test cases pass, or there are no obvious clarifications that can be made to the description; p. 5, top, Prompt engineering (see comment lines 4-7) that explicitly suggested building two lists was successful … Figure 3 … The manually added comments appear on lines 4-7; p. 6, left col., 1st full para., engineer prompts … by adding to them as we have done.) … wherein the user description indicates a first set of features and the updated user description indicates a second set of features (Id.; p. 5, left col., last para., Figure 3 illustrates one of these two problems, with the original description shown on lines 1-3 [user description indicates a first set of features]. The initial solution generated by Copilot swapped only the first positive and first negative number. Prompt engineering (see comment lines 4-7) that explicitly suggested building two lists [the updated user description indicates a second set of features] was successful) … feedback (e.g., p. 4, left col., top, (7) Observe the failing test cases and engineer the description by adding comments to it that clarify the problem or that provide a strategy for solving the problem [feedback]. Do not modify any code—only provide natural language descriptions.) … updated … and the first command (e.g., p. 5, left col., last para., Figure 3 illustrates one of these two problems, with the original description shown on lines 1-3 [user description]. The initial solution generated by Copilot swapped only the first positive and first negative number. Prompt engineering (see comment lines 4-7) that explicitly suggested building two lists [updated user description] was successful; p. 5, top, Figure 3 … The manually added comments [updated user description] appear on lines 4-7; p. 6, left col., 1st full para., It may be possible to engineer prompts [second command] more effectively by rewriting the original prompts [first command], rather than by adding to them [by combining the updated user description and the first command] as we have done; see also pp. 3-4, § 4.2.) … updated source code, wherein the source code realizes the first set of features and the updated source code realizes the second set of features (e.g., p. 5, left col., last para., Only two of the six problems in this category were solved by Copilot, and both required prompt engineering. Figure 3 illustrates one of these two problems, with the original description shown on lines 1-3. The initial solution generated by Copilot swapped only the first positive and first negative number [source code realizes the first set of features]. Prompt engineering (see comment lines 4-7) that explicitly suggested building two lists was successful … Figure 3: Suggested solution (correct after prompt engineering) [the updated source code realizes the second set of features]; see also pp. 3-4, § 4.2.) … the updated source code (e.g., p. 5, Fig. 3: Suggested solution (correct after prompt engineering). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to combine the invention of Chandel with the prompt engineering technique of Denny, such that subsequent interactions in the conversation with the LLM provide feedback in order to generate a second prompt that will instruct the LLM to generate updated source code, because (1) Chandel suggests using their invention to generate source code (see [0050], The techniques described herein may be used in any chatbot environment … This includes … test generation, example generation, method generation.) and (2) the prompt-engineering technique of Denny can improve generated source code, as suggested by Denny (see p. 5, left col., last para., “Only two of the six problems in this category were solved by Copilot, and both required prompt engineering.”). With respect to claims 3, 10, and 17, Chandel also discloses wherein the code profile comprises: one or more coding languages indications, one or more existing source code sections, one or more functions to be used in the source code, or one or more illustration requirements (e.g., Figs. 1-4 and 7 along with associated text, e.g., [0044], The search engine searches the codebase segment table for examples [code profile] that are similar to the user query and context; [0033], The example 306 consists of the code segment which is the Python method, decode, 316 and its metadata; see also [0025], [0045], and [0049].). With respect to claims 4 and 11, Chandel also teaches , and wherein the user description is a natural language description (e.g., Figs. 1-7, [0015], The query [user description] is a question, instruction, or short paragraph that describes the task; see also [0033].) and Denny further teaches wherein the user description comprises one or more features to be realized by the source code (e.g., p. 5, left col., last para., Only two of the six problems in this category were solved by Copilot, and both required prompt engineering. Figure 3 illustrates one of these two problems, with the original description shown on lines 1-3. The initial solution generated by Copilot swapped only the first positive and first negative number; see also pp. 3-4, § 4.2.). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to combine the invention of Chandel with the prompt engineering technique of Denny for the same reasons set forth above. With respect to claims 7, 14, and 20, Chandel also discloses receive a from the user device, wherein the includes an user description (e.g., Figs. 1-4 and 7 along with associated text, e.g., [0031], the user and the large language model may engage in a conversation that consists of several prompts and responses within a single network session; [0033] The user query 304 consists of a question, ‘How to Build a BPE Encoder?’ and the context 304 includes a URL to a location in GitHub that contains a codebase; see also [0049].); generate a second command (e.g., Figs. 1-4 and 7 along with associated text, e.g., [0031], the user and the large language model may engage in a conversation that consists of several prompts and responses within a single network session; [0044], once the examples are obtained (block 408), the prompt generator then constructs a prompt that includes the query, context, and the one or more examples (block 410); see also [0026] and [0049].); transmit the second command to the AI proxy (e.g., Figs. 1-4 and 7 along with associated text, e.g., [0031], the user and the large language model may engage in a conversation that consists of several prompts and responses within a single network session; [0047], The prompt is applied to the large language model (block 412); [0031], the large language model resides on a remote server and receives the prompt at an endpoint of a server hosting the large language model via a network; see also [0026] and [0049].); receive an (e.g., Figs. 1-4 and 7 along with associated text, e.g., [0047], The large language model returns a response (block 414) which is output or returned to the application or user interface requesting the query (block 416); [0034], The model's response 302 includes specific references found in the codebase. For example, the model's response includes … an example of the method; [0035], the model's response contains specific code elements from the codebase; see also [0049].); and transmit to the user device (e.g., Figs. 1-4 and 7 along with associated text, e.g., [0031], the user and the large language model may engage in a conversation that consists of several prompts and responses within a single network session; [0047], The large language model returns a response (block 414) which is output or returned to the application or user interface requesting the query (block 416); see also [0049].). Chandel does not appear to disclose the following, which is further taught in Denny: feedback … feedback … updated (e.g., p. 4, left col., top, (6) If any test cases fail, delete the “buggy” code that was suggested by Copilot. (7) Observe the failing test cases and engineer the description by adding comments to it that clarify the problem or that provide a strategy for solving the problem [feedback includes an updated user description]. Do not modify any code—only provide natural language descriptions. Repeat steps 6–7 until all test cases pass, or there are no obvious clarifications that can be made to the description; p. 5, top, Prompt engineering (see comment lines 4-7) that explicitly suggested building two lists was successful … Figure 3 … The manually added comments appear on lines 4-7; p. 6, left col., 1st full para., engineer prompts … by adding to them as we have done.) … by combining the updated user description and the first command (e.g., p. 5, left col., last para., Figure 3 illustrates one of these two problems, with the original description shown on lines 1-3 [user description]. The initial solution generated by Copilot swapped only the first positive and first negative number. Prompt engineering (see comment lines 4-7) that explicitly suggested building two lists [updated user description] was successful; p. 5, top, Figure 3 … The manually added comments [updated user description] appear on lines 4-7; p. 6, left col., 1st full para., It may be possible to engineer prompts more effectively by rewriting the original prompts [first command], rather than by adding to them [generate a second command by combining the updated user description and the first command] as we have done; see also pp. 3-4, § 4.2.) … updated source code … the updated source code (e.g., p. 5, Fig. 3: Suggested solution (correct after prompt engineering).). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to combine the invention of Chandel with the prompt engineering technique of Denny for the same reasons set forth above. Claims 2, 9, and 16 are ejected under 35 U.S.C. 103 as being unpatentable over Chandel in view of Denny, as applied to claims 1, 8, and 15 above, and further in view of Acharya et al. (US 20250045148, hereinafter Acharya) and Haze et al. (US 20210303447, hereinafter Haze). With respect to claims 2, 9, and 16, Chandel does not appear to disclose wherein to retrieve the code profile, the at least one processor is further configured to: retrieve an identifier of the code profile from the information of the code profile, wherein the identifier of the code profile distinguishes the code profile from other code profiles in the profile manager; transmit a request for the code profile to the profile manager, wherein the request includes the identifier of the code profile; and receive the code profile from the profile manager. However, in analogous art, Acharya teaches wherein to retrieve the code profile, the at least one processor is further configured to: retrieve an identifier of the code profile from the information of the code profile, wherein the identifier of the code profile distinguishes the code profile from other code profiles in the profile manager (e.g., Figs. 1-2 and 4 and associated text, e.g., [0071], At operation 404, the generative AI system builds a context for a portion of software code that caused or contributed to the detected issue. In some examples, a user provides the identity of the portion of software code as part of the user request; [0072], At operation 406, the generative AI system uses the context to identify the storage location of a software code file comprising the portion of the software code; see also [0046].); for the code profile to the profile managerof the code profile (e.g., Figs. 1-2 and 4 and associated text, e.g., [0072], At operation 406, the generative AI system uses the context to identify the storage location of a software code file comprising the portion of the software code. Upon identifying the storage location of a software code file, the generative AI system identifies or extracts the lines of software code corresponding to the portion of software code; [0055], uses the identified storage location of the software code file to access the software code file. For example, code compiler 206 may retrieve the software code file from software code repository 110 or access the software code file stored in software code repository 110.); and receive the code profile from the profile manager (e.g., Figs. 1-2 and 4 and associated text, e.g., [0072], Upon identifying the storage location of a software code file, the generative AI system identifies or extracts the lines of software code corresponding to the portion of software code; [0074] At operation 410, the generative AI system provides the … the lines of software code … as input to a language model.). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to further modify the invention of Chandel with the invention of Acharya because it would allow the user to take advantage of their knowledge and expertise when identifying the source code to include in the prompt. Chandel as modified does not appear to disclose the following, which is taught in analogous art, Haze: transmit a request … wherein the request includes the identifier (e.g., Figs. 1-4 and associated text, e.g., [0047], the information retriever 211 can submit a request for the context and profile information 208, the request including the user_id; see also [0028], the user_id of the developer 108 can be provided to the code recommendation system 106 … the code recommendation system 106 can access profile information for the developer, which can be used to determine code recommendations that are to be recommended to the developer 108.): It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to further modify the invention of Chandel with the invention of Haze, such that the code profile is retrieved by transmitting a request with the identifier of the code profile to the code repository, because transmitting requests with identifiers is a well-known and effective means of accessing information. Claims 5, 12, and 18 are ejected under 35 U.S.C. 103 as being unpatentable over Chandel in view of Denny, as applied to claims 1, 8, and 15 above, and further in view of Haze. With respect to claims 5, 12, and 18, Chandel also discloses wherein the code profile comprises and context of the source code (e.g., Figs. 1-4 and 7 along with associated text, e.g., [0044], The search engine searches the codebase segment table for examples that are similar to the user query and context; [0045], An embedding is generated using the encoder given the user query and the context (block 602). The search engine uses the embedding of the user query and context to find the closest embeddings from the codebase segment table … The metadata and code segments associated with the closest similar embeddings to the embedding of the user query and context are selected as examples (block 604) [code profile comprises context of the source code]; see also [0025] and [0049].). Chandel does not appear to disclose the following, which is taught in analogous art, Haze: domain knowledge (e.g., Figs. 1-4 and associated text, e.g., [0029], the code recommendation system 106 can access domain profile information for the domain(s), which can be used to determine code recommendations that are to be recommended to the developer 108 (e.g., the domain profile information for a banking domain can indicate that security is of a higher priority than execution speed.); see also [0053].). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to further modify the invention of Chandel with the invention of Haze because it could help the model establish priorities to better generate responses, as suggested by Haze (see [0029], the domain profile information for a banking domain can indicate that security is of a higher priority than execution speed.). Claims 6, 13, and 19 are ejected under 35 U.S.C. 103 as being unpatentable over Chandel in view of Denny and Haze, as applied to claims 5, 12, and 18 above, and further in view of Hao (US 20180060044, hereinafter Hao). With respect to claims 6, 13, and 19, Chandel does not appear to disclose the following, which is taught in analogous art, Hao: extract the context from a runtime environment (e.g., Figs. 2-3 and associated text, e.g., [0031], the runtime context feature may be a feature collected at runtime and includes at least one of: programming language of the program, code comments in the program, input search keywords, imported packages, classes or functions in the program, data types and names of variables in the program, values of variables in the program, and value distribution of elements of a compound variable in the program…. the imported packages, classes or functions depend on values of variables and can be determined only at runtime; [0032], when using a dynamic language such as Python, data type of a variable can be collected only at runtime; [0036], for an interactive development environment, in the runtime context feature collecting step 210, the set of runtime context features can be collected directly from the interactive runtime; see also [0035].). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to further modify the invention of Chandel with the invention of Hao because “there is a need for dynamic code suggestion on the basis of runtime context features”, as suggested by Hao (see [0005]). Conclusion The prior art made of record and not relied upon is considered pertinent to applicant's disclosure. Specifically, Shrivastava et al., “Repository-Level Prompt Generation for Large Language Models of Code” teaches learning to generate example-specific prompts using prompt proposals. Any inquiry concerning this communication or earlier communications from the examiner should be directed to STEPHEN DAVID BERMAN whose telephone number is (571) 272-7206. The examiner can normally be reached M-F, 9-6 Eastern. 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, Hyung S. Sough can be reached on 571-272-6799. 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. /STEPHEN D BERMAN/ Examiner, Art Unit 2192 1 See Remarks at p. 9. 2 See Applicant’s specification, e.g., [0015], the AI assistant tools, including the ChatGPT, can be based on a large language model (LLM); [0020], “The AI proxy 108 can be a server that connects with AI assistant tools, such as ChatGPT, Bard, GitHub, and so on.” 3 See Remarks at pp. 9-10. 4 Please note the 35 USC 112(b) rejections above and Examiner’s interpretation of these limitations as being the same as the respective corresponding parent claim limitations. 5 See claim 1. 6 See claim 8. 7 See claim 15 8 See claim 1. 9 See claim 8
Read full office action

Prosecution Timeline

Show 1 earlier event
Jun 04, 2025
Non-Final Rejection mailed — §101, §103, §112
Aug 27, 2025
Response Filed
Sep 17, 2025
Final Rejection mailed — §101, §103, §112
Dec 16, 2025
Request for Continued Examination
Dec 31, 2025
Response after Non-Final Action
Apr 03, 2026
Non-Final Rejection mailed — §101, §103, §112
Jun 23, 2026
Applicant Interview (Telephonic)
Jun 27, 2026
Examiner Interview Summary

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12664069
CODE CONCIERGE MODEL (CCM) FOR PREDICTING RUNTIME ERRORS OF SOURCE CODE
3y 1m to grant Granted Jun 23, 2026
Patent 12664073
ONE REGRESSION DETECTION TESTING METHOD
2y 8m to grant Granted Jun 23, 2026
Patent 12657114
ASCERTAINING APPLICATION TEST COVERAGE
3y 8m to grant Granted Jun 16, 2026
Patent 12645566
View-Based Breakpoints For A Display System
5y 2m to grant Granted Jun 02, 2026
Patent 12645567
DEBUGGING COMMUNICATION AMONG UNITS ON PROCESSOR SIMULATOR
4y 5m to grant Granted Jun 02, 2026
Study what changed to get past this examiner. Based on 5 most recent grants.

Strategy Recommendation AI-generated — please review before filing

Get a prosecution strategy drawn from examiner precedents, rejection analysis, and claim mapping.
Typically takes 5-10 seconds — AI-generated, attorney review required before filing

Prosecution Projections

3-4
Expected OA Rounds
78%
Grant Probability
99%
With Interview (+58.2%)
2y 8m (~0m remaining)
Median Time to Grant
High
PTA Risk
Based on 341 resolved cases by this examiner. Grant probability derived from career allowance rate.

Sign in with your work email

Enter your email to receive a magic link. No password needed.

Personal email addresses (Gmail, Yahoo, etc.) are not accepted.

Free tier: 3 strategy analyses per month