自然语言处理工具LTP语言云调用方法

简介:

前言

LTP语言云平台

      不支持离线调用;

  支持分词、词性标注、命名实体识别、依存句法分析、语义角色标注

  不支持自定义词表,但是你可以先用其他支持自定义分词的工具(例如中科院的NLPIR)把文本进行分词,再让ltp帮你标注

     支持C#、Go、Java、JavaScript、Nodejs、PHP、Python、R、Ruby等语言调用;  

     还有一些错误响应频率限制重要说明(这几个我至今也没用到);

正文

官方网址:http://www.ltp-cloud.com/

使用文档:http://www.ltp-cloud.com/document/

在线演示:http://www.ltp-cloud.com/demo/

各种语言调用实例可以到Github上下载:https://github.com/HIT-SCIR/ltp-cloud-api-tutorial

例如Python版本的:https://github.com/HIT-SCIR/ltp-cloud-api-tutorial/tree/master/Python

Step1:注册

这个网址申请一个API key,稍后会用到;

Step2:一个简单的例子(Python版)

(1)复制代码:从Github上复制一段代码(取决于你使用的语言和所需的功能)

(2)修改代码:

  <1>把 api_key = "YourApiKey" 中的 "YourApiKey" 修改成你Step1申请的API Key;

  <2>把 text = "我爱北京天安门" 修改成你要处理的文本;

  <3>根据需求设置不同的参数(其实只需要api_key,text,pattern,format四个参数就够了,仔细看下pattern):

   

复制代码
# -*- coding: utf-8 -*-
#!/usr/bin/env python

# This example shows how to use Python to access the LTP API to perform full
# stack Chinese text analysis including word segmentation, POS tagging, dep-
# endency parsing, name entity recognization and semantic role labeling and
# get the result in specified format.

import urllib2, urllib
import sys

if __name__ == '__main__':
    if len(sys.argv) < 2 or sys.argv[1] not in ["xml", "json", "conll"]:
        print >> sys.stderr, "usage: %s [xml/json/conll]" % sys.argv[0]
        sys.exit(1)

    uri_base = "http://ltpapi.voicecloud.cn/analysis/?"
    api_key  = "YourApiKey"
    text     = "我爱北京天安门"
    # Note that if your text contain special characters such as linefeed or '&',
    # you need to use urlencode to encode your data
    text     = urllib.quote(text)
    format   = sys.argv[1]
    pattern  = "all"

    url      = (uri_base
               + "api_key=" + api_key + "&"
               + "text="    + text    + "&"
               + "format="  + format  + "&"
               + "pattern=" + "all")

    try:
        response = urllib2.urlopen(url)
        content  = response.read().strip()
        print content
    except urllib2.HTTPError, e:
        print >> sys.stderr, e.reason
复制代码

Step3:运行

如果要批量处理txt或者xml文件,需要自己写一段批量处理的代码,下边是我之前项目中用到的一段批量处理某一目录下txt文件代码(就是加了一层循环和设置了一个输出):

复制代码
 1 # -*- coding: utf-8 -*-
 2 #!/usr/bin/env python
 3 
 4 # This example shows how to use Python to access the LTP API to perform full
 5 # stack Chinese text analysis including word segmentation, POS tagging, dep-
 6 # endency parsing, name entity recognization and semantic role labeling and
 7 # get the result in specified format.
 8 
 9 import urllib2, urllib
10 import sys
11 
12 if __name__ == '__main__':
13     uri_base = "http://ltpapi.voicecloud.cn/analysis/?"
14     api_key  = "7132G4z1HE3S********DSxtNcmA1jScSE5XumAI"
15 
16     f = open("E:\\PyProj\\Others\\rite_sentence.txt")
17     fw = open("E:\\PyProj\\Others\\rite_pos.txt",'w')
18 
19     line = f.readline()
20     while(line):
21         text     = line
22         # Note that if your text contain special characters such as linefeed or '&',
23         # you need to use urlencode to encode your data
24         text     = urllib.quote(text)
25         format   = "plain"
26         pattern  = "pos"
27 
28         url      = (uri_base
29                    + "api_key=" + api_key + "&"
30                    + "text="    + text    + "&"
31                    + "format="  + format  + "&"
32                    + "pattern=" + pattern)
33 
34         try:
35             response = urllib2.urlopen(url)
36             content  = response.read().strip()
37             print content
38             fw.write(line+content+'\n')
39         except urllib2.HTTPError, e:
40             print >> sys.stderr, e.reason
41         line = f.readline()
42     fw.close()
43     f.close()
复制代码

 


本文转自ZH奶酪博客园博客,原文链接:http://www.cnblogs.com/CheeseZH/p/4585176.html,如需转载请自行联系原作者

