全部产品
Search
文档中心

Platform For AI:Penerapan kustom

更新时间:Jan 29, 2026

Elastic Algorithm Service (EAS) adalah layanan terkelola yang fleksibel dan komprehensif untuk Inferensi AI. Anda dapat menggunakan fitur penerapan kustomnya untuk mengemas algoritma atau model apa pun menjadi layanan online.

Catatan

Sebaiknya coba penerapan berbasis skenario terlebih dahulu untuk skenario seperti Large Language Model (LLM) dan ComfyUI. Gunakan penerapan kustom jika kebutuhan Anda tidak terpenuhi.

Memulai dengan cepat: Menyebarkan layanan web sederhana

Bagian ini menunjukkan cara cepat menyebarkan layanan web sederhana menggunakan metode penerapan berbasis image.

Langkah 1: Siapkan file kode

Simpan kode aplikasi Flask berikut sebagai file app.py. Perhatikan bahwa layanan mendengarkan pada port 8000.

app.py

from flask import Flask

app = Flask(__name__)

@app.route('/hello')
def hello_world():
    # Tempat Anda menempatkan 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 bucket OSS dan ruang kerja EAS berada di wilayah yang sama). Misalnya, unggah ke folder oss://examplebucket/code/.

Langkah 3: Konfigurasikan dan sebarkan layanan

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

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

  3. Pada halaman konfigurasi, atur parameter utama di bagian Environment Information dan Resource Information sebagai berikut:

    • Deployment Method: Pilih Image-based Deployment.

    • Image Configuration: Pilih Alibaba Cloud Image python-inference:3.9-ubuntu2004.

    • Storage Mount: Pasang direktori OSS yang berisi app.py ke path /mnt/data/ di dalam kontainer.

      • Uri: Pilih direktori OSS tempat kode Anda berada. Dalam contoh ini, yaitu oss://examplebucket/code/.

      • Mount Path: Tentukan path lokal untuk direktori ini di dalam kontainer. Dalam contoh ini, path-nya adalah /mnt/data/.

    • Command: Karena app.py telah dipasang ke direktori /mnt/data/ di dalam kontainer, perintah start-nya adalah: python /mnt/data/app.py.

    • Third-party Library Configuration: Pustaka flask yang digunakan dalam contoh ini tidak termasuk dalam image resmi. Tambahkan flask ke Third-party Libraries. EAS akan menginstalnya secara otomatis saat layanan dimulai.

    • Resource Configuration: Alokasikan sumber daya komputasi yang sesuai untuk layanan. Untuk contoh sederhana ini, instans CPU kecil sudah cukup.

      • Resource Type: Public resources.

      • Resource Type: ecs.c7.large.

  4. Setelah konfigurasi selesai, klik Deploy. Ketika status layanan berubah menjadi Running, penerapan berhasil. Anda kemudian dapat memanggil layanan tersebut.

Detail konfigurasi lebih lanjut

Kelola lingkungan dan dependensi

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

Parameter

Deskripsi

Image Configuration

Dasar dari lingkungan runtime layanan. Anda dapat menggunakan image resmi yang disediakan oleh PAI, atau menggunakan image Anda sendiri dengan memilih Custom Image atau memasukkan Image Address. Untuk informasi selengkapnya, lihat Custom images.

Catatan

Jika image berisi WebUI, aktifkan Enable Web App. EAS akan secara otomatis menjalankan server web sehingga Anda dapat langsung mengakses halaman frontend.

Mount storage

Pasang model, kode, atau data dari penyimpanan cloud seperti OSS dan NAS ke path lokal di dalam kontainer. Hal ini memisahkan kode dan data dari lingkungan agar lebih mudah diperbarui secara independen. Untuk informasi selengkapnya, lihat Mount storage.

Mount dataset

Untuk mengelola versi model atau data Anda, gunakan fitur Dataset untuk memasangnya. Untuk informasi selengkapnya, lihat Create and manage datasets.

Command

Tentukan perintah start image. Contohnya, python /run.py.

Port Number

Tentukan port tempat layanan mendengarkan. Nomor port bersifat opsional dalam beberapa skenario.

Contohnya, jika layanan Anda tidak bergantung pada trafik dari gateway EAS melainkan berlangganan antrian pesan untuk menerima pesan, nomor port bersifat opsional.

Penting

Engine EAS mencadangkan port 8080 dan 9090. Hindari penggunaan port-port ini saat menyebarkan layanan baru untuk mencegah konflik yang dapat menghentikan proses startup layanan.

