Máte potíže s umělou inteligencí nebo s vývojem celého balíku? Naši odborníci jsou tu pro vás: poradenství na míru, technická integrace a další. Obraťte se na [email protected].

Úvod do rozhraní API služby NLP Cloud

NLP Cloud je rozhraní API, které usnadňuje používání zpracování přirozeného jazyka ve výrobě. Rozhraní API je založeno na nejlepších otevřených zdrojových kódech. předtrénovaných modelech. Můžete také používat vlastní modely nebo trénovat modely na platformě. NLP Cloud většina funkcí pro porozumění textu a jeho generování: extrakce entit (NER), analýza sentimentu, klasifikace textu, shrnutí textu, zodpovídání otázek, generování textu a část řeči (POS). tagování... a další!

Rozhraní API je k dispozici zdarma až do 3 požadavků za minutu, což je dobrý způsob, jak snadno otestovat kvalitu. modelů. První placené plány pak stojí 29 dolarů měsíčně (pro 15 požadavků za minutu).

Podívejme se, jak API používat v tomto tutoriálu.

Proč NLP Cloud?

Nasazení modelů umělé inteligence do výroby je častým zdrojem selhání projektu. Modely zpracování přirozeného jazyka jsou velmi náročné na zdroje náročné a zajištění vysoké dostupnosti těchto modelů v produkci, při dobré odezvě je náročné. Je zapotřebí nákladná infrastruktura a pokročilé DevOps, programování a AI. dovednosti.

Cílem služby NLP Cloud je pomoci společnostem rychle využít jejich modely ve výrobě, aniž by došlo k jakýmkoli kompromisům. kvality a za přijatelné ceny.

Vytvoření účtu

Registrace je velmi rychlá. Stačí navštívit registraci a vyplňte svůj e-mail + heslo (Zaregistrujte se zde).

Zaregistrujte se na NLP Cloud

Nyní se nacházíte na ovládacím panelu a vidíte svůj token API. Tento token si bezpečně uschovejte, budete ho potřebovat. pro všechna volání API, která budete provádět.

Na ovládacím panelu je k dispozici několik úryvků kódu, abyste se mohli rychle zorientovat. Pro si pak můžete přečíst dokumentaci (viz dokumentace zde).

Dokumentace NLP Cloud

Klientské knihovny rozhraní API služby NLP Cloud

Služba NLP Cloud poskytuje většinu typických funkcí zpracování přirozeného jazyka, a to buď díky. předtrénovaných modelů spaCy nebo Hugging Face, nebo nahráním vlastních modelů spaCy.

Aby se API snadno používalo, poskytuje vám NLP Cloud klientské knihovny v několika jazycích. (Python, Ruby, PHP, Go, Node.js). Ve zbytku tohoto tutoriálu budeme používat knihovnu Python.

Pro instalaci lib Pythonu použijte PIP:

pip install nlpcloud

Extrakce entit (NER)

Extrakce entit se provádí pomocí spaCy. K dispozici jsou všechny "velké" předtrénované modely spaCy, které to znamená, že je k dispozici 15 jazyků (více informací o všech těchto modelech najdete na webových stránkách spaCy.). Můžete také nahrát vlastní interní modely spaCy, které jste sami vytvořili, abyste je mohli používat ve výrobě. Pokud je to to, co chcete, stačí přejít do sekce "Vlastní modely" na ovládacím panelu:

Nahrání vlastních modelů zpracování přirozeného jazyka

Nyní si představme, že chcete extrahovat entity z věty "Neznámý John Doe pracoval pro v Seattlu od roku 1999." díky předtrénovanému modelu spaCy pro angličtinu ("en_core_web_lg"). Zde je uveden postup, jak byste měli postupovat:

import nlpcloud

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

Vrátí obsah každé extrahované entity a její pozici ve větě.

Analýza sentimentu

Analýza sentimentu se provádí díky transformátorům Hugging Face a Distilbert Base Uncased Finetuned SST 2 English. Zde je příklad:

import nlpcloud

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

Napoví vám, zda je obecná nálada v tomto textu spíše pozitivní, nebo negativní, a jeho pravděpodobnost.

Klasifikace textu

Klasifikace textu je dosaženo díky transformátorům Hugging Face a Facebook's Bart Large MNLI. Zde je příklad:

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)

Jak vidíte, předáváme blok textu, který se snažíme klasifikovat, spolu s možnými kategoriemi. Posledním argumentem je boolean, který určuje, zda lze použít jednu kategorii nebo více kategorií.

Vrátí pravděpodobnost pro každou kategorii.

Shrnutí textu

Shrnutí textu je dosaženo díky transformátorům Hugging Face a Facebook's Bart Large CNN. Zde je příklad:

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.""")

Vrátí shrnutí výše uvedených údajů. Jedná se o "abstraktní" shrnutí, nikoli o "extraktivní" shrnutí. což znamená, že mohou být vytvořeny nové věty a nedůležité věty jsou odstraněny. Nicméně nepodstatné věty jsou samozřejmě odstraněny.

Odpovídání na otázky

Odpovídání na otázky je možné díky transformátorům Hugging Face a Deepset's Roberta Base Squad 2. Zde je příklad:

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?")

Zde jde o zodpovězení otázky díky kontextu.

Například výše uvedený příklad vrátí "Emmanuel Macron".

Označování částí řeči (POS)

Označování částí řeči se provádí pomocí stejných modelů spaCy, jaké se používají pro extrakci entit. Takže pro například pokud chcete použít předtrénovaný anglický model, měli byste postupovat takto:

import nlpcloud

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

Vrátí část řeči každého tokenu ve větě a jeho závislost na jiných tokenech.

Závěr

NLP Cloud je rozhraní API pro zpracování přirozeného jazyka, které se snadno používá a které vám pomůže ušetřit spoustu času při výrobě.

K dispozici jsou další modely, jako je překlad, detekce jazyka, generování textu... A mnoho dalších.

Všimněte si také, že pro kritické potřeby výkonu jsou navrženy také plány GPU.

Doufám, že tento článek byl pro některé z vás užitečný! Pokud máte nějaké otázky, neváhejte mi je položit. dát vědět.

Julien Salinas
Technický ředitel společnosti NLP Cloud