9 puan yazan xguru 2024-12-02 | Henüz yorum yok. | WhatsApp'ta paylaş
  • Canva, aylık 200 milyon aktif kullanıcıya ulaştı, 30 milyardan fazla tasarıma sahip ve her saniye yaklaşık 300 yeni tasarım üretiliyor
    • Kullanıcıların tasarımları araması ve kendileriyle paylaşılan dosyaları bulması giderek daha önemli bir sorun haline geliyor
  • Genel aramada (web/ürün araması), kullanıcı sorguları ve sabit bir arama öğeleri kümesi temel alınarak veri kümeleri oluşturulur
    • Uzman değerlendiriciler her sorgu ile öğe arasındaki ilişkiyi değerlendirerek etiketleme yapar
    • Arama motoru performansı, Recall ve Precision metrikleriyle değerlendirilir
  • Kişisel aramada, gizliliği korumak için kişisel tasarımlar görüntülenmeden kullanıcı verileri değerlendirme veri kümesi olarak kullanılamaz
    • Çözüm olarak GPT-4o gibi üretken yapay zeka kullanılarak gerçekçi ama tamamen sentetik içerik ve sorgular üretildi
    • Bu yaklaşım, kişisel verileri hiç ihlal etmeden arama hattındaki iyileştirmeleri değerlendirme yöntemi sunuyor

Mevcut durum: sınırlı test yöntemleri

  • Mevcut test süreci
    • Mühendisler sınırlı bir çevrimdışı test yaklaşımı kullanıyordu
    • Bilinen sorunlu sorgular Canva hesabında çalıştırılarak kod değişikliğinden önceki ve sonraki performans karşılaştırılıyordu
      • Örnek: yazım düzeltme iyileştirmesinde desgin gibi hatalı sorgular test edildi
        • Değişiklik öncesi: sonuç yok
        • Değişiklik sonrası: design ile ilgili belgeler döndürüldü
    • Çevrimdışı testi geçen değişiklikler çevrimiçi test aşamasına ilerliyordu
      • Canva'nın deney çerçevesi kullanılarak A/B testleri yürütülüyordu
      • Değişiklik uygulanan kullanıcılarla standart aramayı kullanan kullanıcılar arasında arama başarı oranı karşılaştırılıyordu
  • Sınırlamalar
    • Çevrimdışı testlerin istatistiksel geçerliliğinin zayıf olması
      • Sınırlı sayıdaki sorgu, farklı arama davranışlarını temsil etmekte yetersiz kalıyordu
    • Kullanıcılar üzerinde potansiyel olumsuz etki
      • Çevrimdışı testte tespit edilmeyen performans düşüşlerinin çevrimiçi deneye yansıma ihtimali vardı
    • Çevrimiçi deneylerin zaman alması
      • İstatistiksel anlamlılık için en az birkaç gün ila birkaç hafta gerekiyordu
      • Aynı anda yürütülebilecek deney sayısını ve fikir test etme hızını sınırlıyordu

İdeal durum: yeni bir veri kümesi ve değerlendirme hattı kurmak

  • Hedef: mühendislerin çevrimiçi teste geçmeden önce değişiklikleri nesnel biçimde değerlendirebileceği özel bir veri kümesi ve değerlendirme hattına ihtiyaç vardı
  • Başlıca gereksinimler:
    • Yeniden üretilebilirlik: her zaman aynı sonuçları verebilmesi
    • Hızlı yineleme: mühendislerin kod değişikliğinden sonra sonucu hızla test edebilmesi; üretime dağıtımı beklemeden anında değerlendirme yapabilmesi
    • Üretim ortamına benzerlik: gerçek üretim davranışıyla uyumlu sonuçlar sunması
    • Engellemeyen çalışma: ekip üyelerinin birbirini beklemeden bağımsız şekilde kod değişikliklerini deneyebilmesi

