求助大神们,困扰多日的问题,在使用hanlp1.84的时候,添加自定义词典非常方便,只需要添加txt到指定的路径下,运行hanlp时,第一次启动后,系统会自动生成bin文件供后续分词使用
但升级到2.1版本的时候,就没了这个bin文件来做自定义词典加载了,看了官方例子就只有一个简单的例子:
tok.dict_force = tok.dict_combine = None
print(f'不挂词典:\n{HanLP("商品和服务项目")["tok/fine"]}')
tok.dict_force = {'和服', '服务项目'}
print(f'强制模式:\n{HanLP("商品和服务项目")["tok/fine"]}') # 慎用,详见《自然语言处理入门》第二章
tok.dict_force = {'和服务': ['和', '服务']}
print(f'强制校正:\n{HanLP("正向匹配商品和服务、任何和服务必按上述切分")["tok/fine"]}')
而我私有领域的词典有600万的分词量,按上面的做法我将所有的分词在系统第一次启动时都加载进dict_force ,但内存使用量也直接增加了6G以上
如下语句
with open(file_path, ‘r’, encoding=‘utf-8’) as fin:
for line in fin:
beauty_vocab.add(line.strip())
tok.dict_force = beauty_vocab
这样的做法如果部署到linux的容器起多进程时,内存的消耗就巨大了,有大神能指教下吗,是否有更合适的加载大量自定义词典的方式了,非常感谢感谢