Jalankan Pekerjaan Pelabelan SageMaker Ground Truth Amazon di Amazon Virtual Private Cloud - Amazon SageMaker

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Jalankan Pekerjaan Pelabelan SageMaker Ground Truth Amazon di Amazon Virtual Private Cloud

Ground Truth mendukung fungsionalitas berikut di Amazon VPC.

  • Anda dapat menggunakan kebijakan bucket Amazon S3 untuk mengontrol akses ke bucket dari titik akhir VPC Amazon tertentu, atau VPC tertentu. Jika Anda meluncurkan pekerjaan pelabelan dan data input Anda berada di bucket Amazon S3 yang dibatasi untuk pengguna di VPC, Anda dapat menambahkan kebijakan bucket untuk juga memberikan izin titik akhir Ground Truth untuk mengakses bucket. Untuk mempelajari selengkapnya, lihat Izinkan Ground Truth untuk Mengakses Bucket Amazon S3 yang Dibatasi VPC.

  • Anda dapat meluncurkan pekerjaan pelabelan data otomatis di VPC Anda. Anda menggunakan konfigurasi VPC untuk menentukan subnet VPC dan grup keamanan. SageMaker menggunakan konfigurasi ini untuk meluncurkan pekerjaan pelatihan dan inferensi yang digunakan untuk pelabelan data otomatis di VPC Anda. Untuk mempelajari selengkapnya, lihat Membuat Pekerjaan Pelabelan Data Otomatis di VPC.

Anda mungkin ingin menggunakan opsi ini dengan salah satu cara berikut.

  • Anda dapat menggunakan kedua metode ini untuk meluncurkan pekerjaan pelabelan menggunakan bucket Amazon S3 yang dilindungi VPC dengan pelabelan data otomatis diaktifkan.

  • Anda dapat meluncurkan pekerjaan pelabelan menggunakan jenis tugas bawaan apa pun menggunakan bucket yang dilindungi VPC.

  • Anda dapat meluncurkan alur kerja pelabelan khusus menggunakan bucket yang dilindungi VPC. Ground Truth berinteraksi dengan fungsi Lambda pra-anotasi dan pasca-anotasi Anda menggunakan titik akhir. AWS PrivateLink

Kami menyarankan Anda meninjau Prasyarat untuk menjalankan pekerjaan pelabelan Ground Truth di VPC sebelum membuat pekerjaan pelabelan di VPC Amazon.

Prasyarat untuk menjalankan pekerjaan pelabelan Ground Truth di VPC

Tinjau prasyarat berikut sebelum Anda membuat pekerjaan pelabelan Ground Truth di VPC Amazon.

  • Jika Anda adalah pengguna baru Ground Truth, tinjau Memulai untuk mempelajari cara membuat pekerjaan pelabelan.

  • Jika data input Anda terletak di bucket Amazon S3 yang dilindungi VPC, pekerja Anda harus mengakses portal pekerja dari VPC Anda. Pekerjaan pelabelan berbasis VPC memerlukan penggunaan tim kerja pribadi. Untuk mempelajari selengkapnya tentang membuat tim kerja pribadi, lihat Menggunakan Tenaga Kerja Pribadi.

  • Prasyarat berikut khusus untuk meluncurkan pekerjaan pelabelan di VPC Anda.

  • Tinjau bagian Keamanan dan Izin Ground Truth dan pastikan Anda telah memenuhi persyaratan berikut.

    • Pengguna yang membuat pekerjaan pelabelan memiliki semua izin yang diperlukan

    • Anda telah membuat peran eksekusi IAM dengan izin yang diperlukan. Jika Anda tidak memerlukan izin yang disetel dengan baik untuk kasus penggunaan Anda, kami sarankan Anda menggunakan kebijakan terkelola IAM yang dijelaskan dalam Berikan Izin Umum Untuk Memulai Menggunakan Ground Truth.

    • Izinkan VPC Anda memiliki akses ke bucket sagemaker-labeling-data-region dan sm-bxcb-region-saved-task-states S3. Ini adalah bucket S3 regional milik sistem yang diakses dari portal pekerja saat pekerja sedang mengerjakan suatu tugas. Kami menggunakan bucket ini untuk berinteraksi dengan data yang dikelola sistem.

Izinkan Ground Truth untuk Mengakses Bucket Amazon S3 yang Dibatasi VPC

