欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程语言 > python >内容正文

python

哈工大LTP本地安装及python调用

发布时间:2024/7/5 python 55 豆豆
生活随笔 收集整理的这篇文章主要介绍了 哈工大LTP本地安装及python调用 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

原文链接:https://blog.csdn.net/yangfengling1023/article/details/84559848

LTP即哈工大语言技术平台云,是基于云计算技术的中文自然语言处理服务平台

在线使用的网址:https://www.ltp-cloud.com/

github网址:https://github.com/HIT-SCIR/ltp

模型下载网址:http://ltp.ai/download.html

1、安装

我主要完成了python安装pyltp,但是在安装的过程中,需要安装VS,不同版本的python会对应不同的VS

python3.6 对应的VS2005  可以从下面的网盘进行下载:

链接:https://pan.baidu.com/s/19DwbVfe3JQYWA3oPCZQoPw 
提取码:u5lm 
python2.7.13 对应的VS可以从下面的网盘中进行下载:

链接:https://pan.baidu.com/s/1rd_9i4wy45FKeF2oYSPCbA 
提取码:qf38 

(1)python3.6安装过程

执行下面的安装步骤则完成了安装

$ git clone https://github.com/HIT-SCIR/pyltp
$ git submodule init 
$ git submodule update
$ python setup.py install

但此时安装的pyltp版本是0.2.1

(2)python2.7.13安装过程

按照上面的步骤,会出现下面的问题(本地的python版本默认的是python2.7.14):

visual c++ for python\9.0\VC\Bin\amd64\cl.exe failed with exit status 2

解决方法:

把python2.7.14换成python2.7.13版本即可,且改成pip安装,具体的安装命令如下所示:
set STATICBUILD=true && pip install pyltp==0.1.9.1

此时安装的pyltp版本为0.1.9.1
 

2、使用

LTP提供的模型包括:(在ltp_data文件夹http://ltp.ai/download.html)
    cws.model         分句模型,单文件
    pos.model         词性标注模型,单文件
    ner.model 命名实体识别模型,单文件
    parser.model 依存句法分析模型,单文件
    srl_data/ 语义角色标注模型,多文件(文件夹srl)

主要使用pyltp中的命名实体识别的功能,具体的代码如下所示:

  • # -*- coding: utf-8 -*-
  • from pyltp import SentenceSplitter
  • from pyltp import Segmentor
  • from pyltp import Postagger
  • from pyltp import NamedEntityRecognizer
  • paragraph1 = "张三来自中国"
  • # 分词
  • sengentor = Segmentor()
  • sengentor.load("model/ltp_data_v3.4.0/cws.model")
  • words = sengentor.segment(paragraph1)
  • sengentor.release() # 释放模型
  • # 词性标注
  • postagger = Postagger()
  • postagger.load("model/ltp_data_v3.4.0/pos.model")
  • postags = postagger.postag(words)
  • postagger.release() # 释放模型
  • # 命名实体识别
  • recognizer = NamedEntityRecognizer()
  • recognizer.load("model/ltp_data_v3.4.0/ner.model")
  • netags = recognizer.recognize(words, postags)
  • result = "|".join(netags).split('|')
  • for i in range(len(words)):
  • print words[i],postags[i],result[i]
  • recognizer.release() # 释放模型
  • 运行的结果如下图所示:

     

    总结

    以上是生活随笔为你收集整理的哈工大LTP本地安装及python调用的全部内容,希望文章能够帮你解决所遇到的问题。

    如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。