Penyebaran manual Large Language Model (LLM) melibatkan konfigurasi lingkungan yang kompleks, penyetelan performa, dan manajemen biaya. Elastic Algorithm Service (EAS) menawarkan solusi satu atap untuk menerapkan LLM populer seperti DeepSeek dan Qwen dengan satu klik.
Langkah 1: Menerapkan layanan LLM
Bagian ini menjelaskan penerapan Qwen3-8B dari Model Publik.
Model Publik adalah model dengan Templat Penerapan yang telah dikonfigurasi sebelumnya, memungkinkan penerapan satu klik tanpa perlu menyiapkan file model. Jika Anda memilih model kustom, Anda harus memasang file model dari layanan seperti Object Storage Service (OSS).
Masuk ke Konsol PAI. Pilih Wilayah di bagian atas halaman, lalu pilih ruang kerja yang diinginkan dan klik Elastic Algorithm Service (EAS).
Pada tab Inference Service, klik Deploy Service, lalu di area Scenario-based Model Deployment, klik LLM Large Language Model Deployment.
Pada halaman Deploy LLM Large Language Model, konfigurasikan parameter utama berikut:
Model Configuration: Pilih Public Model, lalu cari dan pilih Qwen3-8B dari daftar.
Inference Engine: Kami merekomendasikan SGLang/vLLM karena kompatibilitas tinggi mereka dengan standar API OpenAI. Panduan ini menggunakan vLLM. Untuk informasi lebih lanjut, lihat Pilih Mesin Inferensi yang Sesuai.
Deployment Template: Pilih Single Machine. Sistem secara otomatis mengisi Tipe Instans yang direkomendasikan, citra, dan parameter lainnya dari templat.
Klik Deploy. Penyebaran layanan memakan waktu sekitar 5 menit. Ketika status layanan berubah menjadi Running, penyebaran selesai.
CatatanJika penyebaran layanan gagal, lihat Status Layanan Abnormal untuk solusi.
Langkah 2: Debug Online
Setelah penyebaran, verifikasi bahwa layanan berjalan dengan benar. Klik nama layanan target untuk masuk ke halaman detail, beralih ke tab Online Debugging, lalu buat dan kirim permintaan sebagai berikut:
Pilih metode POST.
Tambahkan jalur
/v1/chat/completionske akhir URL yang terisi otomatis.Pastikan Header mencakup
Content-Type: application/json.Isi Body: Saat menggunakan Mesin Inferensi vLLM, Anda harus mengganti nilai
modeldengan nama model yang benar. Untuk mendapatkan nama model, kirim permintaan GET ke titik akhir/v1/models. Karena Anda menerapkan Qwen3-8B di Langkah 1, ganti<model_name>denganQwen3-8B.{ "model": "<model_name>", "messages": [ { "role": "user", "content": "Halo!" } ], "max_tokens": 1024 }

