SDK EAS resmi tersedia dalam Java, Python, dan Golang, serta merupakan cara yang direkomendasikan untuk melakukan pemanggilan layanan dalam skenario VPC direct connection. SDK ini mengenkapsulasi penemuan layanan, load balancing, penandatanganan token, dan mekanisme retry saat terjadi kegagalan, sehingga Anda dapat melakukan pemanggilan layanan dengan cepat.
Kasus penggunaan
Kasus penggunaan khas untuk SDK EAS resmi adalah VPC direct connection. Dalam skenario ini, SDK menghindarkan Anda dari implementasi manual penemuan layanan dan load balancing.
Untuk metode pemanggilan lainnya, seperti melalui Shared Gateway atau dedicated gateway, umumnya cukup menggunakan HTTP client standar sehingga SDK tidak diperlukan.
Untuk panduan memilih metode pemanggilan, lihat Service invocation.
Cara kerja
SDK mendukung dua jenis titik akhir: gateway access dan VPC direct connection. Kedua jenis tersebut berbeda dalam perutean permintaan tetapi mengikuti proses pemanggilan yang sama, yang terdiri atas tiga tahap berikut:
-
Inisialisasi klien: Buat
PredictClientdan atur endpoint, nama layanan, serta token. Anda dapat memperoleh token dari halaman detail layanan di Konsol EAS. Panggilinit()untuk menyelesaikan inisialisasi. -
Buat permintaan: Buat objek permintaan, seperti
StringRequest,TFRequest, atauTorchRequest, sesuai dengan format input dan output layanan. Jenis permintaan harus sesuai dengan yang diharapkan oleh layanan. Untuk layanan yang diterapkan dengan processor, lihat Processor deployment untuk mengetahui jenis permintaan yang sesuai dengan masing-masing processor. -
Lakukan pemanggilan layanan: Panggil metode
predict()untuk mengirim permintaan dan menerima respons. SDK secara otomatis menangani penandatanganan token, retry saat terjadi kegagalan (lima kali secara default), dan deserialisasi respons tanpa intervensi pengguna.
Dalam skenario VPC direct connection, SDK resmi mengenkapsulasi logika penemuan layanan dan load balancing. Untuk detail selengkapnya, lihat VPC direct connection - Call with the official SDK.
Selain pemanggilan inferensi sinkron yang dijelaskan di atas, SDK juga menyediakan metode pemanggilan queue service:
-
Gunakan
QueueClientuntuk mendorong permintaan secara asinkron ke antrian input. Layanan akan mengonsumsi (mengambil dari antrian) permintaan tersebut dan menuliskan hasilnya ke antrian output. -
Klien menerima hasil dengan berlangganan (mengamati) antrian output.
Metode ini cocok untuk inferensi asinkron dan tugas yang berjalan lama. Untuk petunjuk lengkap, lihat contoh pada panduan SDK spesifik bahasa masing-masing.
Troubleshooting pemanggilan
Jika pemanggilan SDK gagal, lakukan troubleshooting secara berjenjang dalam urutan berikut: klien → jaringan → sisi server. Klasifikasi masalah umum dan arahan troubleshooting yang sesuai adalah sebagai berikut:
-
Autentikasi (401 / 403): Periksa apakah token dikirim dengan benar, sesuai dengan layanan target, atau telah diatur ulang di Konsol.
-
Perutean (404): Pastikan endpoint dan nama layanan sesuai dengan nilai yang tercantum di halaman detail layanan di Konsol EAS. Jika Anda menggunakan VPC direct connection, konfirmasi bahwa penemuan layanan telah mengambil daftar instans.
-
Konektivitas (connection refused / timeout / DNS resolution failed): Verifikasi bahwa klien dan server berada dalam VPC yang sama, aturan security group mengizinkan traffic, dan domain endpoint dapat di-resolve.
-
Sisi server (5xx / respons kosong / format respons tidak valid): Periksa log layanan untuk menemukan akar penyebab masalah tersebut.
Untuk daftar lengkap kode status layanan, pesan error umum, dan solusi yang direkomendasikan, lihat Appendix: Service status codes and common errors.