Skip to content

Commit dc6d2f8

Browse files
benniekissBen Milburn-Town
authored and
Ben Milburn-Town
committed
process prev_tokens
1 parent 26465bc commit dc6d2f8

File tree

2 files changed

+7
-2
lines changed

2 files changed

+7
-2
lines changed

llama_cpp/_internals.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -214,7 +214,7 @@ def token_to_piece(self, token: int, special: bool = False) -> bytes:
214214
llama_cpp.llama_token_to_piece(self.model, token, buf, 32, 0, special)
215215
return bytes(buf)
216216

217-
def detokenize(self, tokens: List[int], prev_tokens: Optional[List[int]] = None, special: bool = False) -> bytes:
217+
def detokenize(self, tokens: List[int], special: bool = False) -> bytes:
218218
assert self.model is not None
219219
output = b""
220220
size = 32

llama_cpp/llama_tokenizer.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,12 @@ def tokenize(
4949
def detokenize(
5050
self, tokens: List[int], prev_tokens: Optional[List[int]] = None, special: bool = True
5151
) -> bytes:
52-
return self._model.detokenize(tokens, prev_tokens=prev_tokens, special=special)
52+
if prev_tokens is not None:
53+
text = self._model.detokenize(prev_tokens + tokens, special=special)
54+
prev_text = self._model.detokenize(prev_tokens, special=special)
55+
return text[len(prev_text) :]
56+
else:
57+
return self._model.detokenize(tokens, special=special)
5358

5459
def encode(
5560
self, text: str, add_bos: bool = True, special: bool = True

0 commit comments

Comments
 (0)