I dag er vi glade for å kunngjøre at Code Llama-fundamentmodeller, utviklet av Meta, er tilgjengelige for kunder gjennom Amazon SageMaker JumpStart å distribuere med ett klikk for å kjøre inferens. Code Llama er en toppmoderne storspråksmodell (LLM) som er i stand til å generere kode og naturlig språk om kode fra både kode- og naturspråklige spørsmål. Du kan prøve denne modellen med SageMaker JumpStart, en maskinlæringshub (ML) som gir tilgang til algoritmer, modeller og ML-løsninger slik at du raskt kan komme i gang med ML. I dette innlegget går vi gjennom hvordan du oppdager og distribuerer Code Llama-modellen via SageMaker JumpStart.
Kode Lama
Code Llama er en modell utgitt av Meta som er bygget på toppen av Llama 2. Denne toppmoderne modellen er designet for å forbedre produktiviteten for programmeringsoppgaver for utviklere ved å hjelpe dem med å lage høykvalitets, godt dokumentert kode. Modellene utmerker seg i Python, C++, Java, PHP, C#, TypeScript og Bash, og har potensial til å spare utviklernes tid og gjøre programvarearbeidsflyten mer effektiv.
Den kommer i tre varianter, konstruert for å dekke et bredt spekter av bruksområder: grunnmodellen (Code Llama), en Python spesialisert modell (Code Llama Python), og en instruksjonsfølgende modell for å forstå instruksjoner for naturlig språk (Code Llama Instruct). Alle Code Llama-varianter kommer i fire størrelser: 7B, 13B, 34B og 70B parametere. 7B og 13B base og instruksvarianter støtter utfylling basert på omkringliggende innhold, noe som gjør dem ideelle for kodeassistentapplikasjoner. Modellene ble designet med Llama 2 som base og deretter trent på 500 milliarder tokens med kodedata, med Python-spesialiserte versjonen trent på inkrementelle 100 milliarder tokens. Code Llama-modellene gir stabile generasjoner med opptil 100,000 16,000 tokens av kontekst. Alle modellene er trent på sekvenser på 100,000 XNUMX tokens og viser forbedringer på innganger med opptil XNUMX XNUMX tokens.
Modellen er gjort tilgjengelig under samme samfunnslisens som Llama 2.
Fundamentmodeller i SageMaker
SageMaker JumpStart gir tilgang til en rekke modeller fra populære modellhuber, inkludert Hugging Face, PyTorch Hub og TensorFlow Hub, som du kan bruke i ML-utviklingsarbeidsflyten i SageMaker. Nylige fremskritt innen ML har gitt opphav til en ny klasse modeller kjent som grunnmodeller, som vanligvis er trent på milliarder av parametere og kan tilpasses en bred kategori av brukstilfeller, for eksempel tekstoppsummering, digital kunstgenerering og språkoversettelse. Fordi disse modellene er dyre å trene, ønsker kundene å bruke eksisterende forhåndstrente fundamentmodeller og finjustere dem etter behov, i stedet for å trene disse modellene selv. SageMaker gir en kurert liste over modeller som du kan velge mellom på SageMaker-konsollen.
Du kan finne fundamentmodeller fra forskjellige modellleverandører i SageMaker JumpStart, slik at du raskt kan komme i gang med fundamentmodeller. Du kan finne fundamentmodeller basert på ulike oppgaver eller modellleverandører, og enkelt gjennomgå modellens egenskaper og bruksvilkår. Du kan også prøve ut disse modellene ved å bruke en test UI-widget. Når du vil bruke en grunnmodell i stor skala, kan du gjøre det uten å forlate SageMaker ved å bruke forhåndsbygde notatbøker fra modellleverandører. Fordi modellene er vert og distribuert på AWS, kan du være trygg på at dataene dine, enten de brukes til å evaluere eller bruke modellen i stor skala, aldri deles med tredjeparter.
Oppdag Code Llama-modellen i SageMaker JumpStart
For å distribuere Code Llama 70B-modellen, fullfør følgende trinn i Amazon SageMaker Studio:
- Velg på SageMaker Studio-hjemmesiden tjuvstart i navigasjonsruten.
- Søk etter Code Llama-modeller og velg Code Llama 70B-modellen fra listen over modeller som vises.
Du finner mer informasjon om modellen på modellkortet Code Llama 70B.
Følgende skjermbilde viser endepunktinnstillingene. Du kan endre alternativene eller bruke standard.
- Godta sluttbrukerlisensavtalen (EULA) og velg Distribuer.
Dette vil starte endepunktdistribusjonsprosessen, som vist i følgende skjermbilde.
Distribuer modellen med SageMaker Python SDK
Alternativt kan du distribuere gjennom eksempelnotisboken ved å velge Åpne Notebook på modelldetaljsiden til Classic Studio. Eksempelnotisboken gir ende-til-ende veiledning om hvordan du kan distribuere modellen for slutninger og rydde opp i ressurser.
For å distribuere ved hjelp av bærbar PC, starter vi med å velge en passende modell, spesifisert av model_id
. Du kan distribuere hvilken som helst av de valgte modellene på SageMaker med følgende kode:
Dette distribuerer modellen på SageMaker med standardkonfigurasjoner, inkludert standard forekomsttype og standard VPC-konfigurasjoner. Du kan endre disse konfigurasjonene ved å spesifisere ikke-standardverdier i JumpStartModel. Merk at som standard, accept_eula
er satt til False
. Du må stille inn accept_eula=True
for å distribuere endepunktet på en vellykket måte. Ved å gjøre det godtar du brukerlisensavtalen og akseptabel brukspolicy som nevnt tidligere. Du kan også nedlasting lisensavtalen.
Påkalle et SageMaker-endepunkt
Etter at endepunktet er distribuert, kan du utføre slutninger ved å bruke Boto3 eller SageMaker Python SDK. I den følgende koden bruker vi SageMaker Python SDK for å kalle modellen for slutning og skrive ut svaret:
Funksjonen print_response
tar en nyttelast som består av nyttelasten og modellresponsen og skriver ut resultatet. Code Llama støtter mange parametere mens du utfører inferens:
- maks lengde – Modellen genererer tekst til utdatalengden (som inkluderer inndatakontekstlengden) når
max_length
. Hvis det er spesifisert, må det være et positivt heltall. - max_new_tokens – Modellen genererer tekst til utdatalengden (ekskludert inndatakontekstlengden) når
max_new_tokens
. Hvis det er spesifisert, må det være et positivt heltall. - antall_bjelker – Dette spesifiserer antall stråler som brukes i det grådige søket. Hvis spesifisert, må det være et heltall større enn eller lik
num_return_sequences
. - no_repeat_ngram_size – Modellen sikrer at en sekvens av ord av
no_repeat_ngram_size
gjentas ikke i utgangssekvensen. Hvis det er spesifisert, må det være et positivt heltall større enn 1. - temperatur – Dette kontrollerer tilfeldigheten i utgangen. Høyere
temperature
resulterer i en utdatasekvens med ord med lav sannsynlighet, og laveretemperature
resulterer i en utdatasekvens med høysannsynlighetsord. Hvistemperature
er 0, resulterer det i grådig dekoding. Hvis spesifisert, må det være en positiv flyte. - tidlig_stopping - Hvis
True
, tekstgenerering er fullført når alle strålehypoteser når slutten av setningstoken. Hvis det er spesifisert, må det være boolsk. - do_sample - Hvis
True
, modellen prøver neste ord i henhold til sannsynligheten. Hvis det er spesifisert, må det være boolsk. - topp_k – I hvert trinn av tekstgenerering prøver modellen kun fra
top_k
mest sannsynlige ord. Hvis det er spesifisert, må det være et positivt heltall. - topp_s – I hvert trinn av tekstgenerering prøver modellen fra det minste mulige settet med ord med kumulativ sannsynlighet
top_p
. Hvis det er spesifisert, må det være en flyte mellom 0 og 1. - return_full_text - Hvis
True
, vil inndatateksten være en del av den utdatagenererte teksten. Hvis det er spesifisert, må det være boolsk. Standardverdien for den erFalse
. - stoppe – Hvis det er spesifisert, må det være en liste over strenger. Tekstgenerering stopper hvis en av de angitte strengene genereres.
Du kan spesifisere et hvilket som helst delsett av disse parameterne mens du påkaller et endepunkt. Deretter viser vi et eksempel på hvordan man kan påkalle et endepunkt med disse argumentene.
Kodeavslutning
Følgende eksempler viser hvordan du utfører kodefullføring der forventet endepunktsrespons er den naturlige fortsettelsen av ledeteksten.
Vi kjører først følgende kode:
Vi får følgende utgang:
For vårt neste eksempel kjører vi følgende kode:
Vi får følgende utgang:
Kodegenerering
Følgende eksempler viser Python-kodegenerering ved bruk av Code Llama.
Vi kjører først følgende kode:
Vi får følgende utgang:
For vårt neste eksempel kjører vi følgende kode:
Vi får følgende utgang:
Dette er noen av eksemplene på koderelaterte oppgaver som bruker Code Llama 70B. Du kan bruke modellen til å generere enda mer komplisert kode. Vi oppfordrer deg til å prøve det ved å bruke dine egne koderelaterte brukstilfeller og eksempler!
Rydd opp
Etter at du har testet endepunktene, sørg for at du sletter SageMaker-slutningsendepunktene og modellen for å unngå kostnader. Bruk følgende kode:
konklusjonen
I dette innlegget introduserte vi Code Llama 70B på SageMaker JumpStart. Code Llama 70B er en toppmoderne modell for å generere kode fra naturlige språkoppfordringer så vel som kode. Du kan distribuere modellen med noen få enkle trinn i SageMaker JumpStart og deretter bruke den til å utføre koderelaterte oppgaver som kodegenerering og kodeutfylling. Som et neste trinn kan du prøve å bruke modellen med dine egne koderelaterte brukstilfeller og data.
Om forfatterne
Dr. Kyle Ulrich er en Applied Scientist med Amazon SageMaker JumpStart-teamet. Hans forskningsinteresser inkluderer skalerbare maskinlæringsalgoritmer, datasyn, tidsserier, Bayesianske ikke-parametriske og Gaussiske prosesser. Hans doktorgrad er fra Duke University og han har publisert artikler i NeurIPS, Cell og Neuron.
Dr. Farooq Sabir er senior spesialistløsningsarkitekt for kunstig intelligens og maskinlæring ved AWS. Han har PhD- og MS-grader i elektroteknikk fra University of Texas i Austin og en MS i informatikk fra Georgia Institute of Technology. Han har over 15 års arbeidserfaring og liker også å undervise og veilede studenter. Hos AWS hjelper han kunder med å formulere og løse forretningsproblemer innen datavitenskap, maskinlæring, datasyn, kunstig intelligens, numerisk optimalisering og relaterte domener. Basert i Dallas, Texas, elsker han og familien å reise og dra på lange bilturer.
juni vant er produktsjef hos SageMaker JumpStart. Han fokuserer på å gjøre grunnmodeller lett synlige og brukbare for å hjelpe kunder med å bygge generative AI-applikasjoner. Hans erfaring hos Amazon inkluderer også mobil shoppingapplikasjon og siste mil levering.
- 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/code-llama-70b-is-now-available-in-amazon-sagemaker-jumpstart/
- : har
- :er
- :ikke
- :hvor
- $OPP
- 000
- 1
- 10
- 100
- 11
- 12
- 13
- 14
- 15 år
- 15%
- 16
- 22
- 25
- 500
- 7
- 80
- 9
- a
- Om oss
- Aksepterer
- akseptabelt
- godkjennelse
- adgang
- fremskritt
- Avtale
- AI
- algoritmer
- Alle
- også
- Amazon
- Amazon SageMaker
- Amazon SageMaker JumpStart
- Amazon Web Services
- an
- og
- Kunngjøre
- noen
- Søknad
- søknader
- anvendt
- hensiktsmessig
- ER
- argumenter
- Kunst
- kunstig
- kunstig intelligens
- Kunstig intelligens og maskinlæring
- AS
- Assistent
- trygg
- At
- austin
- tilgjengelig
- unngå
- AWS
- basen
- basert
- bash
- Bayesiansk
- BE
- Beam
- fordi
- mellom
- Milliarder
- Milliarder tokens
- milliarder
- både
- boble
- bygge
- bygget
- virksomhet
- by
- C + +
- ring
- CAN
- stand
- kort
- bære
- saker
- Kategori
- celle
- endring
- egenskaper
- avgifter
- Velg
- velge
- klasse
- Classic
- ren
- klikk
- kode
- Høyskole
- Kom
- kommer
- fullføre
- ferdigstillelse
- komplisert
- datamaskin
- informatikk
- Datamaskin syn
- Består
- Konsoll
- innhold
- kontekst
- videreføring
- kontroller
- dekke
- skape
- kuratert
- Kunder
- Dallas
- dato
- datavitenskap
- Dekoding
- Misligholde
- levering
- demonstrere
- utplassere
- utplassert
- distribusjon
- Distribueres
- designet
- detalj
- utviklet
- utviklere
- Utvikling
- forskjellig
- digitalt
- digital kunst
- oppdage
- do
- gjør
- domener
- Duke
- duke universitetet
- hver enkelt
- Tidligere
- lett
- effektiv
- muliggjør
- oppmuntre
- slutt
- ende til ende
- Endpoint
- konstruert
- Ingeniørarbeid
- sikrer
- lik
- feil
- evaluere
- Selv
- eksempel
- eksempler
- Excel
- Unntatt
- opphisset
- Eksklusiv
- eksisterende
- forventet
- dyrt
- erfaring
- eksponentiell
- Face
- familie
- Noen få
- Finn
- Først
- Flyte
- fokuserer
- etter
- Til
- Fundament
- grunn
- fire
- fra
- funksjon
- generere
- generert
- genererer
- genererer
- generasjonen
- generasjoner
- generative
- Generativ AI
- Georgia
- få
- gitt
- Go
- større
- Greedy
- veiledning
- Ha
- he
- hjelpe
- hjelpe
- hjelper
- høykvalitets
- høyere
- hans
- holder
- Hjemprodukt
- vert
- vert
- Hvordan
- Hvordan
- HTTPS
- Hub
- huber
- i
- ideell
- if
- importere
- forbedre
- forbedringer
- in
- inkludere
- inkluderer
- Inkludert
- inkrementell
- informasjon
- inngang
- innganger
- f.eks
- Institute
- instruksjoner
- Intelligens
- interesser
- introdusert
- IT
- Java
- jpg
- kjent
- Kyle
- Språk
- stor
- Siste
- læring
- forlater
- Lengde
- Tillatelse
- sannsynligheten
- Sannsynlig
- liker
- Liste
- Llama
- LLM
- Lang
- elsker
- lavere
- maskin
- maskinlæring
- laget
- gjøre
- Making
- leder
- mange
- nevnt
- mentor
- Meta
- mile
- ML
- Mobil
- modell
- modeller
- mer
- mer effektivt
- mest
- MS
- må
- Naturlig
- Navigasjon
- Trenger
- nødvendig
- aldri
- Ny
- neste
- note
- bærbare
- nå
- Antall
- of
- on
- ONE
- seg
- bare
- optimalisering
- alternativer
- or
- vår
- ut
- produksjon
- enn
- egen
- side
- brød
- papirer
- parametere
- del
- parter
- for
- Utfør
- utfører
- phd
- PHP
- plato
- Platon Data Intelligence
- PlatonData
- politikk
- Populær
- positiv
- mulig
- Post
- potensiell
- Predictor
- Skrive ut
- utskrifter
- problemer
- prosess
- Prosesser
- Produkt
- Produktsjef
- produktivitet
- Programmering
- ledetekster
- gi
- tilbydere
- gir
- publisert
- Python
- pytorch
- raskt
- tilfeldig
- område
- heller
- å nå
- Når
- nylig
- i slekt
- utgitt
- gjentatt
- forskning
- Ressurser
- svar
- REST
- Resultater
- retur
- reversere
- anmeldelse
- Rise
- vei
- Kjør
- rennende
- sagemaker
- SageMaker Inference
- samme
- Spar
- skalerbar
- Skala
- Vitenskap
- Forsker
- SDK
- Søk
- valgt
- velge
- senior
- dømme
- Sequence
- Serien
- Tjenester
- sett
- innstillinger
- delt
- Shopping
- Vis
- vist
- Viser
- Enkelt
- størrelser
- So
- Software
- Solutions
- LØSE
- noen
- spesialist
- spesialisert
- spesifisert
- spesifiserer
- stabil
- Begynn
- startet
- state-of-the-art
- Trinn
- Steps
- Stopper
- String
- Studenter
- studio
- vellykket
- slik
- støtte
- Støtter
- sikker
- rundt
- tar
- oppgaver
- lag
- Teknologi
- tensorflow
- vilkår
- test
- testet
- texas
- tekst
- enn
- Det
- De
- deres
- Dem
- seg
- deretter
- Disse
- Tredje
- tredjeparter
- denne
- tre
- Gjennom
- tid
- Tidsserier
- til
- token
- tokens
- topp
- Tog
- trent
- Oversettelse
- reiser
- traversere
- sant
- prøve
- typen
- Loggfila
- typisk
- ui
- etter
- forståelse
- universitet
- til
- bruk
- bruk
- bruke
- brukt
- Bruker
- ved hjelp av
- verdi
- Verdier
- variasjon
- versjon
- av
- syn
- gå
- ønsker
- we
- web
- webtjenester
- VI VIL
- var
- når
- om
- hvilken
- mens
- bred
- widget
- vil
- med
- innenfor
- uten
- ord
- ord
- Arbeid
- arbeidsflyt
- arbeidsflyt
- skrive
- år
- Du
- Din
- zephyrnet