Bagian berikut memberikan detail tentang izin yang diperlukan Ground Truth untuk meluncurkan pekerjaan pelabelan menggunakan bucket Amazon S3 yang memiliki akses terbatas ke titik akhir VPC dan VPC Anda. Untuk mempelajari cara membatasi akses ke bucket Amazon S3 ke VPC, lihat Mengontrol akses dari titik akhir VPC dengan kebijakan bucket di panduan Pengguna Layanan Penyimpanan Sederhana Amazon. Untuk mempelajari cara menambahkan kebijakan ke bucket S3, lihat Menambahkan kebijakan bucket menggunakan konsol Amazon S3.

catatan

Memodifikasi kebijakan pada bucket yang ada dapat menyebabkan pekerjaan IN_PROGRESS Ground Truth gagal. Kami menyarankan Anda memulai pekerjaan baru menggunakan ember baru. Jika Anda ingin terus menggunakan ember yang sama, Anda dapat melakukan salah satu hal berikut.

  • Tunggu IN_PROGRESS pekerjaan selesai.

  • Mengakhiri pekerjaan menggunakan konsol atau. AWS CLI

Anda dapat membatasi akses bucket Amazon S3 ke pengguna di VPC menggunakan endpoint. AWS PrivateLink Misalnya, kebijakan bucket S3 berikut memungkinkan akses ke bucket tertentu, dari<bucket-name>, <vpc> dan titik akhir saja<vpc-endpoint>. Ketika Anda mengubah kebijakan ini, Anda harus mengganti semua teks dengan huruf miring merah dengan sumber daya dan spesifikasi Anda.

catatan

Kebijakan berikut menyangkal semua entitas selain pengguna dalam VPC untuk melakukan tindakan yang tercantum di dalamnya. Action Jika Anda tidak menyertakan tindakan dalam daftar ini, tindakan tersebut masih dapat diakses oleh entitas mana pun yang memiliki akses ke bucket ini dan izin untuk melakukan tindakan tersebut. Misalnya, jika pengguna memiliki izin untuk melakukan GetBucketLocation di bucket Amazon S3 Anda, kebijakan di bawah ini tidak membatasi pengguna untuk melakukan tindakan ini di luar VPC Anda.

{ "Version": "2012-10-17", "Id": "Policy1415115909152", "Statement": [ { "Sid": "Access-to-specific-VPCE-only", "Principal": "*", "Action": [ "s3:GetObject", "s3:PutObject" ], "Effect": "Deny", "Resource": [ "arn:aws:s3:::<bucket-name>", "arn:aws:s3:::<bucket-name>/*" ], "Condition": { "StringNotEquals": { "aws:sourceVpce": [ "<vpc-endpoint>", "<vpc>" ] } } } ] }

Ground Truth harus dapat melakukan tindakan Amazon S3 berikut pada bucket S3 yang Anda gunakan untuk mengonfigurasi pekerjaan pelabelan.

"s3:AbortMultipartUpload", "s3:GetObject", "s3:PutObject", "s3:ListBucket", "s3:GetBucketLocation"

Anda dapat melakukan ini dengan menambahkan titik akhir Ground Truth ke kebijakan bucket seperti yang disebutkan sebelumnya. Tabel berikut mencakup titik akhir layanan Ground Truth untuk setiap AWS Wilayah. Tambahkan titik akhir di AWS Wilayah yang sama yang Anda gunakan untuk menjalankan pekerjaan pelabelan ke kebijakan bucket Anda.

AWS Wilayah Titik akhir Ground Truth
us-east-2 vpce-02569ba1c40aad0bc
us-east-1 vpce-08408e335ebf95b40
us-west-2 vpce-0ea07aa498eb78469
ca-central-1 vpce-0d46ea4c9ff55e1b7
eu-central-1 vpce-0865e7194a099183d
eu-west-2 vpce-0bccd56798f4c5df0
eu-west-1 vpce-0788e7ed8628e595d
ap-south-1 vpce-0d7fcda14e1783f11
ap-southeast-2 vpce-0b7609e6f305a77d4
ap-southeast-1 vpce-0e7e67b32e9efed27
ap-northeast-2 vpce-007893f89e05f2bbf
ap-northeast-1 vpce-0247996a1a1807dbd

Misalnya, kebijakan berikut membatasi GetObject dan PutObject tindakan pada:

  • Bucket Amazon S3 untuk pengguna di VPC () <vpc>

  • Titik akhir VPC () <vpc-endpoint>

  • Titik akhir layanan Ground Truth () <ground-truth-endpoint>

{ "Version": "2012-10-17", "Id": "1", "Statement": [ { "Sid": "DenyAccessFromNonGTandCustomerVPC", "Effect": "Deny", "Principal": "*", "Action": [ "s3:GetObject", "s3:PutObject" ], "Resource": [ "arn:aws:s3:::<bucket-name>", "arn:aws:s3:::<bucket-name>/*" ], "Condition": { "ForAllValues:StringNotEquals": { "aws:sourceVpce": [ "<vpc-endpoint>", "<ground-truth-endpoint>" ], "aws:SourceVpc": "<vpc>" } } } ] }

Jika Anda ingin pengguna memiliki izin untuk meluncurkan pekerjaan pelabelan menggunakan konsol Ground Truth, Anda juga harus menambahkan ARN pengguna ke kebijakan bucket menggunakan aws:PrincipalArn kondisi tersebut. Pengguna ini juga harus memiliki izin untuk melakukan tindakan Amazon S3 berikut pada bucket yang Anda gunakan untuk meluncurkan pekerjaan pelabelan.

"s3:GetObject", "s3:PutObject", "s3:ListBucket", "s3:GetBucketCors", "s3:PutBucketCors", "s3:ListAllMyBuckets",

Kode berikut adalah contoh kebijakan bucket yang membatasi izin untuk melakukan tindakan yang tercantum Action di bucket S3 <bucket-name> hingga berikut ini.

  • <role-name>

  • Titik akhir VPC yang tercantum di aws:sourceVpce

  • Pengguna dalam VPC bernama <vpc>

{ "Version": "2012-10-17", "Id": "1", "Statement": [ { "Sid": "DenyAccessFromNonGTandCustomerVPC", "Effect": "Deny", "Principal": "*", "Action": [ "s3:GetObject", "s3:PutObject" ], "Resource": [ "arn:aws:s3:::<bucket-name>/*", "arn:aws:s3:::<bucket-name>" ], "Condition": { "ForAllValues:StringNotEquals": { "aws:sourceVpce": [ "<vpc-endpoint>", "<ground-truth-endpoint>" ], "aws:PrincipalArn": "arn:aws:iam::<aws-account-id>:role/<role-name>", "aws:SourceVpc": "<vpc>" } } } ] }
catatan

Titik akhir antarmuka VPC Amazon dan bucket Amazon S3 yang dilindungi yang Anda gunakan untuk data input dan output harus berada di AWS Wilayah yang sama dengan yang Anda gunakan untuk membuat pekerjaan pelabelan.

Setelah Anda memberikan izin Ground Truth untuk mengakses bucket Amazon S3, Anda dapat menggunakan salah satu topik di Create a Labeling Job untuk meluncurkan pekerjaan pelabelan. Tentukan bucket Amazon S3 yang dibatasi VPC untuk bucket data input dan output Anda.

Membuat Pekerjaan Pelabelan Data Otomatis di VPC

Untuk membuat pekerjaan pelabelan data otomatis menggunakan Amazon VPC, Anda menyediakan konfigurasi VPC menggunakan konsol Ground Truth atau operasi API. CreateLabelingJob SageMaker menggunakan subnet dan grup keamanan yang Anda berikan untuk meluncurkan pekerjaan pelatihan dan inferensi yang digunakan untuk pelabelan otomatis.

penting

Sebelum Anda meluncurkan pekerjaan pelabelan data otomatis dengan konfigurasi VPC, pastikan Anda telah membuat titik akhir VPC Amazon S3 menggunakan VPC yang ingin Anda gunakan untuk pekerjaan pelabelan. Untuk mempelajari caranya, lihat Membuat Titik Akhir VPC Amazon S3.

Selain itu, jika Anda membuat pekerjaan pelabelan data otomatis menggunakan bucket Amazon S3 yang dibatasi VPC, Anda harus mengikuti petunjuk untuk Izinkan Ground Truth untuk Mengakses Bucket Amazon S3 yang Dibatasi VPC memberikan izin Ground Truth untuk mengakses bucket.

Gunakan prosedur berikut untuk mempelajari cara menambahkan konfigurasi VPC ke permintaan pekerjaan pelabelan Anda.

