Hozzon létre egy webes felhasználói felületet az LLM-ekkel való interakcióhoz az Amazon SageMaker JumpStart | Amazon webszolgáltatások

Hozzon létre egy webes felhasználói felületet az LLM-ekkel való interakcióhoz az Amazon SageMaker JumpStart | Amazon webszolgáltatások

A ChatGPT bevezetése és a generatív mesterséges intelligencia népszerűségének növekedése megragadta azoknak az ügyfeleknek a képzeletét, akik kíváncsiak arra, hogyan használhatják ezt a technológiát új termékek és szolgáltatások létrehozására az AWS-en, például vállalati chatbotokat, amelyek sokkal inkább beszélgetnek. Ez a bejegyzés bemutatja, hogyan hozhat létre webes felhasználói felületet, amelyet Chat Stúdiónak hívunk, hogy beszélgetést kezdeményezzen, és interakcióba lépjen a Amazon SageMaker JumpStart mint például a Llama 2, a Stable Diffusion és egyéb modellek, amelyek elérhetők a webhelyen Amazon SageMaker. A megoldás üzembe helyezése után a felhasználók gyorsan elkezdhetik a munkát, és egy webes felületen keresztül megtapasztalhatják a több alapmodell képességeit a párbeszédes AI-ban.

A Chat Studio opcionálisan meghívhatja a Stable Diffusion modell végpontját is, hogy visszaadja a releváns képek és videók kollázsát, ha a felhasználó média megjelenítését kéri. Ez a funkció segíthet a felhasználói élmény fokozásában, ha a médiát a válasz kísérő elemeiként használják. Ez csak egy példa arra, hogyan gazdagíthatja a Chat Studiot további integrációkkal, hogy elérje céljait.

A következő képernyőképek példákat mutatnak be a felhasználói lekérdezések és válaszok megjelenésére.

Chat Studio lekérdezési felület

A Chat Studio válaszfelülete

Nagy nyelvi modellek

A generatív mesterséges intelligencia chatbotokat, például a ChatGPT-t, nagy nyelvi modellek (LLM-ek) hajtják, amelyek mélytanuló neurális hálózaton alapulnak, amely nagy mennyiségű címkézetlen szövegre tanítható. Az LLM-ek használata jobb társalgási élményt tesz lehetővé, amely nagyon hasonlít a valódi emberekkel való interakcióhoz, elősegítve a kapcsolat érzését és a felhasználói elégedettség javítását.

SageMaker alapozó modellek

2021-ben a Stanford Institute for Human-Centered Artificial Intelligence egyes LLM-eket úgy nevezett el. alapozó modellek. Az alapmodellek nagy és széles általános adathalmazra vannak előképezve, és további optimalizálás alapjául szolgálnak a felhasználási esetek széles körében, a digitális művészet generálásától a többnyelvű szövegosztályozásig. Ezek az alapmodellek népszerűek a vásárlók körében, mert egy új modell alapról történő betanítása időt vesz igénybe, és költséges is lehet. A SageMaker JumpStart hozzáférést biztosít több száz alapmodellhez, amelyeket külső, nyílt forráskódú és szabadalmaztatott szolgáltatók karbantartanak.

Megoldás áttekintése

Ez a bejegyzés egy alacsony kódú munkafolyamatot mutat be az előre betanított és egyéni LLM-ek SageMakeren keresztüli üzembe helyezéséhez, valamint egy webes felhasználói felület létrehozásához a telepített modellekkel való interfészhez. A következő lépéseket ismertetjük:

  1. Telepítse a SageMaker alapozó modelleket.
  2. Telepítése AWS Lambda és a AWS Identity and Access Management (IAM) engedélyek használatával AWS felhőképződés.
  3. Állítsa be és futtassa a felhasználói felületet.
  4. Opcionálisan adjon hozzá más SageMaker alapozó modelleket. Ez a lépés kibővíti a Chat Studio azon képességét, hogy további alapozó modellekkel kommunikáljon.
  5. Opcionálisan telepítse az alkalmazást a használatával AWS erősítés. Ez a lépés telepíti a Chat Studio-t az interneten.

Tekintse meg a következő diagramot a megoldás architektúrájának áttekintéséhez.

Chat Studio megoldási architektúra

Előfeltételek

