全部产品
Search
文档中心

Platform For AI:Gunakan pekerjaan preemptible

更新时间:Jul 02, 2025

Jika Anda kekurangan daya komputasi, Anda dapat memanfaatkan fitur pekerjaan preemptible dari Platform for AI (PAI), yang mengalokasikan sumber daya komputasi melalui sistem penawaran. Sumber daya preemptible biasanya lebih hemat biaya dibandingkan dengan model bayar sesuai pemakaian publik, memungkinkan akses efisien ke daya komputasi AI dan mengurangi total biaya pekerjaan. Topik ini menjelaskan cara menggunakan sumber daya preemptible saat membuat pekerjaan Deep Learning Containers (DLC).

Batasan

Sumber daya preemptible memiliki batasan berikut:

Tipe

Sumber daya Lingjun

Sumber daya komputasi tujuan umum

Wilayah yang didukung

  • Cina (Ulanqab)

  • Singapura

  • Cina (Beijing)

  • Cina (Shanghai)

  • Cina (Hangzhou)

  • Cina (Shenzhen)

  • Cina (Ulanqab)

  • Cina (Guangzhou)

Tipe kerangka kerja

  • PyTorch

  • MPIJob

PyTorch

Toleransi kesalahan otomatis berbasis AIMaster

Didukung

Tidak didukung

Batasan fitur

  • Instans preemptible tidak dapat dikonversi menjadi instans langganan.

  • Spesifikasi instans dan bandwidth tidak dapat diubah.

  • Layanan pendaftaran ICP tidak didukung.

  • Tidak ada diskon yang diberikan untuk pelanggan besar.

Fitur

  • Menggunakan Sumber Daya Preemptible

    Anda dapat menggunakan sumber daya komputasi tujuan umum atau Sumber Daya Lingjun untuk membuat pekerjaan DLC. Harga pasar sumber daya preemptible bervariasi berdasarkan penawaran dan permintaan. Instans preemptible bisa lebih murah hingga 90% dibandingkan instans bayar sesuai pemakaian. Sumber daya preemptible dapat dipreempt oleh semua pengguna Alibaba Cloud dan dilepaskan setelah periode perlindungan berakhir. Perhatikan hal-hal berikut saat menggunakan sumber daya preemptible untuk mengirimkan pekerjaan DLC:

    • Jika DLC gagal mempreempt instans preemptible karena ketersediaan sumber daya tidak mencukupi, pekerjaan preemptible akan masuk ke status menunggu, dan DLC terus mengajukan sumber daya preemptible.

    • Setelah sistem berhasil mengajukan sumber daya preemptible, pekerjaan DLC dibuat dan dijalankan.

    • Jika sumber daya preemptible dilepaskan, pekerjaan DLC gagal dan berhenti berjalan.

  • Mengajukan Sumber Daya Preemptible

    Ketika menggunakan sumber daya preemptible untuk membuat pekerjaan DLC, DLC mulai mempreempt sumber daya instans setelah Anda mengirimkan pekerjaan. Untuk membuat instans preemptible, pastikan persyaratan berikut terpenuhi:

    • Harga penawaran maksimum yang dikonfigurasikan untuk sumber daya preemptible harus lebih besar dari atau sama dengan harga pasar.

    • Inventaris sumber daya preemptible tersedia.

  • Melepaskan Sumber Daya Preemptible

    Sumber daya preemptible dapat dilepaskan berdasarkan harga pasar, inventaris sumber daya, harga penawaran maksimum yang dikonfigurasikan selama pembuatan pekerjaan, dan durasi penggunaan. Dalam skenario berikut, sumber daya preemptible mungkin dilepaskan tanpa notifikasi:

    • Sumber Daya Lingjun: Jika harga penawaran maksimum lebih rendah dari harga rata-rata atau inventaris sumber daya tidak mencukupi, sumber daya tersebut dilepaskan.

    • Sumber Daya Komputasi Tujuan Umum: Jika harga penawaran maksimum lebih rendah dari harga pasar saat ini atau inventaris sumber daya preemptible tidak mencukupi, sumber daya preemptible dilepaskan.

    Untuk memastikan pekerjaan preemptible Anda berjalan secara stabil dan terus-menerus, Anda dapat melakukan langkah-langkah berikut:

    • Aktifkan Toleransi Kesalahan Otomatis saat membuat pekerjaan menggunakan Sumber Daya Lingjun. Setelah diaktifkan, pekerjaan Anda secara otomatis masuk ke antrian untuk menawar sumber daya preemptible. Untuk informasi lebih lanjut, lihat AIMaster: Mesin Toleransi Kesalahan Elastis.image

    • Saat menggunakan sumber daya komputasi tujuan umum atau Sumber Daya Lingjun untuk membuat pekerjaan, Anda dapat menggunakan kerangka kerja EasyCkpt untuk melatih model bahasa besar PyTorch (LLM). Pekerjaan dapat sering menyimpan titik periksa dan memungkinkan gangguan. Untuk informasi lebih lanjut, lihat Gunakan EasyCkpt untuk Menyimpan dan Melanjutkan Pelatihan Model Dasar.

Penagihan

  • Harga

    Mode penawaran pekerjaan preemptible digunakan untuk mengonfigurasi harga penawaran maksimum melalui parameter SpotWithPriceLimit. Harga pasar sumber daya preemptible berfluktuasi berdasarkan penawaran dan permintaan. Jika Anda menggunakan sumber daya preemptible yang sama untuk beberapa pekerjaan DLC, biaya dalam periode waktu tetap mungkin sama. Jenis penawaran berikut didukung:

    Catatan

    Sumber Daya Lingjun hanya mendukung jenis penawaran diskon spot.

    • Harga penawaran berdasarkan jenis penawaran diskon spot: Harga penawaran maksimum didasarkan pada harga pasar tipe instans dan berkisar antara 10% hingga 90% dari harga pasar dengan interval 10%.

    • Harga penawaran berdasarkan jenis penawaran harga spot: Harga penawaran maksimum berada dalam kisaran harga pasar.

    Di bagian Resource Information halaman Buat Pekerjaan di DLC, atur Source ke Preemptible Resources dan lihat sumber daya preemptible serta rentang harga pasar di bagian Job Resource.

    Catatan

    Untuk harga spesifik spesifikasi sumber daya, silakan merujuk ke konsol.

    • Sumber Daya Komputasi Tujuan Umum

      image

    • Sumber Daya Lingjunimage

  • Metode Penagihan

    Anda dikenakan biaya untuk sumber daya preemptible berdasarkan metode penagihan bayar sesuai pemakaian, dengan harga berdasarkan harga pasar.

  • Menampilkan Tagihan

    Setelah menjalankan pekerjaan, buka halaman Rincian Tagihan di Biaya dan Pengeluaran pada hari berikutnya untuk melihat rincian tagihan pekerjaan yang menggunakan sumber daya preemptible. Biaya bayar sesuai pemakaian dihasilkan oleh DLC. Tag instans adalah key:acs:pai:dlc:payType value:spot. Untuk informasi lebih lanjut tentang cara melihat rincian tagihan, lihat Lihat Rincian Tagihan.

Skenario

  • Skema yang Didukung

    Untuk mengurangi biaya, kami sarankan Anda menggunakan sumber daya preemptible dalam skenario berikut:

    • Pekerjaan komputasi jangka pendek.

    • Pekerjaan komputasi dalam status debug.

    • Pekerjaan komputasi yang toleran terhadap kesalahan.

    • Pekerjaan komputasi yang mengizinkan gangguan. Misalnya, dalam skenario di mana kerangka kerja EasyCkpt digunakan untuk melatih LLM PyTorch, Anda dapat sering menyimpan titik periksa dan memulihkan data dari titik periksa. Untuk informasi lebih lanjut, lihat Gunakan EasyCkpt untuk Menyimpan dan Melanjutkan Pelatihan Model Dasar.

  • Skema yang Tidak Didukung

    Layanan yang memerlukan stabilitas tinggi.

Prosedur

Anda dapat mengirimkan pekerjaan preemptible menggunakan salah satu metode berikut:

Gunakan konsol PAI

  1. Buka halaman Create Job.

    1. Masuk ke konsol PAI. Pilih wilayah dan ruang kerja, lalu klik Enter Deep Learning Containers (DLC).

    2. Di halaman Deep Learning Containers (DLC), klik Create Job.

  2. Di halaman Buat Pekerjaan, konfigurasikan parameter yang dijelaskan dalam tabel berikut. Untuk informasi tentang parameter lainnya, lihat Kirim Pekerjaan Pelatihan.

    Parameter

    Deskripsi

    Resource Information

    Resource Type

    Pilih Lingjun AI Computing Service atau General Computing.

    Catatan

    Parameter ini tersedia hanya jika ruang kerja mengizinkan Anda menggunakan Sumber daya Lingjun dan sumber daya komputasi tujuan umum.

    Source

    Pilih Preemptible Resources.

    Job Resource

    Di kolom Resource Type, klik ikon image untuk memilih sumber daya preemptible dan mengonfigurasi parameter Bid Price. Harga penawaran adalah harga penawaran maksimum berdasarkan harga asli tipe instans dan berkisar antara 10% hingga 90% dari harga pasar dengan interval 10%. Anda dapat memperoleh sumber daya preemptible jika penawaran Anda memenuhi atau melebihi harga pasar dan inventaris mencukupi.

    VPC

    VPC

    Konfigurasikan virtual private cloud (VPC) jika Anda menggunakan Sumber daya Lingjun untuk mengirimkan pekerjaan DLC. Pilih VPC, vSwitch, dan grup keamanan dari daftar drop-down.

    Security Group

    vSwitch

    Fault Tolerance and Diagnosis

    Automatic Fault Tolerance

    Jika Anda menggunakan Sumber daya Lingjun untuk mengirimkan pekerjaan DLC, kami sarankan Anda mengaktifkan Automatic Fault Tolerance. Fitur Toleransi Kesalahan Otomatis memungkinkan pekerjaan preemptible secara otomatis masuk kembali ke antrian penawaran setelah pencabutan sumber daya. Pekerjaan dapat dilanjutkan ketika harga pasar rata-rata turun di bawah harga penawaran maksimum Anda. Untuk informasi lebih lanjut tentang AIMaster, lihat AIMaster: Mesin toleransi kesalahan elastis.

    Sumber daya Lingjun

    Catatan

    Untuk harga spesifik spesifikasi sumber daya, silakan merujuk ke konsol.

    image

    Sumber daya komputasi tujuan umum

    Catatan

    Untuk harga spesifik spesifikasi sumber daya, silakan merujuk ke konsol.

    image

  3. Setelah mengonfigurasi parameter, klik Confirm.

    Setelah mengirimkan pekerjaan, DLC mengajukan sumber daya preemptible untuk membuat dan menjalankan pekerjaan. Jika tidak ada sumber daya preemptible yang diajukan, pekerjaan masuk ke status menunggu.

Gunakan SDK

Langkah 1: Instal SDK untuk Python.

  • Instal SDK ruang kerja.

    pip install alibabacloud_aiworkspace20210204==3.0.1
  • Instal SDK DLC.

    pip install alibabacloud_pai_dlc20201203==1.4.17

Langkah 2: Kirim pekerjaan preemptible

SpotDiscountLimit

#!/usr/bin/env python3

from alibabacloud_tea_openapi.models import Config
from alibabacloud_credentials.client import Client as CredClient

from alibabacloud_pai_dlc20201203.client import Client as DLCClient
from alibabacloud_pai_dlc20201203.models import CreateJobRequest

region_id = '<region-id>'  # ID wilayah tempat pekerjaan DLC berada, seperti cn-hangzhou. 
cred = CredClient()
workspace_id = '12****'  # ID ruang kerja tempat pekerjaan DLC berada. 

