全部产品
Search
文档中心

Platform For AI:Penyebaran Kustom Berbasis Konsol

更新时间:Oct 25, 2025

Penyebaran kustom Elastic Algorithm Service (EAS) menawarkan lingkungan fleksibel untuk menjalankan model AI atau algoritma apa pun sebagai layanan inferensi yang dapat diskalakan. Layanan ini mendukung berbagai beban kerja, mulai dari model bahasa besar (LLM) hingga kode kustom. Panduan ini ditujukan bagi pengguna tingkat lanjut yang membutuhkan kontrol penuh atas runtime dan konfigurasi. Untuk pengaturan lebih sederhana dengan aplikasi umum seperti LLM dan ComfyUI, pertimbangkan penyebaran berbasis skenario.

Cara Kerjanya

Layanan EAS dijalankan pada satu atau lebih instans kontainer terisolasi. Penyebaran layanan didasarkan pada komponen inti berikut:

  • Gambar Lingkungan: Paket read-only yang mencakup sistem operasi, pustaka dasar (seperti CUDA), runtime bahasa (seperti Python), dan dependensi lainnya. Anda dapat menggunakan gambar resmi dari PAI atau membuat gambar kustom sesuai kebutuhan aplikasi.

  • Kode dan File Model: File ini mencakup logika bisnis dan bobot model. Praktik terbaik adalah menyimpannya di Layanan Penyimpanan Objek (OSS) atau Penyimpanan File NAS (NAS), lalu mengaksesnya melalui pemasangan. Pendekatan ini memisahkan kode dan model dari lingkungan runtime, memungkinkan iterasi independen tanpa perlu membangun ulang gambar.

  • Pemasangan Penyimpanan: Saat layanan dimulai, EAS memasang jalur OSS atau NAS yang ditentukan ke direktori lokal dalam kontainer. Hal ini memungkinkan kode di dalam kontainer mengakses file penyimpanan eksternal seolah-olah mereka adalah file lokal.

  • Perintah Jalankan: Perintah pertama yang dieksekusi setelah kontainer dimulai. Biasanya, ini adalah perintah untuk memulai server HTTP, seperti python app.py.

Alur kerja penyebaran adalah sebagai berikut:

  1. EAS menarik gambar yang ditentukan untuk membuat kontainer.

  2. EAS memasang penyimpanan eksternal ke jalur yang ditentukan di dalam kontainer.

  3. EAS mengeksekusi perintah jalankan di dalam kontainer.

  4. Setelah perintah berhasil dieksekusi, layanan mulai mendengarkan pada port yang ditentukan dan memproses permintaan inferensi.

Catatan

EAS mendukung dua metode penyebaran: berbasis gambar dan berbasis prosesor. Metode berbasis gambar direkomendasikan karena menawarkan fleksibilitas dan kemudahan pemeliharaan maksimal. Metode berbasis prosesor merupakan opsi lama dengan keterbatasan signifikan.

Catatan Penggunaan

  • Layanan tidak aktif (tidak berjalan selama 180 hari berturut-turut) akan dihapus secara otomatis.

  • Saat memanggil layanan melalui gateway, badan permintaan tidak boleh melebihi 1 MB.

  • Hindari menggunakan port 8080 dan 9090 karena dicadangkan oleh mesin EAS.

Prosedur

Bagian ini menunjukkan cara cepat menyebarkan layanan web sederhana menggunakan metode penyebaran berbasis gambar.

Langkah 1: Siapkan file kode

Simpan kode aplikasi Flask berikut sebagai file app.py. Layanan akan mendengarkan pada port 8000.

app.py

from flask import Flask

app = Flask(__name__)

@app.route('/hello')
def hello_world():
    # TODO: Implementasikan inferensi model atau logika bisnis lainnya
    return 'Hello World'

if __name__ == '__main__':
    app.run(host='0.0.0.0', port=8000)

Langkah 2: Unggah kode ke OSS

Unggah file app.py ke Bucket OSS. Pastikan bahwa Bucket OSS dan ruang kerja EAS berada di wilayah yang sama. Sebagai contoh, unggah file ke direktori oss://examplebucket/code/.