Third-party Library Settings

Jika Anda hanya perlu menginstal beberapa pustaka Python tambahan, tambahkan nama pustaka di sini atau tentukan Path of requirements.txt. Hal ini menghindari kebutuhan untuk membangun ulang image.

Environment Variables

Tentukan variabel lingkungan untuk instans layanan dalam bentuk pasangan kunci-nilai.

Saat menyebarkan layanan menggunakan instans GPU-accelerated, Anda juga dapat menentukan GPU driver version di bagian Resource Configuration di bawah Features untuk memenuhi persyaratan model atau framework tertentu.

Konfigurasikan sumber daya komputasi

Di bagian Resource Information, konfigurasikan sumber daya komputasi untuk layanan.

Parameter

Deskripsi

Resource Type

Anda dapat memilih public resources, EAS resource groups, atau kuota sumber daya.

Catatan

Aktifkan GPU Sharing untuk menyebarkan beberapa layanan model pada satu kartu GPU. Fitur ini meningkatkan pemanfaatan sumber daya GPU dengan berbagi daya komputasi. Fitur ini cocok untuk skenario dengan model kecil atau beban kerja inferensi rendah. Fitur ini hanya didukung saat Anda menggunakan EAS resource groups atau kuota sumber daya. Untuk informasi selengkapnya, lihat GPU sharing.

Number of Replicas

Konfigurasikan beberapa instans untuk menghindari single point of failure.

Deployment

Saat menggunakan public resources, Anda dapat mengaktifkan mode spot untuk spesifikasi yang didukung serta menetapkan tawaran maksimum. Hal ini memungkinkan Anda mendapatkan sumber daya idle dengan harga jauh lebih murah dibandingkan instans reguler. Fitur ini cocok untuk tugas inferensi yang tidak sensitif terhadap gangguan.

Catatan

Configure System Disk

  • Jika menggunakan public resources, EAS menyediakan disk sistem 30 GiB secara gratis. Jika memerlukan kapasitas lebih besar, Anda akan dikenai biaya berdasarkan penggunaan aktual.

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

Elastic Resource Pool

Saat menggunakan EAS resource group atau kuota sumber daya, Anda dapat mengaktifkan fitur ini. Jika sumber daya Anda sendiri tidak mencukupi, sumber daya publik akan digunakan secara otomatis untuk skala keluar guna menangani lonjakan trafik. Selama skala-masuk, instans sumber daya publik akan dilepas terlebih dahulu untuk menghemat biaya. Untuk informasi selengkapnya, lihat Elastic resource pools.

Specify Node Scheduling

Fitur ini hanya berlaku saat Anda menggunakan EAS resource group atau kuota sumber daya.

  • Jika Anda menentukan node, hanya node yang ditentukan yang akan digunakan.

  • Jika Anda tidak menentukan node, node mana pun yang tidak dikecualikan dapat digunakan.

High-priority Resource Rescheduling

Saat diaktifkan, sistem secara berkala mencoba memigrasikan instans layanan dari sumber daya prioritas rendah (seperti public resources dan instans reguler) ke sumber daya prioritas tinggi (seperti dedicated resource groups dan spot instans) untuk mengoptimalkan biaya dan alokasi sumber daya. Fitur ini dapat menyelesaikan masalah berikut:

  • Selama pembaruan bergulir, fitur ini mencegah instans baru sementara dijadwalkan ke grup sumber daya publik karena instans lama masih menduduki sumber daya.

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

Akses layanan dan jaringan

EAS menyediakan opsi akses layanan dan jaringan yang fleksibel untuk memenuhi berbagai kebutuhan integrasi bisnis. Untuk informasi selengkapnya, lihat Service invocation.

Parameter

Deskripsi

Gateway Selection

Secara default, Shared Gateway gratis digunakan. Anda dapat mengaktifkan Dedicated Gateway berbayar untuk fitur lanjutan seperti nama domain kustom dan kontrol akses. Untuk informasi selengkapnya, lihat Use a dedicated gateway.

Penting

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

VPC

Dengan mengonfigurasi VPC, vSwitch, dan security group, Anda dapat mengaktifkan akses langsung ke layanan dalam VPC atau memungkinkan layanan mengakses sumber daya jaringan publik. Untuk informasi selengkapnya, lihat Access public or internal resources from EAS.

Associate NLB

Asosiasikan layanan dengan instans Network Load Balancer (NLB) untuk load balancing yang lebih otonom dan terkendali. Untuk informasi selengkapnya, lihat Invoke a service by associating it with an NLB instance.

