I dag er vi glade for å kunngjøre at du nå kan utføre batchtransformasjoner med Amazon SageMaker JumpStart store språkmodeller (LLM) for Text2Text Generation. Batch-transformasjoner er nyttige i situasjoner der svarene ikke trenger å være sanntid, og derfor kan du gjøre slutninger i batch for store datasett i bulk. For batch-transformasjon kjøres en batch-jobb som tar batch-inndata som et datasett og en forhåndsopplært modell, og gir ut prediksjoner for hvert datapunkt i datasettet. Batchtransformasjon er kostnadseffektivt fordi i motsetning til sanntidsvertsbaserte endepunkter som har vedvarende maskinvare, blir batchtransformasjonsklynger revet ned når jobben er fullført, og derfor brukes maskinvaren bare så lenge batchjobben varer.
I noen brukstilfeller kan sanntidsslutningsforespørsler grupperes i små grupper for batchbehandling for å lage sanntids- eller nesten-sanntidssvar. For eksempel, hvis du trenger å behandle en kontinuerlig strøm av data med lav latenstid og høy gjennomstrømning, vil det kreve flere ressurser å påkalle et sanntidsendepunkt for hver forespørsel separat, og det kan ta lengre tid å behandle alle forespørslene fordi behandlingen gjøres serielt . En bedre tilnærming ville være å gruppere noen av forespørslene og ringe sanntidsendepunktet i batch-inferensmodus, som behandler forespørslene dine i ett foroverpass av modellen og returnerer bulksvaret for forespørselen i sanntid eller nesten sanntid . Tidsforsinkelsen til svaret vil avhenge av hvor mange forespørsler du grupperer sammen og størrelsen på forekomstens minne, derfor kan du justere batchstørrelsen i henhold til bedriftens krav for ventetid og gjennomstrømning. Vi kaller dette batch-slutning i sanntid fordi det kombinerer konseptet med batching samtidig som det gir sanntidssvar. Med batch-inferens i sanntid kan du oppnå en balanse mellom lav ventetid og høy gjennomstrømning, slik at du kan behandle store datamengder på en rettidig og effektiv måte.
Jumpstart batch-transformasjon for Text2Text Generation-modeller lar deg sende batch-hyperparametrene gjennom miljøvariabler som ytterligere øker gjennomstrømningen og minimerer ventetiden.
JumpStart tilbyr forhåndstrente, åpen kildekode-modeller for et bredt spekter av problemtyper for å hjelpe deg med å komme i gang med maskinlæring (ML). Du kan trinnvis trene og justere disse modellene før utrulling. JumpStart tilbyr også løsningsmaler som setter opp infrastruktur for vanlige brukstilfeller, og kjørbare eksempelnotatbøker for ML med Amazon SageMaker. Du kan få tilgang til de forhåndstrente modellene, løsningsmalene og eksemplene via JumpStart-landingssiden i Amazon SageMaker Studio. Du kan også få tilgang til JumpStart-modeller ved å bruke SageMaker Python SDK.
I dette innlegget demonstrerer vi hvordan du bruker det toppmoderne ferdigtrente text2text FLAN T5-modeller fra Hugging Face for batchtransformasjon og batchslutning i sanntid.
Løsningsoversikt
Notatboken som viser batch-transformasjon av ferdigtrente Text2Text FLAN T5-modeller fra Klemme ansiktet tilgjengelig i det følgende GitHub repository. Denne notatboken bruker data fra Hugging Face cnn_dailymail datasett for en tekstoppsummeringsoppgave ved bruk av SageMaker SDK.
Følgende er de viktigste trinnene for å implementere batch-transformasjon og batch-inferens i sanntid:
- Sett opp forutsetninger.
- Velg en forhåndsopplært modell.
- Hent gjenstander for modellen.
- Spesifiser batchtransformasjonsjobbhyperparametere.
- Forbered data for batchtransformasjonen.
- Kjør batchtransformeringsjobben.
- Vurder oppsummeringen ved å bruke en RED (Recall-Oriented Understudy for Gisting Evaluation) score.
- Utfør batch-slutning i sanntid.
Sett opp forutsetninger
Før du kjører den bærbare datamaskinen, må du fullføre noen innledende oppsettstrinn. La oss sette opp SageMaker-utførelsesrollen slik at den har tillatelser til å kjøre AWS-tjenester på dine vegne:
Velg en forhåndsopplært modell
Vi bruker huggingface-text2text-flan-t5-large-modellen som standardmodell. Eventuelt kan du hente listen over tilgjengelige Text2Text-modeller på JumpStart og velge din foretrukne modell. Denne metoden gir en enkel måte å velge forskjellige modell-ID-er ved å bruke samme bærbare. For demonstrasjonsformål bruker vi huggingface-text2text-flan-t5-large-modellen:
Hent gjenstander for modellen
Med SageMaker kan vi utføre inferens på den forhåndstrente modellen, selv uten å finjustere den først på et nytt datasett. Vi starter med å hente deploy_image_uri
, deploy_source_uri
og model_uri
for den ferdigtrente modellen:
Spesifiser batchtransformasjonsjobbhyperparametere
Du kan sende et hvilket som helst undersett av hyperparametere som miljøvariabler til batch-transformeringsjobben. Du kan også sende disse hyperparametrene i en JSON-nyttelast. Imidlertid, hvis du setter miljøvariabler for hyperparametre som følgende kode viser, vil ikke de avanserte hyperparametrene fra de individuelle eksemplene i JSON-linjenes nyttelast bli brukt. Hvis du vil bruke hyperparametre fra nyttelasten, kan det være lurt å angi hyper_params_dict
parameter som null i stedet.
Forbered data for batchtransformasjon
Nå er vi klare til å laste inn cnn_dailymail datasett fra Hugging Face:
Vi går over hver dataoppføring og lager inndataene i ønsket format. Vi lager en articles.jsonl
fil som en testdatafil som inneholder artikler som må oppsummeres som nyttelast. Når vi oppretter denne filen, legger vi til ledeteksten "Briefly summarize this text:"
til hver testinndatarad. Hvis du vil ha forskjellige hyperparametre for hver testinndata, kan du legge til disse hyperparametrene som en del av å lage datasettet.
Vi lager highlights.jsonl
som grunnsannhetsfilen som inneholder høydepunkter for hver artikkel som er lagret i testfilen articles.jsonl
. Vi lagrer begge testfilene i en Amazon enkel lagringstjeneste (Amazon S3) bøtte. Se følgende kode:
Kjør batchtransformeringsjobben
Når du starter en batch-transformeringsjobb, starter SageMaker de nødvendige dataressursene for å behandle dataene, inkludert CPU- eller GPU-forekomster avhengig av den valgte forekomsttypen. Under batch-transformeringsjobben sørger og administrerer SageMaker automatisk dataressursene som kreves for å behandle dataene, inkludert forekomster, lagring og nettverksressurser. Når batch-transformeringsjobben er fullført, blir dataressursene automatisk ryddet opp av SageMaker. Dette betyr at forekomstene og lagringen som brukes under jobben, stoppes og fjernes, noe som frigjør ressurser og minimerer kostnadene. Se følgende kode:
Følgende er en eksempeloppføring fra articles.jsonl
testfil. Merk at posten i denne filen har en ID som samsvarer med predict.jsonl
filposter som viser en oppsummert post som utdata fra Hugging Face Text2Text-modellen. På samme måte har ground truth-filen også en matchende ID for dataposten. Den samsvarende ID-en på tvers av testfilen, grunnsannhetsfilen og utdatafilen gjør det mulig å koble inndataposter med utdataposter for enkel tolkning av resultatene.
Følgende er eksempelinndataposten som er gitt for oppsummering:
Følgende er det anslåtte resultatet med oppsummering:
Følgende er grunnsannhetens oppsummering for modellevalueringsformål:
Deretter bruker vi grunnsannheten og forutsagte utdata for modellevaluering.
Vurder modellen ved å bruke en ROUGE-score¶
RED, eller Recall-Oriented Understudy for Gisting Evaluation, er et sett med beregninger og en programvarepakke som brukes for å evaluere automatisk oppsummering og maskinoversettelse i naturlig språkbehandling. Beregningene sammenligner et automatisk produsert sammendrag eller oversettelse med et referanse (menneskeprodusert) sammendrag eller oversettelse eller et sett med referanser.
I den følgende koden kombinerer vi de forutsagte og originale sammendragene ved å slå dem sammen på fellesnøkkelen id
og bruk dette til å beregne ROUGE-poengsummen:
Utfør batch-slutning i sanntid
Deretter viser vi deg hvordan du kjører batch-slutning i sanntid på endepunktet ved å gi inngangene som en liste. Vi bruker samme modell-ID og datasett som tidligere, bortsett fra at vi tar noen få poster fra testdatasettet og bruker dem til å påkalle et sanntidsendepunkt.
Følgende kode viser hvordan du oppretter og distribuerer et endepunkt i sanntid for satsslutning i sanntid:
Deretter forbereder vi vår input-nyttelast. Til dette bruker vi dataene som vi forberedte tidligere og trekker ut de første 10 testinngangene og legger til tekstinndataene med hyperparametre som vi ønsker å bruke. Vi leverer denne nyttelasten i sanntid invoke_endpoint
. Svarnyttelasten returneres deretter som en liste over svar. Se følgende kode:
Rydd opp
Etter at du har testet endepunktet, sørg for at du sletter SageMaker-slutningsendepunktet og sletter modellen for å unngå kostnader.
konklusjonen
I denne notatboken utførte vi en batch-transformasjon for å vise frem Hugging Face Text2Text Generator-modellen for oppsummeringsoppgaver. Batchtransformasjon er fordelaktig for å oppnå slutninger fra store datasett uten å kreve et vedvarende endepunkt. Vi koblet inndataposter med slutninger for å hjelpe til med resultattolkning. Vi brukte ROUGE-score for å sammenligne testdataoppsummeringen med den modellgenererte oppsummeringen.
I tillegg demonstrerte vi batch-inferens i sanntid, der du kan sende en liten batch med data til et sanntidsendepunkt for å oppnå en balanse mellom ventetid og gjennomstrømning for scenarier som streaming av inngangsdata. Sanntids batch-inferens bidrar til å øke gjennomstrømningen for sanntidsforespørsler.
Prøv batch-transformasjonen med Text2Text Generation-modeller i SageMaker i dag og gi oss tilbakemeldingen din!
Om forfatterne
Hemant Singh er en maskinlæringsingeniør med erfaring i Amazon SageMaker JumpStart og Amazon SageMaker innebygde algoritmer. Han fikk sin master fra Courant Institute of Mathematical Sciences og B.Tech fra IIT Delhi. Han har erfaring med å jobbe med et mangfold av maskinlæringsproblemer innenfor domenet naturlig språkbehandling, datasyn og tidsserieanalyse.
Rachna Chadha er en Principal Solutions Architect AI/ML i Strategic Accounts hos AWS. Rachna er en optimist som tror at etisk og ansvarlig bruk av AI kan forbedre samfunnet i fremtiden og bringe økonomisk og sosial velstand. På fritiden liker Rachna å tilbringe tid med familien, gå på tur og høre på musikk.
Dr. Ashish Khetan er en Senior Applied Scientist med Amazon SageMaker innebygde algoritmer og hjelper til med å utvikle maskinlæringsalgoritmer. Han fikk sin doktorgrad fra University of Illinois Urbana-Champaign. Han er en aktiv forsker innen maskinlæring og statistisk inferens, og har publisert mange artikler på NeurIPS, ICML, ICLR, JMLR, ACL og EMNLP-konferanser.
- SEO-drevet innhold og PR-distribusjon. Bli forsterket i dag.
- PlatoAiStream. Web3 Data Intelligence. Kunnskap forsterket. Tilgang her.
- Minting the Future med Adryenn Ashley. Tilgang her.
- Kjøp og selg aksjer i PRE-IPO-selskaper med PREIPO®. Tilgang her.
- kilde: https://aws.amazon.com/blogs/machine-learning/perform-batch-transforms-with-amazon-sagemaker-jumpstart-text2text-generation-large-language-models/
- : har
- :er
- :ikke
- :hvor
- $OPP
- 000
- 1
- 10
- 100
- 11
- 13
- 14
- 20
- 2014
- 50
- 7
- 8
- 9
- a
- I stand
- Om oss
- ovenfor
- godkjennelse
- akseptert
- adgang
- Ifølge
- kontoer
- Oppnå
- kjøper
- tvers
- handlinger
- aktiv
- avansert
- fordelaktige
- mot
- AI
- AI / ML
- Aid
- algoritmer
- Alle
- påstått
- tillater
- også
- Amazon
- Amazon SageMaker
- Amazon SageMaker JumpStart
- Amazon Web Services
- an
- analyse
- og
- Kunngjøre
- noen
- api
- anvendt
- tilnærming
- ER
- rundt
- Artikkel
- artikler
- AS
- At
- forsøk
- myndighet
- Automatisk
- automatisk
- tilgjengelig
- unngå
- AWS
- Balansere
- basen
- basert
- BE
- ble
- fordi
- blir
- før du
- være
- tro
- mener
- Benjamin
- Bedre
- mellom
- kroppen
- både
- Begge sider
- grenser
- kort
- bringe
- Bringer
- innebygd
- virksomhet
- men
- by
- ring
- CAN
- kan ikke
- saker
- Årsak
- avgifter
- Velg
- klasse
- kunde
- nærmere
- CNN
- kode
- kombinere
- skurtreskerne
- kombinere
- Kom
- forpliktelser
- forpliktet
- Felles
- sammenligne
- fullføre
- Beregn
- datamaskin
- Datamaskin syn
- konsept
- Gjennomføre
- konferanser
- Container
- fortsette
- kontinuerlig
- bidratt
- Kostnad
- kostnadseffektiv
- kunne
- råd
- mot sin hensikt
- land
- Court
- skape
- Opprette
- forbrytelser
- Criminal
- dato
- dataregistrering
- datasett
- død
- avgjørelse
- Misligholde
- Delhi
- demonstrere
- demonstrert
- Avdeling
- avhengig
- utplassere
- distribusjon
- beskrevet
- Bestem
- utvikle
- Utvikling
- avvike
- forskjeller
- forskjellig
- direkte
- diverse
- do
- Docker
- domene
- gjort
- ikke
- Av
- ned
- varighet
- under
- hver enkelt
- Tidligere
- øst
- lett
- økonomisk
- effektiv
- innsats
- kvalifisert
- muliggjør
- slutt
- Endpoint
- ingeniør
- sikre
- Går inn
- entry
- Miljø
- Era
- etisk
- evaluere
- evaluere
- evaluering
- Selv
- bevis
- eksempel
- eksempler
- Unntatt
- opphisset
- gjennomføring
- erfaring
- trekke ut
- Face
- tro
- familie
- Noen få
- filet
- Filer
- Først
- etter
- Til
- Tving
- utenlandske
- formell
- Formelt
- format
- Forward
- grunnleggelsen
- fra
- fullt
- videre
- framtid
- generasjonen
- generator
- få
- gir
- Go
- Mål
- regjeringer
- GPU
- større
- Ground
- Gruppe
- maskinvare
- Ha
- he
- hjelpe
- hjelper
- her
- her.
- Høy
- striper
- hans
- vert
- Hvordan
- Hvordan
- Men
- HTML
- http
- HTTPS
- Klem ansikt
- menneskelig
- menneskerettigheter
- Menneskeheten
- ID
- ids
- if
- Illinois
- bilde
- umiddelbart
- implementere
- importere
- forbedre
- in
- inkludere
- Inkludert
- Øke
- uavhengighet
- individuelt
- individuelt
- informasjon
- Infrastruktur
- innledende
- urettferdighet
- inngang
- innganger
- forespørsel
- f.eks
- i stedet
- Institute
- internasjonalt
- tolkning
- inn
- undersøke
- etterforskning
- Undersøkelser
- Israel
- IT
- DET ER
- Januar
- Jobb
- bli medlem
- sammenføyning
- jpg
- JSON
- dømme
- juni
- jurisdiksjon
- bare
- Justice
- nøkkel
- Vet
- landing
- Språk
- stor
- Siste
- Ventetid
- seinere
- lanseringer
- læring
- venstre
- la
- lett
- i likhet med
- liker
- linje
- linjer
- knyttet
- linking
- Liste
- Lytting
- laste
- Lang
- lenger
- Lav
- maskin
- maskinlæring
- gjøre
- Making
- forvalter
- måte
- mange
- merket
- matchet
- matchende
- matematiske
- Kan..
- midler
- medlem
- medlemmer
- medlemskap
- Minne
- metode
- Metrics
- minimere
- ML
- Mote
- modell
- modeller
- Måned
- mer
- flytte
- musikk
- må
- navn
- Naturlig
- Natural Language Processing
- nødvendig
- Trenger
- forhandlinger
- Ingen
- Nederland
- nettverk
- Ny
- nyheter
- pressemelding
- bærbare
- nå
- objekt
- å skaffe seg
- of
- Office
- offisielt
- on
- ONE
- bare
- åpen
- åpen kildekode
- åpnet
- motsette
- motsetning
- or
- original
- OS
- vår
- ut
- produksjon
- enn
- pakke
- side
- Palestina
- papirer
- parameter
- parametere
- del
- parti
- passere
- banen
- asfaltering
- fred
- Ansatte
- Utfør
- tillatelser
- plato
- Platon Data Intelligence
- PlatonData
- vær så snill
- Point
- mulig
- Post
- forutsi
- spådd
- prediksjon
- Spådommer
- Predictor
- trekkes
- Forbered
- forberedt
- forutsetninger
- president
- press
- Prime
- statsminister
- Principal
- Problem
- problemer
- prosess
- Prosesser
- prosessering
- produsert
- velstand
- gi
- forutsatt
- gir
- gi
- publisert
- formål
- Python
- område
- klar
- ekte
- sanntids
- rekord
- poster
- referanser
- refererer
- slipp
- fjernet
- GJENTATTE GANGER
- rapporterer
- anmode
- forespørsler
- krever
- påkrevd
- Krav
- forsker
- Ressurser
- svar
- svar
- ansvar
- ansvarlig
- resultere
- Resultater
- retur
- avkastning
- anmeldelse
- rettigheter
- Rolle
- rome
- RAD
- Kjør
- s
- sagemaker
- SageMaker Inference
- Sa
- samme
- sier
- scenarier
- VITENSKAPER
- Forsker
- Resultat
- SDK
- se
- søker
- valgt
- send
- senior
- Serien
- Tjenester
- sett
- innstilling
- oppsett
- delt
- hun
- bør
- Vis
- presentere
- Viser
- Tilbehør
- signert
- på samme måte
- Enkelt
- siden
- situasjon
- situasjoner
- Størrelse
- liten
- So
- selskap
- Samfunnet
- Software
- løsning
- Solutions
- noen
- snakke
- sett
- utgifter
- Begynn
- startet
- Tilstand
- Utenriksdepartementet
- state-of-the-art
- Uttalelse
- Stater
- statistisk
- Trinn
- Steps
- Still
- stoppet
- lagring
- oppbevare
- lagret
- rett fram
- Strategisk
- stream
- streaming
- sterk
- emne
- oppsummere
- SAMMENDRAG
- sommer
- støtte
- Ta
- tatt
- tar
- Oppgave
- oppgaver
- tech
- maler
- territorier
- territorium
- test
- enn
- Det
- De
- informasjonen
- Nederland
- Staten
- verden
- deres
- Dem
- deretter
- derfor
- Disse
- de
- denne
- De
- Gjennom
- gjennomstrømning
- tid
- Tidsserier
- til
- i dag
- sammen
- revet
- mot
- Tog
- Transform
- transformator
- transforme
- Oversettelse
- sant
- Sannhet
- typen
- typer
- undergrave
- forent
- Forente Stater
- Universell
- universitet
- I motsetning til
- Opplasting
- upon
- us
- bruke
- brukt
- ved hjelp av
- Vice President
- syn
- volumer
- W
- ønsker
- krig
- var
- Se
- Vei..
- we
- web
- webtjenester
- onsdag
- velkommen
- velkommen
- VI VIL
- Hva
- når
- om
- hvilken
- mens
- HVEM
- bred
- Bred rekkevidde
- vil
- med
- innenfor
- uten
- arbeid
- verden
- ville
- Du
- Din
- zephyrnet