Ustvarite spletni uporabniški vmesnik za interakcijo z LLM z uporabo Amazon SageMaker JumpStart | Spletne storitve Amazon

Ustvarite spletni uporabniški vmesnik za interakcijo z LLM z uporabo Amazon SageMaker JumpStart | Spletne storitve Amazon

Uvedba ChatGPT in naraščanje priljubljenosti generativne umetne inteligence sta vzbudila domišljijo strank, ki jih zanima, kako lahko to tehnologijo uporabijo za ustvarjanje novih izdelkov in storitev na AWS, kot so podjetniški klepetalni roboti, ki so bolj pogovorni. Ta objava vam pokaže, kako lahko ustvarite spletni uporabniški vmesnik, ki ga imenujemo Chat Studio, za začetek pogovora in interakcijo z osnovnimi modeli, ki so na voljo v Amazon SageMaker JumpStart kot so Llama 2, Stable Diffusion in drugi modeli, ki so na voljo na Amazon SageMaker. Ko uvedete to rešitev, lahko uporabniki hitro začnejo in izkusijo zmogljivosti več temeljnih modelov v pogovornem AI prek spletnega vmesnika.

Chat Studio lahko tudi po želji prikliče končno točko modela Stable Diffusion, da vrne kolaž ustreznih slik in videoposnetkov, če uporabnik zahteva prikaz medija. Ta funkcija lahko pomaga izboljšati uporabniško izkušnjo z uporabo medijev kot spremljevalnih sredstev za odgovor. To je samo en primer, kako lahko obogatite Chat Studio z dodatnimi integracijami, da dosežete svoje cilje.

Naslednji posnetki zaslona prikazujejo primere, kako sta videti uporabniška poizvedba in odgovor.

Vmesnik za poizvedbe Chat Studio

Odzivni vmesnik Chat Studio

Veliki jezikovni modeli

Generativne AI chatbote, kot je ChatGPT, poganjajo veliki jezikovni modeli (LLM), ki temeljijo na nevronski mreži globokega učenja, ki jo je mogoče učiti na velikih količinah neoznačenega besedila. Uporaba LLM omogoča boljšo pogovorno izkušnjo, ki je zelo podobna interakciji z resničnimi ljudmi, spodbuja občutek povezanosti in izboljša zadovoljstvo uporabnikov.

Modeli temeljev SageMaker

Leta 2021 je Stanfordski inštitut za umetno inteligenco, osredotočeno na človeka, nekatere študije LLM označil za modeli temeljev. Temeljni modeli so vnaprej usposobljeni na velikem in širokem naboru splošnih podatkov in naj bi služili kot osnova za nadaljnje optimizacije v številnih primerih uporabe, od ustvarjanja digitalne umetnosti do večjezične klasifikacije besedil. Ti osnovni modeli so priljubljeni pri strankah, ker usposabljanje novega modela iz nič zahteva čas in je lahko drago. SageMaker JumpStart omogoča dostop do več sto temeljnih modelov, ki jih vzdržujejo odprtokodni in lastniški ponudniki tretjih oseb.

Pregled rešitev

Ta objava se sprehodi skozi potek dela z nizko kodo za uvajanje vnaprej usposobljenih in prilagojenih LLM-jev prek SageMakerja in ustvarjanje spletnega uporabniškega vmesnika za vmesnik z uvedenimi modeli. Pokrivamo naslednje korake:

  1. Namestite modele temeljev SageMaker.
  2. uvajanje AWS Lambda in AWS upravljanje identitete in dostopa (IAM) uporaba dovoljenj Oblikovanje oblaka AWS.
  3. Nastavite in zaženite uporabniški vmesnik.
  4. Po želji dodajte druge modele temeljev SageMaker. Ta korak razširi zmožnost Chat Studia za interakcijo z dodatnimi modeli temeljev.
  5. Izbirno namestite aplikacijo z uporabo Ojačaj AWS. Ta korak uvede Chat Studio v splet.

Za pregled arhitekture rešitve glejte naslednji diagram.