Gerçekçi veri kümesi oluşturma: üretken yapay zekadan yararlanmak

  • Gizliliğe uygun değerlendirme veri kümesi
    • GPT-4o kullanılarak gerçek kullanıcı verilerinin yerini alabilecek sentetik veriler üretildi
    • Kullanıcı tasarımlarını kopyalamadan, metin uzunluğu gibi istatistiksel dağılımları yansıtan gerçekçi veriler oluşturuldu
  • Recall değerlendirmesi için test senaryosu üretimi
    • Konu ve tasarım türüne göre (belge, sunum vb.) GPT-4o ile sorgular ve karşılık gelen içerikler üretildi
    • Sorgu zorluğu ayarları:
      • yazım hataları ekleme
      • eş anlamlılarla değiştirme
      • sorguyu yeniden ifade etme
  • Precision değerlendirmesi için test senaryosu üretimi
    • İlgili ve ilgisiz tasarımları içeren veri kümeleri üretildi
    • İlgisiz tasarımları üretme yöntemleri:
      • yalnızca bazı anahtar kelimeleri içermek
      • tasarım şablonu veya taslak biçimine dönüştürmek
      • eski bir tasarım olarak ayarlamak

Üretken yapay zeka kullanırken ortaya çıkan sorunlar

  • LLM'lerin avantajları ve sınırlamaları
    • Avantajlar: büyük ölçekli metin verisini verimli biçimde üretebilmesi
      • Üretilen statik değerlendirme veri kümesi tekrar tekrar kullanılabiliyor ve hızlı, tutarlı, deterministik değerlendirme sonuçları sağlıyordu
    • Sınırlamaların ortadan kaldırılması: veri kümesi oluşturulduktan sonra LLM gecikmesi ve rastgelelik sorunları süreçten çıkarıldı
  • Sorunlar
    • Uzun başlık üretmeyi reddetme
      • 12-15 kelimelik başlıklar üretmesi istenmesine rağmen daha kısa başlıklar döndürdü
        • Örnek:
          • Exploring the Latest Advancements in Screen Technology and Applications (9 kelime)
          • Best Practices for Teachers: Presentation Tips for Meet the Teacher (10 kelime)
      • Bu durum, gerçek belgelerde uzun başlıkların nadir olmasını yansıtıyor olabilir
      • Sonuç olarak başlık uzunluğu kriteri yeniden gözden geçirildi
    • Tekrar ve halüsinasyon hataları
      • Bir kelimenin farklı yazım hatalarını üretmesi istendiğinde yinelenen veya gerçekçi olmayan sonuçlar döndürdü
        • Örnek: Calendar için farklı yazım hataları istendiğinde tekrar eden sonuçlar üretildi
    • İlgisiz başlık üretme sorunu
      • İlgisiz (nonrelevant) tasarım başlıkları üretirken yönergelere tam olarak uymadığı durumlar görüldü
      • Dönen başlıkların bazıları belirtilen anahtar kelimeleri içermiyor ya da yalnızca title string içeriyordu; yani hatalı sonuçlar üretiyordu

Değerlendirmeyi çalıştırmak: yerel ortamda test ve analiz

  • Değerlendirme veri kümesinin kullanımı
    • Üretilen sentetik veri kümesi arama hattına uygulanarak değerlendirme metrikleri hesaplandı
    • Farklı çalıştırma yöntemleri incelendikten sonra Testcontainers tabanlı yerel çalıştırma yaklaşımı benimsendi
  • Testcontainers tabanlı yerel hat
    • Mevcut Testcontainer desteğinden yararlanma
      • Canva'nın servis odaklı RPC mimarisinde Testcontainer desteği zaten uygulanmıştı
      • Elasticsearch gibi harici bileşenler iç Testcontainer'larla birleştirilerek hat kuruldu
    • Üretim yapılandırmasının eksiksiz yeniden üretimi
      • Arama hattı ve destekleyici ML modelleri yerelde çalıştırılarak üretimle aynı ortam oluşturuldu
      • Mühendisler farklı model varyasyonlarını deneyebildi
  • Test senaryolarını işleme süreci
    1. Her test senaryosu için gerekli durumun (state) oluşturulması
    • Canva tasarımı üretmek yerine, arama indeksinin ihtiyaç duyduğu veriler çıkarılıp eklendi
    1. Yerel arama hattının çalıştırılması
    • Veri kümesi test sorgularıyla çalıştırılarak arama sonuçları üretildi
    1. Sonuçların değerlendirme modülüne iletilmesi
    • Recall ve Precision metrikleri hesaplandı
  • Veri akışı diyagramı
    • Değerlendirme aracı üzerinden verinin işlendiği uçtan uca akışı görselleştiren bir diyagram sunuldu

