Kullanıcı kendi anahtarını getirsin: üç kararın aynı anda verilmesi

This post is in Turkish.

DRAVION'da kullanıcı kendi model anahtarını getiriyor. Ürünün faturasına model kullanımı dahil değil; kullanıcı hangi sağlayıcıyla çalışacağına kendi karar veriyor ve tüketimini kendi ödüyor.

Bu, dışarıdan bakınca küçük bir entegrasyon detayı gibi görünüyor. Değil. Üç ayrı kararı aynı anda vermek demek, ve üçü birbirinin sonucunu değiştiriyor.

Birinci karar: fiyatlandırma

Otonom bir ajan, bir sohbet kutusundan çok daha fazla token tüketiyor. Bir görev planlanıyor, birden fazla worker açılıyor, her worker dosya okuyor, test çıktısını okuyor, hatayı okuyup tekrar deniyor. Aynı görevi iki kullanıcı çalıştırdığında maliyet on kat farklı olabiliyor — çünkü birinin reposu büyük, birinin testleri yavaş.

Bu tüketimi sabit bir abonelik fiyatının içine koymak, tahmin edilemeyen bir maliyeti tahmin edilebilir bir gelire yamamak demek. Ya çok yüksek fiyatlıyorsun ve hafif kullanan herkesi kaybediyorsun, ya doğru fiyatlıyorsun ve ağır kullanan seni batırıyor.

BYOK bu problemi ortadan kaldırmıyor — kullanıcıya devrediyor. Ve kullanıcı bunu benden daha iyi yönetiyor, çünkü kendi kullanımını görüyor.

İkinci karar: güven

İkinci fayda ürünün ne olduğuyla ilgili. Otonom bir ajan kod tabanınıza yazma yetkisi istiyor. Bu, bir kullanıcının vereceği en büyük izinlerden biri.

"Kodunuzu bizim anahtarımızla, bizim hesabımızdan, bizim seçtiğimiz modele gönderiyoruz" cümlesi, bu izni istemek için kötü bir başlangıç. Kullanıcının kendi sağlayıcısını seçebilmesi — ve o sağlayıcıyla arasındaki veri işleme sözleşmesinin kendisine ait olması — güven konuşmasını tamamen değiştiriyor.

Kurumsal tarafta bu bir tercih değil, giriş bileti. Bir şirketin hukuk ekibi "hangi sağlayıcıya gidiyor" sorusunu soruyor ve cevabın "sizin seçtiğiniz" olması, o konuşmayı aylardan günlere indiriyor.

Bir ürünün en zor kararı bazen mimari değil, kimin sorumluluğunda olduğunu belirlemek.

Üçüncü karar: sorumluluk yarıçapı

Ve burada fatura geliyor. BYOK, hatanın yarıçapını değiştiriyor.

Kendi anahtarımı kullanıyor olsaydım, bir hatanın bedeli benim altyapım olurdu. Kullanıcının anahtarını taşıdığımda, bir hatanın bedeli başkasının parası. Sızan bir anahtar, o kullanıcının kotasını tüketebilir, faturasını şişirebilir.

Bu yüzden sandbox yazısında anlattığım kararların çoğu doğrudan buradan çıkıyor. Anahtarlar döndürülebilir bir ana anahtarın arkasında şifreli duruyor, veritabanında düz metin hiçbir yerde yok. Worker'a giden iş talimatları imzalı geliyor, yani konteynerin içinden "bana şu anahtarı ver" diye bir istek uydurulamıyor. Loglar sırları filtreliyor — çünkü bir sırrın sızmasının en sık yolu saldırı değil, hata ayıklama çıktısı.

Bunların hiçbiri BYOK'un getirdiği fayda değil. Hepsi BYOK'un bedeli.

Ne kaybediyorsun

Dürüst olmak gerekirse: ilk kullanım deneyimi.

Kaydolan bir kullanıcı ürünü denemek için önce bir sağlayıcıya gidip anahtar üretmek zorunda. Bu, kayıt akışına eklenmiş fazladan bir duvar ve orada insan kaybediyorsun. Bunu telafi etmenin yolları var — sınırlı bir deneme havuzu, tek tıkla sağlayıcı bağlama — ama duvarın kendisi duruyor.

İkinci kayıp: model davranışını garanti edemiyorsun. Kullanıcı zayıf bir modelle çalışırsa ajan kötü sonuç veriyor ve bunu ürünün başarısızlığı olarak okuyor. Sağlayıcı seçimini serbest bıraktığın anda, kalite algısının bir kısmını da bırakıyorsun.

Kime doğru geliyor

Tüketici ürünü yazıyorsan BYOK muhtemelen yanlış — o duvarı aşacak kullanıcı azınlık.

Geliştiriciye ve şirkete satıyorsan doğru. Çünkü o kullanıcının zaten bir anahtarı var, sağlayıcı tercihi konusunda fikri var, ve maliyetini kendi görmek istiyor.

DRAVION'un kullanıcısı ikinci grupta. O yüzden bu karar, üç faturasına rağmen hâlâ doğru karar.