Arhitektura rešitve Chat Studio

Predpogoji

Za sprehod skozi rešitev morate imeti naslednje predpogoje:

  • An AWS račun z zadostnimi uporabniškimi pravicami IAM.
  • npm nameščen v vašem lokalnem okolju. Za navodila o namestitvi npm, nanašati se na Prenos in namestitev Node.js in npm.
  • Storitvena kvota 1 za ustrezne končne točke SageMaker. Za Llama 2 13b Chat uporabljamo primerek ml.g5.48xlarge, za Stable Diffusion 2.1 pa uporabljamo primerek ml.p3.2xlarge.

Če želite zahtevati povečanje kvote storitev, na Konzola AWS Service Quotas, pojdite na Storitve AWS, SageMakerin zahtevo za povečanje kvote storitev na vrednost 1 za ml.g5.48xlarge za uporabo končne točke in ml.p3.2xlarge za uporabo končne točke.

Odobritev zahteve za kvoto storitve lahko traja nekaj ur, odvisno od razpoložljivosti vrste instance.

Namestite modele temeljev SageMaker

SageMaker je popolnoma upravljana storitev strojnega učenja (ML) za razvijalce, ki z lahkoto hitro sestavijo in učijo modele ML. Izvedite naslednje korake za uvedbo temeljnih modelov Llama 2 13b Chat in Stable Diffusion 2.1 z uporabo Amazon SageMaker Studio:

  1. Ustvarite domeno SageMaker. Za navodila glejte Vkrcajte se na domeno Amazon SageMaker z uporabo hitre nastavitve.

Domena vzpostavi ves prostor za shranjevanje in vam omogoča dodajanje uporabnikov za dostop do SageMakerja.

  1. Na konzoli SageMaker izberite študija v podoknu za krmarjenje in nato izberite Odprti studio.
  2. Ob zagonu Studia pod SageMaker JumpStart v podoknu za krmarjenje izberite Modeli, zvezki, rešitve.
    Konzola SageMaker JumpStart
  3. V iskalni vrstici poiščite Llama 2 13b Chat.
  4. Pod Konfiguracija uvajanjaZa Primerek gostovanja SageMaker, izberite ml.g5.48xvelik in za Ime končne točke, vnesite meta-textgeneration-llama-2-13b-f.
  5. Izberite Razporeditev.

Konfiguracija uvajanja SageMaker JumpStart

Ko je uvedba uspešna, bi morali biti sposobni videti In Service Status.

Status modela Llama

  1. o Modeli, zvezki, rešitve stran, poiščite Stable Diffusion 2.1.
  2. Pod Konfiguracija uvajanjaZa Primerek gostovanja SageMaker, izberite ml.p3.2xvelika in za Ime končne točke, vnesite jumpstart-dft-stable-diffusion-v2-1-base.
  3. Izberite uvajanje.

Konfiguracija uvajanja SageMaker JumpStart

Ko je uvedba uspešna, bi morali biti sposobni videti In Service Status.

Status stabilnega modela difuzije

Razmestite dovoljenja Lambda in IAM z uporabo AWS CloudFormation

Ta razdelek opisuje, kako lahko zaženete sklad CloudFormation, ki uvede funkcijo Lambda, ki obdela vašo uporabniško zahtevo in pokliče končno točko SageMaker, ki ste jo uvedli, ter uvede vsa potrebna dovoljenja IAM. Izvedite naslednje korake:

  1. Pomaknite se na GitHub repozitorij in prenesite predlogo CloudFormation (lambda.cfn.yaml) na vaš lokalni računalnik.
  2. Na konzoli CloudFormation izberite Ustvari sklad spustni meni in izberite Z novimi viri (standardno).
  3. o Določite predlogo stran, izberite Naložite datoteko predloge in Izberite datoteko.
  4. Izberite lambda.cfn.yaml datoteko, ki ste jo prenesli, nato izberite Naslednji.
  5. o Določite podrobnosti zlaganja vnesite ime sklada in ključ API-ja, ki ste ga pridobili v predpogojih, nato izberite Naslednji.
  6. o Konfigurirajte možnosti zlaganja stran, izberite Naslednji.
  7. Preglejte in potrdite spremembe ter izberite Prijave se.

