Title: Grammar-Aligned Decoding
Venue: NeurIPS 2024
Accepted: yes
Keywords: Language Models

Decoding

Context-free Grammars
Abstract: Large Language Models (LLMs) struggle with reliably generating highly structured outputs, such as program code, mathematical formulas, or well-formed markup. Constrained decoding approaches mitigate this problem by greedily restricting what tokens an LLM can output at each step to guarantee that the output matches a given constraint. Specifically, in grammar-constrained decoding (GCD), the LLM's output must follow a given grammar. In this paper we demonstrate that GCD techniques (and in general constrained decoding techniques) can distort the LLM's distribution, leading to outputs that are grammatical but appear with likelihoods that are not proportional to the ones given by the LLM, and so ultimately are low-quality. We call the problem of aligning sampling with a grammar constraint, grammar-aligned decoding (GAD), and propose adaptive sampling with approximate expected futures (ASAp), a decoding algorithm that guarantees the output to be grammatical while provably producing outputs that match the conditional probability of the LLM's distribution conditioned on the given grammar constraint. Our algorithm uses prior sample outputs to soundly overapproximate the future grammaticality of different output prefixes. Our evaluation on code generation and structured NLP tasks shows how ASAp often produces outputs with higher likelihood (according to the LLM's distribution) than existing GCD techniques, while still enforcing the desired grammatical constraints.

Grammar-Aligned Decoding

Abstract

Large Language Models (LLMs) struggle with reliably generating highly structured outputs, such as program code, mathematical formulas, or well-formed markup. Constrained decoding approaches mitigate this problem by greedily restricting what tokens an LLM can output at each step to guarantee that the output matches a given constraint. Specifically, in grammar-constrained decoding (GCD), the LLM's output must follow a given grammar. In this paper we demonstrate that GCD techniques (and in general constrained decoding techniques) can distort the LLM's distribution , leading to outputs that are grammatical but appear with likelihoods that are not proportional to the ones given by the LLM, and so ultimately are low-quality. We call the problem of aligning sampling with a grammar constraint, grammar-aligned decoding (GAD), and propose adaptive sampling with approximate expected futures (ASAp), a decoding algorithm that guarantees the output to be grammatical while provably producing outputs that match the conditional probability of the LLM's distribution conditioned on the given grammar constraint. Our algorithm uses prior sample outputs to soundly overapproximate the future grammaticality of different output prefixes. Our evaluation on code generation and structured NLP tasks shows how ASAp often produces outputs with higher likelihood (according to the LLM's distribution) than existing GCD techniques, while still enforcing the desired grammatical constraints. 2

1 Introduction

Despite their remarkable success, pre-trained Large Language Models (LLMs) often struggle with generating highly structured outputs, such as program code, configuration files, or mathematical formulas. A naïve approach to enforcing structure is rejection sampling , which repeatedly samples strings from the LLM and checks them against a validity oracle, typically in the form of a contextfree grammar (CFG). Rejection sampling is highly inefficient or simply intractable for restrictive grammars and long output sequences-i.e., most generated strings will not be in the target grammar.

Constrained decoding addresses the inefficiency of rejection sampling by greedily 'forcing' the LLM output to satisfy the given constraint. Specifically, when the constraint is given as a grammar, grammar-constrained decoding (GCD) [7, 27, 28], can build automata that allow for on-the-fly masking of tokens that will provably lead to outputs outside of the grammar during decoding.

While GCD does not incur the overhead of rejection sampling-i.e., the generated output is always in the language of the grammar-we show that GCD and in general all forms of structured decoding introduce a new problem: structured decoding distorts the LLM's learned language distribution , effectively hindering the LLM's capabilities.

This paper introduces and formalizes grammar-aligned decoding (GAD), the problem of sampling from an LLM so that the outputs (1) are guaranteed to adhere to a given grammar, and (2) are unbiased wrt. the LLM's distribution. Although exact GAD is intractable in general (similar to rejection sampling), we propose a new adaptive decoding algorithm for approximate GAD, which starts off as GCD and gradually converges to the LLM's distribution, and thus allows trading off between efficiency and accuracy. The algorithm, which we dub Adaptive Sampling with Approximate Expected Futures (ASAp), is built 'on top' of existing constrained decoding algorithms. Whereas GCD approaches simply mask out tokens that lead to non-grammatical sequences for a given prefix, ASAp remembers for all sampled prefixes the probability associated with masked-out tokens and uses it to upper bound the probability of grammaticality. By updating this bound when more samples are observed, the decoding algorithm converges to the desired probability distribution-i.e., it samples outputs from the LLM-induced probability conditioned on the outputs being accepted by the grammar. The idea works for any structured decoding approach and not just for GCD, but in this paper we focus our evaluation on constraints expressed via grammars.

We evaluate ASAp on two structured prediction tasks: formal program synthesis and constituency parsing. Our experiments on program synthesis and NLP tasks show that GCD techniques generate outputs that are grammatical but unlikely according to the LLM, while with ASAp, the likelihood of the generated outputs improves over time, converging to the target constrained LLM-i.e., GAD better respects the LLM while still enforcing the constraints.

2 Grammar-Aligned Decoding

In this section, we formalize the problem of grammar-aligned decoding (GAD) as decoding from an autoregressive language model while enforcing the output sequence to be accepted by a given context-free grammar. We also demonstrate the limitations of existing approaches to this problem.

Language Models An (autoregressive) language model defines a probability distribution P on the set of all strings w ∈ Σ ∗ over a vocabulary of tokens Σ via a product of left-to-right next-token conditional distributions P ( w 1 . . . w n ) = Π n i =1 P ( w i | w 1: i -1 ) .

Context-Free Grammars A context-free grammar (CFG) is a quadruple G = (Σ , N , S, R ) , where Σ is a vocabulary of tokens (also called terminal symbols), N is a finite set of non-terminal symbols, S ∈ N is the starting non-terminal, and R is the set of production rules. An example CFG is shown in Fig. 1. A grammar G defines a single-step derivation relation on sequences of symbols α, β, γ ∈ ( N ∪ Σ) ∗ : αAγ ⇒ αβγ if A → β ∈ R . The reflexive transitive closure of this relation is called derivation and written ⇒ ∗ . A sequence of tokens w is a

Figure 1: CFG G sk over tokens Σ = { 0 , 1 } , written in Backus-Naur form (BNF) notation. This grammar accepts the string 00000 and all length-5 strings that start with a 1.

sentence if it is derivable from S ; the set of all sentences is called the language of the grammar G , that is, L ( G ) = { w ∈ Σ ∗ | S ⇒ ∗ w } . The following example illustrates these definitions.

Example 1 (CFG Derivations) . Given the CFG G sk shown in Fig. 1, the string 00000 belongs to the language L ( G sk ) because it can be derived using the derivation S ⇒ 00000 . The string 10101 is also in L ( G sk ) and can be derived as follows:

Each step replaces a nonterminal symbol using a production rule in G sk -e.g., in the string 10 A 3 , the nonterminal A 3 is rewritten as 1 A 4 by applying the rule A 3 → 1 A 4 , resulting in the string 101 A 4 .

In addition, we define the prefix language of G as the set of all prefixes of sentences in L ( G ) : L prefix ( G ) = { w ∈ Σ ∗ | wv ∈ L ( G ) } .

Grammar-Aligned Decoding Given a model distribution P and a CFG G , grammar-aligned decoding (GAD) is the task of sampling from the distribution Q P, G that is proportional to P but restricted to sentences in G :

When P and G are clear from context, we will write Q ( w ) instead of Q P, G ( w ) .

Example 2 (GAD) . Consider the distribution P that arises from prompting an LLM to 'generate a binary string that ends with a 1 '. We expect P to assign high probability to strings of the form ( 0 | 1 ) ∗ 1 -i.e. those that satisfy the prompt ( Mixtral-8x7B-Instruct-v0.1 (temperature=1) generates binary strings that end with a 1 around 90% of the time.) A snippet of a possible distribution P is depicted in Fig. 2.

Suppose we constrain the model's output to the language of the grammar G sk in Fig. 1, which only accepts strings of length 5. Moreover, G sk only accepts one string that starts with 0 , i.e., 00000 , which does not end with 1 . In Fig. 2, the grayed out parts of the trie are tokens that lead to sequences outside of the grammar G sk . According to the definition of GAD, the target sampling distribution Q P, G sk should assign: (i) high probability to all eight strings of the form 1 w 2 w 3 w 4 1 -which conform both to the grammar and the prompt; (ii) low probability to the string 00000 -which conforms to the grammar but not the prompt; and (iii) zero probability to all other strings.

