Skip to content

Commit 47acd9f

Browse files
authored
bugfix: forward REC tokenizer methods through proxy. (#1249)
1 parent 5c44d8a commit 47acd9f

2 files changed

Lines changed: 19 additions & 2 deletions

File tree

xllm/core/framework/tokenizer/tokenizer_proxy.cpp

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,11 +36,22 @@ bool TokenizerProxy::encode(const std::string_view& text,
3636
return get_tls_tokenizer()->encode(text, ids, add_special_tokens);
3737
}
3838

39+
bool TokenizerProxy::encode(int64_t item_id,
40+
std::vector<int32_t>* token_ids) const {
41+
return get_tls_tokenizer()->encode(item_id, token_ids);
42+
}
43+
3944
std::string TokenizerProxy::decode(const Slice<int32_t>& ids,
4045
bool skip_special_tokens) const {
4146
return get_tls_tokenizer()->decode(ids, skip_special_tokens);
4247
}
4348

49+
bool TokenizerProxy::decode(const Slice<int32_t>& token_ids,
50+
bool skip_special_tokens,
51+
std::vector<int64_t>* item_ids) const {
52+
return get_tls_tokenizer()->decode(token_ids, skip_special_tokens, item_ids);
53+
}
54+
4455
std::optional<int32_t> TokenizerProxy::token_to_id(
4556
const std::string_view& token) const {
4657
return get_tls_tokenizer()->token_to_id(token);
@@ -58,4 +69,4 @@ Tokenizer* TokenizerProxy::get_tls_tokenizer() const {
5869
thread_local std::unique_ptr<Tokenizer> tls_tokenizer(tokenizer_->clone());
5970
return tls_tokenizer.get();
6071
}
61-
} // namespace xllm
72+
} // namespace xllm

xllm/core/framework/tokenizer/tokenizer_proxy.h

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,9 +29,15 @@ class TokenizerProxy : public Tokenizer {
2929
std::vector<int32_t>* ids,
3030
bool add_special_tokens = true) const override;
3131

32+
bool encode(int64_t item_id, std::vector<int32_t>* token_ids) const override;
33+
3234
std::string decode(const Slice<int32_t>& ids,
3335
bool skip_special_tokens) const override;
3436

37+
bool decode(const Slice<int32_t>& token_ids,
38+
bool skip_special_tokens,
39+
std::vector<int64_t>* item_ids) const override;
40+
3541
std::optional<int32_t> token_to_id(
3642
const std::string_view& token) const override;
3743

@@ -46,4 +52,4 @@ class TokenizerProxy : public Tokenizer {
4652

4753
std::unique_ptr<Tokenizer> tokenizer_;
4854
};
49-
} // namespace xllm
55+
} // namespace xllm

0 commit comments

Comments
 (0)