-
Linus Lee'nin AI geliştirme deneyimi
- Linus Lee, Notion'da baş AI mühendisi olarak çalışıyor.
- Notion'dan önce NLP, makine öğrenimi ve HCI üzerine çok sayıda araştırma yaptı; ayrıca prototipleme ve yazarlıkla da aktif olarak ilgilendi.
- Notion'da Q&A, Autofill ve AI Writing özelliklerini geliştirdi; ayrıca latent space model'leri üzerine de araştırmalar yürüttü.
-
Notion AI geliştirmesine genel bakış
- Linus Lee, üniversite yıllarından beri çeşitli web geliştirme ve üretkenlik araçları geliştiriyordu.
- 2022 boyunca bağımsız olarak AI ile ilgili makaleler okuyup araştırma yapmaya başladı.
- 2022 Ekim'inde Notion'ın AI Writer beta projesine katıldı.
- Notion'a katıldığında AI ekibi dört kişiden oluşuyordu, ancak bugün yaklaşık 20 kişiye ulaştı.
- Linus Lee'nin yer aldığı başlıca projeler AI Writer, Autofill ve Q&A oldu; bunlar sırasıyla 2023 Şubat, Mayıs ve Kasım aylarında yayımlandı.
- Gelecekte Notion AI, agent teknolojileri aracılığıyla kullanılabilirliği daha da iyileştirmeyi planlıyor.
-
Notion'ın ofisleri ve AI ekibine giriş
- Notion'ın San Francisco ve New York'ta ofisleri var; San Francisco ofisi öğle yemekleri ve etkinlik alanı olarak da kullanılıyor.
- New York ofisi, Linus Lee'nin yaşayıp çalıştığı yer ve temiz tasarlanmış çalışma ortamıyla öne çıkıyor.
- Notion'da AI özelliklerinin geliştirilmesi 2013'te başladı ve CEO ile CTO doğrudan ürün geliştirmeye katılıyor.
- 2022 sonbaharında AI ekibinin toplantı fotoğrafında yönetici, CEO Ivan, CTO Simon, ürün yöneticileri ve tasarımcıların bir Q&A oturumu yaptığı görülüyor.
- AI ürün geliştirmede kalite ve değerlendirme kritik unsurlar; araştırma benchmark'ları ile gerçek production kullanımının oluşturduğu spektrumu dikkate alan değerlendirme teknikleri kullanılıyor.
- Notion, benchmark'lar ile gerçek veriler arasındaki performansı kontrol ediyor ve model performansını programatik testlerle hassas biçimde değerlendiriyor.
- Değerlendirme maddeleri arasında belirli kelimelerin, güven unsurlarının, anahtar kelimelerin bulunup bulunmadığı ve dil performansının doğruluğu yer alıyor.
-
Notion'ın AI ürün geliştirmesi
- İnsan değerlendirmesi, Notion AI ürün geliştirmesinin önemli bir unsurudur.
- Test veri setlerinde insanlar veriyi inceler, ürün ise programatik testler aracılığıyla test edilir.
- Ürün geliştirildikten sonra kullanıcı geri bildirimine dayalı sürekli izleme gerekir.
- AI, kullanıcıların başarısız örneklerini toplama ve soruları yanıtlama gibi işleri etkili biçimde yerine getiren farklı düzeylerde yetenekler sunmalıdır.
- Yüksek kaliteli AI ürünleri geliştirmenin özü, düzeltme ve verinin kalitesidir. Bu nedenle gerçek dünya verisini modele uygun hâle getirmek önemlidir.
- Notion ekibinde mühendisler, araştırmacılar, tasarımcılar ve ürün yöneticileri düzeltme işlevlerini birlikte tartışarak geliştirir.
- GPT-4 gibi modeller kullanılarak çıktı kalitesini artırmak için düzeltme modelleri sürekli iyileştirilir.
-
Notion AI özellik geliştirme süreci
- Notion AI mühendisleri, bilgi toplama ve veri yapılandırma yoluyla model geliştirir. Bu yüzden veriyi derinlemesine analiz etmeleri ve kullanıcı ihtiyaçlarına göre uyarlamaları gerekir.
- Notion kullanıcılarının toplantı notları, web sayfaları gibi bilgileri nasıl düzenlediğini araştırarak veri setleri kurarlar. Çünkü bu, AI modelinin performansını etkiler.
- Araştırma yoluyla Q&A gibi use case'leri belirleyip modeli test ederler. Böylece kullanıcı sorularına etkili yanıtlar verebilirler.
- GPT-4 ve cloud model'leri kullanarak prototip sistemler geliştirirler. Ardından bunları şirket içinde test ederek ilk sorunları tespit ederler.
- İç kullanım sırasında toplanan başarısız örnekleri analiz edip buna göre veri setlerini ve modeli iyileştirirler. Böylece tekrar eden test ve geri bildirim döngüsüyle model doğruluğunu artırırlar.
-
Notion'ın AI model geliştirme ve değerlendirme süreci
- Model iterasyon süreci; prompt düzenleme, model fine-tuning'i ve language model pipeline'ına ikinci bir aşama ekleme gibi işleri içerir.
- Geliştirme aşamasında bir sorunun çözüldüğüne karar verilirse yeniden dağıtım yapılır, daha fazla başarısız örnek toplanır ve süreç yinelenir.
- İç ortamda giriş ve çıkış kalitesi tatmin edici seviyeye ulaşana kadar bu döngü sürdürülür.
- Bir noktada ürün, beta programı üzerinden sınırlı sayıdaki kullanıcıya açılır; kullanıcı geri bildirimleri ve otomatik toplanan log verileri izlenir.
- Veri seti oluşturmanın ilk aşamasında, gerçek kullanım senaryolarını iyi yansıtıp yansıtmadığını doğrulamak için çeşitli yöntemler kullanılır.
-
AI özellik geliştirmede ilk aşama
- Bir prototip oluşturulup dahili AI ekibiyle test edilir.
- Böylece iç kullanım üzerinden çeşitli girdiler ve örnekler toplanır.
- İlk girdi setinin gerçek vakaları kusursuz biçimde temsil etmesi şart değildir.
- İç testlerden sonra daha geniş bir kullanıcı kitlesine dağıtım yapılarak kademeli biçimde daha gerçekçi veriler elde edilir.
- Öngörülen başarısız örneklere dayanarak ilk veri seti de kurulabilir.
- Dil desteği geliştirilirken mevcut QA veri setleri yabancı dillere çevrilerek kullanılır.
-
İç ve dış testler yoluyla veri toplama ve değerlendirme
- İlk veri setinin tamamen gerçekçi olması gerekmez. Bu nedenle testler yoluyla daha iyi veriler toplanır.
- Prototip, iç kullanıcılara veya küçük ölçekli dış kullanıcılara test ettirilir; hatalı çıktı örnekleri farklı yollarla toplanır.
- Anahtar kelime ya da çıktı yapısı temelli değerlendirmeler programatik olarak yürütülür ve tüm AI çıkarımları için log tutulur. Böylece başarısız çıktılar incelenip analiz edilebilir.
- Kullanıcı görüşmeleri sayesinde gerçek kullanım senaryoları anlaşılabilir ve beklenmedik kullanım biçimleri keşfedilebilir.
- Örneğin, Autofill özelliğinin iç testlerinde birçok çalışanın bunu çeviri amacıyla kullandığı fark edildi ve bunun üzerine özellik daha optimize edilmiş bir çeviri sürümüne dönüştürüldü.
-
AI ürünlerinde geri bildirim ve değerlendirme yöntemleri
- Beğen ve beğenme geri bildirim düğmeleri kullanıcılar için çok faydalı olmadığından sık kullanılmaz.
- Ayrıca Notion'ın kullanıcı ölçeğinde, bu tür düğmeler üzerinden yeterli veri toplamak da mümkün değildir.
- Bununla birlikte, bazen başka kullanım senaryolarında fark edilmeyen istisnai durumları yakalamaya yardımcı olabilir.
- İçeride ise adversarial testler yoluyla modelin beklenmedik girdilere karşı performansı değerlendirilir.
- Adversarial testler, modelin performans sınırlarını anlamak ve sorunların nerede ortaya çıktığını belirlemek için yararlıdır.
- Gerçek kullanım verileri üzerinden modelin güçlü ve zayıf yönleri sürekli izlenir.
-
AI ürün geliştirmesinin temel unsurları
- En önemli unsurlar değerlendirme ve log'lardır.
- Kapsamlı ve tamamen yeniden çalıştırılabilir log'lar kurmak gerekir.
- Gerçek kullanımda ortaya çıkan kötü çıktı örnekleri veya iç test sonuçları üzerinden pipeline yeniden kurulabilir ve debug yapılabilir.
- Her örnek, yeni prompt'lar veya modellerle test edilerek çözüm bulmak amacıyla geliştirme ortamında yeniden çalıştırılır.
- Sorun çözüldükten sonra bu örnek test veri setine eklenir ve aynı sorunun tekrar yaşanması önlenir.
-
AI geliştirmede önemli dersler
- Ürünü erken kullanmak ve sık test etmek, göreve dair anlayışı daha rafine hâle getirmek için gereklidir.
- AI'daki farklılaştırıcı unsur model performansı değil, görevin ne olduğuna dair anlayıştır.
- Son kullanıcıya yönelik AI uygulamaları geliştirirken ekip, görevin zorluk seviyesini ve modelin sınırlarını derinlemesine anlamalıdır.
- Görevi küçük parçalara bölmek ve modelin sık başarısız olduğu kısımlarla doğal olarak iyi yaptığı kısımları belirlemek önemlidir.
- Ürünü sık kullanıp çıktıları analiz ederek model hatalarının nedenlerini anlamak, görevin zorluğunu kavramanın en iyi yoludur.
-
AI ürünleri geliştirirken dikkat edilmesi gerekenler
- Ürün spesifikasyonunda arayüz ve işlevlerin yanı sıra değerlendirme ölçütleri ve iyi çıktının tanımı da belirtilmelidir.
- Değerlendirme ölçütleri, ürün sorumluları ile mühendisler ve araştırmacılar arasındaki iletişimin ana noktalarından biridir.
- Geleneksel makine öğrenimi deneyimi, LLM ve generative AI modellerine de uygulanabilir; bu da düşünüldüğünden daha fazla içgörü sağlar.
- Ancak geleneksel makine öğreniminde büyük veri setleriyle çalışılıp cluster'lar veya büyük alt kümeler analiz edilirken, language model çalışmalarında tekil başarısız örnekler ve bireysel log'lar daha sık incelenir.
- Bu nedenle language model çalışmaları için farklı araçlar ve workflow'lar gerekir.
-
AI model değerlendirmesinin önemi ve yaklaşım yöntemi
- Değerlendirmede hakikatin kaynağı kullanıcılar ve onların gerçekten yaptıkları iştir.
- Bu nedenle değerlendirme materyalleri, iç ve dış kullanım verilerine dayanmalı ve gerçek kullanım senaryolarını yansıtmalıdır.
- Değerlendirme sürecindeki önemli zorluklardan biri, sistemin iyi çalışmasını istediğiniz tüm girdi alanını yeterince kapsayabilmektir.
- Otomatik değerlendirme pipeline'ı kurmak, ileride çok miktarda veri işleneceğinde zaman kazandırabilir; ancak başlangıçta ekip üyelerinin çıktıları doğrudan inceleyip anlaması önemlidir.
- Bu, modelin neden başarısız olduğunu ve belirli görevlerde hangi eğilimleri gösterdiğini anlamaya yardımcı olur.
-
AI ekibi kurma yöntemleri
- İki ana yaklaşım vardır; ilki mevcut makine öğrenimi ekibini bir AI ekibine dönüştürmektir.
- Bu durumda ekip veri, doğrulama ve benchmark'lara odaklanabilir. Bu yüzden değerlendirmelerin kullanıcı ihtiyaçları ve gerçek dünya beklentileriyle uyumlu olması önemlidir.
- İkinci yaklaşım ise mevcut mühendislik ekibinin OpenAI API gibi language model API'lerini öğrenmesidir. Notion da bu yöntemi kullandı. Bu yüzden ilk AI ekibi ağırlıklı olarak web mühendislerinden oluşuyordu.
- Bu tür ekiplerin güçlü yanı, kullanıcı anlayışı ve test deneylerinde güçlü olmalarıdır. Ancak sıkı değerlendirme ve yüksek kaliteli veri setlerinin önemini öğrenmeleri gerekti.
- Ayrıca veri seti bakımında iyi hijyen uygulamaları ve workflow'lar önemlidir. Bu nedenle yüksek kaliteli veri noktaları sağlamak kritik önemdedir.
Henüz yorum yok.