Використовуйте генеративні базові моделі ШІ в режимі VPC без підключення до Інтернету за допомогою Amazon SageMaker JumpStart | Веб-сервіси Amazon

Використовуйте генеративні базові моделі ШІ в режимі VPC без підключення до Інтернету за допомогою Amazon SageMaker JumpStart | Веб-сервіси Amazon

З останніми досягненнями в генеративний ШІ, відбувається багато дискусій про те, як використовувати генеративний ШІ в різних галузях для вирішення конкретних бізнес-завдань. Генеративний штучний інтелект – це тип штучного інтелекту, який може створювати новий контент та ідеї, зокрема розмови, історії, зображення, відео та музику. Все це підтримується дуже великими моделями, які попередньо навчені на величезних обсягах даних і зазвичай називаються фундаментні моделі (FM). Ці FM можуть виконувати широкий спектр завдань, які охоплюють кілька доменів, як-от написання дописів у блогах, створення зображень, розв’язування математичних задач, участь у діалогах і відповіді на запитання на основі документа. Розмір і загальний характер FM відрізняють їх від традиційних моделей ML, які зазвичай виконують специфічні завдання, як-от аналіз тексту на настрої, класифікація зображень і прогнозування тенденцій.

Хоча організації прагнуть використовувати потужність цих FM, вони також хочуть, щоб рішення на основі FM працювали в їхніх власних захищених середовищах. Організації, які працюють у суворо регульованих сферах, як-от глобальні фінансові послуги, охорона здоров’я та науки про життя, мають вимоги до аудиторії та відповідності для роботи свого середовища у своїх VPC. Фактично, у таких середовищах часто навіть прямий доступ до Інтернету вимкнено, щоб уникнути небажаного трафіку, як вхідного, так і вихідного.

Amazon SageMaker JumpStart це центр ML, який пропонує алгоритми, моделі та рішення ML. Завдяки SageMaker JumpStart фахівці з машинного навчання можуть вибирати зі списку найефективніших FM з відкритим кодом, що постійно зростає. Він також надає можливість розгортати ці моделі у своїх власних Віртуальна приватна хмара (VPC).

У цій публікації ми демонструємо, як використовувати JumpStart для розгортання a Флан-Т5 XXL модель у VPC без підключення до Інтернету. Ми обговорюємо такі теми:

  • Як розгорнути базову модель за допомогою SageMaker JumpStart у VPC без доступу до Інтернету
  • Переваги розгортання FM за допомогою моделей SageMaker JumpStart у режимі VPC
  • Альтернативні способи налаштування розгортання базових моделей за допомогою JumpStart

Крім FLAN-T5 XXL, JumpStart пропонує безліч різних моделей фундаментів для різних завдань. Щоб отримати повний список, перегляньте Початок роботи з Amazon SageMaker JumpStart.

Огляд рішення

У рамках рішення ми розглядаємо такі кроки:

  1. Налаштуйте VPC без підключення до Інтернету.
  2. Створювати Студія Amazon SageMaker за допомогою створеного нами VPC.
  3. Розгорніть генеративну базову модель AI Flan T5-XXL за допомогою JumpStart у VPC без доступу до Інтернету.

Нижче наведено діаграму архітектури рішення.

соль-арх

Розглянемо різні етапи реалізації цього рішення.

Передумови

Щоб слідувати цій публікації, вам потрібно:

Налаштуйте VPC без підключення до Інтернету

Створіть новий стек CloudFormation за допомогою 01_networking.yaml шаблон. Цей шаблон створює новий VPC і додає дві приватні підмережі в двох зонах доступності без підключення до Інтернету. Потім він розгортає кінцеві точки шлюзу VPC для доступу Служба простого зберігання Amazon (Amazon S3) і інтерфейс кінцевих точок VPC для SageMaker і кількох інших служб, щоб дозволити ресурсам у VPC підключатися до служб AWS через AWS PrivateLink.

Укажіть назву стека, наприклад No-Internetі завершіть процес створення стека.

vpc-stack-input

Це рішення не надто доступне, оскільки шаблон CloudFormation створює кінцеві точки інтерфейсу VPC лише в одній підмережі, щоб зменшити витрати під час виконання кроків у цій публікації.

Налаштуйте Studio за допомогою VPC

Створіть інший стек CloudFormation за допомогою 02_sagemaker_studio.yaml, який створює домен Studio, профіль користувача Studio та допоміжні ресурси, наприклад ролі IAM. Виберіть назву для стека; для цієї публікації ми використовуємо назву SageMaker-Studio-VPC-No-Internet. Введіть назву стеку VPC, який ви створили раніше (No-Internet) як CoreNetworkingStackName параметр і залишити все інше за замовчуванням.

studio-cfn-stack-input

Зачекайте, доки AWS CloudFormation не повідомить, що створення стека завершено. Ви можете підтвердити, що домен Studio доступний для використання на консолі SageMaker.

домен-домашній

Щоб переконатися, що користувач домену Studio не має доступу до Інтернету, запустіть Studio за допомогою консолі SageMaker, Вибирати філе, Нові та термінал, а потім спробуйте отримати доступ до Інтернет-ресурсу. Як показано на наступному скріншоті, термінал продовжуватиме очікувати на ресурс і врешті-решт закінчиться час очікування.

студія-термінал

Це доводить, що Studio працює у VPC, який не має доступу до Інтернету.

Розгорніть генеративну базову модель AI Flan T5-XXL за допомогою JumpStart

Ми можемо розгорнути цю модель як через Studio, так і через API. JumpStart надає весь код для розгортання моделі через блокнот SageMaker, доступний із Studio. У цій публікації ми демонструємо цю можливість від Studio.

  • На сторінці привітання Studio виберіть Поштовх у розділі Готові та автоматизовані рішення.

студія-вітальна сторінка

  • Виберіть модель Flan-T5 XXL нижче Моделі основи.

js-model-hub

  • За замовчуванням він відкриває Розгортання вкладка. Розгорніть Конфігурація розгортання розділ, щоб змінити hosting instance та endpoint nameабо додайте додаткові теги. Також є можливість змінити S3 bucket location де зберігатиметься артефакт моделі для створення кінцевої точки. Для цієї публікації ми залишаємо все за умовчанням. Занотуйте назву кінцевої точки, щоб використовувати її під час виклику кінцевої точки для створення прогнозів.

розгорнути-js

  • Розгорнути налаштування безпеки розділ, де можна вказати IAM role для створення кінцевої точки. Ви також можете вказати VPC configurations надаючи subnets та security groups. Ідентифікатори підмережі та ідентифікатори групи безпеки можна знайти на вкладці «Виходи» стеку VPC на консолі AWS CloudFormation. SageMaker JumpStart вимагає принаймні двох підмереж як частину цієї конфігурації. Підмережі та групи безпеки контролюють доступ до контейнера моделі та з нього.

js-deploy-security-settings

ПРИМІТКА: Незалежно від того, розгорнуто модель SageMaker JumpStart у VPC чи ні, модель завжди працює в режимі ізоляції мережі, який ізолює контейнер моделі, тому не можна здійснювати вхідні чи вихідні мережеві виклики до або з контейнера моделі. Оскільки ми використовуємо VPC, SageMaker завантажує артефакт моделі через вказаний нами VPC. Запуск контейнера моделі в ізоляції мережі не перешкоджає кінцевій точці SageMaker відповідати на запити висновків. Серверний процес працює разом із контейнером моделі та пересилає йому запити на висновок, але контейнер моделі не має доступу до мережі.

  • Вибирати Розгортання щоб розгорнути модель. Ми можемо бачити статус створення кінцевої точки майже в реальному часі. Створення кінцевої точки може тривати 5–10 хвилин.

js-deploy-progress

