Pilih preferensi cookie Anda

Kami menggunakan cookie penting serta alat serupa yang diperlukan untuk menyediakan situs dan layanan. Kami menggunakan cookie performa untuk mengumpulkan statistik anonim sehingga kami dapat memahami cara pelanggan menggunakan situs dan melakukan perbaikan. Cookie penting tidak dapat dinonaktifkan, tetapi Anda dapat mengklik “Kustom” atau “Tolak” untuk menolak cookie performa.

Jika Anda setuju, AWS dan pihak ketiga yang disetujui juga akan menggunakan cookie untuk menyediakan fitur situs yang berguna, mengingat preferensi Anda, dan menampilkan konten yang relevan, termasuk iklan yang relevan. Untuk menerima atau menolak semua cookie yang tidak penting, klik “Terima” atau “Tolak”. Untuk membuat pilihan yang lebih detail, klik “Kustomisasi”.

Kompilasi Model

Mode fokus
Kompilasi Model - Amazon SageMaker AI

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

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

Setelah Anda memenuhi Prasyarat, Anda dapat mengkompilasi model Anda dengan Amazon AI Neo. SageMaker Anda dapat mengompilasi model menggunakan konsol AWS CLI, atau Amazon Web Services SDK for Python (Boto3), lihat Menggunakan Neo untuk Mengompilasi Model. Dalam contoh ini, Anda akan mengkompilasi model Anda dengan Boto3.

Untuk mengkompilasi model, SageMaker Neo memerlukan informasi berikut:

  1. URI bucket Amazon S3 tempat Anda menyimpan model terlatih.

    Jika Anda mengikuti prasyarat, nama bucket Anda disimpan dalam variabel bernama. bucket Cuplikan kode berikut menunjukkan cara membuat daftar semua bucket Anda menggunakan: AWS CLI

    aws s3 ls

    Sebagai contoh:

    $ aws s3 ls 2020-11-02 17:08:50 bucket
  2. URI bucket Amazon S3 tempat Anda ingin menyimpan model yang dikompilasi.

    Cuplikan kode di bawah ini menggabungkan URI bucket Amazon S3 Anda dengan nama direktori keluaran yang disebut: output

    s3_output_location = f's3://{bucket}/output'
  3. Kerangka pembelajaran mesin yang Anda gunakan untuk melatih model Anda.

    Tentukan kerangka kerja yang Anda gunakan untuk melatih model Anda.

    framework = 'framework-name'

    Misalnya, jika Anda ingin mengkompilasi model yang dilatih menggunakan TensorFlow, Anda dapat menggunakan tflite atautensorflow. Gunakan tflite jika Anda ingin menggunakan versi yang lebih ringan TensorFlow yang menggunakan lebih sedikit memori penyimpanan.

    framework = 'tflite'

    Untuk daftar lengkap kerangka kerja yang didukung NEO, lihat Kerangka Kerja, Perangkat, Sistem, dan Arsitektur yang Didukung.

  4. Bentuk input model Anda.

    Neo membutuhkan nama dan bentuk tensor input Anda. Nama dan bentuk diteruskan sebagai pasangan kunci-nilai. valueadalah daftar dimensi integer dari tensor input dan key merupakan nama yang tepat dari tensor input dalam model.

    data_shape = '{"name": [tensor-shape]}'

    Sebagai contoh:

    data_shape = '{"normalized_input_image_tensor":[1, 300, 300, 3]}'
    catatan

    Pastikan model diformat dengan benar tergantung pada kerangka kerja yang Anda gunakan. Lihat Bentuk data input apa yang diharapkan SageMaker Neo? Kunci dalam kamus ini harus diubah menjadi nama tensor input baru.

  5. Baik nama perangkat target untuk dikompilasi atau rincian umum platform perangkat keras

    target_device = 'target-device-name'

    Misalnya, jika Anda ingin menyebarkan ke Raspberry Pi 3, gunakan:

    target_device = 'rasp3b'

    Anda dapat menemukan seluruh daftar perangkat edge yang didukung di Kerangka Kerja, Perangkat, Sistem, dan Arsitektur yang Didukung.

Sekarang setelah Anda menyelesaikan langkah-langkah sebelumnya, Anda dapat mengirimkan pekerjaan kompilasi ke Neo.

# Create a SageMaker client so you can submit a compilation job sagemaker_client = boto3.client('sagemaker', region_name=AWS_REGION) # Give your compilation job a name compilation_job_name = 'getting-started-demo' print(f'Compilation job for {compilation_job_name} started') response = sagemaker_client.create_compilation_job( CompilationJobName=compilation_job_name, RoleArn=role_arn, InputConfig={ 'S3Uri': s3_input_location, 'DataInputConfig': data_shape, 'Framework': framework.upper() }, OutputConfig={ 'S3OutputLocation': s3_output_location, 'TargetDevice': target_device }, StoppingCondition={ 'MaxRuntimeInSeconds': 900 } ) # Optional - Poll every 30 sec to check completion status import time while True: response = sagemaker_client.describe_compilation_job(CompilationJobName=compilation_job_name) if response['CompilationJobStatus'] == 'COMPLETED': break elif response['CompilationJobStatus'] == 'FAILED': raise RuntimeError('Compilation failed') print('Compiling ...') time.sleep(30) print('Done!')

Jika Anda menginginkan informasi tambahan untuk debugging, sertakan pernyataan cetak berikut:

print(response)

Jika pekerjaan kompilasi berhasil, model yang dikompilasi akan disimpan di bucket Amazon S3 keluaran yang Anda tentukan sebelumnya s3_output_location (). Unduh model kompilasi Anda secara lokal:

object_path = f'output/{model}-{target_device}.tar.gz' neo_compiled_model = f'compiled-{model}.tar.gz' s3_client.download_file(bucket, object_path, neo_compiled_model)
PrivasiSyarat situsPreferensi cookie
© 2025, Amazon Web Services, Inc. atau afiliasinya. Semua hak dilindungi undang-undang.