9 августа 2022 г. мы объявили о доступности совместного использования данных между аккаунтами. Сущности Amazon SageMaker Pipelines. Теперь вы можете использовать поддержку нескольких аккаунтов для Конвейеры Amazon SageMaker для совместного использования объектов конвейера между учетными записями AWS и доступа к общим конвейерам напрямую через Создатель мудреца Амазонки Вызовы API.
Клиенты все чаще принимают архитектуры с несколькими аккаунтами для развертывания и управления рабочими процессами машинного обучения (ML) с помощью SageMaker Pipelines. Это включает в себя создание рабочих процессов в учетных записях разработки или экспериментирования (dev), их развертывание и тестирование в учетной записи тестирования или подготовки к производству (тестовую) и, наконец, их перемещение в рабочие учетные записи (prod) для интеграции с другими бизнес-процессами. Вы можете получить выгоду от совместного использования конвейеров SageMaker между аккаунтами в следующих случаях:
- Когда специалисты по данным создают рабочие процессы машинного обучения в учетной записи разработчика, эти рабочие процессы затем развертываются инженером машинного обучения в виде конвейера SageMaker в выделенной тестовой учетной записи. Для дальнейшего мониторинга этих рабочих процессов специалистам по данным теперь требуется разрешение только на чтение между учетными записями для развернутого конвейера в тестовой учетной записи.
- Инженерам ML, администраторам ML и группам обеспечения соответствия требованиям, которые управляют развертыванием и работой этих рабочих процессов ML из учетной записи общих служб, также требуется видимость развернутого конвейера в тестовой учетной записи. Им также могут потребоваться дополнительные разрешения для запуска, остановки и повторного запуска рабочих процессов машинного обучения.
В этом посте мы представляем пример архитектуры с несколькими учетными записями для разработки и развертывания рабочих процессов машинного обучения с помощью SageMaker Pipelines.
Обзор решения
Стратегия использования нескольких учетных записей помогает обеспечить изоляцию данных, проектов и команд, одновременно поддерживая этапы жизненного цикла разработки программного обеспечения. Совместное использование конвейера между учетными записями поддерживает стратегию с несколькими учетными записями, устраняя накладные расходы на вход и выход из нескольких учетных записей, а также улучшая рабочие процессы тестирования и развертывания машинного обучения за счет совместного использования ресурсов непосредственно между несколькими учетными записями.
В этом примере у нас есть группа по обработке данных, которая использует специальную учетную запись разработчика для первоначальной разработки конвейера SageMaker. Затем этот конвейер передается инженеру ML, который создает конвейер непрерывной интеграции и непрерывной доставки (CI/CD) в своей учетной записи общих служб, чтобы развернуть этот конвейер в тестовой учетной записи. Чтобы по-прежнему иметь возможность отслеживать и контролировать развернутый конвейер из соответствующих учетных записей разработчиков и общих служб, акции ресурсов настроены с Диспетчер доступа к ресурсам AWS в тестовых учетных записях и учетных записях разработчиков. Благодаря этой настройке инженер машинного обучения и специалист по данным теперь могут отслеживать и контролировать конвейеры в учетных записях разработки и тестирования из своих соответствующих учетных записей, как показано на следующем рисунке.
В рабочем процессе специалист по данным и инженер ML выполняют следующие шаги:
- Специалист по данным (DS) создает конвейер модели в учетной записи разработчика.
- Инженер ML (MLE) создает модельный конвейер и создает конвейер (в этом посте мы называем его
sagemaker-pipeline
). sagemaker-pipeline
код привержен AWS CodeCommit репозиторий в учетной записи общих служб.- Специалист по данным создает общий ресурс оперативной памяти AWS для
sagemaker-pipeline
и делится им с учетной записью общих служб, которая принимает долю ресурса. - Из учетной записи общих служб инженеры машинного обучения теперь могут описывать, отслеживать и администрировать запуски конвейера в учетной записи разработчика, используя Вызовы API SageMaker.
- Конвейер CI/CD, запускаемый в общей учетной записи службы, создает и развертывает код в тестовой учетной записи, используя Кодовый конвейер AWS.
- Конвейер CI/CD создает и запускает
sagemaker-pipeline
в тестовом аккаунте. - После запуска
sagemaker-pipeline
в тестовой учетной записи конвейер CI/CD создает общий ресурс дляsagemaker-pipeline
в тестовом аккаунте. - Доля ресурса из теста
sagemaker-pipeline
с разрешениями только на чтение создается с учетной записью разработчика, которая принимает общий ресурс. - Специалист по данным теперь может описывать и отслеживать состояние запуска тестового конвейера с помощью вызовов API SageMaker из учетной записи разработчика.
- Доля ресурса из теста
sagemaker-pipeline
с расширенными разрешениями создается с учетной записью общих служб, которая принимает общий ресурс. - Инженер машинного обучения теперь может описывать, отслеживать и администрировать тестовый конвейер, запускаемый с помощью вызовов API SageMaker из учетной записи общих служб.
В следующих разделах мы более подробно рассмотрим и продемонстрируем, как настроить общий доступ к нескольким учетным записям для конвейеров SageMaker.
Как создавать конвейеры SageMaker и делиться ими между учетными записями
В этом разделе мы рассмотрим необходимые шаги для создания и совместного использования конвейеров между учетными записями с использованием AWS RAM и API SageMaker.
Настройте среду
Во-первых, нам нужно настроить среду с несколькими учетными записями, чтобы продемонстрировать совместное использование конвейеров SageMaker между учетными записями:
- Настройте две учетные записи AWS (для разработчиков и для тестирования). Вы можете настроить это как учетные записи участников организации или как независимые учетные записи.
- Если вы настраиваете свои учетные записи в качестве члена организации, вы можете включить совместное использование ресурсов с вашей организацией. При использовании этого параметра, когда вы предоставляете общий доступ к ресурсам в своей организации, AWS RAM не отправляет приглашения принципалам. Руководители вашей организации получают доступ к общим ресурсам без обмена приглашениями.
- В тестовом аккаунте запустите Студия Amazon SageMaker и запустить блокнот поезд-регистр-развертывание-конвейерной модели. В результате в вашей тестовой учетной записи будет создан пример конвейера. Чтобы упростить демонстрацию, мы используем SageMaker Studio в тестовой учетной записи для запуска конвейера. Для реальных проектов вам следует использовать Studio только в учетной записи разработчика и запускать SageMaker Pipeline в тестовой учетной записи, используя инструменты CI/CD.
Следуйте инструкциям в следующем разделе, чтобы поделиться этим конвейером с учетной записью разработчика.
Настройка общего ресурса конвейера
Чтобы поделиться своим конвейером с учетной записью разработчика, выполните следующие действия:
- В консоли AWS RAM выберите Создать общий ресурс.
- Что касается Выберите тип ресурса, выберите Конвейеры SageMaker.
- Выберите конвейер, который вы создали на предыдущем шаге.
- Выберите Следующая.
- Что касается Разрешения..., выберите соответствующие разрешения.
- Выберите Следующая.
Далее вы решаете, как предоставить доступ принципалам. - Если вам нужно предоставить общий доступ к конвейеру только внутри учетных записей вашей организации, выберите Разрешить общий доступ только внутри вашей организации; в противном случае выберите Разрешить делиться с кем угодно.
- Что касается Принципалы, выберите тип основного пользователя (вы можете использовать учетную запись AWS, организацию или подразделение в зависимости от ваших требований к совместному использованию). В этом посте мы делимся информацией со всеми, кто имеет доступ к учетной записи AWS.
- Выберите свой основной идентификатор.
- Выберите Следующая.
- На Просмотрите и создайте странице, убедитесь, что ваша информация верна, и выберите Создать общий ресурс.
- Перейдите к целевой учетной записи (для этого сообщения — к вашей учетной записи разработчика).
- На консоли AWS RAM в разделе Поделился со мной на панели навигации выберите Ресурсы.
- Выберите свою долю ресурса и выберите Принять совместное использование ресурса.
Разрешения на совместное использование ресурсов
При создании общего ресурса вы можете выбрать одну из двух поддерживаемых политик разрешений, которые будут связаны с типом ресурса конвейера SageMaker. Обе политики предоставляют доступ к любому выбранному конвейеру и всем его запускам.
Ассоциация AWSRAMDefaultPermissionSageMakerPipeline
политика разрешает следующие действия только для чтения:
Ассоциация AWSRAMPermissionSageMakerPipelineAllowExecution
Политика включает в себя все разрешения только для чтения из политики по умолчанию, а также позволяет общим учетным записям запускать, останавливать и повторять запуск конвейера.
Политика разрешений на запуск расширенного конвейера позволяет выполнять следующие действия:
Доступ к объектам общего конвейера через прямые вызовы API
В этом разделе мы рассмотрим, как вы можете использовать различные вызовы API SageMaker Pipeline, чтобы получить представление о конвейерах, работающих в удаленных учетных записях, к которым вам предоставлен общий доступ. Для тестирования API с помощью конвейера, работающего в тестовой учетной записи из учетной записи разработчика, войдите в учетную запись разработчика и используйте Облачная оболочка AWS.
Для вызовов API конвейера SageMaker между учетными записями всегда необходимо использовать ARN вашего конвейера в качестве идентификатора конвейера. Сюда также входят команды, требующие имени конвейера, где вам необходимо использовать ARN вашего конвейера в качестве имени конвейера.
Чтобы получить ARN конвейера, в тестовой учетной записи перейдите к сведениям о конвейере в Studio через Ресурсы SageMaker.
Выберите Трубопроводы в вашем списке ресурсов.
Выберите свой конвейер и перейдите к нему. Настройки вкладка. Вы можете найти трубопровод ARN с помощью вашего Метаданные информация. В этом примере ваш ARN определяется как "arn:aws:sagemaker:us-east-1:<account-id>:pipeline/serial-inference-pipeline"
.
ListPipelineExecutions
Этот вызов API перечисляет пробеги вашего трубопровода. Выполните следующую команду, заменив $SHARED_PIPELINE_ARN
с вашим конвейером ARN из CloudShell или с помощью Интерфейс командной строки AWS (AWS CLI), настроенный с использованием соответствующих Управление идентификацией и доступом AWS (Я) роль:
В ответе перечислены все запуски вашего конвейера с указанием их PipelineExecutionArn
, StartTime
, PipelineExecutionStatus
качества PipelineExecutionDisplayName
:
Описать конвейер
Этот вызов API описывает детали вашего трубопровода. Выполните следующую команду, заменив $SHARED_PIPELINE_ARN
с вашим конвейером ARN:
В ответе предоставляются метаданные вашего конвейера, а также информация о его создании и изменении:
Описать конвейерное выполнение
Этот вызов API описывает детали вашего трубопровода. Выполните следующую команду, заменив $SHARED_PIPELINE_ARN
с вашим конвейером ARN:
В ответе содержится подробная информация о запуске вашего конвейера, включая PipelineExecutionStatus
, ExperimentName
качества TrialName
:
СтартПайплайнВыполнение
Этот вызов API начинается трасса трубопровода. Выполните следующую команду, заменив $SHARED_PIPELINE_ARN
с вашим конвейером ARN и $CLIENT_REQUEST_TOKEN
с уникальным идентификатором, чувствительным к регистру, который вы создаете для этого запуска. Идентификатор должен содержать от 32 до 128 символов. Например, вы можете сгенерировать строку, используя Команда AWS CLI kmsgenerate-random.
В качестве ответа этот вызов API возвращает PipelineExecutionArn
начатого пробега:
Остановить конвейер
Этот вызов API останавливается трасса трубопровода. Выполните следующую команду, заменив $PIPELINE_EXECUTION_ARN
с помощью конвейера запустите ARN вашего работающего конвейера и $CLIENT_REQUEST_TOKEN
с уникальным идентификатором, чувствительным к регистру, который вы создаете для этого запуска. Идентификатор должен содержать от 32 до 128 символов. Например, вы можете сгенерировать строку, используя Команда AWS CLI kmsgenerate-random.
В качестве ответа этот вызов API возвращает PipelineExecutionArn
остановленного трубопровода:
Заключение
Совместное использование конвейеров SageMaker между учетными записями позволяет безопасно совместно использовать объекты конвейера между учетными записями AWS и получать доступ к общим конвейерам посредством прямых вызовов API без необходимости входа и выхода из нескольких учетных записей.
В этом посте мы углубились в функциональные возможности, чтобы показать, как вы можете совместно использовать конвейеры между учетными записями и получать к ним доступ через вызовы API SageMaker.
В качестве следующего шага вы можете использовать эту функцию для своего следующего проекта машинного обучения.
Полезные ресурсы
Чтобы начать работу с конвейерами SageMaker и совместно использовать конвейеры между учетными записями, обратитесь к следующим ресурсам:
Об авторах
Рам Виттал является специалистом по машинному обучению, архитектором решений в AWS. Он имеет более чем 20-летний опыт проектирования и создания распределенных, гибридных и облачных приложений. Он увлечен созданием безопасных и масштабируемых решений AI/ML и больших данных, чтобы помочь корпоративным клиентам в их переходе на облачные технологии и их оптимизации для улучшения их бизнес-результатов. В свободное время он увлекается теннисом, фотографией и боевиками.
Майра Ладейра Танке является специалистом по машинному обучению, архитектором решений в AWS. Имея опыт работы в области науки о данных, она имеет 9-летний опыт разработки и создания приложений машинного обучения для клиентов из разных отраслей. В качестве технического руководителя она помогает клиентам ускорить достижение ценности бизнеса с помощью новых технологий и инновационных решений. В свободное время Майра любит путешествовать и проводить время со своей семьей в теплом месте.
Габриэль Зилка — консультант по профессиональным услугам в AWS. Он тесно сотрудничает с клиентами, чтобы ускорить их внедрение в облако. Специализируясь в области MLOps, он фокусируется на производстве рабочих нагрузок машинного обучения путем автоматизации сквозных жизненных циклов машинного обучения и помощи в достижении желаемых бизнес-результатов. В свободное время он любит путешествовать и ходить в походы по Баварским Альпам.
- AI
- ай искусство
- генератор искусств ай
- искусственный интеллект
- Создатель мудреца Амазонки
- искусственный интеллект
- сертификация искусственного интеллекта
- искусственный интеллект в банковском деле
- робот с искусственным интеллектом
- роботы с искусственным интеллектом
- программное обеспечение искусственного интеллекта
- Машинное обучение AWS
- блокчейн
- конференция по блокчейну
- Coingenius
- разговорный искусственный интеллект
- криптоконференция ИИ
- дал-и
- глубокое обучение
- google ai
- обучение с помощью машины
- Платон
- Платон Ай
- Платон Интеллектуальные данные
- Платон игра
- ПлатонДанные
- платогейминг
- масштаб ай
- синтаксис
- зефирнет