Зверніть увагу на значення поля Розташування даних моделі на цій сторінці. Усі моделі SageMaker JumpStart розміщено на керованому відрі SageMaker S3 (s3://jumpstart-cache-prod-{region}). Таким чином, незалежно від того, яку модель вибрано з JumpStart, модель розгортається з загальнодоступного сегмента SageMaker JumpStart S3, і трафік ніколи не спрямовується до публічних API зоопарку моделей для завантаження моделі. Ось чому створення кінцевої точки моделі почалося успішно, навіть коли ми створювали кінцеву точку у VPC, який не має прямого доступу до Інтернету.

Артефакт моделі також можна скопіювати в будь-який приватний модельний зоопарк або власне відро S3 для подальшого контролю та захисту джерела моделі. Ви можете використати таку команду, щоб завантажити модель локально за допомогою Інтерфейс командного рядка AWS (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 .
  • Через кілька хвилин кінцеву точку буде успішно створено та відображає статус як У службі, Вибирати Open Notebook в Use Endpoint from Studio розділ. Це зразок блокнота, наданий як частина досвіду JumpStart для швидкого тестування кінцевої точки.

jumpstart-deploy-complete

  • У зошиті виберіть зображення як Наука про дані 3.0 і ядро ​​як Python 3. Коли ядро ​​буде готове, ви можете запустити клітинки блокнота, щоб зробити прогнози на кінцевій точці. Зверніть увагу, що в блокноті використовується invoke_endpoint() API від AWS SDK для Python робити прогнози. Крім того, ви можете використовувати SageMaker Python SDK predict() спосіб досягнення такого ж результату.

run-deploy-notebook-jumpstart

На цьому етапи розгортання моделі Flan-T5 XXL за допомогою JumpStart у VPC без доступу до Інтернету завершено.

Переваги розгортання моделей SageMaker JumpStart у режимі VPC

Нижче наведено деякі з переваг розгортання моделей SageMaker JumpStart у режимі VPC:

  • Оскільки SageMaker JumpStart не завантажує моделі з публічного модельного зоопарку, його можна використовувати в повністю закритих середовищах, де немає доступу до Інтернету
  • Оскільки для моделей SageMaker JumpStart мережевий доступ може бути обмежений і обмежений, це допомагає командам покращити рівень безпеки середовища
  • Завдяки межам VPC доступ до кінцевої точки також можна обмежити через підмережі та групи безпеки, що додає додатковий рівень безпеки

Альтернативні способи налаштування розгортання моделей основи за допомогою SageMaker JumpStart

У цьому розділі ми поділимося деякими альтернативними способами розгортання моделі.

Використовуйте API SageMaker JumpStart із бажаної IDE

Моделі, надані SageMaker JumpStart, не потребують доступу до Studio. Ви можете розгорнути їх на кінцевих точках SageMaker з будь-якої IDE завдяки API JumpStart. Ви можете пропустити крок налаштування Studio, описаний раніше в цій публікації, і використати JumpStart API для розгортання моделі. Ці API надають аргументи, де також можна надати конфігурації VPC. API є частиною SageMaker Python SDK себе. Для отримання додаткової інформації див Попередньо навчені моделі.

Використовуйте блокноти, надані SageMaker JumpStart від SageMaker Studio

SageMaker JumpStart також надає ноутбуки для безпосереднього розгортання моделі. Виберіть на сторінці моделі Відкрийте блокнот щоб відкрити зразок блокнота, що містить код для розгортання кінцевої точки. Зошит використовує SageMaker JumpStart Industry API які дозволяють створювати списки та фільтрувати моделі, отримувати артефакти, розгортати та запитувати кінцеві точки. Ви також можете редагувати код блокнота відповідно до вимог конкретного випадку використання.

open-jumpstart-notebook

Очистити ресурси

Від'їзд CLEANUP.md файл, щоб знайти детальні кроки щодо видалення Studio, VPC та інших ресурсів, створених у рамках цієї публікації.

Пошук і усунення несправностей

Якщо у вас виникли проблеми зі створенням стеків CloudFormation, зверніться до Усунення несправностей CloudFormation.

Висновок

Генеративний штучний інтелект на основі великих мовних моделей змінює те, як люди отримують і застосовують інформацію з інформації. Однак організації, які працюють у суворо регульованих просторах, повинні використовувати генеративні можливості штучного інтелекту таким чином, щоб вони могли швидше впроваджувати інновації, але також спрощували схеми доступу до таких можливостей.

Ми заохочуємо вас спробувати підхід, запропонований у цій публікації, щоб вбудувати генеративні можливості штучного інтелекту у ваше існуюче середовище, зберігаючи його у власному VPC без доступу до Інтернету. Щоб отримати додаткову інформацію про моделі основи SageMaker JumpStart, перегляньте наступне:


Про авторів

Використовуйте генеративні базові моделі ШІ в режимі VPC без підключення до Інтернету за допомогою Amazon SageMaker JumpStart | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.Вікеш Панді є спеціалістом з машинного навчання, архітектором рішень в AWS, який допомагає клієнтам із фінансових галузей проектувати та створювати рішення на основі генеративного штучного інтелекту та машинного навчання. Поза роботою Вікеш любить пробувати різні кухні та займатися спортом на свіжому повітрі.

Використовуйте генеративні базові моделі ШІ в режимі VPC без підключення до Інтернету за допомогою Amazon SageMaker JumpStart | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai. Мехран Нікоо є старшим архітектором рішень в AWS, працює з компаніями Digital Native у Великій Британії та допомагає їм досягти поставлених цілей. Захоплюючись застосуванням свого досвіду розробки програмного забезпечення для машинного навчання, він спеціалізується на наскрізному машинному навчанні та практиках MLOps.

Часова мітка:

Більше від AWS Машинне навчання