Nastavite spletni uporabniški vmesnik

V tem razdelku so opisani koraki za zagon spletnega uporabniškega vmesnika (ustvarjenega z uporabo Sistem oblikovanja Cloudscape) na vašem lokalnem računalniku:

  1. Na konzoli IAM se pomaknite do uporabnika functionUrl.
  2. o Poverilnice izberite jeziček Ustvari ključ za dostop.
  3. o Dostopajte do ključnih najboljših praks in alternativ stran, izberite Vmesnik ukazne vrstice (CLI) In izberite Naslednji.
  4. o Nastavite opisno oznako stran, izberite Ustvari ključ za dostop.
  5. Kopirajte ključ za dostop in skrivni ključ za dostop.
  6. Izberite Done.
  7. Pomaknite se na GitHub repozitorij in prenesete react-llm-chat-studio Koda.
  8. Zaženite mapo v želenem IDE in odprite terminal.
  9. Pomaknite se na src/configs/aws.json in vnesite ključ za dostop in skrivni ključ za dostop, ki ste ju pridobili.
  10. V terminal vnesite naslednje ukaze:
    npm install npm start

  11. Odprto http://localhost:3000 v brskalniku in začnite komunicirati s svojimi modeli!

Če želite uporabljati Chat Studio, izberite temeljni model v spustnem meniju in v besedilno polje vnesite svojo poizvedbo. Če želite skupaj z odgovorom dobiti slike, ustvarjene z umetno inteligenco, dodajte besedno zvezo »s slikami« na konec poizvedbe.

Dodajte druge modele temeljev SageMaker

Zmogljivost te rešitve lahko dodatno razširite tako, da vključite dodatne modele temeljev SageMaker. Ker vsak model pričakuje različne vhodne in izhodne formate, ko prikliče svojo končno točko SageMaker, boste morali napisati nekaj transformacijske kode v funkcijo callSageMakerEndpoints Lambda za vmesnik z modelom.

Ta razdelek opisuje splošne korake in spremembe kode, potrebne za implementacijo dodatnega modela po vaši izbiri. Upoštevajte, da je za korake 6–8 potrebno osnovno znanje jezika Python.

  1. V SageMaker Studio namestite temeljni model SageMaker po vaši izbiri.
  2. Izberite SageMaker JumpStart in Zaženi sredstva JumpStart.
  3. Izberite svojo novo razporejeno končno točko modela in izberite Odprite Beležnico.
  4. Na konzoli prenosnega računalnika poiščite parametre tovora.

To so polja, ki jih pričakuje novi model, ko prikliče svojo končno točko SageMaker. Naslednji posnetek zaslona prikazuje primer.

Konfiguracija končne točke SageMaker

  1. Na konzoli Lambda se pomaknite do callSageMakerEndpoints.
  2. Dodajte obravnavo vnosa po meri za svoj novi model.

Na naslednjem posnetku zaslona smo preoblikovali vnos za Falcon 40B Instruct BF16 in GPT NeoXT Chat Base 20B FP16. Svojo logiko parametrov po meri lahko vstavite, kot je navedeno, da dodate logiko pretvorbe vnosa s sklicevanjem na parametre koristnega tovora, ki ste jih kopirali.

Izrezek kode Lambda

  1. Vrnite se na konzolo prenosnega računalnika in poiščite query_endpoint.

Ta funkcija vam daje idejo, kako preoblikovati izhod modelov, da izluščite končni besedilni odgovor.

Konfiguracija končne točke SageMaker

  1. S sklicevanjem na kodo v query_endpoint, dodajte obravnavo izhoda po meri za vaš novi model.
    Lambda koda
  2. Izberite Razporeditev.
  3. Odprite svoj IDE, zaženite react-llm-chat-studio kodo in se pomaknite do src/configs/models.json.
  4. Dodajte ime modela in končno točko modela ter vnesite parametre tovora iz 4. koraka pod payload v naslednji obliki:
    "add_model_name": { "endpoint_name": "add_model_enpoint", "payload": { "add_payload_paramters_here"
    }
    },

  5. Osvežite brskalnik, da začnete komunicirati s svojim novim modelom!