Exact GAD Can one exactly sample from Q P, G ? Rejection sampling, which repeatedly draws from P until a sample lands in L ( G ) , provably yields exact samples according to Q P, G , but if P assigns most of its mass outside of L ( G ) , it is intractably slow, especially if the prompt is not including information about the grammar (see [27]). For Ex. 2, rejection sampling would be highly inefficient because the model would generate many strings that are not of length five.

In contrast, exact sampling from P is efficient because its joint distribution is represented by a product of easily computed left-to-right conditionals, enabling ancestral sampling (i.e., generating tokens left to right, conditioned on already generated tokens). Can we similarly factor Q into a product of left-to-right conditionals Q P, G ( w i | w 1: i -1 ) , to enable ancestral sampling?

…

(0.1)

…

(0.1)

…

0

(0.45)

0

(0.45)

0

(0.45)

…

1

(0.3)

…

(0.1)

1

(0.3)

1

(0.3)

1

(0.3)

…

$

(10 -8

)

…

…

…

$

(0.3)

…

…

…

…

…

…

For simplicity, let us assume that P is a distribution over sequences of exactly length n (although, in practice, language models can produce 'stop' tokens which allow for a valid distribution on sequences of all lengths). The exact conditionals of Q P, G are given by:

We refer to c ( w 1: i ) as expected future grammaticality (EFG), i.e. the probability that a continuation of w 1: i sampled from P lands in L ( G ) . Using this notation, we can write the exact left-to-right sampling conditional explicitly as:

✶ Thus, exact left-to-right sampling from Q P, G consists of sampling from model conditionals P ( w i | w 1: i -1 ) , with an additional weighting term c ( w 1: i ) = E P ( w i +1: n | w 1: i ) [ ✶ [ w ∈ L ( G )]] that considers the grammar.

To see why computing this conditional is intractable, consider using dynamic programming to compute c ( w 1: i ) by marginalizing over a product of potential functions: the set of model conditionals and an indicator potential for the grammar. While the indicator potential can be factorized across rules in the grammar, the model's contribution generally does not factorize: in practice, the final conditional probability P ( w n | w 1: n -1 ) is a global potential function, defined by a non-linear neural network touching every variable. Thus, the main goal of this paper is to develop effective approximations to the EFG c ( w 1: i ) , which would enable us to compute the left-to-right conditionals of Q .

Limitations of Grammar-Constrained Decoding Existing work [27, 28] has proposed grammarconstrained decoding (GCD) as a way to efficiently sample from an autoregressive language model subject to grammar constraints. Although the exact details of these techniques vary depending on class of grammars they support, the common thread is that they rely on an incremental parser , which can efficiently check whether a given string w is a prefix of a sentence in the grammar, i.e., w ∈ L prefix ( G ) . When given a sentence w 1: i -1 , GCD techniques use this parser during decoding to mask out any next token w i that results in a prefix w 1: i for which no completion will produce a sequence in the grammar. Using the trie in Fig. 2 as an example, one can think of GCD as sampling a path through the trie by selecting only among the black outgoing edges from every node, proportional to their conditional probabilities in the diagram ( e.g. the first token is 0 or 1 with equal probability).

In terms of the GAD problem, we can view GCD as approximating the exact left-to-right conditionals Q P, G ( w i | w 1: i -1 ) by the conditional distribution ˜ Q GCD ( w i | w 1: i -1 ) , defined as follows:

✶ Though not originally formulated in this way, we can view recent work on GCD [27, 28] as forming a binary approximation ✶ [ w 1: i ∈ L prefix ( G )] to the EFG c ( w 1: i ) . In other words, while GCD considers the possibility of future grammaticality, it makes no attempt to integrate the model's likelihood to estimate expected future grammaticality, which can lead to substantial bias in the sampling distribution-i.e., every EFG such that c ( w 1: i ) > 0 will simply be approximated via the value 1.

Example 3 (GCD) . Consider again the GAD problem from Ex. 2, where our target sampling distribution Q P, G sk assigns high probability to strings that both start and end with a 1 and a low probability to the string 00000 . However, we observe that GCD [8] generates strings ending with a 1 only 30% of the time-i.e., GCD has effectively ruined the LLM's ability to follow the prompt by biasing sampling towards 00000 , an incorrect output.

When generating the first token ( 0 or 1 ), the GCD algorithm does not know how many grammatical strings can start with each character and, more importantly, how likely these strings are under P . Since both tokens 0 and 1 have the possibility of leading to a grammatical string, GCD will estimate their expected future grammaticality as 1, and choose each of them roughly half of the time (since P ( 0 ) ≈ P ( 1 ) ). Once GCD has chosen 0 , however, it becomes 'trapped' in the part of the search space where the only grammatical string is the low-probability sequence 00000 .

Ex. 3 illustrates how existing GCD approaches can hinder the language model's abilities to explore the space of possible outputs according to the learned distribution, thus highlighting the importance of designing a better approximation to the EFG c ( w 1: i ) ; this is addressed in the next section.

3 Adaptive Sampling with Approximate Expected Futures (ASAp)

In this section, we propose an adaptive sampling algorithm that iteratively builds better approximations of the future grammaticality of a sequence. Our procedure operates by sampling repeatedly , each time bounding lost probability mass to provably ungrammatical areas of the search space in order to better guide the next sampling iteration. As a result, our algorithm converges over many iterations to exact samples from the constrained LLM distribution, allowing for a flexible trade-off between efficiency and accuracy.

Overview of the Algorithm GCD approaches poorly approximate the desired distribution because they greedily sample prefixes without worrying about the EFG. When sampling the first token in Ex. 3, GCD simply uses the likelihood for tokens 0 and 1 assigned by the LLM without considering the probability that these next tokens would result in grammatical completions if sampling were unconstrained-i.e. without incorporating the critical EFG re-weighting terms that are necessary for unbiased sampling from the constrained LLM distribution. However, if GCD ends up sampling 0 as the first token for Ex. 3, it will necessarily sample the string 00000 since no other sequences starting with 0 are allowed by the grammar. We can 'learn' from this result: the true probability mass assigned to all grammatical sequences starting with a 0 is not 0.45 as the LLM's next token probability would have us believe; instead, the total grammatical mass in this section of the search space is the joint probability of the single string 00000 , which is the much lower value of 0 . 45 5 ∗ 10 -8

1

(0.45)

$

(10 -8

)

0

(0.45)

0

(0.45)

0

(0.45)

0

(0.45)

*

10 -8

*0.45*10 -8

*0.45 2 *10 -8

*0.45 3 *10 -8

*0.45 5 *10 -8

$

(10 -8

)

0

(0.45*10 -8 )

0

(0.45 2

*10 -8

)

0

(0.45 3

*10 -8

)

1

(0.3)

1

(0.3)

1

(0.3)

1

(0.3)

$

(0.3)

*

0.3

*

0.09 + 0.3

*

0.12 + 0.3

*

0.13 + 0.3

as depicted in Fig. 3. In other words, simply by sampling 00000 , we can better approximate (in this case, exactly) the EFG of tokens along this path.

The key insight behind our algorithm, which we call ASAp, is that we can iterate this process of discovering lost grammatical probability mass by repeatedly sampling and revising transition weights after each sample is produced. More formally, we can think of this procedure as starting with GCD's over-approximation to each EFG c ( w 1: i ) term, and then, through repeated sampling and discovery of mass assigned to non-grammatical completions, reducing each overapproximation to make it more accurate. In the limit, the approximations converge to exact EFG estimates and unbiased sampling.

Two possible first iterations of the ASAp algorithm are depicted in Fig. 3. In the first iteration (left of Fig. 3), after sampling the sequence 00000 , the algorithm directly addresses the issue that arose in Ex. 3 by attempting to better approximate the probability mass of potential grammatical completions of each prefix of 00000 (red quantities). For example, the expected future grammaticality of the prefix 0000 it is now 0 . 45 ∗ 10 -8 -i.e., the algorithm effectively 'looks ahead' to determine that only one valid (but low probability) string 0$ that can follow 0000 . The ideas developed in GCD allow us to efficiently compute, for a given string, the likelihood of the next tokens that will immediately result in non-grammaticality.

If we only sample one string from the LLM, we cannot hope to do better than GCD in terms of sampling faithfully in a grammar-aligned way. However, if we were to now sample once more, we could now better direct our sampling strategy. In the second iteration (right of Fig. 3), the string 11111 is sampled and the expected future grammaticality is updated (red quantities). Note that at this point the probabilites assigned to the string 00000 from the earlier iteration have already been updated.

