Generativ kunstig intelligens (generativ AI)-modeller har vist imponerende evner til å generere tekst, bilder og annet innhold av høy kvalitet. Imidlertid krever disse modellene enorme mengder rene, strukturerte treningsdata for å nå sitt fulle potensial. De fleste data fra den virkelige verden finnes i ustrukturerte formater som PDF-filer, som krever forhåndsbehandling før de kan brukes effektivt.
Ifølge IDC, står ustrukturerte data for over 80 % av alle forretningsdata i dag. Dette inkluderer formater som e-poster, PDF-er, skannede dokumenter, bilder, lyd, video og mer. Selv om disse dataene har verdifull innsikt, gjør dens ustrukturerte natur det vanskelig for AI-algoritmer å tolke og lære av dem. I følge a 2019-undersøkelse av Deloitte, rapporterte bare 18 % av bedriftene at de kunne dra nytte av ustrukturerte data.
Ettersom AI-adopsjon fortsetter å akselerere, blir det enda viktigere å utvikle effektive mekanismer for å fordøye og lære fra ustrukturerte data i fremtiden. Dette kan innebære bedre forbehandlingsverktøy, semi-overvåket læringsteknikker og fremskritt innen naturlig språkbehandling. Bedrifter som bruker sine ustrukturerte data mest effektivt vil få betydelige konkurransefortrinn fra AI. Rene data er viktig for god modellytelse. Utpakkede tekster har fortsatt store mengder sludder og tekst (f.eks. les HTML). Utskrapte data fra internett inneholder ofte mange dupliseringer. Data fra sosiale medier, anmeldelser eller brukergenerert innhold kan også inneholde giftig og partisk innhold, og du må kanskje filtrere dem ut ved å bruke noen forhåndsbehandlingstrinn. Det kan også være mye lavkvalitetsinnhold eller bot-genererte tekster, som kan filtreres ut ved å bruke medfølgende metadata (f.eks. filtrere ut kundeservicesvar som fikk lave kundevurderinger).
Dataforberedelse er viktig på flere stadier i Retrieval Augmented Generation (FILLE) modeller. Kunnskapskildedokumentene trenger forbehandling, som å rense tekst og generere semantiske innebygginger, slik at de effektivt kan indekseres og hentes. Brukerens naturlige språkspørring krever også forhåndsbehandling, slik at den kan kodes inn i en vektor og sammenlignes med dokumentinnbygging. Etter å ha hentet relevante kontekster, kan de trenge ytterligere forbehandling, for eksempel avkorting, før de kobles sammen til brukerens spørring for å lage den endelige ledeteksten for grunnmodellen. Amazon SageMaker Canvas støtter nå omfattende dataforberedelsesfunksjoner drevet av Amazon SageMaker Data Wrangler. Med denne integrasjonen gir SageMaker Canvas kundene et ende-til-ende arbeidsområde uten kode for å forberede data, bygge og bruke ML- og fundamentmodeller for å akselerere tiden fra data til forretningsinnsikt. Du kan nå enkelt oppdage og samle data fra over 50 datakilder, og utforske og forberede data ved å bruke over 300 innebygde analyser og transformasjoner i SageMaker Canvas sitt visuelle grensesnitt.
Løsningsoversikt
I dette innlegget jobber vi med et PDF-dokumentasjonsdatasett—Amazonas grunnfjell brukerhåndboken. Videre viser vi hvordan du forhåndsbehandler et datasett for RAG. Konkret renser vi dataene og lager RAG-artefakter for å svare på spørsmålene om innholdet i datasettet. Tenk på følgende maskinlæringsproblem (ML): brukeren stiller et spørsmål om stor språkmodell (LLM): "Hvordan filtrere og søke etter modeller i Amazon Bedrock?". LLM har ikke sett dokumentasjonen under trenings- eller finjusteringsstadiet, vil derfor ikke kunne svare på spørsmålet og vil sannsynligvis hallusinere. Målet vårt med dette innlegget er å finne et relevant tekststykke fra PDF-en (dvs. RAG) og legge det ved ledeteksten, slik at LLM kan svare på spørsmål som er spesifikke for dette dokumentet.
Nedenfor viser vi hvordan du kan gjøre alle disse hovedforbehandlingstrinnene fra Amazon SageMaker Canvas (drevet av Amazon SageMaker Data Wrangler):
- Trekke ut tekst fra et PDF-dokument (drevet av Textract)
- Fjern sensitiv informasjon (drevet av Comprehend)
- Del tekst i biter.
- Lag embeddings for hver brikke (drevet av Bedrock).
- Last opp innebygging til en vektordatabase (drevet av OpenSearch)
Forutsetninger
For denne gjennomgangen bør du ha følgende:
Merknader: Opprett OpenSearch Service-domener ved å følge instruksjonene her.. For enkelhets skyld, la oss velge alternativet med et hovedbrukernavn og passord for finmasket tilgangskontroll. Når domenet er opprettet, oppretter du en vektorindeks med følgende tilordninger, og vektordimensjon 1536 justeres med Amazon Titan-innbygginger:
walkthrough
Bygg en dataflyt
I denne delen dekker vi hvordan vi kan bygge en dataflyt for å trekke ut tekst og metadata fra PDF-er, rense og behandle dataene, generere innbygginger ved hjelp av Amazon Bedrock og indeksere dataene i Amazon OpenSearch.
Start SageMaker Canvas
For å starte SageMaker Canvas, fullfør følgende trinn:
- På Amazonas SageMaker-konsoll, velg Domener i navigasjonsruten.
- Velg ditt domene.
- Velg på startmenyen Lerret.
Lag en dataflyt
Fullfør følgende trinn for å opprette en dataflyt i SageMaker Canvas:
- Velg på SageMaker Canvas hjemmeside Data Wrangler.
- Velg Opprett på høyre side av siden, gi deretter et dataflytnavn og velg Opprett.
- Dette vil lande på en dataflytside.
- Velg Import datoer, velg tabelldata.
La oss nå importere dataene fra Amazon S3-bøtte:
- Velg Import datoer og velg tabell fra rullegardinlisten.
- Datakilde og velg Amazon S3 fra rullegardinlisten.
- Naviger til metadatafilen med PDF-filplasseringer, og velg filen.
- Nå er metadatafilen lastet inn i dataforberedelsesdataflyten, og vi kan fortsette med å legge til neste trinn for å transformere dataene og indeksen til Amazon OpenSearch. I dette tilfellet har filen følgende metadata, med plasseringen av hver fil i Amazon S3-katalogen.
For å legge til en ny transformasjon, fullfør følgende trinn:
- Velg plusstegnet og velg Legg til Transform.
- Velg Legg til trinn Og velg Egendefinert transformasjon.
- Du kan lage en tilpasset transformasjon ved å bruke Pandas, PySpark, Python brukerdefinerte funksjoner og SQL PySpark. Velge Python (PySpark) for denne brukssaken.
- Skriv inn et navn for trinnet. Bla gjennom og velg fra eksempelkodebitene trekke ut tekst fra pdf. Gjør nødvendige endringer i kodebiten og velg Legg til.
- La oss legge til et trinn for å redigere personlig identifiserbar informasjon (PII) data fra de utpakkede dataene ved å utnytte Amazon Comprehend. Velg Legg til trinn Og velg Egendefinert transformasjon. Og velg Python (PySpark).
Bla gjennom og velg fra eksempelkodebitene maske PII. Gjør nødvendige endringer i kodebiten og velg Legg til.
- Det neste trinnet er å dele tekstinnholdet. Velge Legg til trinn Og velg Egendefinert transformasjon. Og velg Python (PySpark).
Bla gjennom og velg fra eksempelkodebitene Del tekst. Gjør nødvendige endringer i kodebiten og velg Legg til.
- La oss konvertere tekstinnholdet til vektorinnbygginger ved å bruke Amazonas grunnfjell Titan Embeddings modell. Velge Legg til trinn Og velg Egendefinert transformasjon. Og velg Python (PySpark).
Bla gjennom og velg fra eksempelkodebitene Generer tekstinnbygging med Bedrock. Gjør nødvendige endringer i kodebiten og velg Legg til.
- Nå har vi vektorinnbygging tilgjengelig for PDF-filinnholdet. La oss gå videre og indeksere dataene i Amazon OpenSearch. Velge Legg til trinn Og velg Egendefinert transformasjon. Og velg Python (PySpark). Du står fritt til å omskrive følgende kode for å bruke din foretrukne vektordatabase. For enkelhets skyld bruker vi hovedbrukernavn og passord for å få tilgang til OpenSearch API-er, for produksjonsarbeidsbelastninger velg alternativ i henhold til organisasjonens retningslinjer.
Til slutt vil dataflyten som ble opprettet være som følger:
Med denne dataflyten har dataene fra PDF-filen blitt lest og indeksert med vektorinnbygging i Amazon OpenSearch. Nå er det på tide for oss å lage en fil med spørringer for å spørre etter de indekserte dataene og lagre dem på Amazon S3-plasseringen. Vi vil peke søkedataflyten vår til filen og sende ut en fil med tilsvarende resultater i en ny fil på en Amazon S3-plassering.
Forbereder en forespørsel
Etter at vi har opprettet en kunnskapsbase av PDF-filen vår, kan vi teste den ved å søke i kunnskapsbasen etter noen få eksempelspørringer. Vi behandler hvert søk som følger:
- Generer innebygging for søket (drevet av Amazon Bedrock)
- Spørr vektordatabase for nærmeste nabokontekst (drevet av Amazon OpenSearch)
- Kombiner spørringen og konteksten i ledeteksten.
- Spørr LLM med en ledetekst (drevet av Amazon Bedrock)
- Velg på SageMaker Canvas hjemmeside Dataforberedelse.
- Velg Opprett på høyre side av siden, gi deretter et dataflytnavn og velg Opprett.
La oss nå laste inn brukerspørsmålene og deretter lage en ledetekst ved å kombinere spørsmålet og lignende dokumenter. Denne ledeteksten er gitt til LLM for å generere et svar på brukerspørsmålet.
- La oss laste inn en csv-fil med brukerspørsmål. Velge Importer data og velg tabell fra rullegardinlisten.
- Datakilde, og velg Amazon S3 fra rullegardinlisten. Alternativt kan du velge å laste opp en fil med brukerforespørsler.
- La oss legge til en tilpasset transformasjon for å konvertere dataene til vektorinnbygginger, etterfulgt av å søke relaterte innbygginger fra Amazon OpenSearch, før vi sender en melding til Amazon Bedrock med spørringen og konteksten fra kunnskapsbasen. For å generere innbygginger for spørringen kan du bruke den samme eksempelkodebiten Generer tekstinnbygging med Bedrock nevnt i trinn #7 ovenfor.
La oss påkalle Amazon OpenSearch API for å søke i relevante dokumenter etter de genererte vektorinnbyggingene. Legg til en tilpasset transformasjon med Python (PySpark).
La oss legge til en tilpasset transformasjon for å kalle Amazon Bedrock API for spørringssvar, og sende dokumentene fra Amazon OpenSearch kunnskapsbase. Bla gjennom og velg fra eksempelkodebitene Spørr Berggrunn med kontekst. Gjør nødvendige endringer i kodebiten og velg Legg til.
Oppsummert er RAG-basert spørsmålssvarsdataflyt som følger:
ML-utøvere bruker mye tid på å lage funksjonsteknologikode, bruke den på de første datasettene, trene modeller på de konstruerte datasettene og evaluere modellens nøyaktighet. Gitt den eksperimentelle karakteren til dette arbeidet, fører selv det minste prosjektet til flere iterasjoner. Den samme funksjonsteknologikoden kjøres ofte igjen og igjen, og kaster bort tid og dataressurser på å gjenta de samme operasjonene. I store organisasjoner kan dette føre til et enda større produktivitetstap fordi forskjellige team ofte kjører identiske jobber eller til og med skriver duplikatkode for funksjonsteknikk fordi de ikke har kunnskap om tidligere arbeid. For å unngå reprosessering av funksjoner, eksporterer vi dataflyten vår til en Amazon SageMaker rørledning. La oss velge +-knappen til høyre for spørringen. Velg eksporter dataflyt og velg Kjør SageMaker Pipeline (via Jupyter notatbok).
Rydder opp
For å unngå fremtidige kostnader, slett eller slå av ressursene du opprettet mens du fulgte dette innlegget. Referere til Logger ut av Amazon SageMaker Canvas for mer informasjon.
konklusjonen
I dette innlegget viste vi deg hvordan Amazon SageMaker Canvas sine ende-til-ende-evner ved å påta seg rollen som en dataprofesjonell som forbereder data for en LLM. Den interaktive dataforberedelsen muliggjorde rask rengjøring, transformering og analyse av dataene for å utvikle informative funksjoner. Ved å fjerne kodingskompleksiteter tillot SageMaker Canvas rask iterasjon for å lage et treningsdatasett av høy kvalitet. Denne akselererte arbeidsflyten førte direkte til bygging, opplæring og implementering av en effektiv maskinlæringsmodell for forretningseffekt. Med sin omfattende dataforberedelse og enhetlige erfaring fra data til innsikt, gir SageMaker Canvas brukere mulighet til å forbedre ML-resultatene sine.
Vi oppfordrer deg til å lære mer ved å utforske Amazon SageMaker Data Wrangler, Amazon SageMaker Canvas, Amazon Titan modeller, Amazonas grunnfjellog Amazon OpenSearch-tjenesten å bygge en løsning ved å bruke eksempelimplementeringen gitt i dette innlegget og et datasett som er relevant for virksomheten din. Hvis du har spørsmål eller forslag, vennligst legg igjen en kommentar.
Om forfatterne
Ajjay Govindaram er Senior Solutions Architect hos AWS. Han jobber med strategiske kunder som bruker AI/ML for å løse komplekse forretningsproblemer. Hans erfaring ligger i å gi teknisk veiledning samt designassistanse for beskjedne til storskala AI/ML-applikasjoner. Kunnskapen hans spenner fra applikasjonsarkitektur til big data, analyser og maskinlæring. Han liker å lytte til musikk mens han hviler, opplever utendørs og tilbringe tid med sine kjære.
Nikita Ivkin er en Senior Applied Scientist ved Amazon SageMaker Data Wrangler med interesser i maskinlæring og datarensealgoritmer.
- SEO-drevet innhold og PR-distribusjon. Bli forsterket i dag.
- PlatoData.Network Vertical Generative Ai. Styrk deg selv. Tilgang her.
- PlatoAiStream. Web3 Intelligence. Kunnskap forsterket. Tilgang her.
- PlatoESG. Karbon, CleanTech, Energi, Miljø, Solenergi, Avfallshåndtering. Tilgang her.
- PlatoHelse. Bioteknologisk og klinisk etterretning. Tilgang her.
- kilde: https://aws.amazon.com/blogs/machine-learning/simplify-data-prep-for-gen-ai-with-amazon-sagemaker-data-wrangler/
- : har
- :er
- :ikke
- 100
- 14
- 20
- 25
- 28
- 50
- 7
- 8
- 804
- a
- I stand
- Om oss
- ovenfor
- akselerere
- akselerert
- adgang
- Ifølge
- kontoer
- nøyaktighet
- legge til
- Ytterligere
- Adopsjon
- fremskritt
- Fordel
- fordeler
- Etter
- en gang til
- aggregat
- fremover
- AI
- AI / ML
- algoritmer
- Justerer
- Alle
- tillatt
- også
- Amazon
- Amazon SageMaker
- Amazon SageMaker Data Wrangler
- Amazon Web Services
- beløp
- an
- analyser
- analytics
- analyserer
- og
- besvare
- noen
- api
- Søknad
- anvendt
- påføring
- arkitektur
- ER
- kunstig
- kunstig intelligens
- AS
- Assistanse
- At
- feste
- lyd
- augmented
- tilgjengelig
- unngå
- AWS
- basen
- basert
- BE
- fordi
- blir
- vært
- før du
- være
- Bedre
- forutinntatt
- Stor
- Store data
- bygge
- Bygning
- innebygd
- virksomhet
- bedrifter
- knapp
- by
- ring
- CAN
- lerret
- evner
- saken
- Årsak
- Endringer
- avgifter
- Velg
- ren
- Rengjøring
- kode
- Koding
- kombinere
- kommentere
- Selskaper
- sammenlignet
- konkurranse
- fullføre
- komplekse
- kompleksiteten
- fatte
- omfattende
- Beregn
- Vurder
- Konsoll
- inneholde
- inneholder
- innhold
- innhold
- kontekst
- sammenhenger
- fortsetter
- kontroll
- konvertere
- Tilsvarende
- kunne
- dekke
- skape
- opprettet
- kritisk
- skikk
- kunde
- Kundeservice
- Kunder
- dato
- Dataklargjøring
- Database
- datasett
- deloitte
- demonstrert
- utplasserings
- distribusjoner
- utforming
- detaljer
- utvikle
- forskjellig
- vanskelig
- Dimensjon
- retning
- direkte
- oppdage
- do
- dokument
- dokumentasjon
- dokumenter
- domene
- domener
- ned
- under
- e
- hver enkelt
- lett
- effektivt
- effektiv
- effektivt
- e-post
- embedding
- bemyndiger
- aktivert
- muliggjør
- oppmuntre
- ende til ende
- ingeniør
- konstruert
- Ingeniørarbeid
- evaluere
- Selv
- eksempel
- finnes
- erfaring
- opplever
- eksperimentell
- utforske
- Utforske
- eksportere
- trekke ut
- Trekk
- Egenskaper
- Noen få
- Felt
- filet
- filtrere
- slutt~~POS=TRUNC
- Finn
- flyten
- fulgt
- etter
- følger
- Til
- Forbes
- Fundament
- Foundations
- Gratis
- fra
- fullt
- funksjoner
- videre
- framtid
- Gevinst
- generere
- generert
- genererer
- generasjonen
- generative
- Generativ AI
- få
- Gi
- gitt
- Global
- Go
- mål
- god
- større
- Ha
- he
- overskrifter
- høykvalitets
- hans
- holder
- Hjemprodukt
- Hvordan
- Hvordan
- Men
- HTML
- HTTPS
- i
- identiske
- if
- bilder
- Påvirkning
- gjennomføring
- importere
- viktig
- imponerende
- forbedre
- in
- inkluderer
- indeks
- indeksert
- informasjon
- informative
- innledende
- innsikt
- instruksjoner
- integrering
- Intelligens
- interaktiv
- interesser
- Interface
- Internet
- inn
- involvere
- IT
- køyring
- gjentakelser
- DET ER
- Jobb
- jpg
- JSON
- kunnskap
- Tomt
- Språk
- stor
- storskala
- lansere
- Fører
- LÆRE
- læring
- Permisjon
- Led
- utnytte
- ligger
- i likhet med
- Liste
- Lytting
- LLM
- laste
- plassering
- steder
- tap
- Lot
- elsket
- Lav
- maskin
- maskinlæring
- Hoved
- gjøre
- GJØR AT
- maske
- massive
- Master
- Kan..
- mekanismer
- Media
- Meny
- Meta
- metadata
- ML
- modell
- modeller
- beskjeden
- mer
- mest
- flere
- musikk
- navn
- Naturlig
- Natural Language Processing
- Natur
- Navigasjon
- nødvendig
- Trenger
- Ny
- neste
- Nei.
- bærbare
- nå
- of
- ofte
- on
- gang
- seg
- bare
- Drift
- Alternativ
- or
- organisasjon
- organisasjoner
- Annen
- vår
- ut
- utfall
- utendørs
- produksjon
- enn
- side
- pandaer
- brød
- Passerer
- Passord
- ytelse
- personlig
- plukke
- brikke
- stykker
- rørledning
- plato
- Platon Data Intelligence
- PlatonData
- vær så snill
- i tillegg til
- Point
- Politikk
- Post
- potensiell
- powered
- trekkes
- forberedelse
- Forbered
- forbereder
- Før
- sannsynligvis
- Problem
- problemer
- fortsette
- prosess
- prosessering
- Produksjon
- produktivitet
- profesjonell
- prosjekt
- egenskaper
- forutsatt
- gir
- gi
- Python
- spørsmål
- spørsmål
- spørsmål
- raskt
- serier
- rask
- rangeringer
- å nå
- Lese
- virkelige verden
- mottatt
- referere
- i slekt
- relevant
- fjerne
- rapportert
- forespørsler
- krever
- Krever
- Ressurser
- svar
- svar
- hvile
- Resultater
- retur
- Anmeldelser
- ikke sant
- Rolle
- Kjør
- sagemaker
- samme
- Spar
- Forsker
- Søk
- søker
- Seksjon
- sett
- velg
- sending
- senior
- sensitive
- tjeneste
- Tjenester
- innstillinger
- bør
- Vis
- viste
- stengt
- Slå
- side
- undertegne
- signifikant
- lignende
- enkelhet
- forenkle
- Størrelse
- tekstutdrag
- So
- selskap
- sosiale medier
- løsning
- Solutions
- LØSE
- noen
- kilde
- Kilder
- spesifikk
- spesielt
- bruke
- utgifter
- Scene
- stadier
- Trinn
- Steps
- Still
- Strategisk
- strukturert
- SAMMENDRAG
- Støtter
- Survey /Inspeksjonsfartøy
- Ta
- lag
- Teknisk
- teknikker
- test
- tekst
- Det
- De
- Fremtiden
- deres
- Dem
- deretter
- Der.
- Disse
- de
- denne
- Dermed
- tid
- titan
- til
- i dag
- verktøy
- Kurs
- Transform
- Transformation
- transformasjoner
- transformere
- sant
- trunkering
- typen
- typer
- enhetlig
- us
- bruke
- brukt
- Bruker
- Brukere
- ved hjelp av
- Verdifull
- av
- video
- visuell
- walkthrough
- we
- web
- webtjenester
- VI VIL
- hvilken
- mens
- HVEM
- vil
- med
- Arbeid
- arbeidsflyt
- virker
- ville
- skrive
- Du
- Din
- zephyrnet