Используйте базовые модели генеративного ИИ в режиме VPC без подключения к Интернету с помощью Amazon SageMaker JumpStart | Веб-сервисы Амазонки

Используйте базовые модели генеративного ИИ в режиме VPC без подключения к Интернету с помощью Amazon SageMaker JumpStart | Веб-сервисы Амазонки

Благодаря последним достижениям в генеративный ИИ, ведется много дискуссий о том, как использовать генеративный ИИ в разных отраслях для решения конкретных бизнес-задач. Генеративный ИИ — это тип ИИ, который может создавать новый контент и идеи, включая разговоры, истории, изображения, видео и музыку. Все это поддерживается очень большими моделями, которые предварительно обучены на огромных объемах данных и обычно называются модели фундамента (ФМ). Эти FM могут выполнять широкий спектр задач, охватывающих несколько доменов, таких как написание сообщений в блогах, создание изображений, решение математических задач, участие в диалогах и ответы на вопросы на основе документа. Размер и универсальный характер FM отличают их от традиционных моделей ML, которые обычно выполняют определенные задачи, такие как анализ текста на предмет тональности, классификация изображений и прогнозирование тенденций.

В то время как организации стремятся использовать возможности этих FM, они также хотят, чтобы решения на основе FM работали в их собственных защищенных средах. Организации, работающие в строго регулируемых областях, таких как глобальные финансовые услуги, здравоохранение и медико-биологические науки, предъявляют аудиторские требования и требования соответствия для запуска своей среды в своих VPC. Фактически, во многих случаях даже прямой доступ в Интернет отключается в этих средах, чтобы избежать воздействия любого непреднамеренного трафика, как входящего, так и исходящего.

Amazon SageMaker JumpStart — это центр машинного обучения, предлагающий алгоритмы, модели и решения машинного обучения. С помощью SageMaker JumpStart специалисты по машинному обучению могут выбирать из растущего списка наиболее эффективных FM с открытым исходным кодом. Он также предоставляет возможность развертывания этих моделей в собственных Виртуальное частное облако (VPC).

В этом посте мы покажем, как использовать JumpStart для развертывания Флан-Т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. Разверните базовую модель генеративного искусственного интеллекта Flan T5-XXL с помощью JumpStart в облаке VPC без доступа к Интернету.

Ниже приведена архитектурная схема решения.

солнце-арка

Давайте рассмотрим различные шаги для реализации этого решения.

Предпосылки

Чтобы следовать этому посту, вам необходимо следующее:

Настройте VPC без подключения к Интернету

Создайте новый стек CloudFormation с помощью 01_networking.yaml шаблон. Этот шаблон создает новый VPC и добавляет две частные подсети в двух зонах доступности без подключения к Интернету. Затем он развертывает конечные точки шлюза VPC для доступа Простой сервис хранения Amazon (Amazon S3) и интерфейсные конечные точки VPC для SageMaker и некоторых других сервисов, чтобы позволить ресурсам в VPC подключаться к сервисам AWS через Приватная ссылка AWS.

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

vpc-стек-ввод

Это решение не отличается высокой доступностью, поскольку шаблон CloudFormation создает интерфейсные конечные точки VPC только в одной подсети, чтобы снизить затраты при выполнении действий, описанных в этом посте.

Настройте Studio с помощью VPC

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

студия-cfn-стек-ввод

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

домашний домен

Чтобы убедиться, что у пользователя домена Studio нет доступа в Интернет, запустить Studio с помощью консоли SageMaker. Выберите Файл, Новыеи Терминал, затем попытайтесь получить доступ к интернет-ресурсу. Как показано на следующем снимке экрана, терминал будет продолжать ждать ресурса и в конечном итоге истечет время ожидания.

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

Это доказывает, что Studio работает в облаке VPC, у которого нет доступа в Интернет.

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

Мы можем развернуть эту модель как через Studio, так и через API. JumpStart предоставляет весь код для развертывания модели через записную книжку SageMaker, доступную из Studio. В этом посте мы демонстрируем эту возможность из Studio.

  • На странице приветствия Studio выберите Толчок в разделе Готовые и автоматизированные решения.

студия-приветствие-страница

  • Выберите модель Flan-T5 XXL в разделе Фундаментальные модели.

js-модель-концентратор

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

развертывание-js

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

js-развертывание-параметры-безопасности