By repeating the above approach multiple times (i.e., by producing more samples), the ASAp algorithm produces precise approximations of the expected future grammaticalities and thus better samples from the constrained LLM.

Algorithm Formalization The key quantity that the algorithm approximates based on past samples is the expected future grammaticality (EFG) c ( w 1: i ) = E p ( w i +1: n | w 1: i ) [ ✶ [ w ∈ L ( G )]] . At iteration m + 1 , our algorithm uses the set of samples S = { s 1 , . . . , s m } observed so far to compute an overapproximation ˜ c S ( w 1: i ) of c S ( w 1: i ) for every possible string w 1: i . The overapproximation is inductively defined:

Intuitively, if no samples in S start with the prefix w 1: i , then ˜ c S ( w 1: i ) , the overapproximation of EFG is simply whether the string is or is not a valid prefix in the grammar-i.e. the same overapproximation used by GCD. If, on the other hand, we have encountered the prefix w 1: i before in previous samples in S , the overapproximation uses the next token likelihoods that were computed during the previous sampling runs of the algorithm to compute a better estimate of EFG.

For example, in Fig. 3, once we have sampled the sequences 00000 and 11111 , we have that ˜ c S ( 0000 ) = 0 . 45 ∗ 10 -8 and ˜ c S ( 110 ) = 1 (i.e., we have not seen a sample with the prefix 110 yet).

Proof. To see that ˜ c S ( w 1: i ) is indeed an upperbound on c ( w 1: i ) , consider two cases: First, suppose w 1: i is not a prefix of any string in S . In this case, ˜ c S ( w 1: i ) = ✶ [ w 1: i ∈ L prefix ( G )] and, like GCD, provides a trivial upper bound. When ✶ [ w 1: i ∈ L prefix ( G )] = 0 , there is

no possibility of grammaticality along this path and the EFG is therefore also zero. When ✶ [ w 1: i ∈ L prefix ( G )] = 1 it trivially bounds EFG, which is a probability. Second, we need to prove that ∀ w 1: i ∈ prefix( S ) , ˜ c S ( w 1: i ) ≥ c ( w 1: i ) . where prefix( S ) is the set of (finitely many) prefixes of string in S . We proceed by induction, where the base case is when w 1: i is in prefix( S ) but no w 1: i +1 is in prefix( S ) for any possible next token w i +1 . Consequently, every w 1: i +1 falls under the first case, leading us to the following inequality:

Next, we move on to the inductive step where w 1: i is in prefix( S ) and for any w i +1 , the string w 1: i +1 can either be a node that is not a prefix of S , which falls under the first case, or it can in prefix( S ) , for which the property holds by induction. Therefore, the reasoning used in Eq. 4 works for the inductive case as well.

The sampling procedure itself proceeds autoregressively like GCD, but using the iteratively updated EFG estimates we have just defined, ˜ c S . Specifically, the left-to-right sampling conditional for our procedure, ˜ Q S ( w i | w 1: i -1 ) , after having previously sampled the strings in S , is defined as follows:

Our overall algorithm, which is presented in Algorithm 1, then proceeds iteratively, using past samples to improve subsequent samples. Whenever the sample set S is updated with a new sample w 1: n , the overapproximation ˜ c is updated for the prefixes of w 1: n . The update begins at the end of the sequence and proceeds backward toward the start, by the recursive definition in Eq. 3. In the listing, we assume that we are only interested in the final sample, but in our evaluation we will analyze whether the algorithm induces the desired distribution.

Next we provide a proof that this algorithm converges to exact estimates of EFG in the limit of infinite iterations, and therefore to exact samples from the constrained LLM distribution. The theorem assumes almost sure termination of ancestral sampling in the unconstrained LLM distribution P -i.e., the LLM eventually terminates.

Theorem 2. Assume that as L →∞ , the distribution P assigns vanishingly small probability mass to sequences longer than length L . Now, let S m = { s 1 , . . . , s m } be the set of recorded samples up to the m th iteration of ASAp. Then, ∀ w 1: i ∈ L prefix ( G ) , ˜ c S m ( w 1: i ) p → c ( w 1: i ) as m →∞ .

Proof. Let w 1: i be an arbitrary sequence in L prefix ( G ) . The approximation gap after m iterations of sampling with ASAp, ϵ m = ˜ c S m ( w 1: i ) -c ( w 1: i ) , is equal to the marginal probability under P of all ungrammatical continuations of w 1: i that have not yet been encountered in the first m samples, S m . Now consider an arbitrarily small ϵ > 0 . By assumption, there exists an L such that the probability mass P places on sequences longer than L is less than ϵ . Further, ASAp samples according to P , but re-weighted by an upper bound on the true EFG (Theorem 1). Thus, the probability of encountering a previously unseen ungrammatical continuation of w 1: i no longer than L on any given iteration is at least as high as the probability of encountering the same continuation when sampling directly from P . Because the number of sequences no longer than L is finite, this implies that the probability mass under P of ungrammatical continuations of w 1: i that are no longer than L and that are not yet encountered in S m becomes vanishingly small as as m → ∞ . The remaining unencountered ungrammatical continuations of w 1: i are longer than L , and thus their total mass is bounded by ϵ . Therefore P ( ϵ m > ϵ ) → 0 as m →∞ .

Algorithm 1 ASAp algorithm

4 Experiments

We implemented the ASAp algorithm as an extension of the Transformers-CFG implementation of GCD [8]. When the LLM generates a sequence w 1: n , the ASAp algorithm keeps track of the original LLM's probability P ( w i | w 1: i -1 ) for 1 ≤ i ≤ n and the set of allowed next tokens { w i | w 1: i -1 , w ′ i ∈ L ( G ) } determined by the incremental parser in the Transformers-CFG library. After the LLM finishes generating a sequence, our implementation of ASAp updates the overapproximation ˜ c S from the end of sequence by back-propagating the quantity 1 minus probability of the tokens that will for sure lead to non-grammatical sequences. The implementation of ASAp updates ˜ c S ( w 1: n -1 , w ′ n ) for all possible tokens w ′ n , and then moves on to update ˜ c S ( w 1: n -2 , w ′ n -1 ) . . . , ˜ c S ( w 1 , w ′ 2 ) , ˜ c S ( w ′ 1 ) using Equation (3).

Datasets and Models. We consider the benchmark from Example 3 and three structured-decoding tasks. Two of our tasks involve solving Syntax-Guided Synthesis Problems (SyGuS) [2]. SyGuS is a standardized format where one provides a logical specification and a context free grammar of first-order terms and the goal is to synthesize a term in the grammar that satisfies the specification. SyGuS is a natural fit for GAD and we consider two tasks from the standard SyGuS benchmarks where grammars vary from benchmark to benchmark: strings with linear integer arithmetic (SLIA) and loop invariant generation with bit-vector arithmetic (INV-BV). In the former, the grammar is used to restrict what constant strings one can use when building string-manipulating programs and in

(a) Illustrative Ex. 3

(b)

SLIA/name-combine-4-long

20.0

ASAp

16

GCD

17.5

14 -

15.0

12

12.5

10

10.0

8

2

6

7.5

5.0

ASAp

ASAp

2.5

GCD

GCD

0.0

0

10

20

30

40

50

60

70

0

200

400

600

800

1000

1200

1400

0

200

400

600

800

1000

1200

1400

(a) Illustrative Ex. 3

(b)

SLIA/name-combine-4-long

(c)

SLIA/initials-small

ASAp

9°0

0.4

GCD

LLM

0.8

0.5

0.3

0.6

0.4

ASAp

ASAp

GCD

0.3

GCD

0.2

0.4

LLM

LLM

0.2

0.1

0.2

0.1

0.0

0'0

0'0

20

40

60

80

100

0

250

500

750

1000

12501500

17502000

0

250

500

750

1000125015001750

2000

the latter the grammar is used to restrict constant bit-vectors and operations used to build invariants. Fig. 4 provides examples of SLIA and INV-BV problems. For both families of benchmarks, our prompts consist of 3 in-context examples of the form (specification, solution) and the grammar is then provided as a constraint for GAD. Our third task is the constituency parsing (CP) task already used in prior GCD work [7] where the grammar is used to help the model produce well-parenthesized parse trees for English sentences.

Due to constrained resources and needing to run inference multiple times to measure whether the distribution ˜ Q is faithful to Q , we randomly select 15 SLIA problems, 15 INV-BV problems, and 6 CP problems. We select the open-source Mistral-7B [12] for evaluation due to its superior reasoning and code generation capabilities.

