Ultralytics YOLO27: Запишись в список ожидания.

Интеграция Amazon S3#

Интеграция Amazon S3 подключает твои бакеты S3 к Ultralytics Platform. Изображения остаются в твоих бакетах — Platform индексирует их на месте, чтобы ты мог просматривать и аннотировать их, а также обучать модели YOLO, не загружая копии.

Функция тарифа Pro

Для датасетов Amazon S3 требуется тариф Pro или Enterprise. Пользователи бесплатных рабочих пространств видят интеграцию и при подключении получают предложение перейти на платный тариф. Если подписка закончится, существующие датасеты Amazon S3 останутся полностью доступными — тариф Pro нужен только для новых подключений и импортов.

Создай пользователя IAM только для чтения#

Platform только читает данные из твоего хранилища — никогда не записывает, не изменяет и не удаляет объекты. Создай отдельного пользователя IAM только с правами на просмотр списка и чтение — не используй учётные данные root:

  1. В консоли AWS перейди в IAM > Пользователи и создай пользователя без доступа к консоли.

  2. Назначь политику, которая разрешает только просмотр списка и чтение данных в нужных для подключения бакетах:

    {
        "Version": "2012-10-17",
        "Statement": [
            { "Effect": "Allow", "Action": "s3:ListAllMyBuckets", "Resource": "*" },
            {
                "Effect": "Allow",
                "Action": ["s3:ListBucket", "s3:GetObject"],
                "Resource": ["arn:aws:s3:::my-bucket", "arn:aws:s3:::my-bucket/*"]
            }
        ]
    }

    s3:ListAllMyBuckets — необязательный параметр: он позволяет Platform находить твои бакеты, чтобы тебе не приходилось вводить их имена.

  3. Открой вкладку Учётные данные безопасности пользователя, создай ключ доступа и скопируй его идентификатор и секретный ключ доступа.

Только долгосрочные ключи пользователя IAM

Platform отклоняет временные учётные данные AWS. Ключи, выданные AWS STS, — в том числе начинающиеся с ASIA, учётные данные сеанса роли и ключи IAM Identity Center — истекают, пока датасет ещё подключён. Поэтому требуется долгосрочный ключ доступа отдельного пользователя IAM.

Подключение к Platform#

  1. Перейди в Настройки > Интеграции и выбери Amazon S3 в списке интеграций.
  2. Введи идентификатор ключа доступа, секретный ключ доступа и регион бакета (например, us-east-1).
  3. Нажми Найти доступные бакеты, затем выбери бакеты для подключения. Если политика не разрешает поиск бакетов, введи имя известного бакета вручную.
  4. Нажми Connect. Перед сохранением Platform проверит, что может перечислить и прочитать каждый выбранный бакет.

Настройки интеграции Amazon S3 в Ultralytics Platform

Для подключения облачного хранилища тебе нужна роль администратора или владельца рабочего пространства. За один раз можно добавить до 50 бакетов, а поиск отобразит до 300 бакетов, доступных этому ключу.

При повторном подключении того же пользователя IAM к существующей интеграции добавляются новые бакеты. Сохранённые учётные данные заменяются только в том случае, если новые учётные данные по-прежнему позволяют читать каждый уже подключённый бакет. Если какой-либо бакет недоступен для чтения, ошибка укажет его имя, в том числе если бакет был подключён ранее с помощью того же пользователя IAM.

Один регион для каждого подключения

Подключение получает доступ к бакетам в указанном регионе. Если твои бакеты находятся в разных регионах, создай отдельное подключение для каждого региона.

Защита учётных данных

Учётные данные шифруются при хранении с помощью AES-256-GCM, никогда не передаются браузеру и не предоставляются рабочим нагрузкам обучения. Чтобы отозвать доступ, деактивируй ключ доступа в AWS IAM.

Создай датасет из бакета S3#

  1. Нажми New Dataset и открой вкладку Cloud.
  2. Выбери подключённый бакет и перейди к папке с данными.
  3. Подтверди выбор папки, при необходимости измени название набора данных и создай его.

Platform однократно перечисляет содержимое папки и индексирует найденные данные:

  • Изображения — объекты .jpg, .jpeg, .png, .webp и .avif индексируются; размеры считываются с помощью ограниченных по объёму запросов. Platform не сохраняет вторую копию исходного изображения.
  • Метки — файлы YOLO .txt разбираются в аннотации Platform и сопоставляются по стандартной структуре images/ → labels/ или как соседние файлы в одной папке.
  • Метаданные — YAML-файл содержит названия классов и структуру ключевых точек позы, как и при загрузке архива. Если в папке несколько файлов, предпочтение отдаётся data.yaml и data.yml.
  • Задача — задача определяется по выборке файлов меток, поэтому папки segment, pose и OBB распознаются по структуре меток, а не по задаче, выбранной в диалоговом окне.
  • Разбиение на выборки — названия папок train, val и test в ключе объекта автоматически определяют выборки.

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

