|
|
@@ -2080,9 +2080,11 @@ void llama_vocab::impl::load(llama_model_loader & ml, const LLM_KV & kv) {
|
|
|
|
|
|
std::string model_name;
|
|
|
std::string tokenizer_pre;
|
|
|
+ std::string general_arch;
|
|
|
|
|
|
ml.get_key(LLM_KV_GENERAL_NAME, model_name, false);
|
|
|
ml.get_key(LLM_KV_TOKENIZER_PRE, tokenizer_pre, false);
|
|
|
+ ml.get_key(LLM_KV_GENERAL_ARCHITECTURE, general_arch, false);
|
|
|
|
|
|
// model name to lowercase
|
|
|
std::transform(model_name.begin(), model_name.end(), model_name.begin(),
|
|
|
@@ -2091,8 +2093,11 @@ void llama_vocab::impl::load(llama_model_loader & ml, const LLM_KV & kv) {
|
|
|
}
|
|
|
);
|
|
|
|
|
|
- // set attributes by model/tokenizer name
|
|
|
- if (_contains_any(tokenizer_pre, {"jina-v2-de", "jina-v2-es", "jina-v2-code"})) {
|
|
|
+ // set attributes by model/tokenizer/architecture name
|
|
|
+ if (false
|
|
|
+ || _contains_any(tokenizer_pre, {"jina-v2-de", "jina-v2-es", "jina-v2-code"})
|
|
|
+ || _contains_any(general_arch, {"nomic-bert-moe"})
|
|
|
+ ) {
|
|
|
_set_token_attr("<mask>", LLAMA_TOKEN_ATTR_LSTRIP, true);
|
|
|
} else if (_contains_any(model_name, {"phi-3", "phi3"})) {
|
|
|
for (auto id : cache_special_tokens) {
|