Langkah 3: Konfigurasikan dan sebarkan layanan

  1. Masuk ke Konsol PAI. Pilih wilayah di bagian atas halaman, pilih ruang kerja yang diinginkan, dan klik Elastic Algorithm Service (EAS).

  2. Di tab Inference Service, klik Deploy Service. Di bagian Custom Model Deployment, klik Custom Deployment.

  3. Di halaman konfigurasi, atur parameter utama di bagian Informasi Lingkungan dan Informasi Sumber Daya sebagai berikut:

    • Metode Penyebaran: Pilih Image-based Deployment. Di bidang Image Configuration, pilih Alibaba Cloud Image python-inference:3.9-ubuntu2004.

    • Pemasangan Penyimpanan: Klik OSS dan pasang direktori OSS yang berisi app.py ke jalur /mnt/data/ di dalam kontainer.

      • Uri: Jalur ke direktori OSS yang berisi kode, seperti oss://examplebucket/code/.

      • Mount Path: Jalur di dalam kontainer ke direktori yang dipasang. Sebagai contoh, /mnt/data/.

    • Command: Perintah startup adalah python /mnt/data/app.py karena app.py telah dipasang ke direktori /mnt/data/ dari kontainer.

    • Pengaturan Pustaka Pihak Ketiga: Kode contoh bergantung pada pustaka flask, yang tidak termasuk dalam gambar resmi. Tambahkan flask ke Third-party Libraries agar diinstal secara otomatis saat startup.

    • Konfigurasi sumber daya: Instans CPU kecil sudah cukup untuk contoh ini.

      • Resource Type: Public Resources.

      • Resource Type: ecs.c7.large.

  4. Setelah menyelesaikan konfigurasi, klik Deploy. Penyebaran selesai ketika status layanan berubah menjadi Running. Lanjutkan ke memanggil layanan.

Referensi

Kelola lingkungan dan dependensi

Di bagian Environment Information, konfigurasikan lingkungan dan dependensi untuk layanan.

Parameter

Deskripsi

Image Configuration

Gambar berfungsi sebagai lingkungan runtime dasar untuk layanan. Gunakan gambar resmi yang disediakan oleh PAI atau gambar kustom yang dibuat sendiri dengan memilih Custom Image atau memasukkan Image Address. Untuk informasi lebih lanjut, lihat Gambar Kustom.

Catatan

Jika gambar berisi WebUI, pilih Enable Web App, dan EAS secara otomatis memulai server web untuk memberikan akses langsung ke halaman frontend.

Mount Storage

Memasang model, kode, atau data dari layanan penyimpanan cloud seperti OSS dan NAS ke jalur lokal di dalam kontainer memisahkan kode atau data dari lingkungan, memungkinkan pembaruan independen. Untuk informasi lebih lanjut, lihat Pemasangan Penyimpanan.

Mount Dataset

Jika Anda ingin melakukan manajemen versi untuk model atau data Anda, gunakan Dataset untuk memasangnya. Untuk informasi lebih lanjut, lihat Buat dan kelola dataset.

Command, Port Number

Tetapkan perintah startup gambar, seperti python /run.py, dan port tempat layanan mendengarkan.

Penting

Mesin EAS mendengarkan pada port tetap 8080 dan 9090. Hindari menggunakan kedua port tersebut.

Third-Party Library Settings

Jika Anda hanya perlu menginstal beberapa pustaka Python tambahan, tambahkan nama pustaka secara langsung atau tentukan Path of Requirements.txt untuk menghindari pembuatan ulang gambar.

Environment Variables

Tetapkan variabel lingkungan untuk instans layanan sebagai pasangan kunci-nilai.

Untuk instans yang dipercepat GPU, tentukan versi Driver GPU melalui Features > Resource Configuration > GPU Driver Version untuk memenuhi persyaratan runtime model atau framework tertentu.

Konfigurasikan sumber daya komputasi

Di bagian Resource Information, konfigurasikan sumber daya komputasi layanan.

Parameter

Deskripsi

Resource Type

Pilih sumber daya publik, kelompok sumber daya EAS, atau kuota sumber daya.

Catatan

Aktifkan GPU Sharing untuk menyebarkan beberapa layanan model pada satu kartu GPU dan meningkatkan pemanfaatan sumber daya GPU dengan berbagi daya komputasi. Fitur ini cocok untuk kasus penggunaan dengan model kecil atau payload inferensi rendah. Ini hanya dapat diaktifkan saat Anda menggunakan kelompok sumber daya EAS atau kuota sumber daya. Untuk informasi lebih lanjut, lihat Berbagi GPU.

