Allow the guide to consume the eos_token#237
Open
RobinPicard wants to merge 1 commit intodottxt-ai:mainfrom
Open
Allow the guide to consume the eos_token#237RobinPicard wants to merge 1 commit intodottxt-ai:mainfrom
RobinPicard wants to merge 1 commit intodottxt-ai:mainfrom
Conversation
54b4e7f to
b70f00a
Compare
414owen
approved these changes
Dec 10, 2025
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Addresses #227
This PR aims at fixing a contradictory behavior in the current implementation of the Index class: the
eos_tokenis listed in the output of the functionallowed_tokens, but it cannot be consumed in thenext_statefunction. As a result, in theGuide, theeos_tokenis returned by theget_tokensfunction but causes an error if used when calling the advance function.The solution proposed here is to allow the
Guideto consume the eos_token such that calling thenext_statefunction with theeos_tokenas an argument leads to the current state.Downside: if some users expect the
eos_tokento be rejected, by theGuide.accepts_tokensfunction for instance, it could lead to unexpected behavior for them. An exemple would be this implementation in vllm: