fix input type ,expose to Jieba

This commit is contained in:
zhoupeng 2018-06-08 01:32:47 +08:00
parent d56e5c0659
commit 1066bc085e
2 changed files with 15 additions and 5 deletions

View File

@ -80,8 +80,10 @@ class DictTrie {
return min_weight_;
}
void InserUserDictNode(vector<string>& buf){
void InserUserDictNode(const string& line){
vector<string> buf;
DictUnit node_info;
Split(line, buf, " ");
if(buf.size() == 1){
MakeNodeInfo(node_info,
buf[0],
@ -103,6 +105,12 @@ class DictTrie {
user_dict_single_chinese_word_.insert(node_info.word[0]);
}
}
void LoadUserDict(vector<string>& buf){
for (size_t i = 0; i < buf.size(); i++) {
InserUserDictNode(buf[i]);
}
}
private:
void Init(const string& dict_path, const string& user_dict_paths, UserWordWeightOption user_word_weight_opt) {
@ -139,14 +147,12 @@ class DictTrie {
ifstream ifs(files[i].c_str());
XCHECK(ifs.is_open()) << "open " << files[i] << " failed";
string line;
vector<string> buf;
for (; getline(ifs, line); lineno++) {
if (line.size() == 0) {
continue;
}
buf.clear();
Split(line, buf, " ");
InserUserDictNode(buf);
InserUserDictNode(line);
}
}
}

View File

@ -88,6 +88,10 @@ class Jieba {
return &model_;
}
void LoadUserDict(vector<string>& buf) {
dict_trie_.LoadUserDict(buf);
}
private:
DictTrie dict_trie_;
HMMModel model_;