Instances

Konfigurasikan beberapa instans untuk menghindari risiko titik kegagalan tunggal.

Deployment Resources

Saat menggunakan sumber daya publik untuk spesifikasi yang didukung, aktifkan Bidding dan atur harga penawaran maksimum untuk merebut sumber daya idle dengan harga jauh lebih rendah daripada instans reguler. Fitur ini cocok untuk tugas inferensi yang tidak sensitif terhadap gangguan.

Catatan

Configure a System Disk

  • Jika Anda menggunakan sumber daya publik, EAS menyediakan disk sistem 30 GiB secara gratis. Jika Anda memerlukan kapasitas lebih, Anda akan dikenakan biaya sesuai penggunaan aktual.

  • Jika Anda menggunakan kelompok sumber daya EAS atau kuota sumber daya, disk sistem 60 GiB diaktifkan secara default. Jika Anda mengubah kapasitas, ruang dialokasikan dari host.

Elastic Resource Pool

Fitur ini memungkinkan cloud bursting. Saat lalu lintas melebihi kapasitas sumber daya khusus Anda (kelompok sumber daya EAS atau kuota), layanan secara otomatis meledak ke sumber daya publik on-demand untuk menangani lonjakan. Selama skala-masuk, instans publik ini dilepaskan terlebih dahulu untuk meminimalkan biaya. Untuk informasi lebih lanjut, lihat Kolam sumber daya elastis.

High-priority Resource Rescheduling

Setelah Anda mengaktifkan fitur ini, sistem secara berkala mencoba memigrasikan instans layanan dari sumber daya prioritas rendah, seperti sumber daya publik atau instans reguler, ke sumber daya prioritas tinggi, seperti kelompok sumber daya khusus atau instans spot. Ini mengoptimalkan biaya dan alokasi sumber daya. Fitur ini dapat menyelesaikan masalah berikut:

  • Selama pembaruan bergulir, mencegah instans baru untuk sementara dijadwalkan ke kelompok sumber daya publik karena instans lama masih menempati sumber daya.

  • Saat Anda menggunakan instans spot dan instans reguler, sistem secara berkala memeriksa dan memigrasikan instans ke instans spot yang lebih ekonomis jika tersedia.

Pendaftaran Layanan dan Jaringan

EAS menyediakan opsi pendaftaran layanan dan konfigurasi jaringan yang fleksibel untuk memenuhi kebutuhan integrasi bisnis yang berbeda. Untuk informasi lebih lanjut, lihat Pemanggilan Layanan.

Parameter

Deskripsi

Select Gateway

Secara default, layanan diekspos melalui Shared Gateway gratis. Untuk kemampuan lanjutan, termasuk nama domain kustom dan kontrol akses detail halus, peningkatan ke Dedicated Gateway tersedia sebagai opsi berbayar. Untuk informasi lebih lanjut, lihat Panggil melalui gateway khusus.

Penting

Saat Anda memanggil layanan melalui gateway, badan permintaan tidak boleh melebihi 1 MB.

VPC Configuration

Dengan mengonfigurasi VPC, vSwitch, dan grup keamanan, aktifkan akses langsung ke layanan dalam VPC atau izinkan layanan untuk mengakses sumber daya Internet. Untuk informasi lebih lanjut, lihat Konfigurasi jaringan.

Associate NLB

Asosiasikan layanan dengan instans Network Load Balancer (NLB) untuk mencapai penyeimbangan beban yang lebih fleksibel dan detail halus. Untuk informasi lebih lanjut, lihat Panggil layanan menggunakan instans NLB terasosiasi.

Service Discovery Nacos

Daftarkan layanan ke Pusat Registrasi Mikroservis untuk mengaktifkan penemuan layanan otomatis dan sinkronisasi dalam model mikroservis. Untuk informasi lebih lanjut, lihat Panggil layanan menggunakan Nacos.

Untuk mengaktifkan komunikasi RPC berkinerja tinggi, aktifkan dukungan gRPC untuk gateway layanan melalui Features > Advanced Networking.

Keamanan Layanan

Untuk meningkatkan keamanan layanan, konfigurasikan parameter berikut di bagian Features:

