正在为人工智能或全栈开发而苦恼?我们的专家将为您提供指导:量身定制的建议、技术整合等。联系我们 [email protected].

NLP Cloud API简介

NLP Cloud是一个API,使在生产中使用自然语言处理变得容易。该API是基于最好的开源 预训练的模型。你也可以使用你自己的模型或在平台上训练模型。NLP Cloud最 的文本理解和文本生成功能:实体提取(NER)、情感分析。 文本分类、文本总结、问题回答、文本生成和语音部分(POS)。 标签...以及更多

API是免费提供的,每分钟最多有3个请求,这是一个很好的方法来轻松测试 模型的质量。然后,第一个付费计划每月花费29美元(每分钟15个请求)。

让我们看看如何在本教程中使用API。

为什么是NLP云?

将人工智能模型部署到生产中是项目失败的一个常见原因。自然语言处理模型是非常密集的资源。 响应时间的同时,确保这些模型在生产中的高可用性,是一项挑战。 时间,是一个挑战。这需要昂贵的基础设施和先进的DevOps、编程和AI 技能。

NLP Cloud的目标是帮助企业在生产中快速利用他们的模型,而不影响其质量。 的情况下,以可承受的价格快速利用他们的模型。

创建一个账户

报名非常快。 只需访问注册 页面并填写你的电子邮件+密码 (在此注册).

在NLP云上注册

你现在是在你的仪表板上,你可以看到你的API令牌。妥善保管这个令牌,你将需要它 用于所有你将进行的API调用。

在你的仪表板上提供了几个代码片段,以便你快速上手。对于 更多细节,你可以阅读 文档 (请看这里的文件).

NLP云文件

NLP Cloud API 客户端 Libs

NLP Cloud开箱即为您提供了大多数典型的自然语言处理功能,这得益于 预训练的 spaCy 或 Hugging Face 模型,或通过上传您自己的 spaCy 模型。

为了使API易于使用,NLP Cloud为您提供了几种语言的客户端库 (Python, Ruby, PHP, Go, Node.js)。在本教程的其余部分,我们将使用Python库。

使用PIP,以便安装Python库。

pip install nlpcloud

实体提取(NER)

实体提取是通过spaCy完成的。所有spaCy的 "大型 "预训练模型都是可用的,这意味着有15种语言可用。 这意味着有15种语言可用 (关于所有这些模型的更多细节,请见spaCy网站). 你也可以上传你自己开发的定制 你自己开发的内部温泉模型,以便在生产中使用它们。如果这就是你想要的 你只需去你的仪表板的 "自定义模型 "部分。

上传自定义的自然语言处理模型

现在让我们想象一下,你想从 "John Doe从1999年开始为西雅图的微软公司工作 "这句话中提取实体。 多亏了预先训练好的spaCy英语模型("en_core_web_lg")。 下面是你应该如何进行。

import nlpcloud

client = nlpcloud.Client("en_core_web_lg", "")
client.entities("John Doe has been working for Microsoft in Seattle since 1999.")

它将返回每个提取的实体的内容和它在句子中的位置。

情绪分析

情感分析的实现得益于Hugging Face变换器和 Distilbert Base Uncased Finetuned SST 2 English. 这里有一个例子。

import nlpcloud

client = nlpcloud.Client("distilbert-base-uncased-finetuned-sst-2-english", "")
client.sentiment("NLP Cloud proposes an amazing service!")

它将告诉你这个文本中的一般情绪是积极的还是消极的,以及其 可能性。

文本分类

文本分类的实现得益于Hugging Face变换器和 Facebook's Bart Large MNLI. 下面是一个例子。

import nlpcloud

client = nlpcloud.Client("bart-large-mnli", "")
client.classification("""John Doe is a Go Developer at Google. 
    He has been working there for 10 years and has been 
    awarded employee of the year.""",
    ["job", "nature", "space"],
    True)

正如你所看到的,我们正在传递一个我们试图分类的文本块,以及可能的类别。 最后一个参数是一个布尔值,它定义了是一个单一的类别还是几个类别可以适用。

它将返回每个类别的可能性。

文本归纳

文本摘要的实现得益于Hugging Face变换器和 Facebook's Bart Large CNN. 这里有一个例子。

import nlpcloud

client = nlpcloud.Client("bart-large-cnn", "")
client.summarization("""The tower is 324 metres (1,063 ft) tall, 
about the same height as an 81-storey building, and the tallest structure in Paris. 
Its base is square, measuring 125 metres (410 ft) on each side. During its construction, 
the Eiffel Tower surpassed the Washington Monument to become the tallest man-made 
structure in the world, a title it held for 41 years until the Chrysler Building 
in New York City was finished in 1930. It was the first structure to reach a 
height of 300 metres. Due to the addition of a broadcasting aerial at the top of 
the tower in 1957, it is now taller than the Chrysler Building by 5.2 metres (17 ft). 
Excluding transmitters, the Eiffel Tower is the second tallest free-standing structure 
in France after the Millau Viaduct.""")

它将返回上述内容的摘要。这是一个 "抽象的 "总结,而不是一个 "提取的 "总结。 的,这意味着可能会产生新的句子,并且会删除不重要的句子。然而 非重要的句子当然会被删除。

问题回答

问题回答的实现要归功于Hugging Face变换器和 Deepset's Roberta Base Squad 2. 这里有一个 的例子。

import nlpcloud

client = nlpcloud.Client("roberta-base-squad2", "")
client.question("""French president Emmanuel Macron said the country was at war
    with an invisible, elusive enemy, and the measures were unprecedented,
    but circumstances demanded them.""",
    "Who is the French president?")

在这里,它是关于回答一个问题,由于有了背景。

例如,上面的例子将返回 "Emmanuel Macron"。

语音部分(POS)标签

部分语音标签的实现要归功于与用于实体提取的相同的spaCy模型。所以 例如,如果你想使用英语预训练的模型,你应该这样做。

import nlpcloud

client = nlpcloud.Client("en_core_web_lg", "")
client.dependencies("John Doe is a Go Developer at Google")

它将返回句子中每个标记的语料部分,以及它与其他标记的依存关系。

总结

NLP Cloud是一个自然语言处理的API,易于使用,可以帮助你节省大量的生产时间。

有更多的模型,如翻译、语言检测、文本生成...以及更多。

还要注意的是,对于关键的性能需求,还提出了GPU计划。

我希望这篇文章对你们中的一些人是有用的!如果你有任何问题,请不要犹豫,让我 知道。

Julien Salinas
NLP Cloud的首席技术官