相关文章
|
9月前
|
机器学习/深度学习 存储 自然语言处理
NLP参数高效迁移学习:Adapter方法——论文简读
本研究深入探讨了自然语言处理中参数高效的迁移学习方法——Adapter。通过在预训练模型中引入小型可训练模块,仅调整少量额外参数即可完成模型适配。理论分析表明,该方法在初始化时保持网络行为稳定,并通过瓶颈结构大幅压缩参数规模。实验结果显示,Adapter在GLUE基准上仅用3.6%的参数便达到接近全微调的性能,且对学习率具有更强的鲁棒性。相比传统微调和其他参数高效方法,Adapter在多任务场景下展现出更优的存储效率与泛化能力,为大规模模型的实际部署提供了高效可行的解决方案。
652 7
|
8月前
|
数据采集 机器学习/深度学习 人工智能
31_NLP数据增强:EDA与NLPAug工具
在自然语言处理(NLP)领域,高质量的标注数据是构建高性能模型的基础。然而,获取大量准确标注的数据往往面临成本高昂、耗时漫长、覆盖度不足等挑战。2025年,随着大模型技术的快速发展,数据质量和多样性对模型性能的影响愈发显著。数据增强作为一种有效扩充训练样本的技术手段,正成为解决数据稀缺问题的关键策略。
613 0
|
人工智能 自然语言处理 Java
FastExcel:开源的 JAVA 解析 Excel 工具,集成 AI 通过自然语言处理 Excel 文件,完全兼容 EasyExcel
FastExcel 是一款基于 Java 的高性能 Excel 处理工具,专注于优化大规模数据处理,提供简洁易用的 API 和流式操作能力,支持从 EasyExcel 无缝迁移。
3901 65
FastExcel:开源的 JAVA 解析 Excel 工具,集成 AI 通过自然语言处理 Excel 文件,完全兼容 EasyExcel
|
人工智能 自然语言处理 数据可视化
Data Formulator:微软开源的数据可视化 AI 工具,通过自然语言交互快速创建复杂的数据图表
Data Formulator 是微软研究院推出的开源 AI 数据可视化工具,结合图形化界面和自然语言输入,帮助用户快速创建复杂的可视化图表。
1529 10
Data Formulator:微软开源的数据可视化 AI 工具,通过自然语言交互快速创建复杂的数据图表
|
存储 人工智能 自然语言处理
ACE++:输入想法就能完成图像创作和编辑!阿里通义推出新版自然语言驱动的图像生成与编辑工具
ACE++ 是阿里巴巴通义实验室推出的升级版图像生成与编辑工具,支持多种任务,如高质量人物肖像生成、主题一致性保持和局部图像编辑。
1160 8
|
机器学习/深度学习 人工智能 自然语言处理
自然语言处理的未来:让机器“听懂”人类语言的奥秘
1. 引言 在数字化浪潮中,自然语言处理(NLP)已经成为人工智能的核心技术之一。无论是智能助手、翻译应用,还是社交媒体的情感分析,NLP正以不可思议的速度改变我们的生活。根据市场研究,NLP的市场规模预计将在未来几年内快速增长,成为众多行业不可或缺的组成部分。本文将深入探讨NLP的基础知识、关键技术、实际应用以及未来的发展趋势,帮助你全面了解这一引人入胜的领域。
|
机器学习/深度学习 人工智能 自然语言处理
自然语言处理(NLP)是AI的重要分支,旨在让计算机理解人类语言
自然语言处理(NLP)是AI的重要分支,旨在让计算机理解人类语言。本文探讨了深度学习在NLP中的应用,包括其基本任务、优势、常见模型及具体案例,如文本分类、情感分析等,并讨论了Python的相关工具和库,以及面临的挑战和未来趋势。
1075 1
|
自然语言处理 算法 数据挖掘
探讨如何利用Python中的NLP工具,从被动收集到主动分析文本数据的过程
【10月更文挑战第11天】本文介绍了自然语言处理(NLP)在文本分析中的应用,从被动收集到主动分析的过程。通过Python代码示例,详细展示了文本预处理、特征提取、情感分析和主题建模等关键技术,帮助读者理解如何有效利用NLP工具进行文本数据分析。
447 2
|
存储 人工智能 自然语言处理
Pandas数据应用:自然语言处理
本文介绍Pandas在自然语言处理(NLP)中的应用,涵盖数据准备、文本预处理、分词、去除停用词等常见任务,并通过代码示例详细解释。同时,针对常见的报错如`MemoryError`、`ValueError`和`KeyError`提供了解决方案。适合初学者逐步掌握Pandas与NLP结合的技巧。
585 20