Gebruik generatieve AI-basismodellen in VPC-modus zonder internetverbinding met behulp van Amazon SageMaker JumpStart | Amazon-webservices

Gebruik generatieve AI-basismodellen in VPC-modus zonder internetverbinding met behulp van Amazon SageMaker JumpStart | Amazon-webservices

Met recente ontwikkelingen in generatieve AI, vinden er veel discussies plaats over het gebruik van generatieve AI in verschillende sectoren om specifieke zakelijke problemen op te lossen. Generatieve AI is een type AI dat nieuwe inhoud en ideeën kan creëren, waaronder gesprekken, verhalen, afbeeldingen, video's en muziek. Het wordt allemaal ondersteund door zeer grote modellen die vooraf zijn getraind op enorme hoeveelheden gegevens en die gewoonlijk worden aangeduid als funderingsmodellen (FM's). Deze FM's kunnen een breed scala aan taken uitvoeren die meerdere domeinen omvatten, zoals het schrijven van blogposts, het genereren van afbeeldingen, het oplossen van wiskundige problemen, het aangaan van dialogen en het beantwoorden van vragen op basis van een document. Door de omvang en het algemene karakter van FM's verschillen ze van traditionele ML-modellen, die doorgaans specifieke taken uitvoeren, zoals het analyseren van tekst op sentiment, het classificeren van afbeeldingen en het voorspellen van trends.

Hoewel organisaties de kracht van deze FM's willen gebruiken, willen ze ook dat de op FM gebaseerde oplossingen in hun eigen beschermde omgeving draaien. Organisaties die actief zijn in sterk gereguleerde omgevingen, zoals de wereldwijde financiële dienstverlening en gezondheidszorg en biowetenschappen, hebben audit- en nalevingsvereisten om hun omgeving in hun VPC's te beheren. Vaak is in deze omgevingen zelfs directe internettoegang uitgeschakeld om blootstelling aan onbedoeld verkeer, zowel binnenkomend als uitgaand verkeer, te voorkomen.

Amazon SageMaker JumpStart is een ML-hub die algoritmen, modellen en ML-oplossingen biedt. Met SageMaker JumpStart kunnen ML-beoefenaars kiezen uit een groeiende lijst van best presterende open source FM's. Het biedt ook de mogelijkheid om deze modellen in uw eigen modellen te implementeren Virtuele privécloud (VPC).

In dit bericht laten we zien hoe u JumpStart kunt gebruiken om een Flan-T5 XXL model in een VPC zonder internetverbinding. We bespreken de volgende onderwerpen:

  • Een basismodel implementeren met behulp van SageMaker JumpStart in een VPC zonder internettoegang
  • Voordelen van het inzetten van FM's via SageMaker JumpStart-modellen in VPC-modus
  • Alternatieve manieren om de implementatie van basismodellen aan te passen via JumpStart

Naast FLAN-T5 XXL biedt JumpStart veel verschillende funderingsmodellen voor verschillende taken. Kijk voor de volledige lijst op Aan de slag met Amazon SageMaker JumpStart.

Overzicht oplossingen

Als onderdeel van de oplossing behandelen we de volgende stappen:

  1. Stel een VPC in zonder internetverbinding.
  2. Instellen Amazon SageMaker Studio met behulp van de VPC die we hebben gemaakt.
  3. Implementeer het generatieve AI Flan T5-XXL-basismodel met behulp van JumpStart in de VPC zonder internettoegang.

Het volgende is een architectuurdiagram van de oplossing.

zonne-boog

Laten we de verschillende stappen doorlopen om deze oplossing te implementeren.

Voorwaarden

Om dit bericht te volgen, heb je het volgende nodig:

Stel een VPC in zonder internetverbinding

Maak een nieuwe CloudFormation-stack door gebruik te maken van de 01_netwerken.yaml sjabloon. Deze sjabloon maakt een nieuwe VPC en voegt twee privé-subnetten toe aan twee beschikbaarheidszones zonder internetverbinding. Vervolgens implementeert het gateway VPC-eindpunten voor toegang Amazon eenvoudige opslagservice (Amazon S3) en interface VPC-eindpunten voor SageMaker en een paar andere services om de bronnen in de VPC in staat te stellen verbinding te maken met AWS-services via AWS PrivéLink.

Geef een stapelnaam op, zoals No-Interneten voltooi het proces voor het maken van de stapel.

vpc-stack-invoer

Deze oplossing is niet overal beschikbaar omdat de CloudFormation-sjabloon interface-VPC-eindpunten alleen in één subnet maakt om de kosten te verlagen bij het volgen van de stappen in dit bericht.

Stel Studio in met behulp van de VPC

Maak nog een CloudFormation-stack met behulp van 02_sagemaker_studio.yaml, waarmee een Studio-domein, Studio-gebruikersprofiel en ondersteunende bronnen zoals IAM-rollen worden gemaakt. Kies een naam voor de stapel; voor dit bericht gebruiken we de naam SageMaker-Studio-VPC-No-Internet. Geef de naam op van de VPC-stack die u eerder hebt gemaakt (No-Internet) als de CoreNetworkingStackName parameter en laat al het andere als standaard.

studio-cfn-stack-invoer

Wacht tot AWS CloudFormation meldt dat het maken van de stapel is voltooid. U kunt bevestigen dat het Studio-domein beschikbaar is voor gebruik op de SageMaker-console.

domein-thuis

Om te controleren of de Studio-domeingebruiker geen internettoegang heeft, start Studio met behulp van de SageMaker-console. Kiezen Dien in, New en terminalen probeer vervolgens toegang te krijgen tot een internetbron. Zoals te zien is in de volgende schermafbeelding, blijft de terminal wachten op de bron en uiteindelijk een time-out.

studio-terminal

Dit bewijst dat Studio werkt in een VPC die geen internettoegang heeft.

Implementeer het generatieve AI-basismodel Flan T5-XXL met behulp van JumpStart

We kunnen dit model zowel via Studio als via API inzetten. JumpStart biedt alle code om het model te implementeren via een SageMaker-notebook dat toegankelijk is vanuit Studio. Voor dit bericht laten we deze mogelijkheid van de Studio zien.

  • Kies op de welkomstpagina van Studio snelle start onder Vooraf gebouwde en geautomatiseerde oplossingen.

studio-welkomstpagina

  • Kies hieronder het Flan-T5 XXL-model Funderingsmodellen.

js-model-hub

  • Standaard opent het de Implementeren tabblad. Vouw het uit Implementatie configuratie sectie om de hosting instance en endpoint name, of voeg extra tags toe. Er is ook een mogelijkheid om de S3 bucket location waar het modelartefact wordt opgeslagen voor het maken van het eindpunt. Voor dit bericht laten we alles op de standaardwaarden staan. Noteer de eindpuntnaam die moet worden gebruikt bij het aanroepen van het eindpunt voor het maken van voorspellingen.

implementeren-js

  • Vouw de security Settings sectie, waar u de IAM role voor het maken van het eindpunt. U kunt ook de VPC configurations door het subnets en security groups. De subnet-ID's en beveiligingsgroep-ID's zijn te vinden op het tabblad Uitvoer van de VPC-stack op de AWS CloudFormation-console. SageMaker JumpStart vereist ten minste twee subnetten als onderdeel van deze configuratie. De subnetten en beveiligingsgroepen bepalen de toegang van en naar de modelcontainer.

js-deploy-beveiligingsinstellingen

NOTITIE: Ongeacht of het SageMaker JumpStart-model wordt geïmplementeerd in de VPC of niet, het model draait altijd in de netwerkisolatiemodus, die de modelcontainer isoleert zodat er geen inkomende of uitgaande netwerkoproepen van of naar de modelcontainer kunnen worden gedaan. Omdat we een VPC gebruiken, downloadt SageMaker het modelartefact via onze gespecificeerde VPC. Het uitvoeren van de modelcontainer in netwerkisolatie voorkomt niet dat uw SageMaker-eindpunt reageert op deductieverzoeken. Een serverproces loopt naast de modelcontainer en stuurt de deductieverzoeken door, maar de modelcontainer heeft geen netwerktoegang.

  • Kies Implementeren om het model in te zetten. We kunnen de bijna realtime status van het maken van het eindpunt zien. Het maken van het eindpunt kan 5 tot 10 minuten in beslag nemen.

js-deploy-voortgang

