Pada aplikasi model bahasa besar (LLM), strategi penyeimbangan beban tradisional kesulitan mengukur secara akurat beban backend secara real-time karena variasi panjang permintaan dan respons, jumlah token yang dihasilkan selama fase Prompt dan Generate bersifat acak, serta konsumsi resource GPU tidak dapat diprediksi. Faktor-faktor ini menyebabkan beban instans menjadi tidak merata, yang berdampak pada throughput sistem dan efisiensi respons. Untuk mengatasi masalah ini, Elastic Algorithm Service (EAS) memperkenalkan komponen router cerdas LLM yang mendistribusikan permintaan secara dinamis berdasarkan metrik khusus LLM guna menyeimbangkan daya komputasi dan Memori GPU setiap instans inferensi, sehingga meningkatkan pemanfaatan resource kluster dan stabilitas sistem.
Cara kerja
Ikhtisar arsitektur
Router cerdas LLM terdiri dari tiga komponen inti yang menyediakan distribusi dan manajemen traffic cerdas untuk kluster instans inferensi backend LLM: LLM Gateway, LLM Scheduler, dan LLM Agent.
LLM Gateway: Berfungsi sebagai titik masuk traffic. Menerima semua permintaan pengguna dan meneruskannya ke instans inferensi backend yang ditentukan berdasarkan keputusan dari
LLM Scheduler. Gateway mendukung protokol HTTP (HTTP_SSE) dan WebSocket serta dapat menyimpan cache permintaan ketika instans inferensi backend sedang mengalami beban tinggi.LLM Scheduler: Otak dari router cerdas. Menjalankan algoritma penjadwalan dengan mengumpulkan metrik real-time dari seluruh
LLM Agent, lalu menghitung instans target optimal untuk setiap permintaan masuk berdasarkan kebijakan penjadwalan yang telah ditentukan, seperti prefix caching.LLM Agent: Diterapkan sebagai kontainer sidecar bersama setiap instans inferensi. Agent mengumpulkan metrik performa dari mesin inferensi, mempertahankan heartbeat dengan
LLM Scheduler, serta melaporkan status kesehatan dan data beban instans tersebut.
Alur implementasi
Router cerdas LLM merupakan jenis layanan EAS khusus yang harus diterapkan dalam kelompok layanan yang sama dengan layanan inferensi agar berfungsi dengan benar. Setelah Anda menerapkan router cerdas LLM dan layanan inferensi, router tersebut akan menjadwalkan permintaan secara cerdas ke layanan inferensi backend. Prosesnya adalah sebagai berikut:
Pendaftaran instans: Setelah layanan inferensi dimulai,
LLM Agentmenunggu hingga mesin inferensi siap, kemudian mendaftarkan instans tersebut keLLM Schedulerdan secara berkala melaporkan status kesehatan serta metrik performanya.Masuknya traffic: Permintaan pengguna pertama kali tiba di
LLM Gateway. Gateway mendukung protokol HTTP (SSE) dan WebSocket.Permintaan penjadwalan:
LLM Gatewaymengirim permintaan penjadwalan keLLM Scheduler.Penjadwalan cerdas:
LLM Schedulermemilih instans backend optimal berdasarkan kebijakan penjadwalannya dan metrik real-time dari setiapLLM Agent.Penerusan permintaan:
LLM Schedulermengembalikan keputusannya keLLM Gateway.LLM Gatewaykemudian meneruskan permintaan pengguna asli ke instans target untuk proses inferensi.Buffering permintaan: Jika semua instans backend sedang mengalami beban tinggi,
LLM Gatewaysementara waktu menempatkan permintaan baru ke dalam antrian. Permintaan-permintaan ini menunggu hinggaLLM Schedulermenemukan waktu yang tepat untuk meneruskannya, sehingga mencegah kegagalan permintaan.
Mekanisme failover
Sistem dirancang dengan beberapa lapis toleransi kesalahan untuk memastikan stabilitas layanan:
LLM Gateway: Sebagai lapisan masuk traffic tanpa status, `LLM Gateway` harus diterapkan dengan minimal dua instans. Jika salah satu instans gagal, traffic secara otomatis diarahkan ke instans sehat lainnya, sehingga memastikan kelangsungan layanan dan ketersediaan tinggi (HA).
LLM Scheduler: Sebagai komponen penjadwalan permintaan, `LLM Scheduler` berjalan sebagai satu instans untuk mencapai penjadwalan global. Jika
LLM Schedulergagal,LLM Gatewaysecara otomatis memasuki mode degradasi setelah heartbeat gagal. Gateway kemudian beralih ke kebijakan polling untuk meneruskan permintaan langsung ke instans backend. Hal ini memastikan ketersediaan layanan tetapi mengorbankan performa penjadwalan. SetelahLLM Schedulerpulih,LLM Gatewaysecara otomatis kembali ke mode perutean pintar.Instans inferensi atau LLM Agent: Jika instans inferensi atau
LLM Agentterkaitnya gagal, heartbeat antaraLLM AgentdanLLM Schedulerterputus.LLM Schedulersegera menghapus instans yang gagal dari daftar layanan yang tersedia dan berhenti mengalokasikan traffic baru kepadanya. Setelah instans tersebut pulih dan kembali mengirim heartbeat, instans tersebut secara otomatis ditambahkan kembali ke daftar layanan.
Dukungan untuk beberapa mesin inferensi
Mesin inferensi LLM yang berbeda mengekspos metrik berbeda melalui antarmuka /metrics mereka. `LLM Agent` mengumpulkan metrik-metrik ini, memformatnya ke dalam struktur terpadu, lalu melaporkannya. Desain ini memungkinkan `LLM Scheduler` fokus pada algoritma penjadwalan berdasarkan metrik terpadu tanpa perlu mengetahui detail implementasi mesin inferensi tertentu. Mesin inferensi LLM yang saat ini didukung beserta metrik yang dikumpulkan adalah sebagai berikut:
Mesin inferensi LLM | Metrik | Catatan |
Blade_LLM | decode_batch_size_mean | Jumlah permintaan yang sedang berjalan. |
wait_queue_size_mean | Jumlah permintaan yang menunggu dalam antrian. | |
block_usage_gpu_mean | Penggunaan cache KV GPU. | |
tps_total | Total jumlah token yang diproses per detik. | |
tps_out | Jumlah token yang dihasilkan per detik. | |
vLLM | vllm:num_requests_running | Jumlah permintaan yang sedang berjalan. |
vllm:num_requests_waiting | Jumlah permintaan yang menunggu dalam antrian. | |
vllm:gpu_cache_usage_perc | Penggunaan cache KV GPU. | |
vllm:prompt_tokens_total | Total jumlah token prompt. | |
vllm:generation_tokens_total | Total jumlah token yang dihasilkan. | |
SGLang | sglang:num_running_reqs | Jumlah permintaan yang sedang berjalan. |
sglang:num_queue_reqs | Jumlah permintaan yang menunggu dalam antrian. | |
sglang:token_usage | Penggunaan cache KV. | |
sglang:prompt_tokens_total | Total jumlah token prompt. | |
sglang:gen_throughput | Jumlah token yang dihasilkan per detik. |
Batasan
Tidak didukung untuk pembaruan layanan: Anda hanya dapat mengonfigurasi router cerdas LLM saat membuat layanan baru. Anda tidak dapat menambahkan router cerdas ke layanan inferensi yang sudah ada menggunakan operasi Update Service.
Batasan mesin inferensi: Saat ini, hanya PAI-BladeLLM, vLLM, atau SGLang yang didukung.
Direkomendasikan menggunakan beberapa instans inferensi: Router cerdas LLM paling efektif ketika Anda menerapkan beberapa instans inferensi.
Terapkan layanan
Langkah 1: Terapkan layanan router cerdas LLM
Dua metode penerapan berikut didukung:
Metode 1: Terapkan layanan di Konsol
Masuk ke Konsol PAI. Pilih wilayah di bagian atas halaman. Lalu, pilih ruang kerja yang diinginkan dan klik Elastic Algorithm Service (EAS).
Pada halaman Elastic Algorithm Service (EAS), klik Deploy Service, lalu pilih Scenario-based Model Deployment > Deploy LLM Intelligent Router.
Pada halaman Deploy LLM Intelligent Router, konfigurasikan parameter utama berikut dan klik Deploy.
Parameter
Deskripsi
Basic Information
Service Name
Masukkan nama layanan kustom, misalnya llm_gateway.
Deployment Resources
Konfigurasi resource untuk
LLM Gateway. Untuk memastikan ketersediaan tinggi, Minimum Number of Instances secara default bernilai 2. Kami merekomendasikan Anda mempertahankan pengaturan ini. Nilai default CPU adalah 4 core, dan nilai default Memory adalah 8 GB.Scheduling Configuration
Konfigurasi resource untuk
LLM Scheduler. Nilai default CPU adalah 2 core, dan nilai default Memory adalah 4 GB.Scheduling Policy
Sistem memilih instans inferensi backend optimal berdasarkan kebijakan penjadwalan. Kebijakan berikut didukung:
Prefix Cache: Kebijakan penjadwalan afinitas cache KV komprehensif yang mengambil keputusan berdasarkan berbagai metrik. Meneruskan permintaan ke instans yang telah menyimpan cache KV terkait untuk diproses guna memaksimalkan efisiensi pemrosesan permintaan. Saat menggunakan kebijakan ini, Anda harus mengaktifkan fitur prefix caching pada mesin.
LLM Metrics: Mengalokasikan traffic layanan secara cerdas berdasarkan berbagai metrik pemantauan layanan LLM untuk memaksimalkan pemanfaatan resource.
Minimum Requests: Secara preferensial menetapkan permintaan baru ke instans dengan jumlah permintaan terkecil saat ini.
Minimum Tokens: Secara preferensial menetapkan permintaan baru ke instans yang sedang memproses jumlah token paling sedikit.
Static PD Disaggregation: Pada penerapan LLM yang memisahkan tahap Prefill dan Decode, pilih kebijakan ini untuk memaksimalkan efisiensi penjadwalan. Setelah memilih kebijakan ini, Anda harus mengatur kebijakan penjadwalan terpisah untuk Prefill dan Decode.
Dynamic PD Disaggregation: Secara cerdas dan dinamis beralih antara instans Prefill dan Decode berdasarkan metrik kunci seperti beban layanan aktual, cache KV, dan pemanfaatan GPU. Pada penerapan LLM yang menggunakan disagregasi PD dinamis, pilih kebijakan ini untuk memaksimalkan efisiensi penjadwalan.
Setelah penerapan berhasil, sistem secara otomatis membuat layanan grup dengan format nama group_LLM intelligent router service name. Anda dapat melihat layanan ini pada tab Phased Release di halaman Elastic Algorithm Service (EAS).
Router cerdas dan antrian layanan saling bertentangan. Keduanya tidak dapat berada dalam kelompok layanan yang sama.
Metode 2: Terapkan layanan menggunakan JSON
Masuk ke Konsol PAI. Pilih wilayah di bagian atas halaman. Lalu, pilih ruang kerja yang diinginkan dan klik Elastic Algorithm Service (EAS).
Pada halaman Elastic Algorithm Service (EAS), klik Deploy Service. Di bagian Custom Model Deployment, klik On-Premises Deployment.
Bagian berikut menyediakan contoh konfigurasi JSON dan deskripsi parameternya. Setelah menyelesaikan konfigurasi, klik Deploy.
Contoh konfigurasi:
Konfigurasi dasar
Anda dapat menggunakan konfigurasi dasar untuk menerapkan layanan router cerdas LLM secara cepat. Parameter yang tidak dikonfigurasi akan menggunakan nilai default-nya.
LLM Scheduler dikonfigurasi dengan 4 core CPU dan 4 GB memori secara default. Kebijakan penjadwalan default adalah Prefix Cache.
{ "metadata": { "type": "LLMGatewayService", "cpu": 4, "group": "group_llm_gateway", "instance": 2, "memory": 8000, "name": "llm_gateway" } }Konfigurasi lanjutan
{ "cloud": { "computing": { "instance_type": "ecs.c7.large" } }, "llm_gateway": { "max_queue_size": 128, "retry_count": 2, "wait_schedule_timeout": 5000, "wait_schedule_try_period": 500 }, "llm_scheduler": { "cpu": 2, "memory": 4000, "policy": "prefix-cache" }, "metadata": { "group": "group_llm_gateway", "instance": 2, "name": "llm_gateway", "type": "LLMGatewayService" } }Deskripsi parameter:
Parameter
Deskripsi
metadata
type
Atur parameter ini ke LLMGatewayService untuk menerapkan layanan router cerdas LLM. Setelah layanan diterapkan, EAS secara otomatis membuat layanan komposit yang berisi
LLM GatewaydanLLM Scheduler.instance
Jumlah instans
LLM Gateway. Kami merekomendasikan Anda mengatur parameter ini ke 2 atau lebih untuk mencegah single point of failure.cpu
CPU dari
LLM Gateway.memory
Memori dari
LLM Gateway.group
Kelompok layanan tempat layanan router cerdas LLM berada.
cloud.computing.instance_type
Menentukan spesifikasi resource yang digunakan oleh
LLM Gateway. Dalam kasus ini, Anda tidak perlu mengonfigurasi metadata.cpu dan metadata.memory.llm_gateway
max_queue_size
Panjang maksimum antrian cache
LLM Gateway. Nilai default: 512.Jika jumlah permintaan melebihi kapasitas pemrosesan framework inferensi backend, permintaan berlebih akan disimpan dalam antrian ini untuk menunggu penjadwalan.
retry_count
Jumlah percobaan ulang. Nilai default: 2. Jika instans inferensi backend mengalami anomali, permintaan akan dicoba ulang dan diteruskan ke instans baru.
wait_schedule_timeout
Periode timeout untuk penjadwalan permintaan. Nilai default: 10 detik. Jika mesin backend penuh, permintaan akan dicoba ulang secara berkala untuk penjadwalan.
wait_schedule_try_period
Interval antar percobaan ulang penjadwalan. Nilai default: 1 detik.
llm_scheduler
cpu
CPU dari
LLM Scheduler. Nilai default: 4 core.memory
Memori dari
LLM Scheduler. Nilai default: 4 GB.policy
Kebijakan penjadwalan. Untuk informasi lebih lanjut, lihat deskripsi penerapan berbasis konsol. Nilai default: prefix-cache. Nilai yang valid:
prefix-cache: Prefix Cache.
llm-metric-based: LLM Metrics.
least-request: Minimum Requests.
least-token: Minimum Tokens.
pd-split: Static PD Disaggregation.
dynamic-pd-split: Dynamic PD Disaggregation.
prefill_policy
Jika Anda mengatur policy ke pd-split, Anda harus mengatur kebijakan penjadwalan untuk Prefill dan Decode. Nilai yang valid: prefix-cache, llm-metric-based, least-request, dan least-token.
decode_policy
Langkah 2: Terapkan layanan model bahasa besar (LLM)
Saat menerapkan layanan LLM, Anda harus mengaitkannya dengan layanan router cerdas yang telah Anda buat. Topik ini menggunakan contoh penerapan LLM berbasis skenario EAS. Prosedurnya adalah sebagai berikut:
Masuk ke Konsol PAI. Pilih wilayah di bagian atas halaman. Lalu, pilih ruang kerja yang diinginkan dan klik Elastic Algorithm Service (EAS).
Pada halaman Inference Service, klik Deploy Service, lalu pilih LLM Deployment. Di bagian Features, temukan dan aktifkan sakelar LLM Intelligent Router. Dari daftar drop-down, pilih layanan router cerdas LLM yang telah Anda terapkan di Langkah 1. Untuk informasi lebih lanjut tentang parameter lainnya, lihat LLM Deployment.
CatatanSaat menggunakan vLLM untuk penerapan yang dipercepat dan Scheduling Policy layanan router cerdas LLM diatur ke Prefix Cache, Anda harus mengaktifkan fitur prefix caching pada mesin.
Setelah mengonfigurasi parameter, klik Deploy.
Panggil dan uji layanan
Kirim semua permintaan ke titik akhir layanan router cerdas LLM, bukan ke layanan inferensi backend tertentu.
Dapatkan kredensial akses
Pada halaman Elastic Algorithm Service (EAS), temukan layanan router cerdas LLM yang telah diterapkan.
Klik nama layanan untuk membuka halaman Overview. Di bagian Basic Information, klik View Endpoint Information.
Pada halaman Invocation Method, salin Internet Endpoint dan Token dari bagian Service-specific Traffic Entry.