Parameter

Deskripsi

Custom Authentication

Jika Anda tidak ingin menggunakan token yang dibuat sistem, sesuaikan token otentikasi untuk akses layanan di sini.

Configure Secure Encryption Environment

Mengintegrasikan dengan layanan komputasi rahasia untuk menjalankan inferensi dalam enklaf aman, mengenkripsi data, model, dan kode saat digunakan. Fitur ini terutama untuk file penyimpanan yang dipasang. Anda harus memasang penyimpanan sebelum mengaktifkan fitur ini. Untuk informasi lebih lanjut, lihat Layanan Inferensi Terenkripsi Aman.

Instance RAM Role

Dengan mengaitkan peran RAM dengan instans, kode dalam layanan dapat menggunakan kredensial STS sementara untuk mengakses sumber daya cloud lainnya. Ini menghilangkan kebutuhan untuk mengonfigurasi AccessKey tetap dan mengurangi risiko kebocoran kunci. Untuk informasi lebih lanjut, lihat Konfigurasikan Peran RAM EAS.

Pastikan stabilitas dan ketersediaan tinggi layanan

Fitur grup di bagian Basic Information memungkinkan Anda mengelompokkan beberapa versi layanan atau layanan yang menggunakan sumber daya heterogen. Grup-grup ini kemudian dapat digunakan dengan kebijakan manajemen lalu lintas untuk menerapkan rilis bertahap. Untuk informasi lebih lanjut, lihat Rilis Bertahap.

Untuk memastikan stabilitas dan keandalan layanan di lingkungan produksi Anda, konfigurasikan parameter berikut di bagian Features:

Parameter

Deskripsi

Service Response Timeout Period

Konfigurasikan batas waktu yang sesuai untuk setiap permintaan. Defaultnya adalah 5 detik. Ini mencegah permintaan lambat menempati sumber daya layanan untuk waktu yang lama.

Health Check

Saat Anda mengonfigurasi Health Check untuk layanan, sistem secara berkala memeriksa status kesehatan instansnya. Jika sebuah instans menjadi abnormal, sistem secara otomatis meluncurkan instans baru untuk memungkinkan pemulihan mandiri. Untuk informasi lebih lanjut, lihat Pemeriksaan kesehatan.

Graceful Shutdown

Konfigurasikan Graceful Shutdown Time untuk memastikan bahwa selama pembaruan layanan atau skala-masuk, instans memiliki waktu yang cukup untuk menyelesaikan permintaan yang diterima sebelum keluar. Ini mencegah pemrosesan permintaan dari terganggu. Aktifkan Send SIGTERM untuk penanganan keluar yang lebih detail pada lapisan aplikasi. Untuk informasi lebih lanjut, lihat Pembaruan bergulir dan keluar anggun.

Rolling Update

Dengan mengonfigurasi Number of Instances Exceeding Expectation dan Maximum Number of Unavailable Instances, miliki kontrol detail atas kebijakan penggantian instans selama proses pembaruan layanan dan selesaikan peningkatan versi tanpa mengganggu layanan. Untuk informasi lebih lanjut, lihat Pembaruan bergulir dan keluar anggun.

Optimasi Kinerja

Konfigurasi berikut penting untuk meningkatkan kinerja layanan. Ini dapat mempercepat startup, meningkatkan throughput, dan mengurangi latensi, terutama untuk aplikasi intensif sumber daya seperti model besar.

Parameter

Deskripsi

Akselerasi Penyimpanan

Distributed Cache Acceleration

Meng-cache model atau file data dari penyimpanan yang dipasang, seperti OSS, ke instans lokal untuk meningkatkan kecepatan baca dan mengurangi latensi I/O. Untuk informasi lebih lanjut, lihat Cache data ke direktori lokal.

Model Weights Service (MoWS)

Secara signifikan meningkatkan efisiensi penskalaan dan kecepatan startup layanan dalam skenario penyebaran instans berskala besar melalui caching lokal dan berbagi bobot model lintas instans. Untuk informasi lebih lanjut, lihat Layanan Bobot Model.

Konfigurasi Sumber Daya

Shared Memory

Konfigurasikan memori bersama untuk instans. Ini memungkinkan beberapa proses dalam kontainer untuk membaca dan menulis langsung ke wilayah memori yang sama, menghindari overhead penyalinan dan transmisi data. Ini cocok untuk skenario yang memerlukan komunikasi antar-proses yang efisien.