Service Discovery Nacos

Daftarkan layanan ke pusat registrasi dan konfigurasi mikroservis untuk mengaktifkan penemuan layanan otomatis dan sinkronisasi dalam arsitektur mikroservis. Untuk informasi selengkapnya, lihat Invoke a service by associating it with Nacos.

Anda juga dapat Enable gRPC di bawah Advanced Networking di bagian Features. Setelah fitur ini diaktifkan, gateway layanan mendukung koneksi gRPC, yang cocok untuk skenario yang memerlukan komunikasi RPC berkinerja tinggi.

Keamanan layanan

Untuk memastikan keamanan layanan, gunakan fitur-fitur berikut di bagian Features:

Parameter

Deskripsi

Custom Authentication

Jika Anda tidak ingin menggunakan token yang dihasilkan sistem, Anda dapat menentukan token otentikasi kustom untuk akses layanan di sini.

Configure Secure Encryption Environment

Dengan mengintegrasikan layanan manajemen kepercayaan sistem, Anda dapat memastikan bahwa informasi seperti data, model, dan kode dienkripsi secara aman selama penerapan dan pemanggilan layanan. Fitur ini terutama berlaku untuk file penyimpanan yang dipasang. Selesaikan pemasangan penyimpanan sebelum mengaktifkan fitur ini. Untuk informasi selengkapnya, lihat Secure and encrypted inference services.

Instance RAM Role

Setelah mengasosiasikan peran RAM dengan instans, kode dalam layanan dapat menggunakan kredensial sementara STS untuk mengakses sumber daya cloud lainnya. Anda tidak perlu mengonfigurasi AccessKey tetap, sehingga mengurangi risiko kebocoran kunci. Untuk informasi selengkapnya, lihat Configure an EAS RAM role.

Menjamin stabilitas dan ketersediaan tinggi layanan

Gunakan fitur audience group di bagian Basic Information untuk mengelompokkan layanan dari versi berbeda atau layanan yang menggunakan sumber daya heterogen. Dalam kombinasi dengan kebijakan manajemen trafik, Anda dapat menerapkan rilis canary. Untuk informasi selengkapnya, lihat Canary release.

Untuk memastikan stabilitas dan keandalan layanan di lingkungan produksi, lakukan konfigurasi berikut di bagian Features:

Parameter

Deskripsi

Service Response Timeout Period

Konfigurasikan timeout yang wajar untuk setiap permintaan. Nilai default adalah 5 detik. Hal ini mencegah permintaan lambat menduduki sumber daya layanan terlalu lama.

Health Check

Konfigurasikan Health Check untuk layanan. Sistem secara berkala memeriksa status kesehatan instans dan secara otomatis membuat instans baru jika suatu instans gagal. Hal ini memberikan pemulihan kesalahan otomatis. Untuk informasi selengkapnya, lihat Health check.

Compute monitoring & fault tolerance

Platform memantau kesehatan daya komputasi layanan inferensi terdistribusi secara real-time. Hal ini memungkinkan deteksi kesalahan otomatis dan self-healing cerdas untuk memastikan ketersediaan tinggi dan stabilitas. Untuk informasi selengkapnya, lihat Computing power check and fault tolerance.

Graceful Shutdown

Konfigurasikan Graceful Shutdown Time untuk memastikan instans memiliki waktu cukup untuk memproses permintaan yang diterima sebelum dimatikan selama pembaruan layanan atau skala-masuk. Hal ini mencegah gangguan pemrosesan permintaan. Anda juga dapat memilih Send SIGTERM untuk memungkinkan penanganan shutdown yang lebih detail halus di lapisan aplikasi. Untuk informasi selengkapnya, lihat Rolling updates and graceful shutdown.

Rolling Update

Dengan mengonfigurasi Exceeds the expected number of replicas dan Maximum Unavailable Replicas, Anda dapat menyesuaikan kebijakan penggantian instans selama pembaruan layanan. Hal ini memungkinkan peningkatan versi tanpa mengganggu layanan. Untuk informasi selengkapnya, lihat Rolling updates and graceful shutdown.

Optimasi kinerja

Konfigurasi berikut sangat penting untuk meningkatkan kinerja layanan. Konfigurasi ini secara efektif mempercepat startup, meningkatkan throughput, dan mengurangi latensi, terutama untuk aplikasi yang intensif sumber daya seperti LLM.

Parameter

Parameter dan deskripsi

Storage acceleration

Distributed cache acceleration

