All Products
Search
Document Center

Platform For AI:Menyebar dan memanggil layanan model di EAS

Last Updated:Sep 25, 2026

EAS memungkinkan Anda menyebar model dengan cepat sebagai layanan inferensi online. Topik ini menjelaskan alur kerja dari penyebaran hingga pemanggilan layanan, menggunakan penyebaran model Qwen3-0.6B dengan framework vLLM sebagai contoh.

Catatan

Untuk penyebaran LLM produksi, gunakan penyebaran LLM berbasis skenario atau penyebaran satu klik dari Model Gallery.

I. Prasyarat

Aktifkan PAI dan buat ruang kerja dengan akun utama Alibaba Cloud Anda. Di Konsol PAI, pilih Wilayah lalu selesaikan otorisasi serta aktivasi produk.

II. Penagihan

Topik ini menggunakan sumber daya publik bayar sesuai penggunaan untuk membuat layanan model. Untuk informasi lebih lanjut tentang aturan penagihan, lihat penagihan EAS.

III. Persiapan

Untuk menyebarkan layanan model, Anda perlu menyiapkan file model dan file kode, seperti antarmuka web. Jika image Alibaba Cloud yang tersedia tidak memenuhi kebutuhan Anda, buatlah custom image.

3.1 File model

Jalankan kode berikut untuk mengunduh Qwen3-0.6B dari ModelScope ke ~/.cache/modelscope/hub.

# Unduh model
from modelscope import snapshot_download
model_dir = snapshot_download('Qwen/Qwen3-0.6B')

3.2 File kode

Framework vLLM membangun layanan yang kompatibel dengan API OpenAI, sehingga tidak diperlukan file kode terpisah.

Untuk logika bisnis kustom atau kebutuhan API, siapkan file kode Anda sendiri. Contoh menggunakan Flask:

Lihat contoh file kode

from flask import Flask

app = Flask(__name__)

@app.route('/hello/model')
def hello_world():
    # Anda dapat memanggil model di sini untuk mendapatkan hasil.
    return 'Hello World'

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

3.3 Unggah file ke OSS

Gunakan ossutil untuk mengunggah file model dan kode ke OSS. Pasang OSS ke layanan agar dapat membaca file model.

Opsi penyimpanan lainnya: Konfigurasi penyimpanan.

Catatan

Pengemasan file langsung ke dalam image tidak disarankan:

  • Pembaruan model memerlukan pembuatan ulang dan pengunggahan ulang image.

  • File model besar meningkatkan ukuran image, sehingga memperlambat waktu pull dan startup.

3.4 Persiapan image

Qwen3-0.6B memerlukan vllm>=0.8.5. Image resmi EAS vllm:0.11.2-mows0.5.1 memenuhi persyaratan ini.

Jika tidak ada image resmi yang sesuai, buat custom image. Untuk model yang dilatih di DSW, buat image instans DSW untuk menjaga konsistensi antara pengembangan dan penyebaran.

IV. Penyebaran layanan

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

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

  3. Konfigurasikan parameter kunci berikut. Gunakan nilai default untuk parameter lainnya.

    • Deployment Method: Pilih Image-based Deployment.

    • Image Configuration: Di daftar Alibaba Cloud Image, pilih vllm:0.11.2-mows0.5.1.

    • Mount storage: Contoh ini menyimpan file model di OSS pada path oss://examplebucket/models/Qwen/Qwen3-0___6B. Pilih OSS dan konfigurasikan sebagai berikut.

      • Uri: Path OSS tempat model berada. Atur ke oss://examplebucket/models/.

      • Mount Path: Path tujuan di instans layanan tempat file dipasang, misalnya /mnt/data/.

    • Command: Image resmi memiliki perintah startup default. Ubah sesuai kebutuhan. Untuk contoh ini, ubah menjadi vllm serve /mnt/data/Qwen/Qwen3-0___6B.

    • Resource Type: Pilih Public Resources. Untuk Resource Specification, pilih ecs.gn7i-c16g1.4xlarge. Untuk menggunakan jenis sumber daya lain, lihat Konfigurasi sumber daya.

  4. Klik Deploy. Penyebaran layanan memerlukan waktu sekitar 5 menit. Saat Service Status berubah menjadi Running, layanan berhasil disebar.

V. Debugging online

Gunakan debugging online untuk memverifikasi layanan. Konfigurasikan metode permintaan, path, dan badan permintaan sesuai model Anda.

Untuk contoh ini:

  1. Di tab Inference Service, klik layanan tujuan untuk membuka halaman ikhtisar layanan. Beralih ke tab Online Debugging.

  2. Di bagian Request Parameter Online Tuning pada halaman debugging, atur parameter permintaan dan klik Send Request. Parameter permintaan:

    • Antarmuka chat: Tambahkan /v1/chat/completions ke URL yang sudah ada.

    • Header: Tambahkan header permintaan. Atur kunci ke Content-Type dan nilai ke application/json.

      Tambahkan juga header permintaan Authorization, dan atur nilainya ke kredensial otentikasi yang sesuai.

    • Isi:

      {
        "model": "/mnt/data/Qwen/Qwen3-0___6B",
        "messages": [
          {
            "role": "user",
            "content": "Hello!"
          }
        ],
        "max_tokens": 1024
      }
  3. Tanggapan:

    Di halaman Online Debugging, kirim permintaan JSON menggunakan metode POST. Badan permintaan mencakup model (path model, misalnya /mnt/data/Qwen/Qwen3-0___6B), messages (konten pesan pengguna: Hello!), dan max_tokens (diatur ke 1024). Layanan mengembalikan Kode Status 200, dan badan respons berupa objek JSON dalam format chat.completion yang berisi tanggapan inferensi model, menandakan bahwa layanan model telah berhasil disebar dan dapat merespons permintaan secara normal.

VI. Pemanggilan layanan

6.1 Titik akhir dan token

EAS menggunakan gerbang bersama secara default. Dapatkan titik akhir dan token dari halaman ikhtisar layanan setelah penyebaran.

  1. Di tab Inference Service, klik nama layanan Anda untuk membuka halaman Overview.

  2. Di bagian Basic Information, klik View Endpoint Information.

  3. Di panel Invocation Method, salin titik akhir dan token:

    • Pilih Internet Endpoint atau VPC Endpoint sesuai kebutuhan.

    • Dalam contoh berikut, <EAS_ENDPOINT> merepresentasikan titik akhir, dan <EAS_TOKEN> merepresentasikan token.

6.2 Contoh pemanggilan

Contoh:

curl http://16********.cn-hangzhou.pai-eas.aliyuncs.com/api/predict/****/v1/chat/
completions \
-H "Content-Type: application/json" \
-H "Authorization: *********5ZTM1ZDczg5OT**********" \
-X POST \
-d '{
  "model": "/mnt/data/Qwen/Qwen3-0___6B",
  "messages": [
    {
      "role": "user",
      "content": "Hello!"
    }
  ],
  "max_tokens": 1024
}' 
import requests

# Ganti dengan endpoint aktual.
url = 'http://16********.cn-hangzhou.pai-eas.aliyuncs.com/api/predict/***/v1/chat/completions'
# Untuk header, atur nilai Authorization ke token aktual.
headers = {
    "Content-Type": "application/json",
    "Authorization": "*********5ZTM1ZDczg5OT**********",
}
# Buat permintaan layanan berdasarkan format data yang dibutuhkan oleh model.
data = {
  "model": "/mnt/data/Qwen/Qwen3-0___6B",
  "messages": [
    {
      "role": "user",
      "content": "Hello!"
    }
  ],
  "max_tokens": 1024
}
# Kirim permintaan.
resp = requests.post(url, json=data, headers=headers)
print(resp)
print(resp.content)

VII. Menghentikan atau menghapus layanan

Layanan ini menggunakan sumber daya publik bayar sesuai penggunaan. Hentikan atau hapus layanan untuk menghindari biaya jika tidak lagi digunakan.

Di daftar layanan, temukan layanan target, lalu klik tombol yang sesuai di kolom Actions.

VIII. Dokumentasi terkait