ЗАМЕТКА: независимо от того, развернута ли модель SageMaker JumpStart в VPC или нет, модель всегда работает в режиме сетевой изоляции, который изолирует контейнер модели, поэтому входящие или исходящие сетевые вызовы не могут выполняться в контейнер модели или из него. Поскольку мы используем VPC, SageMaker загружает артефакт модели через указанное VPC. Запуск контейнера модели в сетевой изоляции не мешает вашей конечной точке SageMaker отвечать на запросы логического вывода. Серверный процесс работает вместе с контейнером модели и пересылает ему запросы на вывод, но контейнер модели не имеет доступа к сети.

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

js-развертывание-прогресс

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

Артефакт модели также можно скопировать в любой частный зоопарк моделей или в вашу собственную корзину S3 для дальнейшего контроля и защиты местоположения источника модели. Вы можете использовать следующую команду для загрузки модели локально с помощью Интерфейс командной строки AWS (интерфейс командной строки AWS):

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 для быстрого тестирования конечной точки.

запуск-развертывание-завершение

  • В блокноте выберите изображение как Наука о данных 3.0 и ядро ​​как Python 3. Когда ядро ​​будет готово, вы можете запустить ячейки записной книжки, чтобы делать прогнозы на конечной точке. Обратите внимание, что ноутбук использует вызвать_конечную точку() API из AWS SDK для Python делать прогнозы. В качестве альтернативы вы можете использовать Предсказание() в SageMaker Python SDK способ достижения того же результата.

запуск-развертывание-ноутбук-переход

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

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

Ниже приведены некоторые преимущества развертывания моделей SageMaker JumpStart в режиме VPC:

  • Поскольку SageMaker JumpStart не загружает модели из общедоступного зоопарка моделей, его можно использовать в полностью заблокированных средах, где нет доступа в Интернет.
  • Поскольку доступ к сети может быть ограничен для моделей SageMaker JumpStart, это помогает командам повысить уровень безопасности среды.
  • Из-за границ VPC доступ к конечной точке также может быть ограничен через подсети и группы безопасности, что добавляет дополнительный уровень безопасности.

Альтернативные способы настройки развертывания базовых моделей с помощью SageMaker JumpStart.

В этом разделе мы расскажем о некоторых альтернативных способах развертывания модели.

Используйте SageMaker JumpStart API из предпочитаемой вами IDE

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

Используйте записные книжки, предоставленные SageMaker JumpStart из SageMaker Studio.

SageMaker JumpStart также предоставляет ноутбуки для непосредственного развертывания модели. На странице сведений о модели выберите Открыть блокнот чтобы открыть образец записной книжки, содержащий код для развертывания конечной точки. В ноутбуке используется Отраслевые API-интерфейсы SageMaker JumpStart которые позволяют вам составлять список и фильтровать модели, извлекать артефакты, а также развертывать конечные точки и запрашивать их. Вы также можете отредактировать код записной книжки в соответствии с конкретными требованиями вашего варианта использования.

open-jumpstart-блокнот

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

Попробуйте CLEANUP.md файл, чтобы найти подробные инструкции по удалению Studio, VPC и других ресурсов, созданных в рамках этого поста.

УСТРАНЕНИЕ НЕПОЛАДОК

Если у вас возникли проблемы при создании стеков CloudFormation, см. Устранение неполадок CloudFormation.

Заключение

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

Мы рекомендуем вам попробовать подход, представленный в этом посте, чтобы внедрить возможности генеративного ИИ в вашу существующую среду, сохраняя при этом его в своем собственном VPC без доступа к Интернету. Чтобы узнать больше о базовых моделях SageMaker JumpStart, ознакомьтесь со следующими материалами:


Об авторах

Используйте генеративные базовые модели искусственного интеллекта в режиме VPC без подключения к Интернету с помощью Amazon SageMaker JumpStart | Веб-сервисы Amazon PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.Викеш Пандей является специалистом по машинному обучению и архитектором решений в AWS, помогая клиентам из финансовой отрасли проектировать и создавать решения на основе генеративного искусственного интеллекта и машинного обучения. Вне работы Викеш любит пробовать разные кухни и заниматься спортом на открытом воздухе.

Используйте генеративные базовые модели искусственного интеллекта в режиме VPC без подключения к Интернету с помощью Amazon SageMaker JumpStart | Веб-сервисы Amazon PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай. Мехран Нику является старшим архитектором решений в AWS, работает с компаниями Digital Native в Великобритании и помогает им в достижении их целей. Увлеченный применением своего опыта разработки программного обеспечения для машинного обучения, он специализируется на сквозном машинном обучении и методах MLOps.

Отметка времени:

Больше от Машинное обучение AWS