Cari artikelCERITA AI UNTUK KAMU / INDONESIA

BAHASAN MENDALAM · AI untuk usaha

Pilih model AI sesuai tugas, lalu siapkan saat ia gagal

Tentukan batas data dan mutu jawaban sebelum membandingkan biaya, lalu atur tenggat, percobaan ulang, dan jalur cadangan.

Sumber kami cek

Gambar konsep asli dari redaksi Nalarku; bukan tangkapan layar produk.

Mau langsung ke bagian mana?
  1. Saring syarat wajib sebelum membandingkan pilihan
  2. Bedakan apa yang diukur dari targetnya
  3. Pilih biaya setelah memeriksa kelayakan
  4. Satu tenggat berlaku untuk seluruh pekerjaan
  5. Jalur cadangan tetap harus memenuhi tugas yang sama
  6. Uji keadaan yang seharusnya ditolak atau gagal

Kalau aplikasi kamu memakai beberapa model AI, memilih yang termurah dari panjang pesan saja bisa keliru. Satu kalimat yang meminta perubahan rekening dapat membutuhkan kendali lebih ketat daripada rangkuman panjang bahan publik. Panjang teks belum menjadi ukuran tunggal kesulitan.

Penentuan jalur ke model disebut routing. Mulailah dari batas yang wajib dipenuhi, lalu bandingkan kualitas, waktu tunggu, dan biaya. Contoh di sini memakai profil fiktif yang bisa diperiksa tanpa memanggil layanan, bukan hasil uji kinerja atau pengaturan yang disarankan untuk semua organisasi.

Saring syarat wajib sebelum membandingkan pilihan

Periksa kelas data, wilayah pemrosesan yang disetujui, jenis masukan dan keluaran, aturan bentuk hasil, serta hak penggunaan. Jika salah satunya tidak terpenuhi, keluarkan profil itu dari pilihan. Model yang cepat tetap tidak bisa dipilih bila tidak boleh menerima datanya.

Sesudah itu, bandingkan pilihan yang sah menurut hasil uji tugas. Label “besar” atau “kecil” belum cukup untuk menilai kualitas. Simpan versi profil agar keputusan bisa ditelusuri saat daftar model berubah.

Berikut contoh daftar profil internal:

Profil fiktif Tugas yang sudah diuji Kelas data Catatan
brief-fast-v1 Rangkuman bahan publik publik Hasil dibatasi singkat
document-v1 Mengambil isi dokumen visual publik, internal Perlu dukungan dokumen
analysis-v1 Analisis beberapa sumber publik Tetap perlu pemeriksaan editor

Daftar ini tidak menyatakan kemampuan produk nyata. Saat dipakai, setiap baris perlu terhubung ke pengaturan layanan yang tersedia dan sudah diperiksa.

Bedakan apa yang diukur dari targetnya

Google SRE membedakan indikator mutu layanan, atau service level indicator (SLI), dari target mutu layanan, atau service level objective (SLO). Untuk aplikasi AI, kamu bisa mengukur bagian hasil valid yang diterima sebelum tenggat atau deadline. Jawaban sukses dari penyedia dengan kode HTTP 200 saja belum mencakup hal itu.

Tentukan kapan pengukuran dimulai dan selesai. Jika pengguna menunggu sampai pemeriksaan hasil selesai, durasinya perlu masuk waktu tunggu atau latensi. Draf yang baru ditinjau beberapa jam kemudian punya pengalaman pemakaian berbeda dari percakapan interaktif.

Contoh target internal fiktif adalah sebagian tertentu ringkasan bahan publik selesai dengan bentuk yang sesuai dalam tenggat tim. Itu bukan klaim tingkat layanan penyedia. Ketepatan fakta tetap perlu ukuran terpisah, karena jawaban cepat bisa tetap salah.

Pilih biaya setelah memeriksa kelayakan

Sebelum melihat kode, kenali p95 sebagai batas waktu tunggu yang masih mencakup hampir semua permintaan. Contoh Python ini memilih biaya perkiraan terendah setelah memeriksa syarat wajib dan batas latensi:

def choose_profile(profiles, task, data_class, deadline_ms):
    eligible = [p for p in profiles
                if task in p["tasks"]
                and data_class in p["data_classes"]
                and p["enabled"]
                and p["estimated_p95_ms"] <= deadline_ms]
    if not eligible:
        return None
    return min(eligible,
               key=lambda p: (p["estimated_cost"], p["name"]))["name"]


