ALB Extensible Edition memungkinkan Anda menggabungkan aksi Forward to dengan aksi Fallback bertingkat dalam satu aturan pengalihan. Jika target utama mengembalikan respons 4xx atau 5xx, ALB mencoba setiap fallback secara berurutan hingga salah satunya berhasil, sehingga mendukung arsitektur ketersediaan tinggi untuk layanan model bahasa besar.
Arsitektur solusi
Untuk memastikan ketersediaan tinggi dan mencegah downtime akibat gangguan pada satu penyedia model, Anda dapat mengonfigurasi aturan pengalihan ALB Extensible Edition yang mengarahkan permintaan ke layanan utama seperti DeepSeek, dengan aksi fallback yang secara berurutan mencoba OpenAI dan Model Studio (Bailian) jika layanan utama gagal. Saat permintaan sesuai dengan aturan ini, ALB mengirimkannya terlebih dahulu ke DeepSeek. Jika permintaan gagal (error 4xx atau 5xx), ALB secara otomatis meneruskannya ke OpenAI, lalu ke Model Studio (Bailian), hingga diperoleh respons yang berhasil. Fitur fallback juga dapat secara otomatis menulis ulang nama model dalam badan permintaan agar sesuai dengan model yang diharapkan oleh masing-masing layanan target.
-
Instans ALB Extensible Edition: Menangani load balancing dan penerusan traffic.
-
Kelompok server AI: Terhubung ke layanan model besar backend. Contoh ini menggunakan tiga kelompok server: DeepSeek, OpenAI, dan Model Studio (Bailian).
-
Pendengar HTTPS: Menerima permintaan klien.
-
Aturan pengalihan: Mencocokkan permintaan berdasarkan kondisi model AI dan mengonfigurasi aksi
Forward todanFallback.
Prasyarat
-
Anda telah diberikan akses ke beta publik ALB Extensible Edition.
-
Anda telah membuat Virtual Private Cloud (VPC) di wilayah China (Ulanqab), dengan satu vSwitch di zona ketersediaan A dan satu lagi di zona ketersediaan B. vSwitch tersebut harus memiliki SNAT public-facing yang dikonfigurasi agar kelompok server AI dapat memanggil layanan model besar publik.
-
Anda telah mengaktifkan Model Studio (Bailian), memperoleh Kunci API, dan menambahkan Kunci API tersebut sebagai kredensial identitas di Identity Management. Untuk mendemonstrasikan fallback, Anda juga telah membuat dua kredensial identitas tambahan yang berisi Kunci API salah (misalnya,
fake-api-key) untuk dirujuk oleh kelompok server DeepSeek dan OpenAI. -
Anda telah mendaftarkan domain kustom. Karena panduan ini men-deploy instans ALB di wilayah China (Ulanqab), domain tersebut memerlukan Pendaftaran ICP.
-
Anda memiliki Sertifikat server yang sesuai dengan domain kustom Anda. Jika Anda tidak membeli sertifikat tersebut dari Alibaba Cloud, Anda harus mengunggahnya ke Alibaba Cloud Certificate Service.
Prosedur
1. Buat instans ALB Extensible Edition
-
Masuk ke Konsol ALB, pilih wilayah Tiongkok (Ulanqab), lalu klik Create ALB.
-
Pada halaman pembelian, lengkapi konfigurasi berikut dan klik Create Now.
-
Region: Pilih China (Ulanqab).
-
Instance network type: Pilih Internet.
-
VPC dan Availability zone: Pilih VPC target. Lalu, centang kotak untuk Ulanqab Zone A dan Ulanqab Zone B, pilih vSwitch yang sesuai untuk masing-masing, dan pilih Assign EIP.
-
IP version: Pilih IPv4.
-
Edition (instance fee): Pilih Extensible Edition.
-
-
Pada halaman Confirm Order, tinjau detail konfigurasi instans dan klik Activate Now.
2. Buat kelompok server AI
Buat tiga kelompok server bertipe layanan AI untuk DeepSeek, OpenAI, dan Model Studio (Bailian). Untuk mendemonstrasikan fallback, kelompok server DeepSeek dan OpenAI merujuk kredensial identitas yang berisi Kunci API salah sehingga permintaan ke mereka gagal dan memicu mekanisme fallback.
Buat kelompok server DeepSeek
-
Di Konsol kelompok server, klik Create Server Group. Untuk Server Group Type, pilih AI Service, dan masukkan nama
sgp-fake-deepseek. -
Klik Create. Di kotak dialog The server group is created, klik Add Backend Server.
-
Di kotak dialog Add AI Service, lengkapi konfigurasi berikut dan klik OK.
-
Model provider: Pilih DeepSeek.
-
Endpoint: Diisi otomatis setelah Anda memilih Model provider.
-
Identity Credential: Pilih kredensial identitas yang berisi Kunci API salah.
-
Buat kelompok server OpenAI
-
Ulangi langkah-langkah di atas untuk membuat kelompok server kedua bertipe AI Service dengan nama
sgp-fake-openai. -
Saat Anda Add Backend Server, pilih Model provider sebagai OpenAI, atur Identity Credential ke kredensial identitas yang berisi Kunci API salah, lalu klik OK.
Buat kelompok server Model Studio (Bailian)
-
Ulangi langkah-langkah di atas untuk membuat kelompok server ketiga bertipe AI Service dengan nama
sgp-bailian. -
Saat Anda Add Backend Server, pilih Model provider sebagai Alibaba Cloud Model Studio, atur Identity Credential ke kredensial identitas yang berisi Kunci API valid, lalu klik OK.
3. Buat pendengar
-
Di Konsol ALB, klik ID instans target Anda untuk membuka halaman Instance Details. Pada tab Listener, klik Create Listener.
-
Pada langkah Configure Listener, atur Listener Protocol ke HTTPS dan Listener Port ke
443. Lalu, klik Next. -
Pada langkah Configure SSL Certificate, pilih Sertifikat server yang sesuai dengan domain kustom Anda dan klik Next.
-
Pada langkah Select Server Group, pilih tipe AI Service dan kelompok server
sgp-fake-deepseek. Lalu, klik Next.Kelompok server yang dipilih di sini digunakan untuk aturan default pendengar, yang memproses permintaan yang tidak sesuai dengan aturan pengalihan lainnya. Anda dapat menyesuaikannya sesuai kebutuhan.
-
Pada langkah Configuration Review, konfirmasi konfigurasi dan klik Submit.
4. Konfigurasi aturan pengalihan
ALB mengevaluasi aturan pengalihan berdasarkan urutan prioritas naik. Setelah permintaan sesuai dengan suatu aturan, ALB menjalankan aksi aturan tersebut dan melewati aturan sisanya.
-
Pada tab Listener halaman detail instans, klik ID pendengar target Anda. Pada halaman Listener Details, beralih ke tab Forwarding Rules.
-
Klik Add New Rule, lengkapi konfigurasi berikut, lalu klik OK.
-
Add Condition: Pilih AI Model dan masukkan
deepseek-chatuntuk Model Name. -
Action: Forward To kelompok server
sgp-fake-deepseek. -
Add Action: Konfigurasi Fallback ke kelompok server
sgp-fake-openaidan masukkangpt-3.5untuk Model Name di sebelah kanan. -
Di bagian Fallback, klik Add Server Group. Pilih kelompok server
sgp-bailiandan masukkanqwen-turbountuk Model Name di sebelah kanan.
-
Kondisi AI Model mencocokkan semua permintaan yang menggunakan protokol kompatibel OpenAI, memiliki path permintaan/v1/completions,/v1/chat/completions, atau/v1/embeddings. Jika Anda menentukan Model Name, bidangmodeldalam badan permintaan juga harus sesuai dengan nama yang ditentukan.
Saat Anda mengonfigurasi nama model untuk aksi fallback, ALB secara otomatis menulis ulang bidang model dalam badan permintaan ke nama yang ditentukan selama fallback. Hal ini memastikan badan permintaan sesuai dengan model yang diharapkan oleh layanan target.
5. Siapkan resolusi DNS
Buat Rekaman CNAME yang mengarahkan domain kustom Anda ke nama DNS instans ALB, sehingga klien dapat mengakses ALB melalui domain Anda.
Panduan ini menggunakan Alibaba Cloud DNS sebagai contoh. Jika domain Anda tidak didaftarkan di Alibaba Cloud, tambahkan domain tersebut ke Konsol DNS Alibaba Cloud terlebih dahulu.
-
Di Konsol ALB, salin Domain Name instans target Anda.
-
Masuk ke Konsol DNS Alibaba Cloud. Di kolom Actions untuk domain target Anda, klik Settings. Pada halaman Settings, klik Add Record.
-
Tambahkan Rekaman CNAME dengan informasi berikut dan klik OK.
-
Record Type: Pilih CNAME.
-
Hostname: Masukkan awalan domain, seperti
ai. Jika domain root Anda adalahexample.com, domain lengkap untuk mengakses ALB akan menjadiai.example.com. -
Query Source dan TTL: Pertahankan pengaturan default.
-
Record Value: Masukkan nama DNS instans ALB.
-
-
Di kotak dialog Change Resource Record Confirmation, tinjau informasi DNS dan klik OK.
6. Uji dan verifikasi
-
Gunakan perintah curl untuk memverifikasi bahwa permintaan melakukan fallback ke layanan model besar yang benar. Ganti
ai.example.comdengan domain yang Anda konfigurasi. Pastikan Rekaman DNS telah tersebar. -
Permintaan klien harus menggunakan protokol kompatibel OpenAI. Path permintaan harus berupa
/v1/completions,/v1/chat/completions, atau/v1/embeddings, dan badan permintaan harus menyertakan bidangmodel. ALB menggunakan nilaimodeluntuk routing.
curl -v \
-H "Content-Type: application/json" \
-d '{
"model": "deepseek-chat",
"messages": [
{
"role": "user",
"content": "Who are you"
}
]
}' \
https://ai.example.com/v1/chat/completions
Permintaan yang berhasil mengembalikan tanggapan berikut. Karena sgp-fake-deepseek dan sgp-fake-openai menggunakan Kunci API salah, ALB menerima respons gagal dan melakukan fallback secara berurutan, akhirnya meneruskan permintaan ke sgp-bailian. Tanggapan menunjukkan model sebagai qwen-turbo dan content berisi perkenalan dari Qwen, yang mengonfirmasi bahwa permintaan melakukan fallback ke Model Studio (Bailian) dan nama model ditulis ulang menjadi qwen-turbo.
{
"choices": [
{
"message": {
"role": "assistant",
"content": "I am Qwen, a large language model from Alibaba's Tongyi Lab. I can answer questions, create text, use logical reasoning, and write code. How can I help you?"
},
"finish_reason": "stop",
"index": 0
}
],
"object": "chat.completion",
"model": "qwen-turbo"
}
Informasi lebih lanjut
Penagihan
-
ALB Extensible Edition: Fitur ini saat ini berada dalam beta publik dan dapat digunakan secara gratis.
-
Biaya akses Internet: Gateway NAT mengenakan biaya instans dan biaya Unit kapasitas (CU). Alamat IP Elastis (EIP) yang terikat ke Gateway NAT dan instans ALB Extensible Edition memiliki aturan penagihan terpisah, yang dikenakan oleh layanan EIP.
-
Biaya domain dan DNS: Selain biaya pendaftaran domain, konfigurasi resolusi DNS dengan Alibaba Cloud mengenakan biaya DNS otoritatif publik.
-
Biaya sertifikat: Pembelian sertifikat dari Alibaba Cloud atau pengunggahan sertifikat pihak ketiga mengenakan biaya Sertifikat server.
-
Biaya Model Studio: Pemanggilan API model bahasa besar Model Studio mengenakan biaya penggunaan.
Batasan
-
Fallback didukung untuk tipe kelompok server berikut: Server, IP Address, Function Compute, FQDN, dan AI Service. Tipe kelompok server ini dapat digunakan sebagai target untuk aksi Forward To maupun Fallback.
-
Jika Anda mengonfigurasi fallback ke kelompok server non-AI Service, pastikan kelompok server tersebut menyediakan layanan model yang kompatibel dengan protokol OpenAI.
-
Secara default, Anda dapat mengonfigurasi hingga lima layanan fallback untuk satu aturan pengalihan. Untuk menambah kuota ini, kirimkan Tiket.
-
Kondisi pemicu fallback (kode status HTTP 4xx atau 5xx) bersifat tetap dan tidak dapat dikustomisasi.
Wilayah ALB Extensible Edition
|
Area |
Wilayah |
Zona |
|
China |
China (Ulanqab) |
Zona A, Zona B, dan Zona C |
|
China (Hangzhou) |
Zona J dan Zona K |
|
|
China (Beijing) |
Zona I, Zona K, dan Zona L |
|
|
China (Shanghai) |
Zona B dan Zona F |
|
|
China (Hong Kong) |
Zona B, Zona C, dan Zona D |
|
|
Asia-Pasifik |
Singapura |
Zona A, Zona B, dan Zona C |
|
Jepang (Tokyo) |
Zona B, Zona C, dan Zona E |
|
|
Malaysia (Kuala Lumpur) |
Zona A, Zona B, dan Zona C |
|
|
Eropa dan Amerika |
Jerman (Frankfurt) |
Zona A dan Zona B |
|
AS (Silicon Valley) |
Zona A dan Zona B |
|
|
Timur Tengah |
UEA (Dubai) |
Zona A dan Zona B |
Rekomendasi
-
Rencanakan urutan fallback: ALB menjalankan aksi fallback sesuai urutan konfigurasinya. Rencanakan prioritas setiap layanan fallback berdasarkan ketersediaan model, biaya, dan latensi respons.
-
Pastikan konsistensi model: Format output dan kemampuan bervariasi antar penyedia model. Pilih model dengan kemampuan serupa untuk setiap layanan fallback guna meminimalkan dampak terhadap logika bisnis Anda selama fallback.
FAQ
Saya telah mengonfigurasi fallback, tetapi tidak dipicu. Mengapa?
-
Verifikasi bahwa kondisi aturan pengalihan sesuai dengan permintaan dan aturan tersebut memiliki prioritas tertinggi di antara semua aturan yang sesuai.
-
Konfirmasi bahwa kelompok server dalam aksi Forward To mengembalikan kode status 4xx atau 5xx.
Model mengembalikan error setelah fallback. Mengapa?
-
Periksa apakah Kunci API untuk kelompok server target fallback sudah benar.
-
Jika Anda mengonfigurasi penulisan ulang nama model, verifikasi bahwa nama model yang ditulis ulang sesuai dengan model yang didukung oleh layanan target.