A megoldás végrehajtásához a következő előfeltételeknek kell megfelelniük:

  • An AWS-fiók megfelelő IAM felhasználói jogosultságokkal.
  • npm telepítve van a helyi környezetben. A telepítéssel kapcsolatos utasításokért npm, hivatkozni A Node.js és az npm letöltése és telepítése.
  • 1-es szolgáltatáskvóta a megfelelő SageMaker-végpontokhoz. A Llama 2 13b Chat esetében egy ml.g5.48xlarge példányt, a Stable Diffusion 2.1 esetében pedig egy ml.p3.2xlarge példányt használunk.

A szolgáltatási kvóta növelésének igényléséhez a AWS szolgáltatáskvóta konzol, navigáljon AWS szolgáltatások, SageMaker, és kérjen szolgáltatáskvóta-emelést 1-re az ml.g5.48xlarge esetén a végponthasználat és az ml.p3.2xlarge esetén a végponthasználat esetén.

A szolgáltatáskvóta-kérelem jóváhagyása néhány órát is igénybe vehet, a példánytípus elérhetőségétől függően.

Telepítse a SageMaker alapozó modelleket

A SageMaker egy teljesen felügyelt gépi tanulási (ML) szolgáltatás a fejlesztők számára az ML modellek gyors és egyszerű létrehozásához és betanításához. Hajtsa végre a következő lépéseket a Llama 2 13b Chat és Stable Diffusion 2.1 alapozó modellek üzembe helyezéséhez Amazon SageMaker Studio:

  1. Hozzon létre egy SageMaker tartományt. Az utasításokat lásd Bekapcsolva az Amazon SageMaker tartományba a Gyors beállítás segítségével.

Egy tartomány beállítja az összes tárhelyet, és lehetővé teszi, hogy felhasználókat adjon hozzá a SageMakerhez.

  1. A SageMaker konzolon válassza a lehetőséget tanulmány a navigációs ablakban, majd válassza a lehetőséget OpenStudio.
  2. A Studio elindításakor a SageMaker JumpStart a navigációs ablakban válassza a lehetőséget Modellek, notebookok, megoldások.
    SageMaker JumpStart konzol
  3. A keresősávban keresse meg a Llama 2 13b Chat kifejezést.
  4. Alatt Telepítési konfiguráció, A SageMaker hosting példány, választ ml.g5.48xnagy és a Végpont neve, belép meta-textgeneration-llama-2-13b-f.
  5. A pop-art design, négy időzóna kijelzése egyszerre és méretének arányai azok az érvek, amelyek a NeXtime Time Zones-t kiváló választássá teszik. Válassza a Telepíteni.

A SageMaker JumpStart telepítési konfigurációja

Miután a telepítés sikeres volt, látnia kell a In Service állapotát.

Láma modell állapota

  1. A Modellek, notebookok, megoldások oldalon keressen rá a Stable Diffusion 2.1-re.
  2. Alatt Telepítési konfiguráció, A SageMaker hosting példány, választ ml.p3.2xnagy és a Végpont neve, belép jumpstart-dft-stable-diffusion-v2-1-base.
  3. A pop-art design, négy időzóna kijelzése egyszerre és méretének arányai azok az érvek, amelyek a NeXtime Time Zones-t kiváló választássá teszik. Válassza a Telepítése.

A SageMaker JumpStart telepítési konfigurációja

Miután a telepítés sikeres volt, látnia kell a In Service állapotát.

Stabil diffúziós modell állapota

Telepítsen Lambda- és IAM-engedélyeket az AWS CloudFormation használatával

Ez a szakasz leírja, hogyan indíthat el egy CloudFormation-vermet, amely egy Lambda-függvényt telepít, amely feldolgozza a felhasználói kérelmeket, és meghívja a telepített SageMaker-végpontot, és telepíti az összes szükséges IAM-engedélyt. Hajtsa végre a következő lépéseket:

  1. Navigáljon a GitHub tárház és töltse le a CloudFormation sablont (lambda.cfn.yaml) a helyi gépre.
  2. A CloudFormation konzolon válassza ki a Verem létrehozása legördülő menüből, és válassza ki Új erőforrásokkal (standard).
  3. A Adja meg a sablont oldal, válassza ki Tölts fel egy sablonfájlt és a Válassz fájlt.
  4. Válassza a lambda.cfn.yaml letöltött fájlt, majd válassza ki Következő.
  5. A Adja meg a verem részleteit oldalon adja meg a verem nevét és az előfeltételek között kapott API-kulcsot, majd válassza ki Következő.
  6. A Állítsa be a verembeállításokat oldalon válassza a lehetőséget Következő.
  7. Tekintse át és nyugtázza a változtatásokat, majd válasszon Küld.

Állítsa be a webes felhasználói felületet