profiles = [
    {"name": "public-fast", "tasks": ["brief"],
     "data_classes": ["public"], "enabled": True,
     "estimated_p95_ms": 2000, "estimated_cost": 1},
    {"name": "internal", "tasks": ["brief"],
     "data_classes": ["public", "internal"], "enabled": True,
     "estimated_p95_ms": 3500, "estimated_cost": 2}
]
print(choose_profile(profiles, "brief", "internal", 4000))

Contoh menganggap daftar profil sudah diperiksa. Perkiraan p95 tidak menjamin setiap permintaan selesai dalam batas itu. Pada aplikasi yang dipakai pengguna, tambahkan pemeriksaan aturan keluaran, wilayah, kuota, dan keadaan layanan yang relevan.

Jika tidak ada pilihan yang memenuhi syarat, kembalikan status yang jelas. Jangan beralih ke jalur cadangan, atau fallback, tanpa izin.

Satu tenggat berlaku untuk seluruh pekerjaan

Jika tenggat pengguna 10 detik, tiga percobaan dengan batas tunggu masing-masing 10 detik sudah melewati janji pengalaman tersebut. Batas tunggu satu pemanggilan disebut timeout. Hitung sisa tenggat keseluruhan, lalu bagi untuk koneksi, model, alat bantu, dan pemeriksaan hasil.

Uraian AWS mengenai timeout dan retry menjelaskan bahwa percobaan ulang atau retry dapat menambah beban layanan yang sedang bermasalah. Batasi percobaan dan gunakan jeda yang meningkat atau backoff, dengan variasi acak atau jitter. Periksa juga apakah perangkat penghubung layanan atau SDK dan aplikasimu sama-sama mencoba ulang sehingga jumlahnya berlipat.

Kesalahan identitas, masukan tidak valid, dan pelanggaran kebijakan perlu perbaikan, bukan pengulangan panggilan yang sama. Pisahkan masalah yang mungkin sementara dari masalah yang memerlukan perubahan masukan atau pengaturan.

Jalur cadangan tetap harus memenuhi tugas yang sama

Fallback bisa memakai profil yang sudah disetujui atau mengembalikan tugas ke antrean pemeriksaan. Jika profil kedua tidak bisa membaca dokumen visual, teks hasil pengambilan yang kehilangan grafik tidak boleh dianggap setara. Pergantian jalur tidak boleh diam-diam mengubah arti hasil.

Pisahkan pembuatan hasil dari tindakan di luar proses, atau efek samping. Membuat draf kedua berbeda dari mengirim pesan kedua. Simpan identitas tugas dan langkahnya agar pemulihan model tidak menggandakan tindakan, seperti dibahas dalam panduan antrean dan idempotensi.

Panggilan ke profil yang terus gagal dapat dihentikan sementara lewat circuit breaker. Tentukan rentang pengamatan, ambang kegagalan, waktu tunggu, dan percobaan untuk memeriksa pemulihan atau probe. Satu pengguna dengan masukan salah tidak semestinya membuat seluruh layanan ditutup.

Uji keadaan yang seharusnya ditolak atau gagal

Siapkan kasus data internal yang hanya punya calon profil publik, tenggat terlalu pendek, dan semua profil dinonaktifkan. Tambahkan penyedia yang melewati batas tunggu serta hasil fallback yang gagal diperiksa. Tulis dulu hasil yang diharapkan untuk tiap kasus.

Catat profil yang dipertimbangkan, alasan penolakan, versi kebijakan, dan profil terpilih. Catatan proses atau log tidak perlu memuat isi data sensitif hanya demi menjelaskan keputusan routing. Ukur frekuensi fallback, retry per tugas, hasil diterima, dan biaya tambahannya.

Uji ulang saat model atau aturan layanan berubah. Kode pemilih yang benar masih bisa memberi pilihan buruk bila perkiraannya usang. Gunakan contoh acuan dan uji perubahan agar aturan pemilihan tetap sesuai mutu pekerjaan nyata.

KAMU BISA CEK SUMBERNYA

Sumber dan catatan kami

  1. Service level objectivesGoogle SRE
  2. Timeouts, retries, and backoff with jitterAWS Builders Library

Tulisan ini memakai panduan resmi dan usulan cara kerja dari Nalarku. Contoh dan data latihan diberi label. Keterangan produk bisa berubah setelah sumber kami periksa.

Baca cara kami memakai AI serta cara kami menulis. Keduanya menjelaskan proses di balik bacaan ini.

Ada teman yang perlu baca ini?Kenali Nalar Pekan →