Prompt Sapper: Yapay Zeka Zincirleri Oluşturan LLM Destekli Üretim Aracı

Cahit Barkin Ozer
6 min readDec 19, 2023

--

“Prompt Sapper: A LLM-Empowered Production Tool for Building AI Chains” makalesinin özeti.

[https://www.aichain.online/public/content%20pages/sappervsothers.html]

For English:

Özet

GPT-4 ve DALL-E gibi temel modellerin ortaya çıkışı, çeşitli alanlarda çok sayıda olasılığın önünü açmıştır. İnsanlar artık görevleri gerçekleştirmek amacıyla yapay zeka ile iletişim kurmak için doğal dili (yani istemleri) kullanabilirler. İnsanlar temel modelleri, sohbet botları (örneğin ChatGPT) aracılığıyla kullanabilirken, temel modellerin yetenekleri ne olursa olsun sohbet, yeniden kullanılabilir yapay zeka hizmetleri oluşturmaya yönelik bir üretim aracı değildir. LangChain gibi API’ler LLM tabanlı uygulama geliştirmeye izin verir ancak önemli programlama bilgisi gerektirirler ve bu nedenle bir engel barındırırlar. Bunu hafifletmek için yapay zeka zinciri kavramını öneriyoruz ve yapay zeka zincir mühendisliği metodolojisini sistematik hale getirmek için onlarca yıldır yazılım mühendisliğinde biriken en iyi ilke ve uygulamaları yapay zeka zincir mühendisliğine dahil ediyoruz.

Ayrıca yapay zeka zincirleri oluşturma sürecinde bu yapay zeka zincir mühendisliği ilkelerini ve modellerini doğal olarak bünyesinde barındıran ve böylece yapay zeka zincirlerinin performansını ve kalitesini artıran, kodsuz bir entegre geliştirme ortamı olan Prompt Sapper’ı da geliştiriyoruz. Prompt Sapper ile yapay zeka zincir mühendisleri, sohbet tabanlı gereksinim analizi ve görsel programlama yoluyla temel modellerin üzerinde istem tabanlı yapay zeka hizmetleri oluşturabilir. Kullanıcı çalışmamız Prompt Sapper’ın verimliliğini ve doğruluğunu da değerlendirmiş ve göstermiştir.

Geniş Özet

  • Metin, büyük dil modellerinin (LLM’ler) ortaya çıkışını ve bunların yapay zeka hizmetlerinin geliştirilmesindeki potansiyelini tartışıyor.
  • Mevcut chatbot tabanlı arayüzlerin sınırlamalarını vurguluyor ve bu sorunları çözmek için yapay zeka zincirleri konseptini öneriyor. Yazarlar, Yapay Zeka zincir mühendisliği ilkelerini ve modellerini içeren Prompt Sapper adlı kodsuz entegre bir geliştirme ortamı sunuyor.
  • Prompt Sapper’ın verimliliğini ve doğruluğunu değerlendirmek için bir kullanıcı çalışması yürüttülmüş. Makale, yapay zeka zincir mühendisliği metodolojisini sistematikleştirmeyi ve yapay zeka zincirlerinin performansını ve kalitesini iyileştirmeyi amaçlıyor.
  • Metin, büyük dil modelleri (LLM’ler) kullanarak AI zincir hizmetlerinin programlanması sürecini basitleştirmeyi amaçlayan Prompt Sapper adlı blok tabanlı bir görsel programlama aracının geliştirilmesini tartışıyor. Araç, kullanıcıların çeşitli API çağrılarını öğrenme ve çevrimiçi kaynakları arama ihtiyacını ortadan kaldırarak teknik bilgisi olmayan kullanıcılar için daha erişilebilir hale gelir.
  • Makale, LLM’lerin yeteneklerinden yararlanmada istem (prompt) mühendisliğin önemini vurguluyor ve istem performansını artırmak için farklı stratejiler öneriyor. Makale, görev ayrıştırma ve istemleri zincirleme konusundaki mevcut girişimlerden bahsediyor, ancak bunların sınırlamalarına ve esnek olmayışına dikkat çekiyor.
  • Araştırmanın amacı yapay zeka zinciri metodolojisini sistematik hale getirmek ve metodoloji ile LLM yardımcı pilotları birleştiren kullanıcı dostu bir IDE geliştirmektir. Araç, farklı çalışanlar ve modeller arasındaki işbirliğini destekler ve kullanıcıların, oluşturdukları yapay zeka hizmetlerini eklenti olarak indirip dağıtmalarına olanak tanır.
  • Makale, kaynak (foundation) modellerinin demokratikleşmesine katkıda bulunmakta ve ilgili çalışmalara ve en iyi uygulamalara kapsamlı bir genel bakış sunmaktadır. Metin, üretim süreçlerinin otomatikleştirilmesi, yapay zeka hizmetlerinin prototiplenmesi ve yapay zeka zincirlerinin geliştirilmesiyle ilgili mevcut çeşitli çalışmaları ve araçları tartışıyor.
  • Bu mevcut araçların sınırlarını vurguluyor ve temel modellere dayalı yapay zeka hizmetlerinin geliştirilmesini destekleyen kapsamlı bir yapay zeka zinciri metodolojisi ve IDE öneriyor. Metodoloji, yapay zeka zincirlerinin sistem tasarımı, uygulanması ve test edilmesi gibi faaliyetleri içerir.
  • Çalışanlara görevleri tamamlama konusunda talimat vermek için istemlerin tasarlanmasını içeren istem programlama kavramı tanıtılmaktadır. Metin, görev ihtiyaçlarını model kapasitesi ve yinelemeli tasarım ile hizalamanın ve yapay zeka zincirleri ve istemlerinin iyileştirilmesinin önemini vurguluyor.
  • Çalışanları ve istemleri tasarlarken iş akışı modellerinin, hesaplamalı düşünme ilkelerinin ve yazılım mühendisliği uygulamalarının kullanımından bahsedilmektedir. Metin, yapay zeka zincirlerini kullanarak yapay zeka hizmetlerinin hızla prototiplenmesi ve geliştirilmesi için bir çerçeve sunuyor.
  • Bu metinde büyük dil modelinin yapay zeka zincir mühendisliğini geliştirmedeki yetenekleri tartışılmaktadır. İki hususa odaklanır: gereksinimlerin ortaya çıkarılması ve mekanik sempati.
  • Sapper IDE, gereksinimlerin ortaya çıkarılmasını desteklemek ve görev gereksinimlerini analiz etmek için özel LLM tabanlı yardımcı pilotlarla donatılmıştır. Makalenin yazarları, ortaya çıkan yapay zeka davranışlarını ve yeteneklerini anlamanın yanı sıra istenen çıktıları sağlamak için farklı istemleri test etmenin önemini vurguluyor.
  • Yapay zeka zincir tasarımı ve inşasının yinelemeli doğası, hesaplamalı düşünme ilkeleri ve modüler tasarımın kullanımı vurgulanıyor. Makale, yapay zeka zinciri gereksinimlerini açıklığa kavuşturmak ve iyileştirmek için LLM destekli gereksinim yardımcı pilotlarından yararlanmayı öneriyor.
  • İnsanlar ve temel modeller arasındaki problem çözme yaklaşımlarını karşılaştırır ve karmaşık sorunların daha küçük alt görevlere ayrıştırılmasını vurgular. Algoritmik düşünme ve kontrol yapılarına olan ihtiyaç da dahil olmak üzere, yapay zeka zincir çalışanları arasındaki iş akışı gözden geçirmesi ve işbirliği tartışılıyor.
  • Metin, fonksiyon imzalarını tanımlamanın ve istemlerde Grice’in dönüşüm ilkelerine bağlı kalmanın öneminden bahsediyor. AI zincir testinden, birim testlerine ve hata ayıklama ihtiyacına da kısaca değinilmektedir.
  • Makale, AI zincirlerinin geliştirilmesini ve test edilmesini destekleyen bir AI zinciri IDE’sini (Entegre Geliştirme Ortamı) açıklamaktadır. IDE, insanları ilk sıraya koymaya odaklanır ve teknik olmayan profesyonellerin yapay zeka zinciri görevlerini tamamlamalarına yardımcı olmayı amaçlar.
  • Kodsuz bir geliştirme yaklaşımını destekleyerek kullanıcıların programlama becerileri olmadan AI zincirlerini keşfetmesine ve tasarlamasına olanak tanır. IDE, sohbet robotlarının kullanımı yoluyla gereksinimlerin ortaya çıkarılmasına ve yapay zeka zincir iskeleti oluşturulmasına yardımcı olan bir Tasarım görünümü içerir.
  • Kullanıcılar oluşturulan istemleri ve adımları değiştirebilir ve IDE, Blok görünümünde yürütme ve hata ayıklama için otomatik olarak blok tabanlı bir yapay zeka zinciri oluşturur. IDE, blok tarzı görsel programlamayı kullanır ve açık kaynaklı Blockly projesini temel alır.
  • Bu metin, yapay zeka zincirleri oluşturmaya yönelik görsel programlama aracının özelliklerini ve işlevlerini açıklamaktadır. Ön çalışanlar (preworkers), konteyner ve kod blokları gibi mevcut farklı blok türlerini ve bunların karmaşık yapay zeka zincirleri oluşturmak için nasıl kullanılabileceğini açıklıyor.
  • Blokları düzenleme ve yönetme, yapay zeka zincirlerini çalıştırma ve hata ayıklama ve yazılım yapıtlarını (artifacts) yönetme işlemlerinden bahsedilmektedir. Makalede İstem Merkezi (PromptHub) ve Motor Yönetimi (Engine Management) işlevlerine odaklanarak Sapper adlı bir AI zinciri IDE’sinin özelliklerini açıklanmaktadır.
  • İstem Merkezi, kullanıcıların istemleri yapılandırılmış bir şekilde oluşturmasına ve düzenlemesine olanak tanırken, Motor Yönetimi özelliği görevleri tamamlamak için farklı motor türlerinin kullanılmasına olanak tanır.
    Metin, derin öğrenme modellerinin geliştirilmesi ve kullanılmasının önündeki engellerin azaltılmasında Sapper platformunun potansiyel faydalarından bahsediyor.
  • Python gibi yerel programlama araçlarına kıyasla Sapper’ın kullanım kolaylığını ve öğrenme eğrisini değerlendirmek için yürütülen bir kullanıcı çalışması hakkında ayrıntılar sağlar. Metinde iki programlama aracı olan Sapper V2 ve Python’u karşılaştıran bir çalışmanın sonuçları tartışılmaktadır.
  • Çalışma, iki araç arasında doğruluk açısından önemli bir fark olmadığını ancak katılımcıların Python’a kıyasla Sapper V2 kullanarak görevleri tamamlamak için önemli ölçüde daha az zaman harcadığını buldu. Çalışma, Python’un hataya daha yatkın olduğunu ve katılımcıların doğru API çağrılarını bulmakta zorlandıklarını, Sapper V2'nin ise daha basit ve daha entegre bir arayüz sağladığını belirledi.
  • Sapper V2, yaygınlık ve görünürlük dışındaki tüm ölçümlerde Python’dan daha iyi performans gösterdi. Çalışma, Sapper V1 ve Sapper V2'yi karşılaştırdı; doğruluk veya harcanan zaman açısından önemli bir fark bulamadı, ancak Sapper V2'nin mevcut tasarım görünümüyle ilgili bazı sorunlara dikkat çekti.
  • Çalışma, Sapper V2'nin daha kullanışlı bir araç olduğunu ancak kullanıcıların tercihlerine göre Sapper V1 ve Sapper V2 arasında seçim yapma esnekliğine sahip olduğunu öne sürüyor.

Şekiller

Tasarım görünümü. Kullanıcı, daha sonra başka bir yardımcı pilot tarafından 2)'de özetlenen gereksinimlerini 1)’i öğrenmek için önce yardımcı pilotumuza danışır. Kullanıcı, görev tanımını yeterince spesifik hale getirdikten sonra iskeleti oluşturmak için A’ya tıklar. 3)'te kontrolü ekleyerek/silerek iskeleti değiştirebilirler ve 4)'te girişi, istemleri ve modelleri değiştirmek için B’ye tıklayabilirler. Kullanıcı değişikliği tamamladıktan sonra Blok Görünümünde (bir sonraki görsel) blok kodunu oluşturmak için C’ye tıklanabilir.
Block View and Artifact Management (Blok Görünümü ve Yapıt Yönetimi)
Yerel Python, Sapper V1 ve Sapper V2 için kullanılabilirlik puanları.
Her görev için harcanan ayrıntılı süre. Birim saniye.