Sonuçları görselleştirmek

  • Görselleştirme aracı geliştirme
    • Değerlendirme sonuçlarını etkili biçimde görselleştirmek ve karşılaştırmak için Streamlit tabanlı özel bir araç geliştirildi
    • Mühendisler farklı yapılandırmalar arasındaki Recall ve Precision metriklerini tek bakışta karşılaştırabiliyordu
  • Temel özellikler
    1. Yapılandırmaya göre karşılaştırma
      • Sonuçlar toplanarak farklı ayarların performansı yan yana karşılaştırılabiliyordu
    2. Sorgu türü ve zorluk seviyesine göre performans kırılımı
      • Belirli sorgu türleri veya zorluk seviyelerine göre performans ayrı ayrı analiz edilebiliyordu
    3. Tekil sorgu hata ayıklama
      • Her sorgunun çıktısı incelenerek belirli kullanım senaryoları detaylı şekilde hata ayıklanabiliyordu
  • Hızlı karar alma desteği
    • Değerlendirme tamamlandığında araç hemen çalışıyor ve mühendislerin performans sonuçlarına göre hızlı karar vermesine yardımcı oluyordu
    • Mühendisler başka ekip üyelerine bağlı kalmadan bağımsız biçimde yineleme ve iyileştirme yapabiliyordu

Etki ve gelecek planları

  • İdeal duruma ne kadar yaklaşıldı?
    • Değerlendirme veri kümesi ve araçlar tam yeniden üretilebilirlik sağlıyor ve birkaç dakika içinde sonuç üretiyor
    • Mühendisler, üretim davranışıyla uyumlu sonuçları yerelde bağımsız ve nesnel biçimde değerlendirebiliyor
    • Müşterilerin tasarımları ya da sorguları hiç görüntülenmeden gizlilik tamamen korunuyor
  • Başarı özeti
    1. Hızlı yineleme
    • 1000'den fazla test senaryosu 10 dakikanın altında işlenebiliyor
    • 2-3 gün süren çevrimiçi deney döneminde 300'den fazla çevrimdışı değerlendirme yapılabiliyor
    1. Çevrimdışı-çevrimiçi sonuç korelasyonu
    • Çevrimdışı değerlendirme sonuçları, uygun olmayan fikirleri elemek ve yalnızca başarı ihtimali yüksek değişiklikleri çevrimiçi deneye taşımak için tasarlandı
    • Geliştirme sırasında çevrimdışı ve çevrimiçi sonuçların senkronunu doğrulayan çok sayıda deney yapıldı
    • Hem olumlu hem olumsuz performans değişikliklerinde güçlü bir tutarlılık görüldü
    1. Yerel hata ayıklama yeteneği
    • Test senaryosunun arama hattındaki her bileşenden geçişini gözlemlemeyi sağlayan hata ayıklama desteği sunuldu
    • Bu yaklaşım, mevcut üretim loglarına dayanan hata ayıklamadan çok daha verimliydi
  • Gelecek planları
    • Veri kümesini genişletmek
      • İş birliği grafiği gibi daha gerçekçi özellikler eklemek
    • Araçları iyileştirmek
      • Mühendislerin ihtiyaçlarına göre özelleştirilmiş sentetik veri üretebilmesi için araçları geliştirmek
    • Üretken yapay zekadan en üst düzeyde yararlanmak
      • Sentetik verinin sunduğu olanakları kullanarak Canva'nın arama araçlarını topluluk için en iyi deneyime dönüştürme hedefini sürdürmek

Henüz yorum yok.

Henüz yorum yok.