Measures. We run both algorithms for 2,000 iterations/sample on each benchmark.

To assess converge to the target distribution, we measure the Kullback-Leibler (KL) divergence between the distributions of GCD and ASAp from the target distribution Q for a given number of samples. Because the ideal GAD distribution Q P, G is proportional to the original LLM's distribution P for sequences allowed by a grammar G , we can use the LLM's distribution P on all observed samples as an estimate Q P, G . The quantity KL ( Q ∥ P ) only differs by a constant from the KL divergence between empirical distributions and the ideal GAD distribution:

where C = ∑ w ✶ [ w ∈ L ( G )] P ( w ) . Thus, KL ( ˜ Q ∥ P ) can be used to quantify the alignment between the empirical distributions of GCD and ASAp with the ideal GAD distribution.

For example, Fig. 5a shows convergence results for the first 75 iterations on the illustrative Ex. 3-i.e., the KL divergence for ˜ Q ASAp quickly converges to 0 whereas the one for ˜ Q GCD doesn't.

We also compare the empirical expectations of the variables ˜ Q GCD , ˜ Q ASAp , and P . For example, Fig. 6a shows convergence results for the first 75 iterations on the illustrative Ex. 3-i.e., ˜ Q ASAp converges to the right expectation.

(a) SLIA

(b) INV-BV4

(c) CP

1.0

ASAp

1.0

ASAp

1.0

ASAp

GCD

GCD

GCD

0.8

0.8

0.8

0.6

0.6

0.6

0.4

0.4

0.4

0.2

0.2

0.2

0°0

0.0

0.2

0.4

0.6

0.8

1.0

0.0

0.0

0.2

0.4

0.6

0.8

1.0

00

0.0

0.2

0.4

0.6

0.8

1.0