Sonuç

Bu makale, AI zincir mühendisliği için, AI zincir işlevlerinin modülerliğini, şekillendirilebilirliğini, hata ayıklanabilirliğini ve yeniden kullanılabilirliğini geliştirmek için 3 temel kavramı ve 4 aktiviteyi kapsayan sistematik bir metodoloji sunmaktadır. Bu metodolojiyi birleştirerek, teknik bilgisi olmayan kullanıcılar da dahil olmak üzere yapay zeka zinciri mühendislerine, sohbet tabanlı gereksinim analizi ve görsel programlama aracılığıyla temel modelleri kullanarak istem tabanlı yapay zeka hizmetleri oluşturma olanağı sağlayan blok tarzı bir görsel programlama aracı olan Prompt Sapper’ı tanıtıyoruz. Sapper, gereksinimleri ortaya çıkarmaya, kod iskeleti oluşturmaya ve AI hizmetini çalıştırmaya/test etmeye yardımcı olmak için LLM yardımcı pilotlarıyla birlikte Tasarım Görünümü ve Blok Görünümü olmak üzere iki görünüm sayfası içerir. 16 katılımcının yer aldığı bir kullanıcı çalışmasında, Prompt Sapper’ın düşük giriş engelini ve pratikliğini ortaya koyuyoruz ve geleneksel IDE’lere kıyasla önemli ölçüde zaman kazandıran yeteneklerini sergiliyoruz. Araç, çeşitli API çağrılarını öğrenme ihtiyacını ortadan kaldırır ve kaynak aramaya harcanan zamanı en aza indirir.

Kaynak

[1] Yu Cheng, Jieshan Chen, Qing Huang, Zhenchang Xing, Xiwei Xu, Qinghua Lu, (21 Jun 2023), Prompt Sapper: A LLM-Empowered Production Tool for Building AI Chains, https://doi.org/10.48550/arXiv.2306.12028

[https://arxiv.org/abs/2306.12028v1]

--

--

Cahit Barkin Ozer
Cahit Barkin Ozer

Written by Cahit Barkin Ozer

Üretken YZ başta olmak üzere teknoloji alanındaki yenilikleri öğrenip sizlerle paylaşıyorum. Youtube Kanalım: https://www.youtube.com/@cbarkinozer

No responses yet