Ограничения

За один импорт индексируется до 500 000 объектов, а файлы разметки или YAML — размером до 1 МБ каждый. Более крупные бакеты следует разделить на несколько датасетов.

Не изменяй индексированные объекты

Каждое индексированное изображение привязано к ETag объекта S3, и Platform блокирует доступ, если объект изменяется. Добавляй новые объекты, а не перезаписывай существующие.

Неудачный импорт#

Если импорт завершается ошибкой — например, из-за пустой папки, опечатки в пути или отозванных разрешений, — ошибка отображается на странице датасета. Редакторы могут нажать Повторить импорт, чтобы перезапустить его с сохранёнными бакетом и папкой, или создать новый датасет, указав исправленный путь.

При повторном импорте папка сканируется заново, а не с того места, где импорт остановился: в датасет добавляются объекты, появившиеся после первой попытки, а объекты, которых больше нет, удаляются из датасета.

Обучение#

Управляемое обучение выполняется в обычном режиме обучения. Во время запуска для обучения используются собственные копии закреплённых изображений Platform, а учётные данные AWS никогда не передаются рабочим нагрузкам обучения.

Отключение подключения#

При отключении сохранённые учётные данные удаляются, но в AWS ничего не меняется. Датасеты, созданные на основе этих бакетов, остаются в твоём рабочем пространстве вместе со своими классами, метками и аннотациями, но их изображения нельзя загружать, просматривать или использовать для обучения, пока снова не будет подключён тот же пользователь IAM. Даже без подключения ты можешь переименовывать датасеты, редактировать метки и удалять датасеты.

Чтобы отключить подключение, перейди в Настройки > Интеграции, выбери Amazon S3, нажми Отключить рядом с учётными данными и подтверди действие. При открытии одного из таких датасетов появится сообщение Amazon S3 отключено со ссылкой на эти настройки. После повторного подключения датасет снова станет доступен автоматически.

Отключить подключение можно также через REST API, используя идентификатор интеграции, полученный из GET /api/integrations/buckets:

curl -X DELETE \
  -H "Authorization: Bearer YOUR_API_KEY" \
  https://platform.ultralytics.com/api/integrations/buckets/INTEGRATION_ID
from ultralytics_platform import Platform

client = Platform()  # reads ULTRALYTICS_API_KEY
integrations = client.storage_integrations.list()
client.storage_integrations.delete("INTEGRATION_ID")

Чтобы отозвать доступ непосредственно в AWS, деактивируй или удали ключ доступа в AWS IAM.

Текущие ограничения#

Для датасетов на основе S3 сейчас недоступны функции, которым нужны собственные копии изображений Platform: автоматическая разметка, кластерный анализ, клонирование датасетов и неизменяемые снимки версий.

При удалении датасета на основе S3 или отдельных изображений из него удаляются только ссылки Platform — сами объекты не затрагиваются.

См. также интеграции Google Cloud Storage и Azure Blob Storage.

Часто задаваемые вопросы#

  • Нет. Platform один раз просматривает бакет и индексирует найденные размеры изображений и метки. Оригиналы передаются по запросу для просмотра и аннотирования, а для управляемого обучения используются собственные копии закреплённых изображений Platform только на время запуска. Индексированные изображения не учитываются в твоей квоте хранилища.

  • Датасет индексируется один раз при создании. Новые объекты не попадут в него, пока ты не создашь новый датасет или не повторишь неудачный импорт. Каждое индексированное изображение привязано к своей версии, поэтому при перезаписи объекта Platform блокирует доступ к этому изображению. Добавляй новые объекты, а не заменяй существующие.

  • В подключённых датасетах недоступны функции, которым нужны собственные копии изображений Platform: автоматическая разметка, кластерный анализ, клонирование датасетов и неизменяемые снимки версий. Ручная разметка, общий доступ и обучение работают как обычно.

  • Отключи интеграцию в разделе Настройки > Интеграции, чтобы удалить сохранённые учётные данные, или деактивируй либо удали ключ доступа в AWS IAM. Ни одно из этих действий не затрагивает данные в твоих бакетах.

Комментарии