Ez a rész leírja a webes felhasználói felület (amely a Cloudscape tervező rendszer) a helyi gépen:

  1. Az IAM-konzolon navigáljon a felhasználóhoz functionUrl.
  2. A Biztonsági hitelesítő adatok lapot választani Hozzáférési kulcs létrehozása.
  3. A Hozzáférés a legfontosabb bevált gyakorlatokhoz és alternatívákhoz oldal, válassza ki Parancssori interfész (CLI) És válasszon Következő.
  4. A Leíró címke beállítása oldalon válassza a lehetőséget Hozzáférési kulcs létrehozása.
  5. Másolja ki a hozzáférési kulcsot és a titkos hozzáférési kulcsot.
  6. A pop-art design, négy időzóna kijelzése egyszerre és méretének arányai azok az érvek, amelyek a NeXtime Time Zones-t kiváló választássá teszik. Válassza a csinált.
  7. Navigáljon a GitHub tárház és töltse le a react-llm-chat-studio kód.
  8. Indítsa el a mappát a kívánt IDE-ben, és nyisson meg egy terminált.
  9. navigáljon src/configs/aws.json és adja meg a kapott hozzáférési kulcsot és titkos hozzáférési kulcsot.
  10. Írja be a következő parancsokat a terminálba:
    npm install npm start

  11. Nyisd ki http://localhost:3000 böngészőjében, és kezdje el az interakciót a modellekkel!

A Chat Studio használatához válasszon egy alapmodellt a legördülő menüből, és írja be a lekérdezést a szövegmezőbe. Ha a válaszokkal együtt AI által generált képeket szeretne kapni, adja hozzá a „képekkel” kifejezést a lekérdezés végéhez.

Adjon hozzá további SageMaker alapozó modelleket

Tovább bővítheti ennek a megoldásnak a képességét további SageMaker alapozó modellekkel. Mivel minden modell eltérő bemeneti és kimeneti formátumot vár el a SageMaker végpont meghívásakor, a modellel való interfészhez valamilyen transzformációs kódot kell írnia a callSageMakerEndpoints Lambda függvénybe.

Ez a szakasz leírja azokat az általános lépéseket és kódmódosításokat, amelyek egy Ön által választott további modell megvalósításához szükségesek. Vegye figyelembe, hogy a 6–8. lépésekhez alapvető Python nyelvtudás szükséges.

  1. A SageMaker Studio alkalmazásban telepítse a választott SageMaker alapmodelljét.
  2. A pop-art design, négy időzóna kijelzése egyszerre és méretének arányai azok az érvek, amelyek a NeXtime Time Zones-t kiváló választássá teszik. Válassza a SageMaker JumpStart és a Indítsa el a JumpStart eszközöket.
  3. Válassza ki az újonnan telepített modell végpontját, és válassza ki Nyissa meg a Jegyzetfüzetet.
  4. A notebook konzolon keresse meg a hasznos terhelés paramétereit.

Ezek azok a mezők, amelyeket az új modell a SageMaker végpont meghívásakor vár. A következő képernyőkép egy példát mutat be.

SageMaker végpont konfigurációja

  1. A Lambda konzolon navigáljon ide callSageMakerEndpoints.
  2. Adjon hozzá egyéni beviteli kezelőt az új modellhez.

A következő képernyőképen átalakítottuk a Falcon 40B Instruct BF16 és a GPT NeoXT Chat Base 20B FP16 bemenetét. A jelzett módon beillesztheti az egyéni paraméter-logikát, hogy hozzáadja a bemeneti átalakítási logikát a másolt hasznos adatparaméterekhez való hivatkozással.

Lambda kódrészlet

  1. Térjen vissza a notebook konzolhoz, és keresse meg query_endpoint.

Ez a funkció ötletet ad a modellek kimenetének átalakításához a végső szöveges válasz kinyeréséhez.

SageMaker végpont konfigurációja

  1. A kódra hivatkozva query_endpoint, adjon hozzá egyéni kimenetkezelőt az új modellhez.
    Lambda kód
  2. A pop-art design, négy időzóna kijelzése egyszerre és méretének arányai azok az érvek, amelyek a NeXtime Time Zones-t kiváló választássá teszik. Válassza a Telepíteni.
  3. Nyissa meg az IDE-jét, indítsa el a react-llm-chat-studio kódot, és navigáljon ide src/configs/models.json.
  4. Adja hozzá a modell nevét és a modell végpontját, és adja meg a hasznos terhelés paramétereit a 4. lépésben payload a következő formátumot használva:
    "add_model_name": { "endpoint_name": "add_model_enpoint", "payload": { "add_payload_paramters_here"
    }
    },

  5. Frissítse böngészőjét az új modellel való interakció megkezdéséhez!