Tambahkan konfigurasi VPC ke pekerjaan pelabelan data otomatis (konsol):
  1. Ikuti petunjuk di Create a Labeling Job (Console) dan selesaikan setiap langkah dalam prosedur, hingga langkah 15.

  2. Di bagian Pekerja, pilih kotak centang di samping Aktifkan pelabelan data otomatis.

  3. Maksimalkan bagian konfigurasi VPC konsol dengan memilih panah.

  4. Tentukan Virtual private cloud (VPC) yang ingin Anda gunakan untuk pekerjaan pelabelan data otomatis Anda.

  5. Pilih daftar dropdown di bawah Subnet dan pilih satu atau beberapa subnet.

  6. Pilih daftar tarik-turun di bawah Grup keamanan dan pilih satu atau beberapa grup.

  7. Selesaikan semua langkah prosedur yang tersisa di Create a Labeling Job (Console).

Tambahkan konfigurasi VPC ke pekerjaan pelabelan data otomatis (API):

Untuk mengonfigurasi job pelabelan menggunakan operasi Ground Truth APICreateLabelingJob, ikuti petunjuk di Create an Automated Data Labeling Job (API) untuk mengonfigurasi permintaan Anda. Selain parameter yang dijelaskan dalam dokumentasi ini, Anda harus menyertakan VpcConfig parameter LabelingJobResourceConfig untuk menentukan satu atau lebih subnet dan grup keamanan menggunakan skema berikut.

"LabelingJobAlgorithmsConfig": { "InitialActiveLearningModelArn": "string", "LabelingJobAlgorithmSpecificationArn": "string", "LabelingJobResourceConfig": { "VolumeKmsKeyId": "string", "VpcConfig": { "SecurityGroupIds": [ "string" ], "Subnets": [ "string" ] } } }

Berikut ini adalah contoh permintaan AWS Python SDK (Boto3) untuk membuat pekerjaan pelabelan data otomatis di Wilayah AS Timur (Virginia N.) menggunakan tenaga kerja pribadi. Ganti semua teks miring merah dengan sumber daya dan spesifikasi pekerjaan pelabelan Anda. Untuk mempelajari lebih lanjut tentang CreateLabelingJob operasi, lihat tutorial Create a Labeling Job (API) dan dokumentasi CreateLabelingJob API.

import boto3 client = boto3.client(service_name='sagemaker') response = client.create_labeling_job( LabelingJobName="example-labeling-job", LabelAttributeName="label", InputConfig={ 'DataSource': { 'S3DataSource': { 'ManifestS3Uri': "s3://bucket/path/manifest-with-input-data.json" } } }, "LabelingJobAlgorithmsConfig": { "LabelingJobAlgorithmSpecificationArn": "arn:aws:sagemaker:us-east-1:027400017018:labeling-job-algorithm-specification/tasktype", "LabelingJobResourceConfig": { "VpcConfig": { "SecurityGroupIds": [ "sg-01233456789", "sg-987654321" ], "Subnets": [ "subnet-e0123456", "subnet-e7891011" ] } } }, OutputConfig={ 'S3OutputPath': "s3://bucket/path/file-to-store-output-data", 'KmsKeyId': "string" }, RoleArn="arn:aws:iam::*:role/*, LabelCategoryConfigS3Uri="s3://bucket/path/label-categories.json", StoppingConditions={ 'MaxHumanLabeledObjectCount': 123, 'MaxPercentageOfInputDatasetLabeled': 123 }, HumanTaskConfig={ 'WorkteamArn': "arn:aws:sagemaker:region:*:workteam/private-crowd/*", 'UiConfig': { 'UiTemplateS3Uri': "s3://bucket/path/custom-worker-task-template.html" }, 'PreHumanTaskLambdaArn': "arn:aws:lambda:us-east-1:432418664414:function:PRE-tasktype", 'TaskKeywords': [ "Images", "Classification", "Multi-label" ], 'TaskTitle': "Add task title here", 'TaskDescription': "Add description of task here for workers", 'NumberOfHumanWorkersPerDataObject': 1, 'TaskTimeLimitInSeconds': 3600, 'TaskAvailabilityLifetimeInSeconds': 21600, 'MaxConcurrentTaskCount': 1000, 'AnnotationConsolidationConfig': { 'AnnotationConsolidationLambdaArn': "arn:aws:lambda:us-east-1:432418664414:function:ACS-tasktype" }, Tags=[ { 'Key': "string", 'Value': "string" }, ] )