Yüz doğrulama API'si
B2B SaaS · geliştiricilere yönelik · API + site
özet


- gelen
- Geliştiricilerin kendi uygulamalarına yüz doğrulama ekleyebileceği bir API: canlılık kontrolü ve yüz eşleştirmeden oluşan iki parçalı bir yapay zekâ arka ucu, ham görüntü saklamayan bir veri modeli ve geliştiricilere seslenen bir tanıtım sitesi.
- incelenen
- Vaadin hangi kısımlarının ölçülebildiği (süre, canlılık, şifreleme, KVKK/GDPR); dönüşüm modeli (ücretsiz API kaydı, ücretli pakete geçiş, kurumsal müşteriler için satış iletişimi); rakiplerin (AWS Rekognition, Azure Face, FaceIO) kendilerini nasıl anlattığı.
- kararlar
- Yapay zekâ tarafı istendiği gibi iki ayrı parça; eşleşme ve canlılık iki ayrı sonuç alanında dönüyor. Görüntü saklanmıyor, yalnız şifreli vektör. Önce API, sonra arayüz; sitede kod örneği ilk ekranda. Site sonradan yeniden değerlendirildi, yeni görsel dil tıklanabilir bir prototiple önerildi.
- teknikler
- Laravel API, yüz eşleştirme ve canlılık servisleri, şifreli vektör saklama, webhook; tasarım sistemi (Inter Tight + IBM Plex Mono, tek vurgu rengi), tıklanabilir prototip, CC BY 4.0 lisanslı 3D tel kafes model.
Nereye baktım
Gelen iş, geliştiricilerin kendi uygulamalarına yüz doğrulama ekleyebileceği bir API ve onu tanıtan bir siteydi. Sorun belliydi: parola ve SMS kodu kolayca ele geçirilebiliyor. Yüz tanıma bunların yerini alabilir, ama bir fotoğraf ya da videoyla kandırılabildiği sürece güvenli sayılmaz. Hazır bulut hizmetleri de veri saklama ve KVKK / GDPR konusunda geliştiriciyi çoğu zaman belirsizlikte bırakıyor.
Bu yüzden önce vaadin hangi kısımlarının ölçülebildiğine, geliştiricinin ücretsiz kayıttan ücretli pakete nasıl geçeceğine ve rakiplerin kendilerini nasıl anlattığına baktım.
Ne yaptım, ne sundum
- İki parçalı yapay zekâ arka ucu. İstendiği gibi iki ayrı parça yazıldı. Yüz eşleştirme görüntüden bir yüz vektörü çıkarıyor, kayıtlı vektörle karşılaştırıyor ve bir güven puanı döndürüyor. Canlılık kontrolü görüntünün ekrana tutulan bir fotoğraftan ya da videodan değil, canlı bir kişiden geldiğini ayırt ediyor.
- API. Kayıt ve doğrulama uç noktaları, kimlik doğrulama, istek limitleri, asenkron akışlar için webhook ve anlaşılır hata kodları. Her uç nokta dört dilde (cURL, Python, JavaScript, PHP) örnekle belgelendi.
- Veri modeli. Ham görüntü saklanmıyor; yalnız şifrelenmiş yüz vektörü tutuluyor.
- Hesap ve paketler. Ücretsiz kayıtla başlayıp ücretli pakete geçilen bir akış ve kurumsal müşteriler için bir iletişim yolu.
- Tanıtım sitesi. İki dilli; metinleri çeviri anahtarlarından geliyor.
- Yeniden tasarım önerisi. Siteyi sonradan dışarıdan bir gözle değerlendirip yeni bir görsel dil ve sayfa yapısı önerdim; öneri tıklanabilir prototip olarak kaldı.
Kararlar
- Önce API, sonra arayüz. Ürünün değeri uç noktalarda; site, API'nin yaptığını doğru anlatacak biçimde kuruldu.
- Gizlilik baştan. Görüntüyü saklamamak sonradan eklenen bir özellik değil, veri modelinin ilk kararıydı.
- İki parça, iki sonuç. Eşleşme ve canlılık ayrı alanlarda dönüyor; geliştirici ikisini ayrı ayrı değerlendirebiliyor.
- Geliştiricinin dilinden konuşmak. Kod örneği, uç nokta, hata kodu ve istek limiti pazarlama cümlelerinden önce geliyor.
- Öneride sadeleştirme. Açılıştaki beş animasyon katmanı tek bir ana görsele (fareyle yön değiştiren 3B tel kafes yüz) indi; menü altı öğeden dörde düştü; API ayrıntıları dokümantasyona taşındı; her sayfada bir birincil, bir ikincil eylem kaldı. Henüz gerçek müşteri yokken logo duvarı yerine doğrulanabilir içerik (teknik doküman, demo, güvenlik politikası) önerildi.
- Dışarıdan bakınca görülen. Tek tek güzel olan animasyonlar bir arada dikkati dağıtıyordu; tanıtım sayfasına konan dokümantasyon iki kitleye de yetmiyordu; yer tutucu içerik ise birikmiş bir borçtu.