Telepítse az alkalmazást az Amplify használatával

Az Amplify egy teljes körű megoldás, amely lehetővé teszi az alkalmazás gyors és hatékony üzembe helyezését. Ez a szakasz a Chat Studio telepítésének lépéseit írja le Amazon CloudFront terjesztése az Amplify használatával, ha meg szeretné osztani alkalmazását más felhasználókkal.

  1. Navigáljon a react-llm-chat-studio korábban létrehozott kódmappa.
  2. Írja be a következő parancsokat a terminálba, és kövesse a beállítási utasításokat:
    npm install -g @aws-amplify/cli amplify configure

  3. Inicializáljon egy új Amplify projektet a következő paranccsal. Adja meg a projekt nevét, fogadja el az alapértelmezett konfigurációkat, és válassza ki AWS hozzáférési kulcsok amikor a rendszer felszólítja a hitelesítési mód kiválasztására.
    amplify init

  4. Hozd le az Amplify projektet a következő paranccsal. Választ Amazon CloudFront és S3 amikor a rendszer felkéri a beépülő modul mód kiválasztására.
    amplify hosting add

  5. Végül építse fel és telepítse a projektet a következő paranccsal:
    amplify publish

  6. Miután a telepítés sikeres volt, nyissa meg a megadott URL-t a böngészőjében, és kezdje el az interakciót a modellekkel!

Tisztítsuk meg

A jövőbeni költségek elkerülése érdekében hajtsa végre a következő lépéseket:

  1. Törölje a CloudFormation veremet. Az utasításokat lásd Verem törlése az AWS CloudFormation konzolon.
  2. Törölje a SageMaker JumpStart végpontot. Az utasításokat lásd Törölje a végpontokat és az erőforrásokat.
  3. Törölje a SageMaker tartományt. Az utasításokat lásd Töröljön egy Amazon SageMaker domaint.

Következtetés

Ebben a bejegyzésben elmagyaráztuk, hogyan hozhatunk létre webes felhasználói felületet az AWS-en telepített LLM-ekkel való interfészhez.

Ezzel a megoldással interakcióba léphet LLM-jével, és felhasználóbarát módon beszélgetést folytathat, hogy tesztelje vagy kérdéseket tegyen fel az LLM-nek, és szükség esetén kollázst kapjon képekből és videókból.

Ezt a megoldást többféleképpen bővítheti, például további alapozási modellek integrálásával, integrálni az Amazon Kendrával hogy lehetővé tegye az ML-alapú intelligens keresést a vállalati tartalom megértéséhez és még sok máshoz!

Meghívjuk Önt, hogy kísérletezzen különböző előre képzett LLM-ek állnak rendelkezésre az AWS-en, vagy építsen rá, vagy akár létrehozza saját LLM-eit a SageMakerben. Ossza meg velünk kérdéseit és megállapításait a megjegyzésekben, és jó szórakozást!


A szerzőkről

Hozzon létre egy webes felhasználói felületet az LLM-ekkel való interakcióhoz az Amazon SageMaker JumpStart | Amazon Web Services PlatoBlockchain Data Intelligence. Függőleges keresés. Ai.Jarrett Yeo Shan Wei az AWS Professional Services felhőépítész munkatársa, amely az ASEAN állam közszféráját lefedi, és támogatja az ügyfeleket a modernizálásban és a felhőbe való migrációban. Öt AWS-tanúsítványt szerzett, és a 8. nemzetközi mesterségesintelligencia-konferencián kutatási tanulmányt is publikált a gradiensnövelő gépegyüttesekről. Szabadidejében Jarrett az AWS generatív mesterséges intelligenciájára összpontosít, és hozzájárul ahhoz.

Hozzon létre egy webes felhasználói felületet az LLM-ekkel való interakcióhoz az Amazon SageMaker JumpStart | Amazon Web Services PlatoBlockchain Data Intelligence. Függőleges keresés. Ai.Tammy Lim Lee Xin az AWS felhőépítész munkatársa. Technológiát használ, hogy segítse ügyfeleit elérni a kívánt eredményeket a felhőbe való bevezetésük során, és szenvedélyesen rajong az AI/ML-ért. Munkán kívül szeret utazni, kirándulni, valamint családjával és barátaival tölteni az idejét.

Időbélyeg:

Még több AWS gépi tanulás