Razmestite aplikacijo z uporabo Amplify

Amplify je celovita rešitev, ki vam omogoča hitro in učinkovito uvajanje vaše aplikacije. V tem razdelku so opisani koraki za uvedbo Chat Studio v Amazon CloudFront distribucijo z uporabo Amplify, če želite svojo aplikacijo deliti z drugimi uporabniki.

  1. Pomaknite se na react-llm-chat-studio kodno mapo, ki ste jo ustvarili prej.
  2. V terminal vnesite naslednje ukaze in sledite navodilom za namestitev:
    npm install -g @aws-amplify/cli amplify configure

  3. Inicializirajte nov projekt Amplify z naslednjim ukazom. Vnesite ime projekta, sprejmite privzete konfiguracije in izberite Ključi za dostop do AWS ko vas pozove, da izberete način preverjanja pristnosti.
    amplify init

  4. Gostite projekt Amplify z naslednjim ukazom. Izberite Amazon CloudFront in S3 ko boste pozvani, da izberete način vtičnika.
    amplify hosting add

  5. Končno zgradite in razmestite projekt z naslednjim ukazom:
    amplify publish

  6. Ko je uvedba uspešna, odprite navedeni URL v brskalniku in začnite komunicirati s svojimi modeli!

Čiščenje

Če se želite izogniti prihodnjim stroškom, izvedite naslednje korake:

  1. Izbrišite sklad CloudFormation. Za navodila glejte Brisanje sklada na konzoli AWS CloudFormation.
  2. Izbrišite končno točko SageMaker JumpStart. Za navodila glejte Izbrišite končne točke in vire.
  3. Izbrišite domeno SageMaker. Za navodila glejte Izbrišite domeno Amazon SageMaker.

zaključek

V tej objavi smo razložili, kako ustvariti spletni uporabniški vmesnik za povezovanje z LLM-ji, nameščenimi na AWS.

S to rešitvijo lahko sodelujete s svojim LLM in vodite pogovor na uporabniku prijazen način, da preizkusite ali zastavite vprašanja LLM ter po potrebi dobite kolaž slik in videoposnetkov.

To rešitev lahko razširite na različne načine, na primer z integracijo dodatnih modelov temeljev, integrirati z Amazon Kendra da omogočite inteligentno iskanje, ki ga poganja ML, za razumevanje poslovne vsebine in še več!

Vabimo vas k eksperimentiranju različni predhodno usposobljeni LLM, ki so na voljo na AWS, nadgradite ali celo ustvarite svoje LLM v SageMakerju. Sporočite nam svoja vprašanja in ugotovitve v komentarjih in se zabavajte!


O avtorjih

Create a web UI to interact with LLMs using Amazon SageMaker JumpStart | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.Jarrett Yeo Shan Wei je pridruženi arhitekt oblaka v AWS Professional Services, ki pokriva javni sektor po vsej ASEAN, in je zagovornik pomoči strankam pri posodobitvi in ​​selitvi v oblak. Pridobil je pet certifikatov AWS, na 8. mednarodni konferenci o umetni inteligenci pa je objavil tudi raziskovalno nalogo o sklopih strojev za povečanje gradienta. V prostem času se Jarrett osredotoča na generativno AI sceno v AWS in prispeva k njej.

Create a web UI to interact with LLMs using Amazon SageMaker JumpStart | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.Tammy Lim Lee Xin je pridruženi arhitekt v oblaku pri AWS. Uporablja tehnologijo za pomoč strankam pri doseganju želenih rezultatov na njihovi poti sprejemanja oblaka in je navdušena nad AI/ML. Izven službe obožuje potovanja, pohodništvo in preživljanje časa z družino in prijatelji.

Časovni žig:

Več od Strojno učenje AWS