Commit 80a69204 authored by OlivierDehaene's avatar OlivierDehaene
Browse files

fix: slice stopping criteria buffer

parent 083c2de9
...@@ -112,7 +112,7 @@ class StoppingCriteria: ...@@ -112,7 +112,7 @@ class StoppingCriteria:
self.stop_sequence_criterias = stop_sequence_criterias self.stop_sequence_criterias = stop_sequence_criterias
self.max_new_tokens = max_new_tokens self.max_new_tokens = max_new_tokens
self.current_tokens = 0 self.current_tokens = 0
self.current_output = "" self.current_output = "test"
self.ignore_eos_token = ignore_eos_token self.ignore_eos_token = ignore_eos_token
def __call__(self, last_token: int, last_output: str) -> Tuple[bool, Optional[str]]: def __call__(self, last_token: int, last_output: str) -> Tuple[bool, Optional[str]]:
...@@ -124,6 +124,10 @@ class StoppingCriteria: ...@@ -124,6 +124,10 @@ class StoppingCriteria:
return True, FinishReason.FINISH_REASON_EOS_TOKEN return True, FinishReason.FINISH_REASON_EOS_TOKEN
self.current_output += last_output self.current_output += last_output
# There is no need to keep an output that is too long
if len(self.current_output) > 300:
# Slice to -200 to avoid doing it all the time
self.current_output = self.current_output[-200:]
for stop_sequence_criteria in self.stop_sequence_criterias: for stop_sequence_criteria in self.stop_sequence_criterias:
if stop_sequence_criteria(self.current_output): if stop_sequence_criteria(self.current_output):
return True, FinishReason.FINISH_REASON_STOP_SEQUENCE return True, FinishReason.FINISH_REASON_STOP_SEQUENCE
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment