Kæmper du med AI eller full-stack-udvikling? Vores eksperter er her for at vejlede dig: skræddersyet rådgivning, teknisk integration og meget mere. Kontakt os på [email protected].

De 10 bedste rammer, tjenester og aktører inden for behandling af naturligt sprog i 2022

Markedet for naturlig sprogbehandling er i rivende udvikling, og der er for nylig dukket mange nye værktøjer op i økosystemet. Her er de biblioteker, frameworks, sprog, tjenester og aktører, du bør kende til for at integrere tekstforståelse og tekstgenerering i dit projekt i 2022.

AI

De 10 bedste rammer, tjenester og aktører

1. Python

Python

Python har i mange år været de facto standardsprog inden for datalogi. Hvis du arbejder på et projekt om behandling af naturlige sprog, vil der højst sandsynligt være Python-kode et eller andet sted.

Python er et meget udtryksfuldt og enkelt sprog på højt niveau, hvilket gør det perfekt egnet til maskinlæringsapplikationer. Men endnu vigtigere er det, at Python nyder godt af et omfattende økosystem af biblioteker og rammer, der gør datalogernes liv lettere.

Uanset om du arbejder på et forskningsprojekt eller et produktionsprojekt, om du træner nye modeller eller bruger dem til inferens, vil du sandsynligvis skulle bruge Python. Hvis du absolut har brug for at bruge et andet sprog, kan du måske også finde gode biblioteker i andre sprog, men kun til grundlæggende brugssituationer (for mere avancerede brugssituationer vil løsningen være at vedtage en mikroservices-strategi og bruge et REST API).

2. Hugging Face Hub

Hugging Face

Hugging Face Hub er et centralt lager, der gemmer de fleste open source-modeller til behandling af naturlige sprog.

På Hugging Face er det nemt at opdage nye AI-modeller, men det er også nemt at uploade og dele dine egne modeller. Det er også et godt sted at gennemse og finde datasæt til dit næste projekt. Modeller og datasæt kan nemt downloades og bruges via deres Transformers-ramme (se nedenfor).

Hugging Face's vision er at "demokratisere" naturlig sprogbehandling og blive "Github for maskinlæring".

3. OpenAI

OpenAI

OpenAI er virksomheden bag GPT-3, den mest avancerede sproglige AI-model, der nogensinde er blevet skabt.

De to første versioner af denne model (GPT og GPT-2) var open source, men OpenAI besluttede, at GPT-3 ikke længere skulle være open source. Hvis du vil bruge GPT-3, skal du abonnere på OpenAI API'en. Kun Microsoft har adgang til kildekoden til GPT-3, da de har købt en eksklusiv licens.

GPT-modellerne er AI-modeller til tekstgenerering, der er meget gode til at skrive tekst som et menneske. Det er faktisk ret svært for et menneske at afgøre, om en tekst er skrevet af et rigtigt menneske eller af GPT-3...

Det har kostet OpenAI millioner af dollars at designe og træne denne nye AI. Hvis du ønsker at bruge den, skal du gå gennem en krævende valideringsproces, da OpenAI ikke tillader alle typer applikationer at bruge deres model.

Der udgives nu nye open source-modeller som GPT-J og GPT-NeoX for at komme på højde med OpenAI.

4. NLP Cloud

NLP Cloud

Det er os!

NLP Cloud er et API, der gør det nemt for dig at bruge de mest avancerede AI-modeller til behandling af naturligt sprog i produktionen.

Du kan f.eks. generere tekst med GPT-J og GPT-NeoX, opsummere indhold med Facebooks Bart Large CNN, klassificere et stykke tekst med Roberta, udtrække enheder med spaCy, oversætte indhold med Opus MT ... og meget mere.

På NLP Cloud er det også muligt at træne og finjustere din egen AI eller implementere dine egne interne modeller. Hvis du f.eks. ønsker at oprette din egen medicinske chatbot baseret på GPT-J, skal du blot uploade dit datasæt bestående af dine egne eksempler fra din branche, derefter starte træningsprocessen og bruge din endelige model i produktionen via API'en.

5. Deepspeed

Deepspeed

Deepspeed er en open source-ramme fra Microsoft, der fokuserer på parallelisering af modeller.

Hvad betyder det helt præcist?

AI-modellerne bliver større og større (se GPT-3, GPT-J, GPT-NeoX 20B, T0, Fairseq 13B ...). Disse enorme modeller åbner døren til tonsvis af nye applikationer, men de er også meget svære at køre.

Træning af disse modeller og pålidelig kørsel af dem i produktion til inferens kan enten ske gennem vertikal skalerbarhed (ved hjælp af store GPU'er som NVIDIA A100 eller Google TPU'er) eller horisontal skalerbarhed (ved hjælp af flere små GPU'er parallelt).

Den anden metode er mere og mere populær, da den er billigere og bedre skalerbar. Ikke desto mindre er det langt fra let at udføre distribueret træning og inferens, og derfor er Deepspeed en stor hjælp.

Deepspeed var oprindeligt rettet mod træningsopgaver, men det bruges nu mere og mere til inferens, da det er let at bruge og kan integreres med Hugging Face Transformers (se nedenfor).

6. Big Science

Big Science

Big Science er et kollektiv af forskere og virksomheder, der arbejder med store sprogmodeller.

Deres første workshop resulterede i en AI-model kaldet T0, som er meget god til at forstå menneskelige instruktioner.

De arbejder nu på meget større modeller: deres mål er at skabe flersprogede AI-modeller med åben kildekode, som er større og mere avancerede end GPT-3.

7. SpaCy

spaCy

SpaCy er en Python-ramme til behandling af naturligt sprog, som er perfekt egnet til produktion: den er både hurtig og nem at lege med.

Dette er en ramme, der vedligeholdes af et tysk AI-firma ved navn Explosion AI.

SpaCy er meget god til Named Entity Recognition (også kendt som entitetsudtrækning) og kan bruges på omkring 50 forskellige sprog. De leverer forudtrænede modeller, og du kan nemt oprette dine egne modeller ved hjælp af annoterede eksempler.

8. HF Transformers

Transformers-rammen blev udgivet af Hugging Face for et par år siden. De fleste avancerede modeller til behandling af naturligt sprog er nu baseret på Transformers.

Dette er et Python-modul, der er baseret på PyTorch, Tensorflow og Jax, og som kan bruges til enten træning eller inferens.

Hugging Face Transformers gør det meget nemt at downloade og uploade modeller til Hugging Face Hub.

9. HF Tokenizers

Biblioteket med tokenizers fra Hugging Face er et sæt avancerede tokenizers til behandling af naturlige sprog, der anvendes af transformerbaserede modeller.

Tokenisering handler om at opdele en indtastet tekst i små ord eller underord, som derefter kan indkodes og behandles af AI-modellen.

Tokenisering lyder måske som en detalje, men det er det ikke. Det er faktisk en vigtig del af behandlingen af naturlige sprog, og det gør en stor forskel for kvaliteten af resultaterne og ydelserne at bruge den rigtige tokenizer.

10. NLTK

NLTK står for Natural Language Toolkit. Det er en Python-ramme, som har eksisteret i mange år, og som er fantastisk til forskning og uddannelse.

NLTK er ikke en produktionsorienteret ramme, men den er perfekt til dataloger, der forsøger at få gang i naturlig sprogbehandling.

Konklusion

Området for behandling af naturlige sprog har udviklet sig betydeligt i 2021. I dag ønsker flere og flere virksomheder at bruge sproglige AI-modeller i produktionen, og det er interessant at se, at økosystemet i 2022 stort set ikke har noget at gøre med det, det var for 5 år siden.

Biblioteker og rammer bliver mere og mere avancerede, og oprettelsen af store sprogmodeller som GPT-3 giver nye interessante udfordringer.

Jeg glæder mig til at se, hvordan det bliver i 2023!

Julien Salinas
Teknisk direktør hos NLP Cloud