分词器

目前,Lance已内置支持Jieba和Lindera分词器,但并未自带语言模型。 如需进行分词处理,您需自行下载语言模型。 可通过设置环境变量LANCE_LANGUAGE_MODEL_HOME来指定语言模型的存储路径。 若未设置该变量,默认路径为

${system data directory}/lance/language_models

它还支持配置用户词典,方便用户在不重新训练语言模型的情况下扩展自己的词典。

Jieba的语言模型

下载模型

python -m lance.download jieba

默认情况下,语言模型存储在${LANCE_LANGUAGE_MODEL_HOME}/jieba/default中。

使用模型

用户词典

在当前模型的根目录下创建一个名为config.json的文件。

{
    "main": "dict.txt",
    "users": ["path/to/user/dict.txt"]
}

Lindera的语言模型

下载模型

python -m lance.download lindera -l [ipadic|ko-dic|unidic]

请注意,Lindera的语言模型需要编译。请先安装lindera-cli。具体步骤请参考https://github.com/lindera/lindera/tree/main/lindera-cli

语言模型默认存储在 ${LANCE_LANGUAGE_MODEL_HOME}/lindera/[ipadic|ko-dic|unidic] 目录下

使用模型

ds.create_scalar_index("text", "INVERTED", base_tokenizer="lindera/ipadic")

用户词典

在当前模型的根目录下创建一个名为config.json的文件。

  • "main"字段是可选的。如果未填写,默认为"main"目录。

  • "user"是用户词典的路径。用户词典可以作为CSV文件传递,也可以作为由lindera-cli编译的二进制文件传递。

  • 如果用户词典是二进制格式,"user_kind"字段可以留空。如果是CSV格式,则需要指定语言模型的类型。

创建您自己的语言模型

将您的语言模型放入LANCE_LANGUAGE_MODEL_HOME中。