多多词库生成工具

如果词组编码可以按照特定的规则,由单字编码组合构成,可以使用此工具可以依据构词规则自动生成词库编码。

本工具支持辅助码定义,相当于词条编码可以由单字编码和辅助码组合构成。

单字编码表

单字编码表是由Tab字符间隔的一行双列格式,第一列定义单字,第二列定义该字编码。

一般认为,用于构词的单字编码,在单字编码表中是唯一的,否则词条编码不具备唯一性。

不	b
部	b
本	b
报	b
把	b
并	b
表	b
比	b
北	b
...

辅助码码表

辅助码表的定义方式与上文所述的单字编码表格式相同。

注意 注意

如果词条编码仅仅由单字编码成,辅助码表定义文件可以不予定义。 辅助码表是为了实现更为复杂的构词规则。

的	dve
一	yoi
是	shii
了	lve
不	biu
在	zih
人	ren
有	yac
他	toa
我	wao
...

构词规则定义

构词规则应是如下格式的定义:

  • pX = l|rM b|fN +  l|rM b|fN   + ...
    
    可理解为:X个字的词条编码 等于 左起(l)或右起(r)第M字的,单字编码(b)或辅助编码(f)的第N个编码 + ...
  1. pX,p是固定字符,没个构词规则必须以此开始。X必须指定大于1,小于最大词长的整数
  2. l|rM b|fN:l表示左起,r表示右起。M必须1~max之间的整数,标识第M字的编码。
  3. b标识取单字编码表,f标识取辅助编码表,N必须为0~max之间的整数,标识改字编码的第N个编码。

    注意 注意

    如果N=0表示取该字编码的全部编码。 可使用N=a-b表示范围取码,如l1b1-2,标示取左起第1字的第1-2码。

  4. 构词规则的所有行中,如果出现多次相同词长的构词规则,则最后一个规则有效。

构词规则示例

p2=l1b1+l1b2+l2b1+l2b2
p3=l1b1+l2b1+l3b1+l3b2
p4=l1b1+l2b1+l3b1+l4b1
p5=l1b1+l2b1+l3b1+r1b1
p6=l1b1+l2b1+l3b1+r1b1
p7=l1b1+l2b1+l3b1+r1b1
p8=l1b1+l2b1+l3b1+r1b1
p9=l1b1+l2b1+l3b1+r1b1
p10=l1b1+l2b1+l3b1+r1b1
...
p2=l1b0+l2b0
p3=l1b0+l2b0+l3b0
p4=l1b0+l2b0+l3b0+l4b0
p5=l1b0+l2b0+l3b0+l4b0+l5b0
p6=l1b0+l2b0+l3b0+l4b0+l5b0+l6b0
p7=l1b0+l2b0+l3b0+l4b0+l5b0+l6b0+l7b0
p8=l1b0+l2b0+l3b0+l4b0+l5b0+l6b0+l7b0+l8b0
p9=l1b0+l2b0+l3b0+l4b0+l5b0+l6b0+l7b0+l8b0+l9b0
p10=l1b0+l2b0+l3b0+l4b0+l5b0+l6b0+l7b0+l8b0+l9b0+l10b0
...

词库文件

词库文件必须使用每行定义一个词条的方式定义。程序依次读取每行文本作为一个词条,并依据构词规则、单字编码、辅助码编码生成该词条的编码。

生成结果文件,会按照词库文件的原始顺序排列,如果需要进行词频排序,请参见关于多多输入法词频

注意 注意

如果某词条的单字编码无法在单字码表文件和辅助码表文件中确定,可在词库文件中指定该字在当前词条中的准确编码。方式为使用一组“( )”定义该字编码。如:重(chong2)庆、重(zhong4)要。
如果需要用到此功能,必须在生成词库窗口中,勾选“允许预定义编码”

七八
取向
一角
平滑
高涨
车祸
外加
白白
大意
风靡
舍得
好(hao3)书
...

操作步骤

  1. “工具”菜单上单击“词库生成”

  2. 在弹出窗口上,单击“单字码表”。选择您的单字码表文件。

  3. 单击“辅助码表”。选择您的辅助码表文件。

  4. 单击“词库文件”。选择您的词库文件。

  5. 注意 注意

    可以在窗口左侧文本框中,直接输入以上所述的四个文件路径。确认无误后,单击“生成”按钮

  6. 在左侧窗口文本框中,找到“构词规则=”文本段,在其后添加用于生成词库的构词规则。

  7. 如果需要在词库中指定某字的编码,勾选“允许预定义编码”

  8. 依据构词,某些词条可能会被程序计算出多个编码,如果需要全部保存,勾选“容错词条编码”

  9. 确认所有定义无误后,单击“生成”按钮。

  10. 生成完毕后,结果应类似下图所示:

命令行调用格式为:

mbEditer.exe /do=词库生成 /编码表文件="文件路径" /辅助码表文件="文件路径" /词库文件="文件路径" /构词规则文件="文件路径" /选项="容错词条编码,允许预定词条"

注意 注意

"/选项"如不需要,可不指定。 辅助码表是为了实现更为复杂的构词规则。