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 .
This office action is sent in response to Applicant’s communication received on 01/02/2025 for the application number 19007828. The office hereby acknowledges receipt of the following placed of record in the file: Specification, Abstract, Oath/Declaration and claims.
Status of the claims
Claims 1-20 are presented for examination.
Information Disclosure Statement
The information disclosure statements (IDS) submitted on 02/10/2025 and 06/22/2026
were filed before the mailing date of the first office action. The submission is in compliance with
the provisions of 37 CFR 1.97. Accordingly, the information disclosure statement is being
considered by the examiner.
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.
The factual inquiries for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows:
1. Determining the scope and contents of the prior art.
2. Ascertaining the differences between the prior art and the claims at issue.
3. Resolving the level of ordinary skill in the pertinent art.
4. Considering objective evidence present in the application indicating obviousness or nonobviousness.
Claims 1, 2, 5, 6, 7, 8, 12, 13, 14, 15, 16, 19, 20 are rejected under 35 U.S.C. 103 as being unpatentable over Willard et al. ("Efficient Guided Generation for Large Language Models", arXiv2307.09702v4 cs.CL, 19 Aug 2023, 18 pages.) in view of Hartmann (US 20260119978 A1).
Regarding claim 1, Willard teaches a system comprising: at least one hardware processor; a computer-readable medium storing instructions that, when executed by the at least one hardware processor, cause the at least one hardware processor to perform operations comprising (Pg. 1, Abstract, “An implementation is provided in the open source Python library”, necessarily includes a system including a computer readable medium): receiving, at a Large Language Model (LLM), a prompt (Pg. 8, 3.1, “Prompt = ‘Is 1+1=2’”); assigning probabilities to a first plurality of different possible tokens based on the prompt (Pg. 3, Sec 2, “the function LLM refers to … any function that takes token sequences and returns a probability distribution for the next token”); selecting a first token based on values for one or more parameters for the first plurality of different possible tokens (Pg. 3, Algorithm 1, “α←LM(s, θ) Sample s ∼ Categorical(α)” Algorithm 1 samples a token from the categorical distribution produced by the LLM); determining that the first token is not a trigger token (Pg. 6, Example 1, “If we sample ‘.2’, we advance the FSM to state 3” and “if we sample ‘1’ instead, we advance the FSM to state 1”, wherein the first sampled token “1” is determined not to be the trigger token because it causes the FSM to transition to state 1 rather than causing the first-type transition to state 3); assigning values to one or more parameters of a second plurality of different possible tokens based on the prompt and based on the first token (Pg. 3, Algorithm 1, “α ← LM(s, θ)” and " s ← append(s, s)”, wherein the first lines generates probability values for the possible next tokens, and the second line appends the selected first token to that sequence. After the first token is appended to the sequence containing the prompt, the LLM processes that updated sequence to generate a new probability distribution for the possible next tokens. The probabilities in that distribution are the claimed parameter values, the possible next tokens are the claimed second plurality, and the values are based on both the prompt and the first token because both are included in the sequence provided to the LLM); selecting a second token based on the values for the one or more parameters for the second plurality of different possible tokens (Pg. 3, 2.1, “the procedure recursively generates new tokens by sampling from the categorical distribution”, wherein during the second iteration, the second token is selected by sampling from the categorical distribution defined by the assigned probability values); determining that the second token is a trigger token of a first type (Pg. 6, Example 1, “If we sample ‘.2’, we advance the FSM to state 3” wherein the sampled token ‘.2” is determined to be a trigger token of a first type because processing that token causes the system to transition to a different state (grammar)); assigning values to one or more parameters of a third plurality of different possible tokens based on the prompt and based on the second token (Pg. 4, Sec 2.2, “the support and, thus, m will necessarily depend on the previously sampled tokens.”, wherein the mask m assign allowable or unallowable values to a plurality of possible next tokens based on the current sequence, which includes the original prompt and the second token); based on the determination that the second token is the trigger token of the first type (Pg. 6, Example 1), assigning a specific value to a parameter of any tokens in the third probability of different possible tokens that are not in compliance with a first grammar uniquely associated with the first type and that also are not an end token (Pg. 4, Sec 2.2, “we can compute an un-normalized conditional distribution by applying a Boolean mask m : P (V) → {0,1}N that restricts the support of the original distribution” where the Boolean mask assigns a value of zero to the probability of each possible token that is invalid under the specified grammar); selecting a third token based on the values for the one or more parameters of the third plurality of different possible tokens (Pg. 5, Algorithm 2, where the third token is selected by sampling from the masked categorical distribution according to the values that were assigned for the third plurality of possible tokens); and returning the first token, second token, and third token as a response to the prompt. (Pg. 5, Algorithm 2, “s ← append(s, s) and return s” wherein each selected token is appended to the sequence s; after the first, second, and third iterations, s contains the first, second, and third tokens which are then returned as a response to the prompt).
Willard does not teach where the first grammar is uniquely associated with the first type of trigger token.
However, Hartmann teaches where the first grammar is uniquely associated with the first type of trigger token. (Para 0108, “A profile identifier can include a vocabulary entry designated for a particular profile, such that machine-learned model 110 emits a specific token to initiate a swap to that specific profile”; see also para 0119, teaching that an output vocabulary element may exist for each available profile). Hartmann further teaches that different selected profiles can correspond to different output formats for example programming languages, as in para 0113, “different languages, different programming languages, and different data encodings. The vocabulary entry for a particular profile maps to the first type of trigger token, and the programming language rules associated with that profile map to the first grammar uniquely associated with that trigger-token type).
It would have been obvious to one of ordinary skill in the art to modify Willard before the effective filing date in order to incorporate the teachings of Hartmann in order to improve the reliability of generating correctly formatted outputs (Para 0108).
Regarding claim 2, Willard teaches wherein the one or more parameters comprise temperature. (Pg. 2, Sec. 3.2, “temperature=0.1”. See also Pg. 11, Listing 3.4, “model = models.transformers(“gpt2”, device=”cuda”, temperature=0.1)”).
Regarding claim 5, Willard teaches wherein the one or more parameters comprise maximum tokens (Pg. 8, Sec. 3.1, “max_tokens=30”. See also pg. 12, “The value of max_tokens is varied and the timings are recorded”).
Regarding claim 6, Willard teaches wherein the one or more parameters comprise probability, and wherein the specific value is a null probability value. (Pg. 2, “setting the probabilities of invalid tokens to zero”, see also Pg. 4, Sec. 2.2).
Regarding claim 7, Willard teaches assigning probabilities to a fourth plurality of different possible tokens based on the prompt and based on the third token (Pg. 3, Algorithm 1, Algorithm 1 repeatedly performs α←LM(s, θ), samples a token, and then s ← append(s, s) wherein the algorithm recursively generates new tokens by repeatedly generating a next-token probability distribution based on the previous token); assigning a null probability value to any tokens in the third probability of different possible tokens that are not in compliance with the first grammar and that also are not an end token (Pg. 2, “determine which tokens are valid-according to the constraints and previously samples tokens-and setting the probabilities of invalid tokens to zero” and Boolean masks which can be designed to “parse according to a specified grammar”); selecting a fourth token based on the assigned probabilities for the fourth plurality of different possible tokens (Pg. 5, Algorithm 2, Algorithm 2 iteratively samples from the masked categorical distribution any number of times up to and including a fourth token); determining that the fourth token is an end token (Og. 5, Algorithm 2, “if ˜s = EOS then break” wherein each sampled token is compared to the special EOS token to determine whether the sampled token is an end token); based on the determination that the token is the end token, ending the guided token-generation process; and wherein the generating comprises generating the first token, second token, third token, fourth token, and fifth token as a response to the prompt. (Pg. 5, Algorithm 2, “s ← append(s, s) and return s” all of the generated tokens are appended to the sequence, and the sequence is returned).
Willard does not teach, after detecting a generated token that ends the currently active generation configuration, continuing to generate subsequent output elements under a different generation configuration.
However, Hartmann teaches, after detecting a generated token that ends the currently active generation configuration, continuing to generate subsequent output elements under a different generation configuration. (Para 0102, “machine-learned model system 103 can detect that machine-learned model 110 emitted a swap profile indicator (e.g., a swap profile token or other value)” and “initiate profile swap 116 responsive to detecting the swap profile indicator” and para 0299, “after generating the second outputs, the system can detect and execute a swap back to the first parameter profile”).
It would have been obvious to one of ordinary skill in the art to modify Willard before the effective filing date in order to incorporate the teachings of Hartmann in order to allow the model to transition between generation modes as the subject matter or requirements of the response change (Para 0108).
Regarding claim 8, Willard teaches assigning probabilities to a sixth plurality of different possible tokens based on the prompt and based on the fifth token (Pg. 3, Algorithm 1, Algorithm 1 repeatedly performs α←LM(s, θ), samples a token, and then s ← append(s, s) wherein the algorithm recursively generates new tokens by repeatedly generating a next-token probability distribution based on the previous token); selecting a sixth token based on the assigned probabilities for the sixth plurality of different possible tokens (Pg. 5, Algorithm 2, Algorithm 2 iteratively samples from the masked categorical distribution any number of times up to and including a 6th token); assigning probabilities to a seventh plurality of different possible tokens based on the prompt and based on the sixth token (Pg. 3 Algorithm 1 repeatedly performs α←LM(s, θ), samples a token, and then s ← append(s, s). After the sixth token is appended to the generated sequence, the LLM is run again on the updated sequence to produce the next distribution); assigning a null probability value to candidate tokens that do not comply with a specified grammar (Pg. 2, “setting the probabilities of invalid tokens to zero”). selecting a seventh token based on the assigned probabilities for the seventh plurality of different possible tokens (Pg. 5, Algorithm 2, Algorithm 2 iteratively samples from the masked categorical distribution any number of times up to and including a seventh token); And wherein the generating comprises generating the first token, second token, third token, fourth token, fifth token, sixth token, and seventh token as a response to the prompt (Pg. 5, Algorithm 2, “s ← append(s, s) and return s” all of the generated tokens are appended to the sequence, and the sequence is returned).
Willard does not teach determining that the sixth token is a trigger token of a second type associated with a second generation configuration; and based on determining that a generated token is of a second trigger type, selecting a second generation configuration uniquely associated with the second trigger type and applying that second generation configuration to subsequent generation.
However, Hartmann teaches determining that the sixth token is a trigger token of a second type associated with a second generation configuration (Para 0108, a profile identifier includes a vocabulary entry designated for a particular profile, such that machine-learned model 110 emits a specific token to initiate a swap to that specific profile” and para 0058, “The example system can swap profiles any number of times during the course of generating the response”); and based on determining that a generated token is of a second trigger type, selecting a second generation configuration uniquely associated with the second trigger type and applying that second generation configuration to subsequent generation. (Para 0108, “machine-learned model 110 emits a specific token to initiate a swap to that specific profile” and para 0070, “After selecting a profile, machine-learned model system 103 can execute one or more generation step(s) 122 using the selected profile” and para 0113, different profiles may correspond to “different languages, different programming languages” and finally para 0058, “The example system can swap profiles any number of times during the course of generating the response”).
It would have been obvious to one of ordinary skill in the art to modify Willard before the effective filing date in order to incorporate the teachings of Hartmann in order to support multiple output formats within a single response (Para 0058).
Regarding claim 12, Willard teaches wherein the selecting the first token, the selecting the second token, and the selecting the third token are all performed in a non-deterministic manner. (Pg. 2, defining the next token as a random variable and sampling. Pg. 3, Algorithm 1, wherein the procedure recursively generates new tokens by sampling from the categorical distribution randomly and is thus non-deterministic).
Claim 13 and 19 are analogous to claim 1 in that they recite substantially the same limitations. They are therefore rejected for similar reasons.
Claim 14 and 20 are analogous to claim 6 in that they recite substantially the same limitations. They are therefore rejected for similar reasons.
Claim 15 is analogous to claim 7 in that it recites substantially the same limitations. It is therefore rejected for similar reasons.
Claim 16 is analogous to claim 8 in that it recites substantially the same limitations. It is therefore rejected for similar reasons.
Claims 3 and 4 are rejected over Willard ("Efficient Guided Generation for Large Language Models", arXiv2307.09702v4 cs.CL, 19 Aug 2023, 18 pages.) and Hartmann (US 20260119978 A1) as above in claims 1, 2, 5, 6, 7, 8, 12, 13, 14, 15, 16, 19, 20 and further in view of Heneka (US 20260189654 A1).
Regarding claim 3, Willard does not teach wherein the one or more parameters comprise a frequency penalty.
However, Heneka teaches wherein the one or more parameters comprise a frequency penalty. (Para 0053, “Instructions 161 sent to the AI model may include various parameter settings such as … frequency penalty”)
It would have been obvious to one of ordinary skill in the art to modify Willard before the effective filing sate in order to incorporate the teachings of Heneka in order to reduce repetitive token generation and improve diversity of output (Para 0053).
Regarding claim 4, Willard does not teach wherein the one or more parameters comprise a presence penalty.
However, Heneka teaches wherein the one or more parameters comprise a presence penalty. (Para 0053, “Instructions 161 sent to the AI model may include various parameter settings such as … presence penalty”)
It would have been obvious to one of ordinary skill in the art to modify Willard before the effective filing sate in order to incorporate the teachings of Heneka in order to discourage reuse of previously generated tokens and improve variety of the output (Para 0053).
Claims 9, 10, 17, 18 are rejected over Willard ("Efficient Guided Generation for Large Language Models", arXiv2307.09702v4 cs.CL, 19 Aug 2023, 18 pages.) and Hartmann (US 20260119978 A1) as above in claims 1, 2, 5, 6, 7, 8, 12, 13, 14, 15, 16, 19, 20 and further in view of Ar (US 20180307978 A1)
Regarding claim 9, Willard does not teach wherein the response is an intermediate representation and the operations further comprise: passing the intermediate representation into a programmatic component to generate a final representation, the programmatic component validating the intermediate representation and converting the intermediate representation into the final representation.
However, Ar teaches wherein the response is an intermediate representation and the operations further comprise: passing the intermediate representation into a programmatic component to generate a final representation, the programmatic component validating the intermediate representation and converting the intermediate representation into the final representation. (Para 0035, “can then be generated as an intermediate representation 306, which is then provided to a code transformer 308, which generates and outputs source code” where the intermediate is validated in para 0031, “the deep learning model generator and validation component 112 can compile the intermediate representations … can improve and provide increasingly accurate validation”).
It would have been obvious to one of ordinary skill in the art to modify Willard before the effective filing sate in order to incorporate the teachings of Ar in order to improve the accuracy and reliability of code generation by generating and validating an intermediate before the final output (Para 0035).
Regarding claim 10, Willard does not teach wherein the final representation is compilable computer code.
However, Ar teaches wherein the final representation is compilable computer code. (Para 0035, “can then be generated as an intermediate representation 306, which is then provided to a code transformer 308, which generates and outputs source code”).
It would have been obvious to one of ordinary skill in the art to modify Willard before the effective filing sate in order to incorporate the teachings of Ar in order to produce source code that can be compiled and executed.
Claim 17 is analogous to claim 9 in that it recites substantially the same limitations. It is therefore rejected for similar reasons.
Claim 18 is analogous to claim 10 in that it recites substantially the same limitations. It is therefore rejected for similar reasons.
Claim 11 is rejected over Willard ("Efficient Guided Generation for Large Language Models", arXiv2307.09702v4 cs.CL, 19 Aug 2023, 18 pages.) and Hartmann (US 20260119978 A1) as above in claims 1, 2, 5, 6, 7, 8, 12, 13, 14, 15, 16, 19, 20 and further in view of Cirne (US 20260080180 A1)
Regarding claim 11, Willard does not teach wherein the compilable computer code is in a format that is at least partially proprietary.
However, Cirne teaches wherein the compilable computer code is in a format that is at least partially proprietary. (Para 0074, “the method enables the generative AI assistant to support a wide range of proprietary languages”).
It would have been obvious to one of ordinary skill in the art to modify Willard before the effective filing sate in order to incorporate the teachings of Cirne in order to allow for use of the system in a wider variety of pre-existing environments (Para 0074).
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to MICHAEL ALAN FOSTER JR. whose telephone number is (571)272-8874. The examiner can normally be reached M - F 8:00am - 6:00pm.
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, Hai Phan can be reached at (571) 272-6338. 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.
/MICHAEL A FOSTER JR/ Examiner, Art Unit 2654
/Richa Sonifrank/Primary Examiner, Art Unit 2654