YOLO Vision 2026:

Amazon S3 통합#

Amazon S3 연동을 통해 S3 버킷을 Ultralytics Platform에 연결할 수 있습니다. 이미지는 버킷에 그대로 유지되며, Platform이 제자리에서 색인하므로 사본을 업로드하지 않고도 YOLO 모델을 탐색, 주석 처리 및 학습할 수 있습니다.

Pro 기능

Amazon S3 데이터셋에는 Pro 또는 Enterprise plan이 필요합니다. 무료 워크스페이스에서는 연동 항목이 표시되며 연결 시 업그레이드하라는 메시지가 나타납니다. 구독이 종료되더라도 기존 Amazon S3 데이터셋은 완전히 액세스할 수 있으며, 신규 연결 및 가져오기에만 Pro가 필요합니다.

읽기 전용 IAM 사용자 생성#

Platform은 스토리지에서 읽기만 수행하며, 객체를 절대 쓰거나 수정하거나 삭제하지 않습니다. 루트 자격 증명이 아닌 목록 및 읽기 전용 권한을 가진 전용 IAM user를 사용하세요.

  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. 사용자의 보안 자격 증명 탭을 열고 액세스 키를 생성한 후, 액세스 키 ID와 비밀 액세스 키를 복사하십시오.

Platform에 연결#

  1. **Settings > Integrations**로 이동하여 연동 목록에서 Amazon S3를 선택합니다.
  2. 액세스 키 ID, 비밀 액세스 키 및 버킷 리전(예: us-east-1)을 입력합니다.
  3. Find available buckets를 클릭한 다음 연결할 버킷을 선택합니다. 정책상 검색이 허용되지 않는 경우, 알려진 버킷 이름을 수동으로 입력하세요.
  4. 연결을 클릭합니다. Platform은 저장하기 전에 선택한 각 버킷의 목록을 확인하고 읽을 수 있는지 검증합니다.

Ultralytics Platform Amazon S3 Integration Settings

나중에 동일한 IAM 사용자를 다시 연결하면 기존 통합에 새 버킷이 추가됩니다. 저장된 자격 증명은 교체할 자격 증명으로 이미 연결된 모든 버킷을 읽을 수 있는 경우에만 대체됩니다.

연결당 하나의 리전

연결은 입력한 리전의 버킷을 읽습니다. 여러 리전에 버킷이 있는 경우, 리전당 한 번씩 연결하십시오.

자격 증명 보안

자격 증명은 AES-256-GCM으로 암호화되어 저장되며, 브라우저로 반환되거나 학습 작업 페이로드에 포함되지 않습니다. 액세스를 취소하려면 AWS IAM에서 액세스 키를 비활성화하십시오.

S3 버킷에서 데이터셋 생성#

  1. **새 데이터셋(New Dataset)**을 클릭하고 클라우드 스토리지(Cloud storage) 탭을 엽니다.
  2. 연결된 버킷을 선택하고 데이터가 포함된 폴더를 탐색합니다.
  3. 폴더를 확인하고 데이터셋 이름을 조정한 뒤 데이터셋을 생성합니다.

플랫폼은 해당 폴더를 한 번 목록화하고 발견된 항목을 인덱싱합니다:

  • 이미지.jpg, .jpeg, .png, .webp, .avif 객체는 제한된 요청을 통해 읽은 차원으로 색인됩니다. Platform은 원본 이미지의 두 번째 복사본을 유지하지 않습니다.
  • 라벨 — YOLO .txt 사이드카는 표준 images/labels/ 레이아웃으로 매칭되거나 동일 폴더 내의 형제 파일로 매칭되어 Platform 어노테이션으로 구문 분석됩니다.
  • 메타데이터data.yaml/data.yml아카이브 업로드와 마찬가지로 클래스 이름, 태스크 유형, 포즈 키포인트 형태를 제공합니다.
  • Splits — 객체 키의 train, val, test 폴더 이름은 분할을 자동으로 할당합니다.

데이터셋은 다른 데이터셋처럼 작동합니다. 데이터셋을 탐색 및 어노테이션하고, 공개 또는 비공개로 설정하고, 과 공유하고, 관리형 학습을 통해 데이터셋으로 학습할 수 있습니다. 원본은 온디맨드로 스트리밍되며, 색인된 이미지는 Platform 스토리지 할당량을 소모하지 않습니다.

제한 사항

한 번의 가져오기로 최대 50,000개의 객체와 각각 최대 1MB 크기의 라벨 또는 YAML 파일을 인덱싱할 수 있습니다. 더 큰 버킷은 여러 데이터셋으로 나누어 처리해야 합니다.

인덱싱된 객체 불변성 유지

인덱싱된 모든 이미지는 해당 S3 객체 ETag에 고정되며, 객체가 변경될 경우 Platform은 오류를 발생시킵니다. 기존 객체를 덮어쓰지 말고 새 객체를 추가하십시오.

가져오기 실패#

빈 폴더, 경로 오타, 권한 취소 등으로 인해 가져오기에 실패하면 데이터셋 페이지에 오류가 표시됩니다. 편집자는 가져오기 재시도를 클릭하여 저장된 버킷 및 폴더로 다시 시작하거나, 수정된 경로를 가리키는 새 데이터셋을 생성할 수 있습니다.

학습#

관리형 학습은 일반적인 학습 흐름을 통해 작동합니다. 워커(Worker)는 고정된 원본을 임시 작업 스토리지로 다운로드하여 실행하고 작업 정리 시 이를 제거합니다. 귀하의 AWS 자격 증명은 컴퓨팅 환경에 전달되지 않습니다.

현재 제한 사항#

현재 S3 기반 데이터셋은 Platform 소유의 이미지 사본이 필요한 기능(자동 주석, clustering analysis, 데이터셋 복제, 변경 불가능한 version snapshots)을 지원하지 않습니다.

S3 기반 데이터셋이나 그 안의 개별 이미지를 삭제해도 Platform의 참조만 제거될 뿐, 귀하의 객체는 절대 영향을 받지 않습니다.

Google Cloud StorageAzure Blob Storage 연동도 참조하세요.

댓글