dlc_client = DLCClient(
    Config(credential=cred,
           region_id=region_id,
           endpoint='pai-dlc.{}.aliyuncs.com'.format(region_id),
           protocol='http'))

create_job_resp = dlc_client.create_job(CreateJobRequest().from_map({
    'WorkspaceId': workspace_id,
    'DisplayName': 'sample-spot-job',
    'JobType': 'PyTorchJob',
    'JobSpecs': [
        {
            "Type": "Worker",
            "Image": "dsw-registry-vpc.<region-id>.cr.aliyuncs.com/pai/pytorch-training:1.12-cpu-py39-ubuntu20.04",
            "PodCount": 1,
            "EcsSpec": 'ecs.g7.xlarge',
            "SpotSpec": {
                "SpotStrategy": "SpotWithPriceLimit",
                "SpotDiscountLimit": 0.4,
            }
        },
    ],
    'UserVpc': {
        "VpcId": "vpc-0jlq8l7qech3m2ta2****",
        "SwitchId": "vsw-0jlc46eg4k3pivwpz8****",
        "SecurityGroupId": "sg-0jl4bd9wwh5auei9****",
    },
    "UserCommand": "echo 'Hello World' && ls -R /mnt/data/ && sleep 30 && echo 'DONE'",
}))
job_id = create_job_resp.body.job_id
print(f'jobId is {job_id}')

SpotPriceLimit

#!/usr/bin/env python3

from alibabacloud_tea_openapi.models import Config
from alibabacloud_credentials.client import Client as CredClient

from alibabacloud_pai_dlc20201203.client import Client as DLCClient
from alibabacloud_pai_dlc20201203.models import CreateJobRequest

region_id = '<region-id>'
cred = CredClient()
workspace_id = '12****'

dlc_client = DLCClient(
    Config(credential=cred,
           region_id=region_id,
           endpoint='pai-dlc.{}.aliyuncs.com'.format(region_id),
           protocol='http'))

create_job_resp = dlc_client.create_job(CreateJobRequest().from_map({
    'WorkspaceId': workspace_id,
    'DisplayName': 'sample-spot-job',
    'JobType': 'PyTorchJob',
    'JobSpecs': [
        {
            "Type": "Worker",
            "Image": "dsw-registry-vpc.<region-id>.cr.aliyuncs.com/pai/pytorch-training:1.12-cpu-py39-ubuntu20.04",
            "PodCount": 1,
            "EcsSpec": 'ecs.g7.xlarge',
            "SpotSpec": {
                "SpotStrategy": "SpotWithPriceLimit",
                "SpotPriceLimit": 0.011,
            }
        },
    ],
    'UserVpc': {
        "VpcId": "vpc-0jlq8l7qech3m2ta2****",
        "SwitchId": "vsw-0jlc46eg4k3pivwpz8****",
        "SecurityGroupId": "sg-0jl4bd9wwh5auei9****",
    },
    "UserCommand": "echo 'Hello World' && ls -R /mnt/data/ && sleep 30 && echo 'DONE'",
}))
job_id = create_job_resp.body.job_id
print(f'jobId is {job_id}')

Tabel berikut menjelaskan parameter utama. Untuk informasi tentang parameter lainnya, lihat Gunakan SDK untuk Python.

Parameter

Deskripsi

SpotStrategy

Kebijakan penawaran. Parameter tipe penawaran berlaku hanya jika Anda mengatur parameter ini ke SpotWithPriceLimit.

SpotDiscountLimit

Tipe penawaran diskon spot.

Catatan
  • Anda tidak dapat menentukan parameter SpotDiscountLimit dan SpotPriceLimit pada saat yang bersamaan.

  • Parameter SpotDiscountLimit hanya valid untuk Sumber daya Lingjun.

SpotPriceLimit

Tipe penawaran harga spot.

UserVpc

Parameter ini diperlukan saat Anda menggunakan Sumber daya Lingjun untuk mengirimkan pekerjaan. Konfigurasikan ID VPC, vSwitch, dan grup keamanan untuk wilayah tempat pekerjaan berada.