| 25 | } |
| 26 | |
| 27 | bool MtokTokenizer::load(const std::string& filePath) { |
| 28 | #if defined(MNN_DIFFUSION_WITH_LLM_TOKENIZER) |
| 29 | auto mtokPath = BuildMtokPath(filePath); |
| 30 | delete mTokenizer; |
| 31 | mTokenizer = MNN::Transformer::Tokenizer::createTokenizer(mtokPath); |
| 32 | if (mTokenizer == nullptr) { |
| 33 | MNN_ERROR("Failed to create tokenizer from %s\n", mtokPath.c_str()); |
| 34 | } |
| 35 | return mTokenizer != nullptr; |
| 36 | #else |
| 37 | (void)filePath; |
| 38 | MNN_ERROR("Diffusion tokenizer requires MNN_BUILD_LLM=ON and tokenizer.mtok\n"); |
| 39 | return false; |
| 40 | #endif |
| 41 | } |
| 42 | |
| 43 | std::vector<int> MtokTokenizer::encodeSingle(const std::string& sentence, int maxlen) const { |
| 44 | #if defined(MNN_DIFFUSION_WITH_LLM_TOKENIZER) |
no test coverage detected