Apple araştırmacıları, geliştiricilerin arayüz fikirlerini daha fazla kontrol ile keşfetmelerine ve geliştirmelerine yardımcı olan SQUIRE adlı deneysel bir AI destekli aracın detaylarını yayınladı. İşte detaylar.

AI Destekli Arayüz Prototipleme için İlginç Bir Yaklaşım

"SQUIRE: Slot QUery Intermediate REpresentations aracılığıyla Etkileşimli UI Yazımı" başlıklı yeni bir makalede, bir grup Apple geliştiricisi AI tarafından üretilen arayüzlere yaklaşmanın yenilikçi bir yolunu öneriyor.

Araştırmacılar, doğal dilin geliştirme sürecinin birçok yönüne daha fazla esneklik getirdiğini, ancak bunun iki ana zorluğu da beraberinde getirdiğini açıklıyor:

İlk olarak, doğal dil kendi başına belirsiz olabilir, bu da geliştiricilerin niyetlerini tam olarak iletmelerini zorlaştırır. İkinci olarak, model öngörülemez bir şekilde yanıt verebilir, bu da geliştiricinin istenmeyen değişiklikleri düzeltmek için deneme yanılma yoluyla yeniden istemde bulunmasını gerektirir.

İşte burada SQUIRE devreye giriyor. Geliştiricilerin adım adım UI prototipleri oluşturmasına ve geliştirmesine olanak tanıyan görsel bir arayüzdür ve sonuçlar üzerinde daha net bir kontrol sağlar.

Çalışmadan:

SQUIRE'da kullanıcılar, UI için hedeflerini tanımlayan bir istem sağlayarak bir projeye başlarlar ve SQUIRE'ın referans olarak kullanabileceği bilgi içeren örnek veriler eklerler. Kullanıcılar, SQUIRE'ı, eksik ancak beklenen işlevselliği temsil eden boşlukları doldurması için yönlendirerek, bileşenlerin yukarıdan aşağıya doğru bir ağacı olarak UI'yi inşa ederler. Bu tür bir isteğe yanıt olarak, SQUIRE, tamamlanmamış UI'deki hedef boşluğa özel olarak kapsamlandırılmış uygun alternatiflerin bir listesini oluşturur. Her bir alternatifin üzerine tıklamak, canlı bir önizlemeyi ve temel kodu anında güncelleyerek farklılıkları görselleştirmeyi kolaylaştırır. Kullanıcı ayrıca, belirli UI alanlarının görünümünü değiştirmek için hedeflenmiş isteklerde bulunabilir ve istenen kapsam dışında hiçbir kodun değişmeyeceği garantisi vardır. Bu tür bir isteğe yanıt olarak, SQUIRE, kullanıcının anlamca ilişkili değişiklikleri hızlı bir şekilde uygulamasına olanak tanıyan geçici kontroller üretir ve yeniden istemde bulunmayı gerektirmez. Tüm durumlarda, LLM bir arkadaş gibi davranarak, kullanıcının değerlendirmesi için makul seçimler sunar, ancak önerilerini kabul etme veya reddetme yetkisini kullanıcıya bırakır.

Başka bir deyişle, doğal dil istemleri hala geliştiricilerin SQUIRE ile etkileşimde bulunduğu yoldu, ancak her istem, UI'nin belirli bir parçasıyla bağlantılıydı ve tüm arayüzü bir anda etkilemiyordu.

SQUIRE'ı arayüz prototipleri geliştirmek için kullanan 11 ön uç geliştirici ile yapılan gözlemlere dayanarak, araştırmacılar katılımcıların farklı UI tasarımlarını güçlü bir kontrol hissi ile keşfedip yineleyebildiklerini, ayrıca sistemi kullanılabilirlik ve genel memnuniyet açısından yüksek bir puanla değerlendirdiklerini buldular.

Ayrıca, bu ek kontrol hissinin geliştiricilerin, değişikliklerin yapılmasının, tahmin edilmesinin ve geri alınmasının kolay olduğu yolları keşfetmelerinde daha rahat hissettirdiğini belirtiyorlar.

Tekrar çalışmadan:

11 ön uç geliştiriciden toplanan veriler aracılığıyla, (1) SQUIRE'ın etkileşimlerinin katılımcıları sık sık keşfetmeye teşvik ettiğini, sadece SQUIRE'ı bir kod hızlandırıcı olarak kullanmadıklarını, (2) katılımcıların değişiklik yaparken risk almaya teşvik edildiklerini, alışılmadık kararlar almanın sonuçlarının her zaman sürtünmesiz bir şekilde geri alınabileceğini bildiklerini, (3) katılımcıların değişiklik yaparken SQUIRE'ın niyetlerini karşıladığına dair güven duyduklarını ve (4) katılımcıların sistem tarafından üretilen kod ve görsellerin kalitesinden genel olarak memnun olduklarını belirtiyoruz.

SQUIRE'ın İç Yapısı

Kullanıcı istemlerinden doğrudan arayüz kodu üretmek yerine, SQUIRE önce arayüzün kendi ara temsilini oluşturur, buna SquireIR denir ve UI'yi adlandırılmış boşluklarla bileşenlerin bir ağacı olarak modelleyerek zamanla doldurulabilir, aşağıdaki örnekte olduğu gibi:

Bu yapı ayrıca henüz tanımlanmamış parçalar için yer tutucular (örneğin, bir buton etiketi, bir resim veya bir içerik bölümü) ve birden fazla olası UI alternatifi içerebilir. Örneğin, aynı içeriği bir liste veya bir ızgara olarak temsil edebilir.

Bundan sonra, SQUIRE bu temsili HTML, CSS ve JavaScript kullanarak koda çevirir ve son UI yapısını Web Bileşenleri yönetir.

SQUIRE'ın bir diğer önemli yönü, değişiklikleri nasıl yönettiğidir.

Bir geliştirici bir butonu ayarlamak veya bir düzeni değiştirmek istediğinde, yalnızca o kısım güncellenir, diğer her şey olduğu gibi kalır.

Araştırmacılara göre, bu, birçok AI kodlama aracında görülen deneme-yanılma döngülerini önlemeye yardımcı olur; çünkü LLM'lerin genel öngörülemezliği nedeniyle model, geliştiricinin niyet ettiğinden daha fazla değişiklik yapabilir.

Bu yapı, SQUIRE'ın her adımda birden fazla seçenek önermesini de sağlar, böylece geliştiriciler önceki çalışmalarını kaybetmeden farklı versiyonları hızlı bir şekilde karşılaştırabilirler.

Birçok teknik makalenin aksine, bu çalışma model eğitimi, mimarisi veya verileri hakkında ayrıntılı bilgi vermiyor. Araştırmacılar, SQUIRE'ın OpenAI'nin GPT-4o ile çalıştığını belirtse de, makalenin odak noktası sistem tasarımı ve etkileşim modelidir.

SQUIRE genel olarak mevcut değildir ve kullanımı çalışmaya katılan 11 geliştirici ile sınırlıdır. Ancak, bunun gelecekteki Xcode sürümlerinde veya diğer Apple yapımı geliştirme araçlarında nasıl uygulanabileceğini hayal etmek zor değil.

SQUIRE hakkında daha fazla bilgi edinmek için bu bağlantıyı takip edebilirsiniz.

Amazon'da Kontrol Edilmeye Değer Ürünler

  • David Pogue – ’Apple: İlk 50 Yıl’
  • MacBook Neo
  • Logitech MX Master 4
  • AirPods Pro 3
  • AirTag (2. Nesil) – 4 Paket
  • Apple Watch Series 11
  • Kablosuz CarPlay adaptörü