CKIP Corenlp包装器
ckipnlp的Python项目详细描述
简介
要求
注意
对于python 2用户,请改用PyCkip 0.4.2。
CKIPWS(可选)
- CKIP Word SegmentationLinux版本20190524+
ckipparser(可选)
- CKIP ParserLinux版本20190506+(推荐使用20190725+)
安装
将<ckipws-linux-root>表示为ckipws-linux版本的根路径,将<ckipparser-linux-root>表示为ckip-parser-linux版本的根路径。
使用pip
安装pip install --upgrade ckipnlp pip install --no-deps --force-reinstall --upgrade ckipnlp \ --install-option='--ws'\ --install-option='--ws-dir=<ckipws-linux-root>'\ --install-option='--parser'\ --install-option='--parser-dir=<ckipparser-linux-root>'
如果没有ckip ws/ckip解析器,则忽略ws/parser选项。
安装选项
Option | Detail | Default Value |
---|---|---|
^{tt3}$ | Enable/disable CKIPWS. | False |
^{tt4}$ | Enable/disable CKIP-Parser. | False |
^{tt5}$ | CKIPWS root directory. | |
^{tt6}$ | CKIPWS libraries directory | ^{tt7}$ |
^{tt8}$ | CKIPWS share directory | ^{tt9}$ |
^{tt10}$ | CKIP-Parser root directory. | |
^{tt11}$ | CKIP-Parser libraries directory | ^{tt12}$ |
^{tt13}$ | CKIP-Parser share directory | ^{tt14}$ |
^{tt15}$ | “Data2” directory | ^{tt16}$ |
^{tt17}$ | “Rule” directory | ^{tt18}$ |
^{tt19}$ | “RDB” directory | ^{tt20}$ |
用法
有关api的详细信息,请参见http://ckipnlp.readthedocs.io/。
ckipws
importckipnlp.wsprint(ckipnlp.__name__,ckipnlp.__version__)ws=ckipnlp.ws.CkipWs(logger=False)print(ws('中文字喔'))forlinws.apply_list(['中文字喔','啊哈哈哈']):print(l)ws.apply_file(ifile='sample/sample.txt',ofile='output/sample.tag',uwfile='output/sample.uw')withopen('output/sample.tag')asfin:print(fin.read())withopen('output/sample.uw')asfin:print(fin.read())
ckip解析器
importckipnlp.parserprint(ckipnlp.__name__,ckipnlp.__version__)ps=ckipnlp.parser.CkipParser(logger=False)print(ps('中文字喔'))forlinps.apply_list(['中文字喔','啊哈哈哈']):print(l)ps=ckipnlp.parser.CkipParser(logger=False)print(ps('中文字喔'))forlinps.apply_list(['中文字喔','啊哈哈哈']):print(l)ps.apply_file(ifile='sample/sample.txt',ofile='output/sample.tree')withopen('output/sample.tree')asfin:print(fin.read())
公用事业
importckipnlpprint(ckipnlp.__name__,ckipnlp.__version__)fromckipnlp.util.wsimport*fromckipnlp.util.parserimport*# Format CkipWs outputws_text=['中文字(Na) 喔(T)','啊哈(I) 哈哈(D)']fortextinws_text:print(ckipnlp.util.ws.WsSentence.from_text(text))fortextinws_text:print(repr(ckipnlp.util.ws.WsSentence.from_text(text)))# Show CkipParser output as treetree_text='S(theme:NP(property:N‧的(head:Nhaa:我|Head:DE:的)|Head:Nad(DUMMY1:Nab:早餐|Head:Caa:和|DUMMY2:Naa:午餐))|quantity:Dab:都|Head:VC31:吃完|aspect:Di:了)'tree=ParserTree.from_text(tree_text)tree.show()# Get dummies of node 5fornodeintree.get_dummies(5):print(node)# Get heads of node 1fornodeintree.get_heads(1):print(node)# Get relationsforrintree.get_relations(0):print(r)
常见问题解答
警告
ckipws抛出“what():locale::facet::_S_create_c_locale name not valid”。我该怎么办?
安装区域设置数据。
apt-get install locales-all
警告
ckipparser抛出“ImportError: libCKIPParser.so: cannot open shared object file: No such file or directory”。我该怎么办?
将下面的命令添加到~/.bashrc:
exportLD_LIBRARY_PATH=<ckipparser-linux-root>/lib:$LD_LIBRARY_PATH