Let op de waarde van het veld Locatie van modelgegevens op deze pagina. Alle SageMaker JumpStart-modellen worden gehost op een door SageMaker beheerde S3-bucket (s3://jumpstart-cache-prod-{region}). Daarom, ongeacht welk model uit JumpStart wordt gekozen, wordt het model geïmplementeerd vanuit de openbaar toegankelijke SageMaker JumpStart S3-bucket en gaat het verkeer nooit naar de openbare model-zoo-API's om het model te downloaden. Dit is de reden waarom het maken van het model-eindpunt met succes is gestart, zelfs wanneer we het eindpunt maken in een VPC die geen directe internettoegang heeft.

Het modelartefact kan ook worden gekopieerd naar een particuliere modeldierentuin of uw eigen S3-bucket om de bronlocatie van het model verder te controleren en te beveiligen. U kunt de volgende opdracht gebruiken om het model lokaal te downloaden met behulp van de AWS-opdrachtregelinterface (AWS-CLI):

aws s3 cp s3://jumpstart-cache-prod-eu-west-1/huggingface-infer/prepack/v1.0.2/infer-prepack-huggingface-text2text-flan-t5-xxl.tar.gz .
  • Na een paar minuten wordt het eindpunt met succes gemaakt en wordt de status weergegeven als In dienst. Kiezen Open Notebook in de Use Endpoint from Studio sectie. Dit is een voorbeeldnotitieblok dat wordt geleverd als onderdeel van de JumpStart-ervaring om het eindpunt snel te testen.

jumpstart-implementeren-voltooid

  • Kies in het notitieblok de afbeelding als Gegevenswetenschap 3.0 en de kernel als Python 3. Wanneer de kernel gereed is, kunt u de notebookcellen uitvoeren om voorspellingen te doen over het eindpunt. Merk op dat de notebook de aanroepen_eindpunt() API van de AWS SDK voor Python voorspellingen te doen. Als alternatief kunt u de SageMaker Python SDK's predict() methode om hetzelfde resultaat te bereiken.

run-deploy-notebook-jumpstart

Hiermee zijn de stappen voltooid om het Flan-T5 XXL-model te implementeren met behulp van JumpStart binnen een VPC zonder internettoegang.

Voordelen van het inzetten van SageMaker JumpStart-modellen in VPC-modus

Hieronder volgen enkele voordelen van het implementeren van SageMaker JumpStart-modellen in VPC-modus:

  • Omdat SageMaker JumpStart de modellen niet downloadt van een openbare modeldierentuin, kan het ook worden gebruikt in volledig afgesloten omgevingen waar geen internettoegang is
  • Omdat de netwerktoegang kan worden beperkt en beperkt voor SageMaker JumpStart-modellen, helpt dit teams de beveiligingsstatus van de omgeving te verbeteren
  • Vanwege de VPC-grenzen kan de toegang tot het endpoint ook worden beperkt via subnetten en beveiligingsgroepen, wat een extra beveiligingslaag toevoegt

Alternatieve manieren om de implementatie van basismodellen aan te passen via SageMaker JumpStart

In deze sectie delen we enkele alternatieve manieren om het model te implementeren.

Gebruik SageMaker JumpStart API's van uw favoriete IDE

Modellen geleverd door SageMaker JumpStart vereisen geen toegang tot Studio. U kunt ze vanuit elke IDE implementeren op SageMaker-eindpunten, dankzij de JumpStart-API's. U kunt de eerder in dit bericht besproken Studio-installatiestap overslaan en de JumpStart-API's gebruiken om het model te implementeren. Deze API's bieden argumenten waar ook VPC-configuraties kunnen worden geleverd. De API's maken deel uit van de SageMaker Python-SDK zelf. Voor meer informatie, zie Voorgetrainde modellen.

Gebruik notebooks van SageMaker JumpStart van SageMaker Studio

SageMaker JumpStart biedt ook notebooks om het model direct te implementeren. Kies op de modeldetailpagina Notitieblok openen om een ​​voorbeeldnotitieblok te openen met de code om het eindpunt te implementeren. Het notitieboekje gebruikt SageMaker JumpStart Industry API's waarmee u de modellen kunt weergeven en filteren, de artefacten kunt ophalen en de eindpunten kunt implementeren en opvragen. U kunt de notebookcode ook bewerken op basis van uw use case-specifieke vereisten.

open-jumpstart-notebook

Ruim middelen op

Check out de SCHOONMAKEN.md bestand om gedetailleerde stappen te vinden voor het verwijderen van de Studio, VPC en andere bronnen die zijn gemaakt als onderdeel van dit bericht.

Probleem oplossen

Als u problemen ondervindt bij het maken van de CloudFormation-stacks, raadpleeg dan Problemen met CloudFormation oplossen.

Conclusie

Generatieve AI aangedreven door grote taalmodellen verandert de manier waarop mensen inzichten uit informatie verwerven en toepassen. Organisaties die in sterk gereguleerde ruimtes opereren, moeten de generatieve AI-mogelijkheden echter gebruiken op een manier die hen in staat stelt sneller te innoveren, maar ook de toegangspatronen tot dergelijke mogelijkheden vereenvoudigt.

We moedigen u aan om de aanpak in dit bericht uit te proberen om generatieve AI-mogelijkheden in uw bestaande omgeving in te bedden, terwijl u deze binnen uw eigen VPC zonder internettoegang houdt. Bekijk het volgende voor meer informatie over SageMaker JumpStart-basismodellen:


Over de auteurs

Gebruik generatieve AI-basismodellen in VPC-modus zonder internetverbinding met Amazon SageMaker JumpStart | Amazon Web Services PlatoBlockchain Data Intelligence. Verticaal zoeken. Ai.Vikesh Pandey is een Machine Learning Specialist Solutions Architect bij AWS, die klanten uit de financiële sector helpt bij het ontwerpen en bouwen van oplossingen op basis van generatieve AI en ML. Buiten het werk houdt Vikesh ervan om verschillende keukens uit te proberen en buitensporten te beoefenen.

Gebruik generatieve AI-basismodellen in VPC-modus zonder internetverbinding met Amazon SageMaker JumpStart | Amazon Web Services PlatoBlockchain Data Intelligence. Verticaal zoeken. Ai. Mehran Nikoo is een Senior Solutions Architect bij AWS, werkt samen met Digital Native-bedrijven in het VK en helpt hen hun doelen te bereiken. Gepassioneerd door het toepassen van zijn software-engineering-ervaring op machine learning, is hij gespecialiseerd in end-to-end machine learning en MLOps-praktijken.

Tijdstempel:

Meer van AWS-machine learning