Setelah layanan EAS diterapkan, sebuah shared gateway disediakan secara default. Anda dapat menggunakan gateway ini untuk memanggil layanan inferensi model yang telah diterapkan melalui Internet Endpoint atau VPC Endpoint.
Kami menyarankan menggunakan shared gateway untuk lingkungan pengembangan dan pengujian. Untuk lingkungan produksi, gunakan dedicated gateway.
Pilih alamat pemanggilan
Setelah shared gateway diterapkan, dua jenis alamat pemanggilan disediakan secara default:
Alamat pemanggilan | Deskripsi | Kasus Penggunaan |
Internet Endpoint | Shared gateway EAS meneruskan permintaan ke layanan target. Metode ini cocok untuk lingkungan apa pun yang memiliki akses ke internet publik. |
|
VPC Endpoint | Cocok untuk skenario di mana aplikasi Anda dan layanan EAS diterapkan di wilayah yang sama. Penting Dibandingkan dengan pemanggilan melalui internet publik, pemanggilan melalui VPC menawarkan latensi lebih rendah karena menghindari beban jaringan publik dan lebih hemat biaya karena traffic dalam VPC biasanya gratis. |
|
Panggil layanan
Langkah 1: Dapatkan titik akhir dan token
Setelah Anda menerapkan layanan, sistem secara otomatis menghasilkan titik akhir dan token otorisasi.
Konsol menyediakan titik akhir dasar. Saat menyusun URL permintaan lengkap, Anda harus menambahkan path API yang benar ke titik akhir dasar ini. Path yang salah merupakan penyebab paling umum dari error 404 Not Found.
Pada tab Inference Service, klik nama layanan target untuk membuka halaman Overview.
Pada bagian Basic Information, klik View Endpoint Information.
Pada panel Invocation Method, salin titik akhir dan token:
Sesuaikan kebutuhan Anda, pilih Internet Endpoint atau VPC Endpoint.
Contoh berikut menggunakan <EAS_ENDPOINT> sebagai placeholder untuk titik akhir dan <EAS_TOKEN> sebagai placeholder untuk token.
Klik View Endpoint Information untuk membuka panel tersebut. Panel ini menyediakan dua tab: Shared Gateway dan VPC High-Speed Direct Connection. Alamat jaringan publik, alamat VPC, dan Token terletak di bawah tab Shared Gateway.
Langkah 2: Susun dan kirim permintaan
Format permintaan tetap sama baik Anda menggunakan Internet Endpoint maupun VPC Endpoint. Permintaan standar mencakup elemen-elemen berikut:
Elemen | Deskripsi |
Metode | Metode paling umum adalah POST dan GET. |
Path permintaan (URL) | Format: <EAS_ENDPOINT> + path API. Contoh: |
Otorisasi (Wajib) |
|
Content-Type |
|
Badan permintaan | Spesifikasi API dari model yang diterapkan menentukan formatnya. Badan permintaan tidak boleh melebihi 1 MB saat dikirim melalui gateway. |
Contoh pemanggilan
Contoh berikut menunjukkan cara memanggil layanan model DeepSeek-R1-Distill-Qwen-7B yang diterapkan dengan vLLM. Asumsikan bahwa <EAS_ENDPOINT> adalah http://16********.cn-hangzhou.pai-eas.aliyuncs.com/api/predict/test.
Isi permintaan:
{
"model": "DeepSeek-R1-Distill-Qwen-7B",
"messages": [
{
"role": "system",
"content": "You are a helpful assistant."
},
{
"role": "user",
"content": "hello!"
}
]
}Contoh kode:
curl http://16********.cn-hangzhou.pai-eas.aliyuncs.com/api/predict/test/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: *********5ZTM1ZDczg5OT**********" \
-X POST \
-d '{
"model": "DeepSeek-R1-Distill-Qwen-7B",
"messages": [
{
"role": "system",
"content": "You are a helpful assistant."
},
{
"role": "user",
"content": "hello!"
}
]
}' import requests
# Ganti dengan endpoint aktual Anda.
url = 'http://16********.cn-hangzhou.pai-eas.aliyuncs.com/api/predict/test/v1/chat/completions'
# Nilai Authorization pada header adalah token aktual Anda.
headers = {
"Content-Type": "application/json",
"Authorization": "*********5ZTM1ZDczg5OT**********",
}
# Susun permintaan layanan berdasarkan format data yang dibutuhkan oleh model tertentu.
data = {
"model": "DeepSeek-R1-Distill-Qwen-7B",
"messages": [
{
"role": "system",
"content": "You are a helpful assistant."
},
{
"role": "user",
"content": "hello!"
}
]
}
# Kirim permintaan.
resp = requests.post(url, json=data, headers=headers)
print(resp)
print(resp.content)Untuk informasi lebih lanjut tentang pemanggilan layanan Large Language Model (LLM), lihat LLM service invocation.
Skenario penerapan lainnya
Model yang diterapkan dari Model Gallery: Halaman Overview untuk model biasanya menyediakan contoh pemanggilan API, termasuk path URL lengkap dan format permintaan.
Perintah cURL
Parameter umum:
Parameter
Deskripsi
Contoh
-XMenentukan metode HTTP.
-X POST-HMenambahkan header permintaan.
-H "Content-Type: application/json"-dMenambahkan badan permintaan.
-d '{"key": "value"}'Contoh pemanggilan API Chat: Kirim permintaan POST ke
<EAS_ENDPOINT>/v1/chat/completionsdengan header berikut:Content-Type: application/jsondanAuthorization: <EAS_TOKEN>. Struktur badan permintaan JSON adalah sebagai berikut:model: Nama model, yang dapat diambil melalui API/v1/models.messages: Array pesan yang berisi peransystem(contoh konten:You are a helpful assistant.) dan peranuser(contoh konten:Hello!).
Kode Python
Contoh berikut menggunakan model Qwen3-Reranker-8B untuk menunjukkan cara memanggil layanan dengan kode Python. Perhatikan bahwa URL dan badan permintaannya berbeda dari contoh cURL. Selalu ikuti petunjuk pada halaman Overview model.
Kode Python berisi konfigurasi utama berikut: Atur
urlmenjadiEAS_ENDPOINT/v1/rerank, dan konfigurasikanAuthorizationsertaContent-Typedalamheaders. Definisikan string templatprefix,suffix,query_template, dandocument_template(berisi token khususim_start/im_end). Susun badan permintaandatadengan bidangmodel(nilai:Qwen3-Reranker-8B),query, dandocuments(contoh dokumen: "Ibu kota Tiongkok adalah Beijing"). Terakhir, dalam fungsimain(), kirim permintaan POST menggunakanrequests.post(url, headers=headers, json=data)dan cetak hasil responsnya.Penerapan berbasis skenario:
Layanan yang diterapkan dengan processor generik (seperti TensorFlow, Caffe, dan PMML): Lihat Susun permintaan layanan berdasarkan processor generik.
Layanan kustom lainnya: Format permintaan ditentukan oleh format input data yang didefinisikan dalam custom image atau kode Anda.
Model yang dilatih sendiri: Metode pemanggilannya sama dengan model aslinya.
FAQ
Untuk masalah umum dan solusi terkait pemanggilan layanan, lihat Service Invocation FAQ.