Skip to content

Commit

Permalink
Handle non-speculative fallback
Browse files Browse the repository at this point in the history
  • Loading branch information
Armin Buescher committed Jan 29, 2025
1 parent eb407a2 commit 375e65c
Showing 1 changed file with 9 additions and 0 deletions.
9 changes: 9 additions & 0 deletions sillm/experimental/speculative.py
Original file line number Diff line number Diff line change
Expand Up @@ -159,6 +159,7 @@ def from_model(llm: LLM):
return SpeculativeEdit(llm)

def __init__(self, model: LLM):
self.target_model = model
self.model = model.model
self.tokenizer = model.tokenizer
self.args = model.args
Expand Down Expand Up @@ -203,6 +204,14 @@ def generate(self,
"token_ids": []
}

# Handle non-speculative generation
if lookahead <= 1:
for s, metadata in self.target_model.generate(prompt, temperature=temperature, max_tokens=max_tokens, token_ids=token_ids):
metadata["speculative"] = speculative
yield s, metadata

return

# Define stop tokens
stop_tokens = self.tokenizer.special_ids

Expand Down

0 comments on commit 375e65c

Please sign in to comment.