Cache file model atau data dari penyimpanan yang dipasang seperti OSS ke penyimpanan lokal instans. Hal ini meningkatkan kecepatan baca dan mengurangi latensi I/O. Untuk informasi selengkapnya, lihat Cache local directories in memory.

Model Weight Service (MoWS)

Secara signifikan meningkatkan efisiensi penskalaan dan kecepatan startup layanan dalam skenario penerapan instans berskala besar dengan melakukan caching dan berbagi bobot model di antara instans. Untuk informasi selengkapnya, lihat Model Weight Service.

Resource allocation

Shared Memory

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

Distributed Inference

Sebarkan satu instans inferensi di beberapa mesin untuk menyelesaikan satu tugas inferensi. Hal ini mengatasi masalah ketidakmampuan menyebarkan model berukuran besar pada satu mesin. Untuk informasi selengkapnya, lihat Multi-node distributed inference.

Intelligent scheduling

LLM Intelligent Router

Saat layanan LLM memiliki beberapa instans backend, LLM Intelligent Router dapat mendistribusikan permintaan secara dinamis berdasarkan muatan backend. Hal ini memastikan penggunaan daya komputasi dan VRAM setiap instans sedekat mungkin seimbang, sehingga meningkatkan pemanfaatan sumber daya kluster. Untuk informasi selengkapnya, lihat Deploy an LLM intelligent router.

Observabilitas dan diagnostik layanan

Untuk memperoleh wawasan tentang status layanan dan mempercepat troubleshooting, aktifkan fitur-fitur berikut di bagian Features:

Parameter

Deskripsi

Save Call Records

Simpan secara persisten semua catatan permintaan dan tanggapan layanan ke MaxCompute atau Simple Log Service untuk auditing, analisis, atau troubleshooting.

  • MaxCompute

    • MaxCompute Project: Pilih proyek yang telah dibuat. Jika daftar kosong, klik Create MaxCompute Project untuk membuatnya. Untuk informasi selengkapnya, lihat Create a MaxCompute project.

    • MaxCompute Table: Konfigurasikan nama tabel data. Saat menyebarkan layanan, sistem secara otomatis membuat tabel ini di proyek yang dipilih.

  • Simple Log Service

    • Simple Log Service Project: Pilih proyek log yang telah dibuat. Jika daftar kosong, klik Go to Create SLS Project untuk membuatnya. Untuk informasi selengkapnya, lihat Manage a Project.

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

Tracing Analysis

Beberapa image resmi memiliki komponen pengumpulan bawaan yang memungkinkan Anda mengaktifkan Tracing Analysis dengan satu klik. Untuk image lainnya, Anda dapat mengintegrasikan agen ARMS dengan konfigurasi sederhana untuk mencapai pemantauan end-to-end rantai pemanggilan layanan. Untuk informasi selengkapnya, lihat Enable Tracing Analysis for LLM applications in EAS. Metode konfigurasinya sebagai berikut:

  • Untuk Start Command, tambahkan aliyun-bootstrap -a install && aliyun-instrument python app.py untuk menginstal agen dan menjalankan aplikasi dengan agen Python ARMS. Ganti app.py dengan file utama yang digunakan untuk layanan prediksi.

  • Untuk Third-party Library Configuration, tambahkan aliyun-bootstrap untuk mengunduh installer agen dari repositori PyPI.

Layanan asinkron dan elastis

  • Asynchronous Inference: Untuk skenario inferensi yang memakan waktu seperti AIGC dan pemrosesan video, aktifkan Asynchronous Queue. Klien menerima respons langsung setelah pemanggilan dan dapat memperoleh hasil akhir melalui polling atau callback. Untuk informasi selengkapnya, lihat Deploy an asynchronous inference service.

  • Elastic Job Service: Di bagian Features, aktifkan Task Mode untuk menyebarkan layanan inferensi sebagai layanan Job on-demand. Fitur ini cocok untuk skenario seperti pemrosesan data batch dan tugas terjadwal. Sumber daya secara otomatis dilepas setelah tugas selesai untuk menghemat biaya. Untuk informasi selengkapnya, lihat Elastic Job Service.

Ubah parameter konfigurasi JSON

Di bagian Service Configuration, lihat JSON lengkap yang sesuai dengan konfigurasi antarmuka saat ini. Anda juga dapat mengeditnya secara langsung.

Catatan

Untuk skenario konfigurasi otomatis dan detail halus, Anda juga dapat menggunakan file JSON untuk mendefinisikan dan menyebarkan layanan. Untuk informasi selengkapnya, lihat JSON-based deployment.