Buat dan kirim permintaan
URL permintaan akhir merupakan kombinasi dari titik akhir router cerdas LLM dan path API layanan model.
Struktur URL:
<titik akhir router cerdas LLM>/<path API layanan LLM>Contoh:
http://********.pai-eas.aliyuncs.com/api/predict/group_llm_gateway.llm_gateway/v1/chat/completions
Contoh permintaan
# Ganti <YOUR_GATEWAY_URL> dan <YOUR_TOKEN> dengan informasi aktual Anda.
# Ganti <model_name> dengan nama model aktual.
curl -X POST "<YOUR_GATEWAY_URL>/v1/chat/completions" \
-H "Authorization: Bearer <YOUR_TOKEN>" \
-H "Content-Type: application/json" \
-N \
-d '{
"model": "<model_name>",
"messages": [{"role": "user", "content": "Hello"}],
"stream": true
}'Berikut adalah contoh hasil yang dikembalikan:
data: {"id":"chatcmpl-9a9f8299*****","object":"chat.completion.chunk","created":1762245102,"model":"Qwen3-8B","choices":[{"index":0,"delta":{"role":"assistant","content":""},"logprobs":null,"finish_reason":null}]}
data: {"id":"chatcmpl-9a9f8299*****","object":"chat.completion.chunk","created":1762245102,"model":"Qwen3-8B","choices":[{"index":0,"delta":{"content":"<think>","tool_calls":[]}}]}
...
data: [DONE]Lihat metrik pemantauan layanan
Setelah menerapkan layanan, Anda dapat melihat metrik performa intinya di Konsol EAS untuk mengevaluasi efektivitas router cerdas.
Pada halaman Elastic Algorithm Service (EAS), klik layanan router cerdas LLM yang telah diterapkan untuk membuka halaman detail layanan. Pada tab Monitoring, Anda dapat melihat metrik inti berikut:
Token Throughput Throughput token input dan output LLM.
| GPU Cache Usage Penggunaan cache KV GPU dari Mesin LLM.
|
Engine Current Requests Jumlah permintaan konkuren real-time untuk Mesin LLM.
| Gateway Current Requests Jumlah permintaan real-time untuk router cerdas LLM.
|
Time To First Token Latensi token pertama suatu permintaan.
| Time Per Output Token Latensi setiap token suatu permintaan.
|