Langkah 3: Panggil layanan LLM
Sebelum melakukan panggilan, buka tab Overview pada halaman detail layanan, klik View Invocation Information, dan dapatkan titik akhir dan token. Nilai-nilai ini dirujuk sebagai <EAS_ENDPOINT> dan <EAS_TOKEN> dalam contoh-contoh berikut.
Panggilan API
Penanganan parameter model sangat berbeda antara Mesin Inferensi:
vLLM/SGLang: Nilai
modeldikonfigurasi sebagai nama model, yang dapat diperoleh dengan mengirim permintaan GET ke titik akhir/v1/models.BladeLLM: Titik akhir BladeLLM tidak memerlukan parameter
model. Namun, saat menggunakan SDK OpenAI, parameter ini wajib di sisi klien. Untuk memastikan kompatibilitas, Anda dapat mengaturnya ke string kosong"". Untuk informasi lebih lanjut, lihat Konfigurasi Parameter Pemanggilan Layanan BladeLLM.PentingSaat menggunakan BladeLLM, Anda harus secara eksplisit mengatur parameter
max_tokensdalam permintaan Anda. Jika tidak, keluaran akan dipotong menjadi 16 token secara default.
Kode berikut memberikan contoh cara memanggil layanan:
SDK OpenAI
Kami merekomendasikan menggunakan SDK Python resmi untuk berinteraksi dengan layanan. Pastikan Anda telah menginstal SDK OpenAI: pip install openai.
from openai import OpenAI
# 1. Konfigurasikan klien
# Ganti <EAS_TOKEN> dengan token layanan yang diterapkan
openai_api_key = "<EAS_TOKEN>"
# Ganti <EAS_ENDPOINT> dengan titik akhir layanan yang diterapkan
openai_api_base = "<EAS_ENDPOINT>/v1"
client = OpenAI(
api_key=openai_api_key,
base_url=openai_api_base,
)
# 2. Dapatkan nama model
# Untuk BladeLLM, set model = "". BladeLLM tidak memerlukan parameter input model dan tidak mendukung penggunaan client.models.list() untuk mendapatkan nama model. Atur ke string kosong untuk memenuhi persyaratan parameter wajib SDK OpenAI.
models = client.models.list()
model = models.data[0].id
print(model)
# 3. Mulai permintaan chat
# Mendukung streaming (stream=True) dan non-streaming (stream=False) output
stream = True
chat_completion = client.chat.completions.create(
messages=[
{"role": "system", "content": "Anda adalah asisten yang membantu."},
{"role": "user", "content": "halo"},
],
model=model,
top_p=0.8,
temperature=0.7,
max_tokens=1024,
stream=stream,
)
if stream:
for chunk in chat_completion:
print(chunk.choices[0].delta.content, end="")
else:
result = chat_completion.choices[0].message.content
print(result)cURL
Untuk pengujian cepat atau integrasi skrip, Anda dapat menggunakan cURL.
curl -X POST <EAS_ENDPOINT>/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: <EAS_TOKEN>" \
-d '{
"model": "<model_name>",
"messages": [
{
"role": "system",
"content": "Anda adalah asisten yang membantu."
},
{
"role": "user",
"content": "halo"
}
],
"max_tokens":1024,
"temperature": 0.7,
"top_p": 0.8,
"stream":true
}' Di mana:
Ganti
<EAS_ENDPOINT>dan<EAS_TOKEN>dengan Endpoint dan Token layanan Anda.Ganti
<model_name>dengan nama model. Untuk vLLM/SGLang, Anda bisa mendapatkannya dari titik akhir daftar model<EAS_ENDPOINT>/v1/models. Untuk BladeLLM, titik akhir ini tidak didukung, dan Anda dapat menghilangkan bidang ini atau mengaturnya ke"".curl -X GET <EAS_ENDPOINT>/v1/models -H "Authorization: <EAS_TOKEN>"
Perpustakaan requests Python
Jika Anda lebih memilih untuk tidak menambahkan dependensi SDK OpenAI, Anda dapat menggunakan perpustakaan requests.
import json
import requests
# Ganti <EAS_ENDPOINT> dengan titik akhir layanan yang diterapkan
EAS_ENDPOINT = "<EAS_ENDPOINT>"
# Ganti <EAS_TOKEN> dengan token layanan yang diterapkan
EAS_TOKEN = "<EAS_TOKEN>"
# Ganti <model_name> dengan nama model. Anda bisa mendapatkan nama dari antarmuka daftar model di <EAS_ENDPOINT>/v1/models. Untuk BladeLLM, antarmuka ini tidak didukung. Anda dapat menghilangkan bidang "model" atau mengaturnya ke "".
model = "<model_name>"
url = f"{EAS_ENDPOINT}/v1/chat/completions"
headers = {
"Content-Type": "application/json",
"Authorization": EAS_TOKEN,
}
stream = True
messages = [
{"role": "system", "content": "Anda adalah asisten yang membantu."},
{"role": "user", "content": "halo"},
]
req = {
"messages": messages,
"stream": stream,
"temperature": 0.7,
"top_p": 0.8,
"max_tokens": 1024,
"model": model,
}
response = requests.post(
url,
json=req,
headers=headers,
stream=stream,
)
if stream:
for chunk in response.iter_lines(chunk_size=8192, decode_unicode=False):
msg = chunk.decode("utf-8")
# Kode berikut memproses respons streaming dalam format Server-Sent Events (SSE)
if msg.startswith("data:"):
info = msg[6:]
if info == "[DONE]":
break
else:
resp = json.loads(info)
if resp["choices"][0]["delta"].get("content") is not None:
print(resp["choices"][0]["delta"]["content"], end="", flush=True)
else:
resp = json.loads(response.text)
print(resp["choices"][0]["message"]["content"])Buat WebUI lokal
Gradio adalah pustaka Python yang ramah pengguna untuk dengan cepat membuat antarmuka interaktif untuk model pembelajaran mesin. Ikuti langkah-langkah berikut untuk menjalankan Gradio WebUI secara lokal.
Unduh kode: Unduh kode yang sesuai berdasarkan mesin inferensi yang Anda pilih selama penyebaran. Gunakan tautan GitHub jika Anda memiliki akses jaringan stabil ke GitHub. Jika tidak, gunakan tautan OSS.
vLLM, SGLang: vLLM/SGLang_github, vLLM/SGLang_oss
BladeLLM: BladeLLM_github, BladeLLM_oss
Siapkan Lingkungan: Python 3.10 atau yang lebih baru diperlukan. Instal dependensi:
pip install openai gradio.Mulai Aplikasi Web: Jalankan perintah berikut di terminal Anda. Ganti
<EAS_ENDPOINT>dan<EAS_TOKEN>dengan Endpoint dan Token layanan Anda.python webui_client.py --eas_endpoint "<EAS_ENDPOINT>" --eas_token "<EAS_TOKEN>"Setelah aplikasi berhasil dimulai, URL lokal (biasanya
http://127.0.0.1:7860) dicetak ke konsol Anda. Buka URL ini di browser Anda untuk mengakses WebUI.
Integrasi dengan aplikasi pihak ketiga
Anda dapat mengintegrasikan layanan EAS dengan berbagai klien dan alat pengembangan yang mendukung API OpenAI. Konfigurasi inti memerlukan titik akhir layanan dan token, serta nama model.
Dify
Instal Penyedia Model yang Kompatibel dengan API OpenAI
Klik gambar profil Anda di sudut kanan atas dan pilih Settings. Di panel navigasi di sebelah kiri, pilih Model Providers. Jika OpenAI-API-compatible tidak ada di Model List, temukan dan instal dari daftar di bawah.

Tambahkan Model
Klik Tambah Model di sudut kanan bawah kartu Kompatibel-API OpenAI dan konfigurasikan parameter berikut:
Tipe Model: Pilih LLM.
Nama Model: Untuk penyebaran vLLM, dapatkan nama dengan mengirim permintaan GET ke titik akhir
/v1/models. Contoh ini menggunakan Qwen3-8B.API Key: Masukkan token layanan EAS.
URL Titik Akhir API: Masukkan Titik Akhir publik layanan EAS. Catatan: Tambahkan /v1 di akhir.
Uji Model
Di halaman utama Dify, klik Create Blank App. Pilih tipe Chatflow, masukkan nama aplikasi dan informasi lainnya, lalu klik Create.
Klik node LLM, pilih model yang Anda tambahkan, dan atur konteks serta Prompt.

Klik Preview di sudut kanan atas dan masukkan pertanyaan.

Chatbox
Pergi ke Chatbox, unduh dan instal versi yang sesuai untuk perangkat Anda, atau langsung Launch The Web Version. Panduan ini menggunakan macOS M3 sebagai contoh.
Tambahkan penyedia model. Klik Pengaturan, tambahkan penyedia model, dan masukkan nama seperti
pai. Untuk API Mode, pilih OpenAI API Compatible.
Pilih penyedia model pai dan konfigurasikan parameter berikut:
API Key: Token layanan EAS.
API Host: Masukkan titik akhir publik layanan EAS. Catatan: Tambahkan
/v1di akhir URL.API Path: Biarkan bidang ini kosong.
Models: Klik Get untuk menambahkan model. Jika Mesin Inferensi adalah BladeLLM, Anda tidak dapat mendapatkan model melalui antarmuka ini. Klik New dan masukkan nama model secara manual.

Uji obrolan. Klik New Chat, dan pilih layanan model di sudut kanan bawah kotak input teks.

Cherry Studio
Instal Klien
Kunjungi Cherry Studio untuk mengunduh dan menginstal klien.
Anda juga dapat mengunduhnya dari
https://github.com/CherryHQ/cherry-studio/releases.Konfigurasikan Layanan Model
Klik tombol pengaturan di sudut kiri bawah, lalu klik Add di bawah bagian Model Service. Masukkan nama kustom, seperti PAI, di bidang Model Providers, dan pilih OpenAI sebagai tipe penyedia. Klik OK.
Masukkan Token layanan EAS di bidang API Key dan Titik Akhir publik layanan EAS di bidang API Host.
Klik Add. Di bidang ID Model, masukkan nama model. Untuk penyebaran vLLM, dapatkan nama dengan mengirim permintaan GET ke titik akhir
/v1/models. Contoh ini menggunakanQwen3-8B. Perhatikan bahwa nama bersifat peka huruf besar-kecil.
Klik Check di sebelah kotak input API Key untuk memverifikasi konektivitas.
Uji Model
Kembali ke antarmuka obrolan, pilih model di bagian atas, dan mulai percakapan.

Penagihan
Biaya dapat mencakup hal-hal berikut. Untuk informasi lebih lanjut, lihat Detail penagihan Elastic Algorithm Service (EAS).
Biaya komputasi: Ini merupakan sumber utama biaya. Saat membuat layanan EAS, pilih sumber daya bayar sesuai penggunaan atau langganan sesuai kebutuhan Anda.
Biaya penyimpanan: Jika Anda menggunakan model kustom, file yang disimpan di OSS akan dikenakan biaya penyimpanan.
Meluncurkan
Pilih model yang sesuai
Definisikan Skenario Aplikasi Anda:
Percakapan Umum: Pastikan untuk memilih Instruction-Tuned Model, bukan Foundation Model, agar model dapat memahami dan mengikuti instruksi Anda dengan baik.
Pembuatan Kode: Pilih model kode khusus, seperti seri
Qwen3-Coder, karena biasanya lebih unggul dalam tugas terkait kode dibandingkan model tujuan umum.Tugas Spesifik Domain: Jika tugas sangat spesifik, seperti di bidang keuangan atau hukum, pertimbangkan untuk menggunakan model yang telah dilakukan fine-tuning untuk domain tersebut atau lakukan fine-tuning pada model tujuan umum.
Seimbangkan Performa dan Biaya: Secara umum, jumlah parameter yang lebih besar berarti model lebih cakap, tetapi juga membutuhkan daya komputasi lebih tinggi untuk penyebaran, sehingga meningkatkan biaya inferensi. Kami merekomendasikan memulai dengan model yang lebih kecil (seperti model 7B) untuk validasi. Jika performanya tidak memenuhi persyaratan, coba secara bertahap gunakan model yang lebih besar.
Rujuk ke Benchmark Otoritatif: Anda dapat merujuk ke papan peringkat industri yang diakui, seperti OpenCompass dan LMSys Chatbot Arena. Benchmark ini memberikan evaluasi objektif dari model di berbagai dimensi, seperti penalaran, pengkodean, dan matematika, serta memberikan panduan berharga untuk pemilihan model.
Pilih mesin inferensi yang sesuai
vLLM/SGLang: Sebagai pilihan utama dalam komunitas sumber terbuka, mereka menawarkan dukungan model yang luas serta dokumentasi dan contoh komunitas yang ekstensif, sehingga mudah diintegrasikan dan diperbaiki masalahnya.
BladeLLM: Dikembangkan oleh tim PAI Alibaba Cloud, BladeLLM dioptimalkan secara mendalam untuk model tertentu, terutama seri Qwen, sering kali mencapai performa lebih tinggi dengan konsumsi Memori GPU lebih rendah.
Optimalkan inferensi
Router Cerdas LLM: Mendistribusikan permintaan secara dinamis berdasarkan metrik waktu nyata seperti throughput token dan penggunaan Memori GPU. Ini menyeimbangkan alokasi daya komputasi dan Memori GPU di seluruh instance inferensi, meningkatkan pemanfaatan sumber daya kluster dan stabilitas sistem. Cocok untuk skenario dengan beberapa instance inferensi dan beban permintaan yang tidak merata.
Terapkan Model MoE Berdasarkan Paralelisme Ahli dan Pemisahan PD: Untuk model Mixture-of-Experts (MoE), pendekatan ini menggunakan teknologi seperti paralelisme ahli (EP) dan pemisahan Prefill-Decode (PD) untuk meningkatkan throughput inferensi dan mengurangi biaya penyebaran.
Tanya Jawab Umum
Kesalahan:
Tipe Media Tidak Didukung: Hanya 'application/json' yang diizinkanPastikan
Headerspermintaan mencakupContent-Type: application/json.Kesalahan:
Model '<model_name>' tidak ada.Mesin Inferensi vLLM memerlukan bidang
modelyang benar. Dapatkan nama model dengan mengirim permintaan GET ke titik akhir/v1/models.
Untuk informasi lebih lanjut, lihat FAQ EAS.