Distributed Inference

Instans inferensi tunggal ditempatkan di beberapa mesin untuk bersama-sama menyelesaikan tugas inferensi. Ini menyelesaikan masalah bahwa model ultra-besar tidak dapat ditempatkan di satu mesin. Untuk informasi lebih lanjut, lihat Inferensi terdistribusi multi-mesin.

Penjadwalan Cerdas

LLM Intelligent Router

Saat layanan LLM memiliki beberapa instans backend, LLM Intelligent Router mendistribusikan permintaan secara dinamis berdasarkan beban backend untuk menyeimbangkan daya komputasi dan penggunaan memori GPU di semua instans dan meningkatkan pemanfaatan sumber daya kluster. Untuk informasi lebih lanjut, lihat Router cerdas LLM.

Pengamatan dan Diagnostik Layanan

Untuk mendapatkan wawasan tentang status layanan Anda dan menyelesaikan masalah dengan cepat, aktifkan fitur berikut di bagian Features:

Parameter

Deskripsi

Save Call Records

Simpan secara permanen semua catatan permintaan dan respons layanan di MaxCompute atau Simple Log Service untuk audit, analisis, atau pemecahan masalah.

  • MaxCompute

    • MaxCompute Project: Pilih proyek yang ada. Jika daftar kosong, klik Create MaxCompute Project untuk membuat satu. Untuk informasi lebih lanjut, lihat Buat proyek di konsol MaxCompute.

    • MaxCompute Table: Tentukan nama tabel data. Sistem secara otomatis membuat tabel ini di proyek yang dipilih saat Anda menyebarkan layanan.

  • Simple Log Service

    • Simple Log Service Project: Pilih proyek log yang ada. Jika daftar kosong, klik Create Simple Log Service Project untuk membuat satu. Untuk informasi lebih lanjut, lihat Kelola Proyek.

    • Logstore: Tentukan nama untuk logstore. Saat Anda menyebarkan layanan, sistem secara otomatis membuat logstore ini di proyek yang dipilih.

Tracing Analysis

Beberapa gambar resmi mencakup komponen koleksi bawaan, memungkinkan Anda mengaktifkan tracing dengan satu klik. Untuk gambar lainnya, integrasikan probe ARMS melalui konfigurasi sederhana untuk mencapai pemantauan end-to-end dari pemanggilan layanan. Untuk informasi lebih lanjut, lihat Aktifkan Tracing untuk Aplikasi Berbasis LLM di EAS. Metode konfigurasi adalah sebagai berikut:

  • Tambahkan aliyun-bootstrap -a install && aliyun-instrument python app.py ke perintah untuk menginstal probe dan memulai aplikasi menggunakan probe Python ARMS. Ganti app.py dengan file utama yang digunakan untuk menyediakan layanan prediksi.

  • Tambahkan aliyun-bootstrap ke Pengaturan Pustaka Pihak Ketiga untuk mengunduh installer probe dari repositori PyPI.

Layanan Asinkron dan Elastis

  • Inferensi Asinkron: Untuk skenario inferensi jangka panjang, seperti AIGC dan pemrosesan video, aktifkan Asynchronous Queue. Ini memungkinkan klien menerima respons segera setelah memulai panggilan dan mendapatkan hasil akhir menggunakan polling atau callback. Untuk informasi lebih lanjut, lihat Sebarkan layanan inferensi asinkron.

  • Layanan Elastic Job: Di bagian Features, aktifkan Task Mode untuk menjalankan beban kerja inferensi sebagai pekerjaan serverless on-demand. Sumber daya disediakan secara otomatis untuk tugas dan dilepaskan setelah selesai untuk menghemat biaya. Untuk informasi lebih lanjut, lihat Layanan Elastic Job.

Modifikasi parameter konfigurasi dalam file JSON

Di bagian Service Configuration, lihat dan edit langsung JSON lengkap untuk konfigurasi UI saat ini.

Catatan

Untuk skenario konfigurasi otomatis dan detail halus, Anda juga dapat menggunakan file JSON untuk mendefinisikan dan menyebarkan layanan secara langsung. Untuk informasi lebih lanjut, lihat Penyebaran JSON.