Vi er glade for at kunne meddele det Amazon SageMaker JumpStart kan nu streame store sprogmodel (LLM) inferenssvar. Token-streaming giver dig mulighed for at se modellens svaroutput, mens det genereres i stedet for at vente på, at LLM'er afslutter svargenereringen, før det gøres tilgængeligt for dig at bruge eller vise. Streaming-kapaciteten i SageMaker JumpStart kan hjælpe dig med at bygge applikationer med en bedre brugeroplevelse ved at skabe en opfattelse af lav latenstid for slutbrugeren.
I dette indlæg gennemgår vi, hvordan du implementerer og streamer svaret fra en Falcon 7B Instruct model slutpunkt.
På tidspunktet for skrivningen understøtter følgende LLM'er, der er tilgængelige i SageMaker JumpStart, streaming:
- Mistral AI 7B, Mistral AI 7B Instruktion
- Falcon 180B, Falcon 180B Chat
- Falcon 40B, Falcon 40B Instruct
- Falcon 7B, Falcon 7B Instruct
- Rinna japansk GPT NeoX 4B Instruktion PPO
- Rinna japansk GPT NeoX 3.6B Instruktion PPO
For at se efter opdateringer på listen over modeller, der understøtter streaming i SageMaker JumpStart, søg efter "huggingface-llm" på Indbyggede algoritmer med fortrænet modelbord.
Bemærk, at du kan bruge streaming funktion of Amazon SageMaker hosting ud af æsken for enhver model implementeret ved hjælp af SageMaker TGI Deep Learning Container (DLC) som beskrevet i Annoncerer lanceringen af nye Hugging Face LLM Inference-beholdere på Amazon SageMaker.
Fundamentmodeller i SageMaker
SageMaker JumpStart giver adgang til en række modeller fra populære modelhubs, herunder Hugging Face, PyTorch Hub og TensorFlow Hub, som du kan bruge i din ML-udviklingsworkflow i SageMaker. De seneste fremskridt inden for ML har givet anledning til en ny klasse af modeller kendt som fundament modeller, som typisk trænes på milliarder af parametre og kan tilpasses til en bred kategori af use cases, såsom tekstresumé, generering af digital kunst og sprogoversættelse. Fordi disse modeller er dyre at træne, ønsker kunder at bruge eksisterende præ-trænede foundation-modeller og finjustere dem efter behov, i stedet for at træne disse modeller selv. SageMaker giver en udvalgt liste over modeller, som du kan vælge imellem på SageMaker-konsollen.
Du kan nu finde fundamentmodeller fra forskellige modeludbydere i SageMaker JumpStart, så du hurtigt kan komme i gang med fundamentmodeller. SageMaker JumpStart tilbyder fundamentmodeller baseret på forskellige opgaver eller modeludbydere, og du kan nemt gennemgå modellens karakteristika og brugsbetingelser. Du kan også prøve disse modeller ved hjælp af en test-UI-widget. Når du vil bruge en fundamentmodel i stor skala, kan du gøre det uden at forlade SageMaker ved at bruge forudbyggede notesbøger fra modeludbydere. Fordi modellerne hostes og implementeres på AWS, stoler du på, at dine data, uanset om de bruges til at evaluere eller bruge modellen i stor skala, ikke vil blive delt med tredjeparter.
Token streaming
Token-streaming gør det muligt at returnere inferenssvaret, efterhånden som det genereres af modellen. På denne måde kan du se svaret genereret trinvist i stedet for at vente på, at modellen er færdig, før du giver det komplette svar. Streaming kan hjælpe med at muliggøre en bedre brugeroplevelse, fordi det reducerer latenstidsopfattelsen for slutbrugeren. Du kan begynde at se outputtet, som det genereres, og kan derfor stoppe genereringen tidligt, hvis outputtet ikke ser nyttigt ud til dine formål. Streaming kan gøre en stor forskel, især for langvarige forespørgsler, fordi du kan begynde at se output, efterhånden som det genereres, hvilket kan skabe en opfattelse af lavere latency, selvom ende-til-ende-forsinkelsen forbliver den samme.
Når dette skrives, kan du bruge streaming i SageMaker JumpStart til modeller, der bruger Hugging Face LLM Tekstgenereringsinferens DLC.
Svar uden dampning | Svar med Streaming |
Løsningsoversigt
Til dette indlæg bruger vi Falcon 7B Instruct-modellen til at fremvise SageMaker JumpStart-streamingkapaciteten.
Du kan bruge følgende kode til at finde andre modeller i SageMaker JumpStart, der understøtter streaming:
Vi får følgende model-id'er, der understøtter streaming:
Forudsætninger
Før du kører den bærbare computer, er der nogle indledende trin, der kræves til opsætning. Kør følgende kommandoer:
Implementer modellen
Som et første trin skal du bruge SageMaker JumpStart til at implementere en Falcon 7B Instruct-model. For fuldstændige instruktioner, se Falcon 180B foundation model fra TII er nu tilgængelig via Amazon SageMaker JumpStart. Brug følgende kode:
Forespørg slutpunktet og stream-svaret
Konstruer derefter en nyttelast til at påkalde dit implementerede slutpunkt med. Det er vigtigt, at nyttelasten indeholder nøgle/værdi-parret "stream": True
. Dette indikerer til tekstgenereringsinferensserveren at generere et streamingsvar.
Før du forespørger på slutpunktet, skal du oprette en iterator, der kan parse bytes-strømsvaret fra slutpunktet. Data for hvert token leveres som en separat linje i svaret, så denne iterator returnerer et token hver gang en ny linje identificeres i streamingbufferen. Denne iterator er minimalt designet, og du vil måske justere dens adfærd til dit brugssag; for eksempel, mens denne iterator returnerer token-strenge, indeholder linjedataene andre oplysninger, såsom token-log-sandsynligheder, der kunne være af interesse.
Nu kan du bruge Boto3 invoke_endpoint_with_response_stream
API på det endepunkt, du oprettede, og aktivere streaming ved at iterere over en TokenIterator
eksempel:
Angivelse af en tom end
parameter til print
funktionen vil aktivere en visuel stream uden nye linjetegn indsat. Dette giver følgende output:
Du kan bruge denne kode i en notesbog eller andre applikationer som Streamlit eller Gradio for at se streamingen i aktion og den oplevelse, den giver dine kunder.
Ryd op
Husk endelig at rydde op i din implementerede model og slutpunkt for at undgå at pådrage dig yderligere omkostninger:
Konklusion
I dette indlæg viste vi dig, hvordan du bruger den nyligt lancerede funktion til streaming i SageMaker JumpStart. Vi håber, at du vil bruge token-streaming-kapaciteten til at bygge interaktive applikationer, der kræver lav latenstid for en bedre brugeroplevelse.
Om forfatterne
Rachna Chadha er Principal Solution Architect AI/ML i Strategic Accounts hos AWS. Rachna er en optimist, der mener, at etisk og ansvarlig brug af kunstig intelligens kan forbedre samfundet i fremtiden og bringe økonomisk og social velstand. I sin fritid kan Rachna godt lide at bruge tid med sin familie, vandreture og lytte til musik.
Dr. Kyle Ulrich er en anvendt videnskabsmand med Amazon SageMaker indbyggede algoritmer hold. Hans forskningsinteresser omfatter skalerbare maskinlæringsalgoritmer, computervision, tidsserier, Bayesianske ikke-parametriske og Gaussiske processer. Hans ph.d. er fra Duke University, og han har udgivet artikler i NeurIPS, Cell og Neuron.
Dr. Ashish Khetan er en Senior Applied Scientist med Amazon SageMaker indbyggede algoritmer og hjælper med at udvikle machine learning algoritmer. Han fik sin ph.d. fra University of Illinois Urbana-Champaign. Han er en aktiv forsker i maskinlæring og statistisk inferens og har publiceret mange artikler i NeurIPS, ICML, ICLR, JMLR, ACL og EMNLP konferencer.
- SEO Powered Content & PR Distribution. Bliv forstærket i dag.
- PlatoData.Network Vertical Generative Ai. Styrk dig selv. Adgang her.
- PlatoAiStream. Web3 intelligens. Viden forstærket. Adgang her.
- PlatoESG. Kulstof, CleanTech, Energi, Miljø, Solenergi, Affaldshåndtering. Adgang her.
- PlatoHealth. Bioteknologiske og kliniske forsøgs intelligens. Adgang her.
- Kilde: https://aws.amazon.com/blogs/machine-learning/stream-large-language-model-responses-in-amazon-sagemaker-jumpstart/
- :har
- :er
- $OP
- 1
- 10
- 100
- 12
- 13
- 14
- 19
- 7
- 8
- a
- Om
- adgang
- Konti
- Handling
- aktiv
- tilføje
- Yderligere
- fremskridt
- rådgivning
- AI
- AI / ML
- algoritmer
- tillader
- også
- Amazon
- Amazon SageMaker
- Amazon SageMaker JumpStart
- Amazon Web Services
- an
- ,
- Annoncere
- enhver
- api
- applikationer
- anvendt
- ER
- Kunst
- AS
- At
- til rådighed
- undgå
- AWS
- baseret
- Bayesiansk
- BE
- fordi
- før
- adfærd
- være
- mener
- Bedre
- Big
- milliarder
- krop
- Boks
- bringe
- buffer
- bygge
- indbygget
- men
- by
- CAN
- kapacitet
- tilfælde
- tilfælde
- Boligtype
- karakteristika
- tegn
- kontrollere
- Vælg
- klasse
- ren
- kunde
- kode
- fuldføre
- komplekse
- computer
- Computer Vision
- konferencer
- Konsol
- konstruere
- indeholder
- Container
- Beholdere
- indeholder
- indhold
- Omkostninger
- kunne
- skabe
- oprettet
- Oprettelse af
- CSS
- kurateret
- Kunder
- data
- falder
- dyb
- dyb læring
- indsætte
- indsat
- beskrevet
- Design
- konstrueret
- Designer
- Bestem
- udvikle
- Udvikler
- Udvikling
- forskel
- forskellige
- digital
- digital kunst
- Skærm
- do
- domæne
- Domain Name
- Duke
- hertug universitet
- hver
- Tidligt
- nemt
- Økonomisk
- muliggøre
- muliggør
- ende til ende
- Endpoint
- Motorer
- sikre
- især
- etisk
- evaluere
- Endog
- eksempel
- ophidset
- eksisterende
- dyrt
- erfaring
- Ansigtet
- familie
- Feature
- Filtre
- Finde
- slut
- Fornavn
- efter
- Til
- Foundation
- Framework
- fra
- fuld
- funktion
- fremtiden
- generelt
- generere
- genereret
- generere
- generation
- få
- given
- Mål
- fik
- vejlede
- Have
- he
- hjælpe
- hjælpsom
- hjælper
- hende
- hans
- håber
- hostede
- Hosting
- Hvordan
- How To
- HTML
- HTTPS
- Hub
- hubs
- KrammerFace
- i
- identificeret
- id'er
- if
- Illinois
- importere
- vigtigere
- Forbedre
- in
- omfatter
- Herunder
- angiver
- oplysninger
- initial
- indgange
- installere
- instans
- i stedet
- anvisninger
- interaktiv
- interesse
- interesser
- IT
- ITS
- japansk
- JavaScript
- json
- Holde
- kendt
- Kyle
- Sprog
- stor
- Latency
- lancere
- lanceret
- læring
- forlader
- ligesom
- synes godt om
- Line (linje)
- Liste
- Lytte
- LLM
- log
- leder
- Lav
- lavere
- maskine
- machine learning
- lavet
- vedligeholde
- lave
- mange
- Kan..
- måske
- ML
- model
- modeller
- Musik
- navn
- Behov
- behov
- Ny
- nyligt
- ingen
- notesbog
- nu
- of
- Tilbud
- on
- online
- Optimer
- or
- Andet
- ud
- output
- udgange
- i løbet af
- par
- papirer
- parameter
- parametre
- parter
- opfattelsen
- phd
- plato
- Platon Data Intelligence
- PlatoData
- Populær
- Indlæg
- Predictor
- Main
- behandle
- Processer
- producerer
- korrekt
- velstand
- forudsat
- udbyder
- udbydere
- giver
- leverer
- offentliggjort
- formål
- formål
- pytorch
- forespørgsler
- hurtigt
- rækkevidde
- hellere
- nylige
- henvise
- regelmæssigt
- huske
- påkrævet
- forskning
- forsker
- Ressourcer
- svar
- reaktioner
- ansvarlige
- afkast
- afkast
- gennemgå
- Rise
- Kør
- kører
- sagemaker
- samme
- skalerbar
- Scale
- Videnskabsmand
- Søg
- Søgemaskiner
- se
- se
- Søg
- SELV
- senior
- adskille
- Series
- server
- Tjenester
- setup
- delt
- bør
- udstillingsvindue
- viste
- glat
- So
- Social
- Samfund
- løsninger
- nogle
- udgifterne
- starte
- påbegyndt
- statistiske
- Trin
- Steps
- Stands
- Strategisk
- strøm
- streaming
- sådan
- support
- Støtte
- Opgaver
- opgaver
- hold
- skabeloner
- tensorflow
- vilkår
- prøve
- tekst
- end
- at
- Linjen
- Them
- selv
- Der.
- derfor
- Disse
- Tredje
- tredje partier
- denne
- selvom?
- Gennem
- tid
- Tidsserier
- til
- token
- Tog
- uddannet
- Oversættelse
- sand
- Stol
- prøv
- tutorials
- typisk
- ui
- universitet
- Opdatering
- opdateringer
- Brug
- brug
- brug tilfælde
- anvendte
- Bruger
- Brugererfaring
- ved brug af
- udnytte
- via
- vision
- vente
- Venter
- gå
- ønsker
- Vej..
- we
- web
- webservices
- Hjemmeside
- hvornår
- hvorvidt
- som
- mens
- WHO
- bred
- vilje
- med
- inden for
- uden
- workflow
- arbejder
- skrivning
- Du
- Din
- zephyrnet