Máte problémy s AI alebo vývojom celého balíka? Naši odborníci sú tu, aby vám poradili: poradenstvo na mieru, technická integrácia a ďalšie služby. Obráťte sa na [email protected].

Úvod do rozhrania API služby NLP Cloud

NLP Cloud je rozhranie API, ktoré uľahčuje používanie spracovania prirodzeného jazyka vo výrobe. Rozhranie API je založené na najlepších open-source predtrénovaných modelov. Môžete tiež používať vlastné modely alebo trénovať modely na platforme. NLP Cloud najviac funkcií na porozumenie textu a tvorbu textu: extrakcia entít (NER), analýza sentimentu, klasifikácia textu, sumarizácia textu, odpovedanie na otázky, generovanie textu a časť reči (POS). tagovanie... a ďalšie!

Rozhranie API je k dispozícii bezplatne až do 3 požiadaviek za minútu, čo je dobrý spôsob, ako ľahko otestovať kvalitu modelov. Potom prvé platené plány stoja 29 USD mesačne (pre 15 požiadaviek za minútu).

Pozrime sa, ako používať rozhranie API v tomto návode.

Prečo NLP Cloud?

Nasadenie modelov AI do výroby je častým zdrojom zlyhania projektu. Modely spracovania prirodzeného jazyka sú veľmi náročné na zdroje náročné a zabezpečenie vysokej dostupnosti týchto modelov v produkcii, pričom majú dobrú odozvu je výzvou. Vyžaduje si to drahú infraštruktúru a pokročilý DevOps, programovanie a AI zručnosti.

Cieľom služby NLP Cloud je pomôcť spoločnostiam rýchlo využiť ich modely vo výrobe bez akýchkoľvek kompromisov. kvality a za prijateľné ceny.

Vytvorenie konta

Registrácia je veľmi rýchla. Stačí navštíviť registráciu a vyplňte svoj e-mail + heslo (Zaregistrujte sa tu).

Zaregistrujte sa v službe NLP Cloud

Teraz sa nachádzate na ovládacom paneli a vidíte svoj token API. Tento token si bezpečne uschovajte, budete ho potrebovať pre všetky volania API, ktoré budete uskutočňovať.

Na ovládacom paneli máte k dispozícii niekoľko úryvkov kódu, aby ste sa mohli rýchlo oboznámiť s ich používaním. Pre podrobnejšie informácie si potom môžete prečítať dokumentáciu (pozrite si dokumentáciu tu).

Dokumentácia k službe NLP Cloud

Klientské knižnice API NLP Cloud

Služba NLP Cloud vám poskytuje väčšinu typických funkcií spracovania prirodzeného jazyka, a to buď vďaka predtrénovaných modelov spaCy alebo Hugging Face, alebo nahraním vlastných modelov spaCy.

S cieľom uľahčiť používanie API vám NLP Cloud poskytuje klientske knižnice v niekoľkých jazykoch (Python, Ruby, PHP, Go, Node.js). Vo zvyšku tohto návodu budeme používať lib Python.

Na inštaláciu lib Pythonu použite PIP:

pip install nlpcloud

Extrakcia entít (NER)

Extrakcia entít sa vykonáva prostredníctvom spaCy. K dispozícii sú všetky "veľké" predtrénované modely spaCy, ktoré to znamená, že je k dispozícii 15 jazykov (viac informácií o všetkých týchto modeloch na webovej stránke spaCy). Môžete tiež nahrať vlastné vlastné modely spaCy, ktoré ste si sami vytvorili, aby ste ich mohli používať vo výrobe. Ak je to to, čo chcete, stačí prejsť do sekcie "Vlastné modely" na ovládacom paneli:

Nahrávanie vlastných modelov spracovania prirodzeného jazyka

Teraz si predstavme, že chcete extrahovať entity z vety "John Doe pracoval pre Microsoft v Seattli od roku 1999." vďaka predtrénovanému modelu spaCy pre angličtinu ("en_core_web_lg"). Tu je uvedený postup, ako by ste mali postupovať:

import nlpcloud

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

Vráti obsah každej extrahovanej entity a jej pozíciu vo vete.

Analýza sentimentu

Analýza sentimentu sa dosahuje vďaka transformátorom Hugging Face a Distilbert Base Uncased Finetuned SST 2 English. Tu je príklad:

import nlpcloud

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

To vám napovie, či je všeobecná nálada v tomto texte skôr pozitívna alebo negatívna, a jej pravdepodobnosť.

Klasifikácia textu

Klasifikácia textu sa dosahuje vďaka transformátorom Hugging Face a Facebook's Bart Large MNLI. Tu je prí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)

Ako vidíte, odovzdávame blok textu, ktorý sa snažíme klasifikovať, spolu s možnými kategóriami. Posledným argumentom je boolean, ktorý definuje, či sa môže použiť jedna kategória alebo viacero kategórií.

Vráti pravdepodobnosť pre každú kategóriu.

Sumarizácia textu

Sumarizácia textu sa dosahuje vďaka transformátorom Hugging Face a Facebook's Bart Large CNN. Tu je prí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áti sa zhrnutie vyššie uvedených údajov. Ide o "abstraktné" zhrnutie, a nie o "extraktívne" čo znamená, že môžu byť vytvorené nové vety a nepodstatné vety sú odstránené. Avšak nepodstatné vety sa samozrejme odstránia.

Odpovedanie na otázky

Odpovedanie na otázky sa dosahuje vďaka transformátorom Hugging Face a Deepset's Roberta Base Squad 2. Tu je prí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?")

Tu ide o zodpovedanie otázky vďaka kontextu.

Napríklad vyššie uvedený príklad vráti "Emmanuel Macron".

Označovanie časti reči (POS)

Označovanie častí reči sa dosahuje vďaka rovnakým modelom spaCy, aké sa používajú na extrakciu entít. Takže pre napríklad ak chcete použiť predtrénovaný anglický model, mali by ste postupovať takto:

import nlpcloud

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

Vráti časť reči každého tokenu vo vete a jeho závislosť od iných tokenov.

Záver

NLP Cloud je rozhranie API pre spracovanie prirodzeného jazyka, ktoré sa ľahko používa a ktoré vám pomôže ušetriť veľa času pri produkcii.

K dispozícii sú ďalšie modely, ako napríklad preklad, detekcia jazyka, generovanie textu... A mnoho ďalších.

Upozorňujeme tiež, že v prípade kritických výkonnostných potrieb sa navrhujú aj plány GPU.

Dúfam, že tento článok bol pre niektorých z vás užitočný! Ak máte nejaké otázky, neváhajte mi ich napísať. dať mi vedieť.

Julien Salinas
Technický riaditeľ spoločnosti NLP Cloud