Results. Fig. 5b and Fig. 6b illustrate a benchmark in which our ASAp algorithm quickly converges to the target distribution. Fig. 5 depicts the KL divergence of a sliding window of size 500 (e.g., the points at x=800 denote the KL divergence of the samples 800-1300). Fig. 6 depicts all the samples from the experiment, as well as how the expectations converges (a point at x= i denotes the empirical expectation on the first i samples. For this case the expecation for GCD stays very close to 0.

Similarly, Fig. 5c and Fig. 6c illustrate a benchmark in which our ASAp algorithm converges slowly. In this case, bot ASAp and GCD are far from the target expectation (Fig. 6c), but because GCD happens to be biased towards the most likely outcome, it exhibits better KL divergence. The complete set of plots is shown in Sec. E.1.

To better understand how the algorithms respectively converge, Fig. 7 plot for each benchmark category the expectations for each benchmark computed by GCD and ASAp against the target expectation of P after 2,000 iterations. The sum of least square difference between expectations computed by GCD and the expectations of P are 2 . 259 (SLIA), 1 . 852 (INV-BV4), and 0 . 109 (CP). The sum of least square difference between expectations computed by ASAp and the expectation and those of P are 1 . 242 (SLIA), 0 . 802 (INV-BV4), and 0 . 159 (CP). While we have too few points for CP to draw conclusions, the expectations computed by ASAp are much closer to the ones computed by GCD across our experiments.

While our work is interested in the theoretical convergence of the ASAp algorithm, we also report how the GCD and ASAp differ for solving the SLIA and INV-BV4 tasks-i.e., how many of the sampled programs are correct solutions to the given problem. GCD and ASAp solve approximately the same set of problems (there is just one SLIA benchmark for which ASAp returns a valid solution on one sample and GCD never does so). ASAp produces correct samples 38% more often than GCD (geomean), whereas for SLIA benchmarks that both tools can solve, ASAp produces correct samples 73% less often than GCD (geomean). Detailed results can be found in Sec. E.2. These results are in line with the fact ASAp shows faster convergence on INV-BV4 benchmarks. For example, for the benchmark illustrated in Fig. 5b, ASAp returns the correct solution for 1588 samples, whereas GCD only returns the correct solution 12 times, whereas for the benchmark in Fig. 5c, ASAp returns the correct solution 69 times and GCD 363 times.

Discussion and Limitations. As predicted by our theorems, on most benchmarks the ASAp algorithm converges to the desired distribution P whereas GCD does not improve over time (i.e., it exhibits the bias described in this paper).

While ASAp has no strong effect on solving downstream tasks, we observe that on instances where the convergence is prominent, ASAp ends up sampling correct solutions more often than GCD, which is what we expect when the LLM has 'learned' how to solve the given task.

The key limitation of our work is the current slow convergence of the ASAp algorithm. In some benchmarks, even after 2,000 iterations the KL divergence barely improves and even though the expectation of ˜ Q ASAp is improving, it converges very slowly.

We highlight that the contributions of this paper are discovering and formalizing the bias of existing constrained decoding approaches and proposing the first converging algorithm to address this problem.

Now that we have identified the problem, there are many 'low-hanging fruits' to improve our sampling strategy, which are great targets for future work-e.g., using forms of targeted beam search to bootstrap our sample set to better explore grammar paths and avoid sampling similar strings.

5 Related Work

Constrained Decoding Past work has extensively explored constrained decoding algorithms, which modify the original decoding process of LLMs to ensure the output adheres to a user-specified regular [18, 28] or context-free language [5, 6, 7, 19, 23, 24, 25, 26] in a discrete space. Other works enforce hard output constraints using dynamic monitoring and verification methods [1, 15, 27] or by modifying beam search techniques to impose lexical constraints, which require specific keywords to appear in the generated text [4, 9, 10, 16, 17, 20]. At a high level, these methods involve running the LLM decode in parallel with a monitoring scheme (e.g., parsing algorithms for CFGs) to identify which next tokens or beams can produce valid output sequences that meet the constraints. The decoder then masks out any tokens that would lead to invalid sequences, sampling only from the permissible ones.

To incorporate sequence-level soft semantic or contextual constraints, Amini et al. [3], Kumar et al. [13], Li et al. [14], Qin et al. [21] have applied gradient-based sampling techniques that relax those constraints to differentiable ones, used them as classifiers to further guide the decoding process. While these works guarantee that the decoded output meets the specified constraints (whether in the form of grammar, monitoring schemes, or differentiable functions), they often operate greedily and introduce bias into the output distribution in the way that has been discussed in this paper. Depending on the application one considers, this problem may or may not affect downstream tasks, but as we have argued in this paper, the bias can be quite prominent and sometimes affect downstream performance. Our adaptive decoding algorithm improves decoding over time by analyzing how previous samples led to nongrammaticaility.

Constraint-Aligned Decoding This paper formally defines the problem of aligning the output distribution of an LLM in the presence of a constraint. We focus our attention on constraints expressed as grammars, but our definitions and algorithm apply to any constraint for which possible satisfaction (in our case grammaticality) can be evaluated in a left-to-right manner.

In some settings, one is interested in generating multiple outcomes with an LLM to approximate a distribution of interest [11, 22]-e.g., to generate a random number or a set of good test cases for a program. As we have shown, constrained decoding can heavily skew the LLMs distribution and result in biasing the model towards certain constraint-matching sequences. While our work is at this point theoretical, now that the problem of aligning an LLM's distribution with constraints has been defined, we expect advances in how sampling is performed to quickly converge to better distributions faster (e.g., using beam search to quickly explore possible paths instead of just sampling).

6 Conclusion

We have introduced a new analysis of the ideal target for constrained sampling from an LLM using a grammar, which we call grammar-aligned decoding (GAD). We proposed a new algorithm for GAD which we call ASAp that iteratively builds better approximations to the critical re-weighting term required for GAD: the expected future grammaticality. We analyzed the convergence of our proposed algorithm and demonstrated its effectiveness in relation to existing grammar-constrained decoding techniques on a set of benchmark code generation tasks. We analyzed and evaluated our approach using constraints enforced by a context-free grammar; however, extensions of our approach might be applied to more general classes of constraints for LLM decoding.

While the primary goals of this work are to formalize the likelihood misalignment problem of existing grammar-constrained decoding approaches and to provide an initial solution with provable asymptotic guarantees, future work may explore faster-converging approaches, such as sampling multiple tokens simultaneously, to improve efficiency further. We hope this work lays a solid foundation for generating structured outputs from LLMs without distorting the original distribution, advancing the field toward more efficient, trustworthy, and constraint-aligned approaches in LLM-driven generation.

References

Lakshya A Agrawal, Aditya Kanade, Navin Goyal, Shuvendu K. Lahiri, and Sriram K. Rajamani. 2023. Monitor-guided decoding of code lms with static analysis of repository context. In Advances in Neural Information Processing Systems 36: Annual Conference on Neural Information Processing Systems 2023, NeurIPS 2023, New Orleans, LA, USA, December 10 16, 2023 .

Rajeev Alur, Dana Fisman, Saswat Padhi, Rishabh Singh, and Abhishek Udupa. 2019. Syguscomp 2018: Results and analysis.

Afra Amini, Li Du, and Ryan Cotterell. 2024. Structured voronoi sampling. Advances in Neural Information Processing Systems , 36.

Peter Anderson, Basura Fernando, Mark Johnson, and Stephen Gould. 2016. Guided open vocabulary image captioning with constrained beam search. arXiv preprint arXiv:1612.00576 .

Luca Beurer-Kellner, Marc Fischer, and Martin Vechev. 2023. Prompting is programming: A query language for large language models. Proc. ACM Program. Lang. , 7(PLDI).

Yihong Dong, Xue Jiang, Yuchen Liu, Ge Li, and Zhi Jin. 2022. Codepad: Sequence-based code generation with pushdown automaton. arXiv preprint arXiv:2211.00818 .

Saibo Geng, Martin Josifoski, Maxime Peyrard, and Robert West. 2023. Grammar-constrained decoding for structured NLP tasks without finetuning. In Proceedings of the 2023 Conference on Empirical Methods in Natural Language Processing , Singapore. Association for Computational Linguistics.

Saibo Geng, Martin Josifoski, Maxime Peyrard, and Robert West. 2023. Transformers-CFG. https://github.com/epfl-dlab/transformers-CFG .

Chris Hokamp and Qun Liu. 2017. Lexically constrained decoding for sequence generation using grid beam search. arXiv preprint arXiv:1704.07138 .

J Edward Hu, Huda Khayrallah, Ryan Culkin, Patrick Xia, Tongfei Chen, Matt Post, and Benjamin Van Durme. 2019. Improved lexically constrained decoding for translation and monolingual rewriting. In Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, Volume 1 (Long and Short Papers) , pages 839-850.

Linghan Huang, Peizhou Zhao, Huaming Chen, and Lei Ma. 2024. Large language models based fuzzing techniques: A survey.

Albert Q Jiang, Alexandre Sablayrolles, Arthur Mensch, Chris Bamford, Devendra Singh Chaplot, Diego de las Casas, Florian Bressand, Gianna Lengyel, Guillaume Lample, Lucile Saulnier, et al. 2023. Mistral 7b. arXiv preprint arXiv:2310.06825 .

Sachin Kumar, Biswajit Paria, and Yulia Tsvetkov. 2022. Gradient-based constrained sampling from language models. In Proceedings of the 2022 Conference on Empirical Methods in Natural Language Processing , pages 2251-2277.

Xiang Li, John Thickstun, Ishaan Gulrajani, Percy S Liang, and Tatsunori B Hashimoto. 2022. Diffusion-lm improves controllable text generation. Advances in Neural Information Processing Systems , 35:4328-4343.

Yixuan Li, Julian Parsert, and Elizabeth Polgreen. 2024. Guiding enumerative program synthesis with large language models. In International Conference on Computer Aided Verification , pages 280-301. Springer.

Ximing Lu, Sean Welleck, Peter West, Liwei Jiang, Jungo Kasai, Daniel Khashabi, Ronan Le Bras, Lianhui Qin, Youngjae Yu, Rowan Zellers, Noah A. Smith, and Yejin Choi. 2022. NeuroLogic a*esque decoding: Constrained text generation with lookahead heuristics. In Proceedings of the 2022 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies , pages 780-799, Seattle, United States. Association for Computational Linguistics.

Ximing Lu, Peter West, Rowan Zellers, Ronan Le Bras, Chandra Bhagavatula, and Yejin Choi. 2021. NeuroLogic decoding: (un)supervised neural text generation with predicate logic constraints. In Proceedings of the 2021 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies , pages 4288-4299, Online. Association for Computational Linguistics.

Daniel Melcer, Nathan Fulton, Sanjay Krishna Gouda, and Haifeng Qian. 2024. Constrained decoding for code language models via efficient left and right quotienting of context-sensitive grammars. arXiv preprint arXiv:2402.17988 .

Gabriel Poesia, Oleksandr Polozov, Vu Le, Ashish Tiwari, Gustavo Soares, Christopher Meek, and Sumit Gulwani. 2022. Synchromesh: Reliable code generation from pre-trained language models. arXiv preprint arXiv:2201.11227 .

Matt Post and David Vilar. 2018. Fast lexically constrained decoding with dynamic beam allocation for neural machine translation. arXiv preprint arXiv:1804.06609 .

Lianhui Qin, Sean Welleck, Daniel Khashabi, and Yejin Choi. 2022. Cold decoding: Energybased constrained text generation with langevin dynamics. In Advances in Neural Information Processing Systems .

Alex Renda, Aspen K. Hopkins, and Michael Carbin. 2023. Can LLMs generate random numbers? evaluating LLM sampling in controlled domains. In ICML 2023 Workshop: Sampling and Optimization in Discrete Space .

Torsten Scholak, Nathan Schucher, and Dzmitry Bahdanau. 2021. PICARD: Parsing incrementally for constrained auto-regressive decoding from language models. In Proceedings of the 2021 Conference on Empirical Methods in Natural Language Processing , pages 9895-9901, Online and Punta Cana, Dominican Republic. Association for Computational Linguistics.

Richard Shin, Christopher H Lin, Sam Thomson, Charles Chen, Subhro Roy, Emmanouil Antonios Platanios, Adam Pauls, Dan Klein, Jason Eisner, and Benjamin Van Durme. 2021. Constrained language models yield few-shot semantic parsers. arXiv preprint arXiv:2104.08768 .

Elias Stengel-Eskin, Kyle Rawlins, and Benjamin Van Durme. 2023. Zero and few-shot semantic parsing with ambiguous inputs. arXiv preprint arXiv:2306.00824 .

Shubham Ugare, Tarun Suresh, Hangoo Kang, Sasa Misailovic, and Gagandeep Singh. 2024. Improving llm code generation with grammar augmentation. arXiv preprint arXiv:2403.01632 .

Bailin Wang, Zi Wang, Xuezhi Wang, Yuan Cao, Rif A. Saurous, and Yoon Kim. 2023. Grammar prompting for domain-specific language generation with large language models.

Brandon T Willard and Rémi Louf. 2023. Efficient guided generation for large language models. arXiv e-prints , pages arXiv-2307.

A Hardware and Software

Our experiments are conducted on 4 NVIDIA RTX A6000 GPUs and 4 NVIDIA A100 GPUs. Our implementation is based on Python 3.10 and PyTorch 2.1.2.

B Hyperparameters

The hyperparameters discussed in this paper pertain to the decoding strategy of language models. As we aim to investigate the LM's original distribution, we set Top-P at 1 . 0 , Temperature at 1 . 0 , and Top-K at 0 to consider the complete token vocabulary.

C Model Checkpoint

We use the Mistral-7B model checkpoint provided by Hugging Face: https://huggingface.co/ mistralai/Mistral-7B-Instruct-v0.2 .

D Experimental Details

D.1 SLIA and INV-BV

Prompt Construction For both families of benchmarks, our prompts adopt standard in-context learning format which consist of 3 in-context examples of the form (specification, solution) and ask the model to provide the solution for the last example. A concrete example would be

You are an expert in program synthesis. You are tasked with solving a Syntax-Guided Synthesis (SyGuS) problem. Your goal is to output a function that should produce outputs that satisfy a series of constraints when given specific inputs.

Appendix

Grammar Constraint While most SYGUS problems contain grammar constraints, some problems have grammars implicitly defined by the theory. We explicitly converted the grammar constraint of the problem into EBNF format for constrained-decoding. The example for the last example would be

D.2 Constituency Parsing

For Constituency parsing task, our prompts consist of 8 in-context examples of the form. A concrete example would be

Perform constituency parsing on the provided sentences in accordance with the Penn TreeBank annotation guidelines. Fill in the last mapping.

Grammar Constraint For the constituency parsing (CP) task we used the grammar provided in prior GCD work [7]. The grammar is too large to attach, but it is used to help the model produce wellparenthesized parse trees and ensure that all words in a given English sentence appear in left-to-right order.

(a) KL divergences

(b) Expectations

Figure 8:

SLIA/dr-name

(a) KL divergences

(b) Expectations

Figure 9:

SLIA/firstname _ small

(a) KL divergences

(b) Expectations

Figure 10:

SLIA/firstname

(a) KL divergences

(b) Expectations

Figure 11:

SLIA/initials _ small

(a) KL divergences

(b) Expectations

(a) KL divergences

(b) Expectations

Figure 13:

SLIA/lastname

(a) KL divergences

(b) Expectations

(a) KL divergences

(b) Expectations

(a) KL divergences

(b) Expectations

(a) KL divergences

(b) Expectations

1.4

9

ASAp

GCD

0.6

0.7

1.0

ASAp

GCD

1.0

8'0

1.2

S0

0.8

1.0

0.4

0.6

0.6

ASAp

GCD

0.8

0.6

0.4

0.2

0.1

ASAp

GCD

0.2

0.4

0.4

0.2

LLM

Z'0

0

200

400

600

800

1000

1200

1400

0.0

250

500

750

1000

1250

1500

1750

LLM

2000

0.0

0

200

400

600

800

1000

1200

1400

0.0

250

00S

750

1000

1250

1500

1750

2000

1.0

0.8

0.6

0.4

ASAp

GCD

0.8

0.6

0.4

1.0

！

LLM

ASAp

GCD

20.0

17.5

15.0

12.5

10.0

7.5

ASAp

GCD

0.6

0.5

0.4

0.3

0.2

LLM

ASAp

GCD

0.2

0.2

5.0

2.5

0.1

0.0

200

400

600

008

1000

1200

1400

0.0

250

500

750

1000

12:50

15001750

000Z

0.0

0

200

400

600

800

1000

1200

1400

0.0

250

500

750

1000

1250150017502000

26

ASAp

GCD

0.12

ASAp

GCD

LLM

17.5

20.0

ASAp

GCD

0.4

24

0.10

15.0

5'0

22

0.08

0.06

12.5

10.0

Z'0

LLM

GCD

ASAp

20

0.04

7.5

18

0.02

5.0

0.1

200

0Ob

600

009

1000

1200

1400

0.00

250

500

750

1000

1250

1500

1750

2000

2.5

200

400

600

800

1000

1200

1400

0.0

OOS

750

00O1

1250

1500

1750

0002

21

ASAp

GCD

0.16

0.14

10

0.6

0.5

20

19

18

0.12

0.10

0.08

0.06

ASAp

GCD

WTT

0.4

0.3

0.2

ASAp

GCD

LLM

17

0.04

16

0.02

ASAp

0.1

0.00

GCD

0.0

200

0Ob

600

009

1000

1200

1400

250

500

750

1000

1250150017502000

200

400

600

800

1000

1200

1400

O0S

750

10001250150017502000

13

4

ASAp

GCD

0.25

ASAp

GCD

LLM

16

14

0.8

12

0.20

0.6

11

10

0.15

0.10

10

8

0.4

LLM

ASAp

GCD

9

0.05

0.2

0.00

020

ASAP

0.0

200

400

600

008

1000

1200

1400

250

500

750

1000

1250

15001750

0

200

400

600

800

1000

1200

1400

O0S

750

1000

1250

1500

1750

2000

E Detailed Experimental Results

We provide additional plots and experimental data.

E.1 Plots

Figures 8-22 provide the KL divergence and expectation results for the SLIA benchmarks. Figures 2337 provide the KL divergence and expectation results for the INV-BV benchmarks. Figures 38-43 provide the KL divergence and expectation results for the INV-BV benchmarks.

(a) KL divergences

(b) Expectations

(a) KL divergences

(b) Expectations

(a) KL divergences

(b) Expectations

Figure 20:

SLIA/univ _ 1 _ short

(a) KL divergences

(b) Expectations

Figure 21:

SLIA/univ _ 1

(a) KL divergences

(b) Expectations

Figure 22:

SLIA/univ _ 2 _ short

(a) KL divergences

(b) Expectations

Figure 23:

INV-BV/find _ inv _ bvsge _ bvlshr1 _ 4bit

(a) KL divergences

(b) Expectations

(a) KL divergences

(b) Expectations

Figure 25:

INV-BV/find _ inv _ bvsge _ bvnot _ 4bit

(a) KL divergences

(b) Expectations

(a) KL divergences

(b) Expectations

30

0.35

2.00

1.0

62

0.30

1.75

0.25

1.50

0.8

92

0.20

0.15

ASAp

GCD

LLM

1.25

1.00

0.75

ASAP

GCD

0.6

0.4

ASAp

GCD

LLM

24

SZ

EZ

0

ASAp

GCD

200

400

600

008

1000

1200

1400

0.10

0.00

0.05

250

500

750

1000

1250

1500

17502000

0.50

0.25

0.00

0

200

400

600

800

1000

1200

1400

0.2

0.0

250

00S

750

1000

1250

1500

1750

2000

12

10

14

ASAp

GCD

0.8

0.6

20

22

ASAp

GCD

0.35

0.30

0.25

ASAp

18

0.20

ASAp

0.4

LLM

GCD

16

0.15

GCD

LLM

0.10

2'0

0.05

0.0

12

0.00

200

400

600

800

1000

1200

1400

250

500

750

1000

1250

1500

1750

口

200

400

600

800

1000

1200

1400

250

OOS

750

1000

1250

1500

1750

2000

OE

ASAp

GCD

0.35

0.30

GCD

LLM

18

ASAp

GCD

0.30

0.25

ASAp

LLM

GCD

0.25

16

0.20

26

0.20

14

0.15

24

0.15

0.10

12

0.10

22

50'0

10

0.05

20

0.00

0.00

200

0Ob

600

800

1000

1200

1400

250

500

750

1000

12501500

1750

002

400

600

800

1000

1200

1400

OOS

750

0001

1250

15001750

2000

1.5

ASAp

GCD

°0

9'0

2.5

3.0

ASAp

GCD

0.7

0.6

0.5

2.5

+0

0

ASAp

GCD

LLM

2.0

0.4

0.3

2.0

0.2

1.5

1.5

0.1

0.0

1.0

0.1

0.0

LLM

ASAp

GCD

200

0Ob

600

009

1000

1200

1400

250

500

750

1000

12501500

1750

2000

200

400

600

800

1000

1200

1400

OOS

750

100012501500

1750

2000

6.0

ASAp

GCD

0.8

4

0.35

13

0.30

5.0

0.6

12

0.25

4.5

ASAp

GCD

LLM

11

10

0.15

0.20

LLM

ASAp

GCD

4.0

0.2

0.10

SE

3.0

200

400

600

800

1000

1200

1400

0.0

250

500

750

1000

1250150017502000

200

400

600

800

1000

1200

1400

GCD

ASAp

0.05

0.00

250

500

750

1000

12501500

17502000

E.2 Correctness Results for SYGUS Tasks

Table 1 shows how many samples (out of 2000) yielded correct solutions for each benchmark (bold is better). The task initials_long-repeat was only solved using ASAp.

(a) KL divergences

(b) Expectations

(a) KL divergences

(b) Expectations

(a) KL divergences

(b) Expectations

(a) KL divergences

(b) Expectations

(a) KL divergences

(b) Expectations

(a) KL divergences

(b) Expectations

Figure 33:

INV-BV/find _ inv _ ne _ bvneg _ 4bit

(a) KL divergences

(b) Expectations

(a) KL divergences

(b) Expectations

(a) KL divergences

(b) Expectations

(a) KL divergences

(b) Expectations

TT

10

ASAp

GCD

0.25

ASAp

GCD

LLM

2.00

1.75

GAD

GCD

0.4

0.20

1.50

0.3

ST0

1.25

0.2

Expected

GAD

GCD

0.10

1.00

0.05

0.75

0.1

0.50

0.00

0.D

200

400

600

008

1000

1200

1400

250

500

750

1000

1250

1500

1750

2000

0

200

400

600

800

1000

1200

1400

250

00S

750

1000

1250

1500

1750

2000

SE

O'E

2.5

ASAp

GCD

0.6

0.5

0

2.0

2.2

1.8

1.6

1.4

ASAp

GCD

0.5

0.4

0.3

2.0

0.2

1.2

0.2

1.5

1.0

1°0

0.0

GCD

LLM.

ASAp

0.8

0.6

1.0

0.1

0.0

GCD

LLM

ASAp

200

400

600

800

1000

1200

1400

250

500

750

1000

OSCTOOSTOSZT

2000

0

200

400

600

800

1000

1200

1400

250

500

750

1000

12501500

1750

000Z

5.0

ASAp

GCD

0.4

ASAp

GCD

LLM

BT

1.6

ASAp

GCD

0.7

0.6

0.3

1.4

0.5

4.5

1.2

0.4

0.2

4.0

1.0

0.3

SE

0.1

0.8

0.6

0.2

0.1

GCD

ASAp

3.0

200

400

600

800

1000

1200

0.0

250

500

750

1000

1250

1500

1750

2000

0.4

0

200

400

600

800

1000

1200

1400

0.0

250

500

750

1000

1250

1500

1750

LLM:

2000

4.5

4.0

ASAp

GCD

0.30

0.25

LLM

ASAp

1.2

1.0

0.8

3.0

SE

0.20

0.8

0.6

0.15

0.6

0.4

2.0

0.10

1.5

1.0

0.05

0.00

0.4

0.2

ASAp

020

0.2

0.0

LLM

ASAp

GCD

200

400

600

800

1000

1200

1400

250

500

750

1000

1250150017502000

0

200

400

600

800

1000

1200

1400

250

500

750

1000

125015001750

1.4

ASAp

OCD

0.7

1.2

9'0

0.4

1.0

0.5

0.8

0.4

ASAp

GCD

0.3

ASAp

GCD

0.6

0.3

LLM

Z'0

LLM

0.4

Z'0

0.2

0.1

0.0

ASAp

GCD

0.1

0.0

200

400

600

800

1000

1200

1400

250

500

750

1000

1250150017502000

0

200

400

600

800

1000

1200

1400

D

250

500

750

1000

12501500

17502000

F Will ASAp still be more aligned than GCD after fine-tuning?

F.1 Experimental setup for fine-tuning

We adhere to the established QLoRA finetuning pipeline and create task-specific datasets of INV-BV4 and CP for instruction tuning. In line with our paper's methodology, we incorporate in-context examples in the instruction tuning dataset to enhance the models' performance in in-context learning. For each task, we independently finetune Mistral-7B, resulting in two versions of the model (for

(a) KL divergences

(b) Expectations

(a) KL divergences

(b) Expectations

(a) KL divergences

(b) Expectations

Figure 40:

CP/CP _ re _ ptb _ 486

(a) KL divergences

(b) Expectations

Figure 41:

CP/CP _ re _ ptb _ 605

(a) KL divergences

(b) Expectations

(a) KL divergences

(b) Expectations

22

24

ASAp

GCD

0.05

0.04

3.5

4.0

0.175

0.200

0.150

ASAp

GCD

LLM

20

18

16

14

0.02

0.01

0.03

LLM

ASAp

GCD

3.0

2.5

2.0

1.5

1.0

ASAP

GCD

0.125

0.100

0.075

0.050

0.025

12

0.00

0.5

0.000

200

400

600

008

1000

1200

1400

250

500

750

1000

1250

1500

1750

2000

0

200

400

600

800

1000

1200

1400

250

00S

750

1000

1250

1500

1750

2000

1.2

ASAp

GCD

1.0

ASAp

GCD

0.8

1.0

0.8

0.6

0.8

0.6

ASAp

ASAp

0.6

0.4

LLM

GCD

0.4

LLM

GCD

0.4

Z'0

0.2

0.2

0.0

0.0

0.0

200

400

600

008

1000

1200

1400

250

500

750

1000

1250150017502000

200

400

600

800

1000

1200

1400

250

500

750

1000

1250150017502000

ASAp

GCD

0.14

0.12

PSAD

GCD

LLM

ASAp

GCD

0.200

0.175

0.150

0.10

0.125

0.08

0.100

ASAp

GCD

0.06

0.075

ELM

0.04

0.050

0.02

0.025

0.00

0.000

200

0Ob

600

800

1000

1200

1400

250

500

750

1000

12501500

1750

2000

200

400

600

800

1000

1200

1400

OOS

750

0001

1250

1500

1750

2000

INV-BV4 and CP). We employ a standard train-validation-test split of 70-10-20%. Instruction tuning is conducted on the training set, and model selection is based on the lowest validation loss. Key hyperparameters include a learning rate of 2e-4, a warmup ratio of 0.03, a maximum sequence length of 2048, LoRA alpha of 32, LoRA dropout of 0.05, and LoRA rank of 64. The best checkpoints were at 328 and 536 steps for INV-BV and CP, respectively.

F.2 Additional Results

No significant differences in convergence rates post fine-tuning. In Section 4, we evaluate ASAp and GCD on the base model Mistral-7B. A natural extension of this evaluation is determining whether ASAp retains its advantages over GCD after fine-tuning the base model on task-specific datasets, which optimizes the LLM for higher grammatical accuracy from the start.

In our fine-tuning step, we want to teach the LLM to assign higher probabilities to grammatical outputs for the specific task DSL. We randomly selected two INV-BV problems ( find _ inv _ bvsge _ bvneg _ 4bit and find _ inv _ bvsgt _ bvor _ 4bit for INV-BV) and four CP problems ( CP _ re _ ptb _ 215 , CP _ re _ ptb _ 434 , CP _ re _ ptb _ 1627 and CP _ re _ ptb _ 1643 for CP) from the test set, and instrction tuned input-output pairs of prompt and output programs in the training set for the base model Mistral-7B. We obtained two fine-tuned models, one for INV-BV and one for CP.

We tested GCD and ASAp on the finetuned Mistral-7B on the randomly left-out problems and checked the convergence rates of the KL-divergence. The results from finetuned Mistral-7B did not show significant differences in terms of convergence compared to the base Mistral-7B. As done in Section 4, we computed the expectation for each benchmark obtained via GCD and ASAp after 2,000 iterations and compared it against the target expectation Q P, G of GAD. The sum of least squares difference between expectations computed by GCD and the expectations of Q P, G are 0.677 (INV-BV4), 0.278 (CP), while ASAp achieved lower errors: 0.051 (INV-BV4), 0.201 (CP), indicating that ASAp more closely aligned with the exact GAD expectations. We did not include SLIA as we did not have sufficient data for further fine-tuning.

NeurIPS Paper Checklist

1. Claims

Question: Do the main claims made in the abstract and introduction accurately reflect the paper's contributions and scope?

Answer: [Yes]

Justification: The main claims are well-supported by the algorithm formalization and theoretical results in Section 3, and comprehensive experiments in Section 4, and further results in the Appendix.

2. Limitations

Question: Does the paper discuss the limitations of the work performed by the authors?

Answer: [Yes]

Justification: We provide detailed limitations in Section 4.

3. Theory Assumptions and Proofs

Question: For each theoretical result, does the paper provide the full set of assumptions and a complete (and correct) proof?

Answer: [Yes]

Justification: All theorems are accompanied by formal proofs.

4. Experimental Result Reproducibility

Question: Does the paper fully disclose all the information needed to reproduce the main experimental results of the paper to the extent that it affects the main claims and/or conclusions of the paper (regardless of whether the code and data are provided or not)?

Answer: [Yes]

Justification: We provide all the hyperparameters we use in Appendix B, model checkpoints in Appendix C and experimental details in Appendix D to support the reproducibility of our experiments. The codebase and datasets with detailed instructions will also be released.

5. Open access to data and code

Question: Does the paper provide open access to the data and code, with sufficient instructions to faithfully reproduce the main experimental results, as described in supplemental material?

Answer: [Yes]

Justification: We will attach datasets we covered in this paper during submission and the code will be released with detailed instructions.

6. Experimental Setting/Details

Question: Does the paper specify all the training and test details (e.g., data splits, hyperparameters, how they were chosen, type of optimizer, etc.) necessary to understand the results?

Answer: [Yes]

Justification: Hyperparameters are included in Appendix B. All experimental details are included in Appendix D to facilitate a better understanding of our setting.

7. Experiment Statistical Significance

Question: Does the paper report error bars suitably and correctly defined or other appropriate information about the statistical significance of the experiments?

Answer: [No]

Justification: Our experiments are run on 2,000 sampling iterations for which we show plots for convergence. Given the cost of the experiments we cannot run on multiple seeds, but a high number of iterations mitigates the problem. Therefore, error bars are not applicable.

8. Experiments Compute Resources

Question: For each experiment, does the paper provide sufficient information on the computer resources (type of compute workers, memory, time of execution) needed to reproduce the experiments?

Answer: [Yes]

Justification: We provide hardware and software details in Appendix A.

9. Code Of Ethics

Question: Does the research conducted in the paper conform, in every respect, with the NeurIPS Code of Ethics https://neurips.cc/public/EthicsGuidelines ?

Answer: [Yes]

Justification: The authors have read the NeurIPS Code of Ethics and made sure the paper follows the NeurIPS Code of Ethics in every aspect.

10. Broader Impacts

Question: Does the paper discuss both potential positive societal impacts and negative societal impacts of the work performed?

Answer: [NA]

Justification: This paper simply improves sampling. Existing LLM approaches will benefit from it, but the work will not directly lead to specific broader impacts.

11. Safeguards

Question: Does the paper describe safeguards that have been put in place for responsible release of data or models that have a high risk for misuse (e.g., pretrained language models, image generators, or scraped datasets)?

Answer: [NA]

Justification: The paper poses no such risks.

12. Licenses for existing assets

Question: Are the creators or original owners of assets (e.g., code, data, models), used in the paper, properly credited and are the license and terms of use explicitly mentioned and properly respected?

Answer: [Yes]

Justification: The paper properly cites the original paper or sources whenever an asset is used. URL of the model checkpoint is included in Appendix C.

13. New Assets

Question: Are new assets introduced in the paper well documented and is the documentation provided alongside the assets?

Answer: [Yes]

Justification: We will attach the datasets as part of our submission and the code will be released with well-documented instructions.

14. Crowdsourcing and Research with Human Subjects

Question: For crowdsourcing experiments and research with human subjects, does the paper include the full text of instructions given to participants and screenshots, if applicable, as well as details about compensation (if any)?

Answer: [NA]

Justification: This paper does not involve crowdsourcing nor research with human subjects.

15. Institutional Review Board (IRB) Approvals or Equivalent for Research with Human Subjects

Question: Does the paper describe potential risks incurred by study participants, whether such risks were disclosed to the subjects, and whether Institutional Review Board (IRB) approvals (or an equivalent approval/review based on the requirements of your country or institution) were obtained?

Answer: [NA]

Justification: This paper does not involve crowdsourcing nor research with human subjects.

Peer reviews:
{"IS_META_REVIEW": false, "comments": "SUMMARY:\nThis paper focuses on the constrained decoding scenario where LLMs are expected to produce high-quality and grammatically correct outputs. It presents the adaptive sampling with approximate expected futures (ASAp) method, which is designed to enhance the quality of the output by adjusting the conditional probability to align with the model’s original output distribution while ensuring grammaticality. Central to ASAp is the development of effective approximations to the expected future grammaticality (EFG). More specifically, ASAp involves an extra sampling process, where the estimates of EFG are iteratively refined after each sampling and will eventually converge to exact EFG in the limit of infinite iterations. Experimental results show that the output probability distribution of ASAp is closer to the original one than that of GCD methods.\n\nSTRENGTHS:\nAdvantages of ASAp include facilitating more accurate grammatical predictions. ASAp approximates the desired distribution by considering the potential future grammaticality of sequences, whereas GCD typically samples greedily based on current probabilities without considering the future development of the sequence. This approach allows ASAp to more accurately predict and generate text sequences that comply with grammatical rules.\n\nWEAKNESSES:\nThe algorithm heavily relies on prior samples to estimate grammatical probabilities, which can be computationally expensive and difficult to manage, especially in cases where the dataset is large or the environment is dynamically changing. Moreover, a fair comparison of decoding speed between ASAp and GCD methods is required, as ASAp needs this sampling process to produce high-quality outputs, but conducting sampling on LLMs is very time-consuming.\n\nOnly evaluating the quality of the output by KL divergence and expectations is limited because the decoding sampling algorithm, except for the greedy search, does not always obey the probability distribution. For example, when the decoding temperature is set to 1, models may not output tokens with the highest probability. To conduct a more intuitive evaluation, one can choose some constrained decoding tasks with explicit quality scores, such as constrained translation [1] with BLEU and Exact Match, and code generation, which can be evaluated by the passing rate.\n\nSince the experiments in this paper are based on prompt-motivated LLMs, a natural step is to fine-tune LLMs and see if they can produce grammatically correct output with high quality. On the other hand, the authors can also try ASAp based on fine-tuned LLMs, which may further boost the performance of ASAp.\n\nTo enhance the readability of the article, the following suggestions can be considered.\n1. It’s more intuitive to give specific input and output examples for SLIA and INV-BV tasks.\n2. The names GCD and GAD are too similar to easily differentiate, even after reading the paper.\n3. Other typos: In line 289, the word “both” is typed as “bot”.\n\n[1] Wang, S., Li, P., Tan, Z., Tu, Z., Sun, M., & Liu, Y. (2022). A Template-based Method for Constrained Neural Machine Translation. arXiv preprint arXiv:2205.11255.\n\nQUESTIONS:\nGiven previous samples with the prefix $w_{1:i}$, there exist abundant future tokens beyond just the next token. However, ASAp only uses the next token likelihoods to facilitate a better estimate of EFG. Why not use other future tokens?\n\nLIMITATIONS:\nYes", "TITLE": "Official Review", "RECOMMENDATION": 5, "REVIEWER_CONFIDENCE": 4, "SOUNDNESS_CORRECTNESS": 2, "DATE": "2024-07-07"}

comments: SUMMARY:
This paper proposes adaptive sampling with approximate expected futures (ASAp) for grammar-aligned decoding for LLMs. The main objective of this method is to match the conditional probability of the LLM’s distribution conditioned on the given grammar. The evaluation is performed on code generation and structured NLP tasks showing a better likelihood for LLM’s outputs being grammar-constrained.

STRENGTHS:
- The method is well-formalized and clear. The examples are very useful for faster understanding
- The method is well-motivated (there isn’t an independent motivation section but each choice in the design of the method is appropriately justified)
- The paper provides empirical validation that the method works and that it improves the benchmark scores

WEAKNESSES:
- Nothing in particular. Maybe I have found Section 2 of the paper somewhat difficult to read but it is probably because of my lack of recent readings on CFG.

QUESTIONS:
I suggest maybe some improvement in Section 2. Restructuring it maybe and providing slightly more context on CFG (or giving a concrete example of how it works as a reminder, I found Fig 1 not illustrative enough), I'm sure I won't be the only reader who doesn't have recent experience with CFG.

LIMITATIONS:
Yes, limitations are discussed. What I liked in particular in this paper is that the limitations of ASAp are well exposed and discussed throughout the paper and not just in the limitations section.
TITLE: Official Review
SOUNDNESS_CORRECTNESS: 4
DATE: 2024-07-12

{"IS_META_REVIEW": false, "comments": "SUMMARY:\nThis paper points out that prior methods on grammar-constrained decoding (GCD) distorts the language model's learned distribution over sequences. At the heart of this exposition is the notion of _expected future grammaticality_ (EFG), where prior GCD methods can be cast an an upper-bound approximation to the EFG. To ameliorate this problem, the authors proposed the ASAp method: through many iterations, the EFG of a prefix can be better estimated.\n\nSTRENGTHS:\nThis is an important finding that conventional methods on grammar-constrained decoding distorts the language model's learned distribution. As far as I know, this important fact has not been pointed out before. The notion of expected future grammatically will be impactful in the area of sequence decoding.\n\nWEAKNESSES:\nThe proposed method seems very slow to run, requiring many iterations. Additionally, it requires storing a table of all seen prefixes and their future grammatically, which would be very large if the grammar itself is large.\n\nIt seems to me that the ASAp method only depends on a grammar -- it does not specifically requires a training or test set to run. I wonder if it would be possible to first sample extensively and train the ASAp EFG estimates, then decode on a set. In this way ASAp can be cast as a preprocessing step of the grammar: if it is very slow, it wouldn't matter much since it'll only be processed once. \n\nFor example we are doing NL2SQL under many conditions. The target grammar stays the same: SQL. One can utilize a LM and generate massive amount of prefixes that has EFG > 0, then compute this estimation of $\\tilde c_S$ for all these distinct prefixes.\n\nQUESTIONS:\n- L10: \"prorblem\" => \"problem\"\n - Missing related work: R Shin, et al (2021): Constrained language models yield few-shot semantic parsers. https://aclanthology.org/2021.emnlp-main.608/\n - Alg 1: What is \"ancestral sampling\"? Please explain.\n\nLIMITATIONS:\nThe authors adequately discussed the limitations of their work.", "TITLE": "Official Review", "RECOMMENDATION": 6, "REVIEWER_CONFIDENCE": 4, "SOUNDNESS_CORRECTNESS": 4, "DATE": "2024-07-12"}