Skip to content

Commit 9dd71e0

Browse files
committed
llama : vocab pimpl cont
ggml-ci
1 parent 615bea8 commit 9dd71e0

File tree

5 files changed

+354
-264
lines changed

5 files changed

+354
-264
lines changed

src/llama-grammar.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1092,7 +1092,7 @@ void llama_grammar_apply_impl(const struct llama_grammar & grammar, llama_token_
10921092

10931093
for (size_t i = 0; i < cur_p->size; ++i) {
10941094
const llama_token id = cur_p->data[i].id;
1095-
const std::string & piece = grammar.vocab->cache_token_to_piece.at(id);
1095+
const std::string & piece = grammar.vocab->token_to_piece(id);
10961096

10971097
if (grammar.vocab->is_eog(id)) {
10981098
if (!allow_eog) {
@@ -1124,7 +1124,7 @@ void llama_grammar_accept_impl(struct llama_grammar & grammar, llama_token token
11241124
GGML_ABORT("fatal error");
11251125
}
11261126

1127-
const std::string & piece = grammar.vocab->cache_token_to_piece.at(token);
1127+
const std::string & piece = grammar.vocab->token_to_piece(token);
11281128

11291129
// Note terminating 0 in decoded string
11301130
const auto decoded = decode_utf8(piece, grammar.partial_utf8);

src/llama-model.cpp

Lines changed: 4 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -3553,9 +3553,7 @@ void llama_model::print_info() const {
35533553

35543554
// hparams
35553555
LLAMA_LOG_INFO("%s: arch = %s\n", __func__, arch_name().c_str());
3556-
LLAMA_LOG_INFO("%s: vocab type = %s\n", __func__, vocab.type_name().c_str());
3557-
LLAMA_LOG_INFO("%s: n_vocab = %u\n", __func__, hparams.n_vocab);
3558-
LLAMA_LOG_INFO("%s: n_merges = %u\n", __func__, (int) vocab.bpe_ranks.size());
3556+
LLAMA_LOG_INFO("%s: n_vocab (hp) = %u\n", __func__, hparams.n_vocab);
35593557
LLAMA_LOG_INFO("%s: vocab_only = %d\n", __func__, hparams.vocab_only);
35603558

35613559
if (!hparams.vocab_only) {
@@ -3608,32 +3606,6 @@ void llama_model::print_info() const {
36083606
// general kv
36093607
LLAMA_LOG_INFO("%s: general.name = %s\n", __func__, name.c_str());
36103608

3611-
// special tokens
3612-
if (vocab.special_bos_id != LLAMA_TOKEN_NULL) { LLAMA_LOG_INFO( "%s: BOS token = %d '%s'\n", __func__, vocab.special_bos_id, vocab.id_to_token[vocab.special_bos_id].text.c_str() ); }
3613-
if (vocab.special_eos_id != LLAMA_TOKEN_NULL) { LLAMA_LOG_INFO( "%s: EOS token = %d '%s'\n", __func__, vocab.special_eos_id, vocab.id_to_token[vocab.special_eos_id].text.c_str() ); }
3614-
if (vocab.special_eot_id != LLAMA_TOKEN_NULL) { LLAMA_LOG_INFO( "%s: EOT token = %d '%s'\n", __func__, vocab.special_eot_id, vocab.id_to_token[vocab.special_eot_id].text.c_str() ); }
3615-
if (vocab.special_eom_id != LLAMA_TOKEN_NULL) { LLAMA_LOG_INFO( "%s: EOM token = %d '%s'\n", __func__, vocab.special_eom_id, vocab.id_to_token[vocab.special_eom_id].text.c_str() ); }
3616-
if (vocab.special_unk_id != LLAMA_TOKEN_NULL) { LLAMA_LOG_INFO( "%s: UNK token = %d '%s'\n", __func__, vocab.special_unk_id, vocab.id_to_token[vocab.special_unk_id].text.c_str() ); }
3617-
if (vocab.special_sep_id != LLAMA_TOKEN_NULL) { LLAMA_LOG_INFO( "%s: SEP token = %d '%s'\n", __func__, vocab.special_sep_id, vocab.id_to_token[vocab.special_sep_id].text.c_str() ); }
3618-
if (vocab.special_pad_id != LLAMA_TOKEN_NULL) { LLAMA_LOG_INFO( "%s: PAD token = %d '%s'\n", __func__, vocab.special_pad_id, vocab.id_to_token[vocab.special_pad_id].text.c_str() ); }
3619-
if (vocab.special_cls_id != LLAMA_TOKEN_NULL) { LLAMA_LOG_INFO( "%s: CLS token = %d '%s'\n", __func__, vocab.special_cls_id, vocab.id_to_token[vocab.special_cls_id].text.c_str() ); }
3620-
if (vocab.special_mask_id != LLAMA_TOKEN_NULL) { LLAMA_LOG_INFO( "%s: MASK token = %d '%s'\n", __func__, vocab.special_mask_id, vocab.id_to_token[vocab.special_mask_id].text.c_str() ); }
3621-
3622-
if (vocab.linefeed_id != LLAMA_TOKEN_NULL) { LLAMA_LOG_INFO( "%s: LF token = %d '%s'\n", __func__, vocab.linefeed_id, vocab.id_to_token[vocab.linefeed_id].text.c_str() ); }
3623-
3624-
if (vocab.special_fim_pre_id != LLAMA_TOKEN_NULL) { LLAMA_LOG_INFO( "%s: FIM PRE token = %d '%s'\n", __func__, vocab.special_fim_pre_id, vocab.id_to_token[vocab.special_fim_pre_id].text.c_str() ); }
3625-
if (vocab.special_fim_suf_id != LLAMA_TOKEN_NULL) { LLAMA_LOG_INFO( "%s: FIM SUF token = %d '%s'\n", __func__, vocab.special_fim_suf_id, vocab.id_to_token[vocab.special_fim_suf_id].text.c_str() ); }
3626-
if (vocab.special_fim_mid_id != LLAMA_TOKEN_NULL) { LLAMA_LOG_INFO( "%s: FIM MID token = %d '%s'\n", __func__, vocab.special_fim_mid_id, vocab.id_to_token[vocab.special_fim_mid_id].text.c_str() ); }
3627-
if (vocab.special_fim_pad_id != LLAMA_TOKEN_NULL) { LLAMA_LOG_INFO( "%s: FIM PAD token = %d '%s'\n", __func__, vocab.special_fim_pad_id, vocab.id_to_token[vocab.special_fim_pad_id].text.c_str() ); }
3628-
if (vocab.special_fim_rep_id != LLAMA_TOKEN_NULL) { LLAMA_LOG_INFO( "%s: FIM REP token = %d '%s'\n", __func__, vocab.special_fim_rep_id, vocab.id_to_token[vocab.special_fim_rep_id].text.c_str() ); }
3629-
if (vocab.special_fim_sep_id != LLAMA_TOKEN_NULL) { LLAMA_LOG_INFO( "%s: FIM SEP token = %d '%s'\n", __func__, vocab.special_fim_sep_id, vocab.id_to_token[vocab.special_fim_sep_id].text.c_str() ); }
3630-
3631-
for (const auto & id : vocab.special_eog_ids) {
3632-
LLAMA_LOG_INFO( "%s: EOG token = %d '%s'\n", __func__, id, vocab.id_to_token[id].text.c_str() );
3633-
}
3634-
3635-
LLAMA_LOG_INFO("%s: max token length = %d\n", __func__, vocab.max_token_len);
3636-
36373609
if (arch == LLM_ARCH_DEEPSEEK) {
36383610
LLAMA_LOG_INFO("%s: n_layer_dense_lead = %d\n", __func__, hparams.n_layer_dense_lead);
36393611
LLAMA_LOG_INFO("%s: n_ff_exp = %d\n", __func__, hparams.n_ff_exp);
@@ -3663,6 +3635,8 @@ void llama_model::print_info() const {
36633635
LLAMA_LOG_INFO("%s: f_residual_scale = %f\n", __func__, hparams.f_residual_scale);
36643636
LLAMA_LOG_INFO("%s: f_attention_scale = %f\n", __func__, hparams.f_attention_scale);
36653637
}
3638+
3639+
vocab.print_info();
36663640
}
36673641

36683642
ggml_backend_dev_t llama_model::dev_layer(int il) const {
@@ -3773,7 +3747,7 @@ void llama_model_free(struct llama_model * model) {
37733747
}
37743748

37753749
enum llama_vocab_type llama_vocab_type(const struct llama_model * model) {
3776-
return model->vocab.type;
3750+
return model->vocab.get_type();
37773751
}
37783752

37793753
int32_t llama_n_vocab(const struct llama_model * model) {

0 commit comments

Comments
 (0)