Amazon S3 통합#
Amazon S3 통합은 S3 버킷을 Ultralytics Platform에 연결합니다. 이미지는 버킷에 그대로 유지되며, Platform은 이미지를 해당 위치에서 인덱싱하므로 사본을 업로드하지 않고도 YOLO 모델을 탐색하고, 어노테이션을 추가하고, 학습할 수 있습니다.
Amazon S3 데이터셋을 사용하려면 Pro 또는 Enterprise 플랜이 필요합니다. 무료 워크스페이스에서도 통합 기능을 확인할 수 있지만, 연결할 때 업그레이드하라는 메시지가 표시됩니다. 구독이 종료되어도 기존 Amazon S3 데이터셋에는 계속 완전히 액세스할 수 있으며, 새 연결 및 가져오기에는 Pro 플랜만 필요합니다.
읽기 전용 IAM 사용자 생성#
Platform은 스토리지에서 데이터를 읽기만 하며, 객체를 쓰거나 수정하거나 삭제하지 않습니다. 목록 조회 및 읽기 권한만 있는 전용 IAM 사용자를 사용하고, root 자격 증명은 절대 사용하지 마십시오:
-
AWS 콘솔에서 IAM > Users로 이동한 다음 콘솔 액세스 권한이 없는 사용자를 생성합니다.
-
연결하려는 버킷에 목록 조회 및 읽기 권한만 부여하는 정책을 연결합니다:
{ "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이 버킷을 검색하도록 하므로 버킷 이름을 직접 입력하지 않아도 됩니다. -
사용자의 Security credentials 탭을 열고 access key를 생성한 다음 액세스 키 ID와 보안 액세스 키를 복사합니다.
Platform은 임시 AWS 자격 증명을 거부합니다. AWS STS에서 발급된 키는 ASIA으로 시작하는 키, 역할
세션 자격 증명, IAM Identity Center 키를 포함하여 데이터셋이 연결된 동안 만료됩니다. 따라서 전용 IAM
사용자의 수명이 긴 액세스 키가 필요합니다.
Platform에 연결#
- **Settings > Integrations**로 이동한 다음 통합 목록에서 Amazon S3를 선택합니다.
- 액세스 키 ID, 보안 액세스 키, 버킷 리전을 입력합니다(예:
us-east-1). - Find available buckets를 클릭한 다음 연결할 버킷을 선택합니다. 정책에서 검색을 허용하지 않는 경우 알고 있는 버킷 이름을 직접 입력합니다.
- Connect를 클릭합니다. Platform은 저장하기 전에 선택한 각 버킷을 나열하고 읽을 수 있는지 확인합니다.

클라우드 스토리지를 연결하려면 워크스페이스 관리자 또는 소유자 역할이 필요합니다. 연결 하나당 최대 50개의 버킷을 포함할 수 있으며, 검색 결과에는 키가 액세스할 수 있는 버킷 중 최대 300개가 표시됩니다.
나중에 동일한 IAM 사용자를 다시 연결하면 기존 통합에 새 버킷이 추가됩니다. 저장된 자격 증명은 교체용 자격 증명이 기존에 연결한 모든 버킷을 계속 읽을 수 있는 경우에만 교체됩니다.
연결은 입력한 리전의 버킷을 읽습니다. 버킷이 여러 리전에 있다면 리전마다 한 번씩 연결하십시오.
자격 증명은 저장 시 AES-256-GCM으로 암호화되며, 브라우저로 반환되지 않고 학습 워크로드에 노출되지도 않습니다. 액세스 권한을 취소하려면 AWS IAM에서 액세스 키를 비활성화하십시오.
S3 버킷에서 데이터셋 생성#
- New Dataset을 클릭하고 Cloud 탭을 엽니다.
- 연결된 버킷을 선택하고 데이터가 포함된 폴더로 이동합니다.
- 폴더를 확인하고 데이터셋 이름을 조정한 다음 데이터셋을 생성합니다.
Platform은 폴더를 한 번 나열한 후 검색된 항목을 인덱싱합니다:
- Images —
.jpg,.jpeg,.png,.webp,.avif객체는 제한된 요청을 통해 읽은 크기 정보와 함께 인덱싱됩니다. Platform은 원본 이미지의 두 번째 복사본을 저장하지 않습니다. - Labels — YOLO
.txt사이드카는 Platform 주석으로 파싱되며, 표준images/→labels/레이아웃 또는 동일 폴더의 형제 파일 구조를 기준으로 매칭됩니다. - Metadata — YAML 파일은 아카이브 업로드와 동일하게 클래스 이름과 pose keypoint 형상을 제공합니다. 폴더에 여러 파일이 있는 경우
data.yaml및data.yml가 우선 사용됩니다. - Task — 레이블 파일 샘플을 통해 task가 결정되므로, 대화 상자에서 선택한 task가 아니라 레이블 형상에 따라 segment, pose 및 OBB 폴더가 인식됩니다.
- 분할 — 객체 키의
train,val,test폴더 이름에 따라 분할이 자동으로 할당됩니다.
이후 데이터셋은 다른 데이터셋과 동일하게 작동합니다. 데이터셋을 탐색하고 주석을 추가하며, 공개 또는 비공개로 설정하고, 팀과 공유하고, 관리형 학습을 통해 학습할 수 있습니다. 원본은 필요할 때 스트리밍되며 인덱싱된 이미지는 Platform 스토리지 할당량을 사용하지 않습니다.
단일 가져오기에서는 최대 50,000개의 객체와 각각 최대 1MB인 레이블 또는 YAML 파일을 인덱싱합니다. 더 큰 버킷은 여러 데이터셋으로 나누어야 합니다.
인덱싱된 모든 이미지는 S3 객체 ETag에 고정되며, 객체가 변경되면 Platform은 작업을 중단합니다. 기존 객체를 덮어쓰지 말고 새 객체를 추가하십시오.
가져오기 실패#
빈 폴더, 경로 오타 또는 취소된 권한으로 인해 가져오기가 실패하면 데이터셋 페이지에 오류가 표시됩니다. 편집자는 Retry import를 클릭하여 저장된 버킷과 폴더로 가져오기를 다시 시작하거나, 수정된 경로를 가리키는 새 데이터셋을 생성할 수 있습니다.
다시 시도하면 이어서 진행하지 않고 폴더를 다시 나열합니다. 첫 번째 시도 이후 추가된 객체는 포함되고, 더 이상 존재하지 않는 객체는 데이터셋에서 제거됩니다.
학습#
관리형 학습은 일반 학습 흐름을 통해 작동합니다. 학습이 진행되는 동안에는 고정된 이미지의 Platform 자체 사본을 사용하며, AWS 자격 증명은 학습 워크로드에 노출되지 않습니다.
연결 해제#
연결을 해제하면 AWS의 어떤 항목도 변경하지 않고 저장된 자격 증명만 삭제됩니다. 해당 버킷에서 생성한 데이터셋은 클래스, 레이블, 어노테이션과 함께 워크스페이스에 유지되지만, 동일한 IAM 사용자를 다시 연결할 때까지 이미지를 로드하거나 미리 보거나 학습에 사용할 수 없습니다.
GET /api/integrations/buckets에서 반환된 통합 ID를 사용하여 REST API를 호출합니다:
curl -X DELETE \
-H "Authorization: Bearer YOUR_API_KEY" \
https://platform.ultralytics.com/api/integrations/buckets/INTEGRATION_IDfrom ultralytics_platform import Platform
client = Platform() # reads ULTRALYTICS_API_KEY
integrations = client.storage_integrations.list()
client.storage_integrations.delete("INTEGRATION_ID")대신 원본에서 액세스 권한을 취소하려면 AWS IAM에서 액세스 키를 비활성화하거나 삭제하십시오.
현재 제한 사항#
S3 기반 데이터셋에서는 현재 이미지의 Platform 소유 사본이 필요한 기능이 제외됩니다. 여기에는 자동 어노테이션, 클러스터링 분석, 데이터셋 복제, 변경 불가능한 버전 스냅샷이 포함됩니다.
S3 기반 데이터셋 또는 해당 데이터셋의 개별 이미지를 삭제해도 Platform의 참조만 삭제되며, 객체에는 어떤 작업도 수행되지 않습니다.
Google Cloud Storage 및 Azure Blob Storage 통합도 참조하십시오.
FAQ#
아니요. Platform은 버킷을 한 번 나열하고 발견된 이미지 크기와 레이블을 인덱싱합니다. 원본은 브라우징과 주석 지정을 위해 필요에 따라 스트리밍되며, 관리형 학습은 실행 기간 동안만 고정된 이미지의 Platform 자체 복사본을 사용하여 작동합니다. 인덱싱된 이미지는 스토리지 할당량에 포함되지 않습니다.
데이터셋은 생성될 때 한 번 인덱싱됩니다. 새 데이터셋을 만들거나 실패한 가져오기를 다시 시도할 때까지 새 객체가 반영되지 않으며, 인덱싱된 모든 이미지는 해당 버전에 고정되므로 객체를 덮어쓰면 Platform은 해당 이미지에 대해 안전하게 실패 처리(fail closed)합니다. 기존 객체를 바꾸는 대신 새 객체를 추가하세요.
**설정 > 통합(Settings > Integrations)**에서 통합을 해제하여 저장된 자격 증명을 삭제하거나, AWS IAM에서 액세스 키를 비활성화 또는 삭제하세요. 두 작업 모두 버킷 내 데이터에는 영향을 미치지 않습니다.