@@ -1218,7 +1218,6 @@ struct llama_vocab::impl {
12181218 llama_token special_unk_id = 0 ;
12191219 llama_token special_sep_id = LLAMA_TOKEN_NULL;
12201220 llama_token special_pad_id = LLAMA_TOKEN_NULL;
1221- llama_token special_cls_id = LLAMA_TOKEN_NULL; // TODO: revisit if this is really needed https://github.com/ggerganov/llama.cpp/pull/10930
12221221 llama_token special_mask_id = LLAMA_TOKEN_NULL;
12231222
12241223 llama_token linefeed_id = 13 ;
@@ -1352,7 +1351,6 @@ void llama_vocab::impl::load(llama_model_loader & ml, const LLM_KV & kv) {
13521351 special_unk_id = LLAMA_TOKEN_NULL;
13531352 special_sep_id = LLAMA_TOKEN_NULL;
13541353 special_pad_id = LLAMA_TOKEN_NULL;
1355- special_cls_id = LLAMA_TOKEN_NULL;
13561354 special_mask_id = LLAMA_TOKEN_NULL;
13571355 linefeed_id = LLAMA_TOKEN_NULL;
13581356
@@ -1374,18 +1372,16 @@ void llama_vocab::impl::load(llama_model_loader & ml, const LLM_KV & kv) {
13741372 special_unk_id = 0 ;
13751373 special_sep_id = LLAMA_TOKEN_NULL;
13761374 special_pad_id = LLAMA_TOKEN_NULL;
1377- special_cls_id = LLAMA_TOKEN_NULL;
13781375 special_mask_id = LLAMA_TOKEN_NULL;
13791376 } else if (tokenizer_model == " bert" ) {
13801377 type = LLAMA_VOCAB_TYPE_WPM;
13811378
13821379 // default special tokens
1383- special_bos_id = LLAMA_TOKEN_NULL ;
1380+ special_bos_id = 101 ;
13841381 special_eos_id = LLAMA_TOKEN_NULL;
13851382 special_unk_id = 100 ;
13861383 special_sep_id = 102 ;
13871384 special_pad_id = 0 ;
1388- special_cls_id = 101 ;
13891385 special_mask_id = 103 ;
13901386 } else if (tokenizer_model == " gpt2" ) {
13911387 type = LLAMA_VOCAB_TYPE_BPE;
@@ -1420,7 +1416,6 @@ void llama_vocab::impl::load(llama_model_loader & ml, const LLM_KV & kv) {
14201416 special_unk_id = LLAMA_TOKEN_NULL;
14211417 special_sep_id = LLAMA_TOKEN_NULL;
14221418 special_pad_id = LLAMA_TOKEN_NULL;
1423- special_cls_id = LLAMA_TOKEN_NULL;
14241419 special_mask_id = LLAMA_TOKEN_NULL;
14251420 } else if (tokenizer_model == " t5" ) {
14261421 type = LLAMA_VOCAB_TYPE_UGM;
@@ -1431,7 +1426,6 @@ void llama_vocab::impl::load(llama_model_loader & ml, const LLM_KV & kv) {
14311426 special_unk_id = 2 ;
14321427 special_sep_id = LLAMA_TOKEN_NULL;
14331428 special_pad_id = 0 ;
1434- special_cls_id = LLAMA_TOKEN_NULL;
14351429 special_mask_id = LLAMA_TOKEN_NULL;
14361430
14371431 const int precompiled_charsmap_keyidx = gguf_find_key (ctx, kv (LLM_KV_TOKENIZER_PRECOMPILED_CHARSMAP).c_str ());
@@ -1712,7 +1706,6 @@ void llama_vocab::impl::load(llama_model_loader & ml, const LLM_KV & kv) {
17121706 { LLM_KV_TOKENIZER_UNK_ID, special_unk_id },
17131707 { LLM_KV_TOKENIZER_SEP_ID, special_sep_id },
17141708 { LLM_KV_TOKENIZER_PAD_ID, special_pad_id },
1715- { LLM_KV_TOKENIZER_CLS_ID, special_cls_id },
17161709 { LLM_KV_TOKENIZER_MASK_ID, special_mask_id },
17171710 { LLM_KV_TOKENIZER_FIM_PRE_ID, special_fim_pre_id },
17181711 { LLM_KV_TOKENIZER_FIM_SUF_ID, special_fim_suf_id },
@@ -2406,8 +2399,8 @@ std::vector<llama_token> llama_vocab::impl::tokenize(
24062399 case LLAMA_VOCAB_TYPE_WPM:
24072400 {
24082401 if (add_special) {
2409- GGML_ASSERT (special_cls_id != LLAMA_TOKEN_NULL);
2410- output.push_back (special_cls_id );
2402+ GGML_ASSERT (special_bos_id != LLAMA_TOKEN_NULL);
2403+ output.push_back (special_bos_id );
24112404 }
24122405
24132406 llm_tokenizer_wpm_session session (vocab);
@@ -2700,7 +2693,6 @@ void llama_vocab::impl::print_info() const {
27002693 if (special_unk_id != LLAMA_TOKEN_NULL) { LLAMA_LOG_INFO ( " %s: UNK token = %d '%s'\n " , __func__, special_unk_id, id_to_token[special_unk_id].text .c_str () ); }
27012694 if (special_sep_id != LLAMA_TOKEN_NULL) { LLAMA_LOG_INFO ( " %s: SEP token = %d '%s'\n " , __func__, special_sep_id, id_to_token[special_sep_id].text .c_str () ); }
27022695 if (special_pad_id != LLAMA_TOKEN_NULL) { LLAMA_LOG_INFO ( " %s: PAD token = %d '%s'\n " , __func__, special_pad_id, id_to_token[special_pad_id].text .c_str () ); }
2703- if (special_cls_id != LLAMA_TOKEN_NULL) { LLAMA_LOG_INFO ( " %s: CLS token = %d '%s'\n " , __func__, special_cls_id, id_to_token[special_cls_id].text .c_str () ); }
27042696 if (special_mask_id != LLAMA_TOKEN_NULL) { LLAMA_LOG_INFO ( " %s: MASK token = %d '%s'\n " , __func__, special_mask_id, id_to_token[special_mask_id].text .c_str () ); }
27052697
27062698 if (linefeed_id != LLAMA_TOKEN_NULL) { LLAMA_LOG_INFO ( " %s: LF token = %d '%s'\n " , __func__, linefeed_id, id_to_token[linefeed_id].text .c_str () ); }
@@ -2834,7 +2826,7 @@ llama_token_attr llama_vocab::token_get_attr(llama_token id) const {
28342826}
28352827
28362828llama_token llama_vocab::token_bos () const {
2837- return pimpl->type != LLAMA_VOCAB_TYPE_WPM ? pimpl-> special_bos_id : pimpl-> special_cls_id ;
2829+ return pimpl->special_bos_id ;
28382830}
28392831
28402832llama_token llama_vocab::token_eos () const {
@@ -2853,10 +2845,6 @@ llama_token llama_vocab::token_unk() const {
28532845 return pimpl->special_unk_id ;
28542846}
28552847
2856- llama_token llama_vocab::token_cls () const {
2857- return pimpl->special_cls_id ;
2858- }
2859-
28602848llama_token llama_vocab::token_sep () const {
28612849 return pimpl->special_sep_id ;
28622850}
@@ -3069,8 +3057,9 @@ llama_token llama_vocab_eot(const struct llama_vocab * vocab) {
30693057 return vocab->token_eot ();
30703058}
30713059
3060+ // deprecated
30723061llama_token llama_vocab_cls (const struct llama_vocab * vocab) {
3073- return vocab->token_cls ();
3062+ return vocab->token_bos ();
30743063}
30753064
30763065llama_token llama_vocab_sep (const struct llama_vocab * vocab) {
@@ -3159,7 +3148,8 @@ llama_token llama_token_eot(const struct llama_vocab * vocab) {
31593148
31603149// deprecated
31613150llama_token llama_token_cls (const struct llama_vocab * vocab) {
3162- return llama_vocab_cls (vocab);
3151+ // return llama_vocab_cls(vocab);
3152+ return llama_vocab_bos (vocab); // avoid deprecation warning
31633153}
31643154
31653155// deprecated
0 commit comments