Ana içeriğe geç

Buffer of Thoughts (BoT) Nedir ve Nasıl Çalışır?

Buffer of Thoughts (BoT), problem çözme stratejilerinden oluşan bir meta-arabellek ve bu stratejileri dinamik olarak seçip uyarlayan bir arabellek yöneticisi içeren, LLM’leri geliştiren düşünceyle zenginleştirilmiş bir akıl yürütme çerçevesidir; böylece karmaşık görevlerde performans artışı sağlar.
Dr Ana Rojo-Echeburúa
Dr Ana Rojo-Echeburúa

Ücretsiz Hesabınızı Oluşturun

Alıştırma and program your progress.

Google ile devam edinDevam ederek, Kullanım Koşullarımızı ve Gizlilik Politikamızı kabul etmiş ve verilerinizin ABD'de saklandığını onaylamış olursunuz.

Son derece karmaşık problemleri çözmede inanılmaz derecede iyi olan parlak bir arkadaşınız olduğunu hayal edin. Ancak bu arkadaşa her yeni soru sorduğunuzda süreç sıfırdan başlamak zorunda kalıyor ve önceki problemlerden öğrenilen her şey tamamen unutuluyor.

Bu oldukça can sıkıcı olurdu, değil mi? Tam da bu, büyük dil modelleri (LLM’ler) ile karmaşık akıl yürütme görevlerinde karşılaştığımız zorluktur. LLM’ler metin üretmede çok iyidir, ancak geçmiş etkileşimlerden bilgiyi koruyamadıkları için karmaşık akıl yürütme görevlerinde sıklıkla zorlanırlar.

Peki ya bu LLM’lere değerli içgörüleri depolayıp yeniden kullanabilecekleri bir “zihinsel not defteri” verseydiniz? İşte bu, Buffer of Thoughts (BoT) çerçevesinin özüdür.

Bu eğitimde, LLM’lerin karmaşık problemleri çözme biçimini değiştiren yeni bir çerçeve olan Buffer of Thoughts (BoT)’u keşfedeceğiz. BoT’un temel fikirlerini, meta-arabellek ve arabellek yöneticisi dahil olmak üzere açıklayarak başlayacağım. Ardından, BoT’un adım adım nasıl çalıştığına bakacağız: problemi anlamaktan doğru düşünce şablonlarını bulup kullanmaya kadar—BoT’un LLM’leri nasıl daha doğru, verimli ve güvenilir hale getirdiğini göreceksiniz.

Ayrıca, bu makaleden bazı etkileyici deney sonuçlarını da paylaşacağım; bu sonuçlar, BoT’un farklı görevlerde ne kadar iyi performans gösterdiğini ortaya koyuyor. Eğitimin sonunda, BoT’un neden şu anda bu kadar önemli olduğunu ve gerçek dünyadaki uygulamalarda nasıl kullanılabileceğini anlayacaksınız. 

Buffer of Thoughts (BoT) Nedir?

Buffer of Thoughts (BoT), LLM’lerin akıl yürütme yeteneklerini geliştirmek için tasarlanmış yeni bir çerçevedir.

BoT, LLM’leri karmaşık akıl yürütme görevlerinde yönlendirmek için iki ana öğeyi birleştirir:

  1. Bir meta-arabellek: üst düzey problem çözme stratejilerinin bir koleksiyonu.
  2. Bir arabellek yöneticisi: bu stratejileri düzenleyip güncelleyen akıllı bir sistem.

Hadi bu iki bileşeni biraz daha yakından inceleyelim.

Meta-arabellek

Meta-arabellek, evrensel problem çözme stratejilerinden oluşan bir kütüphane gibidir. “Düşünce şablonları”nı, yani problemlere yönelik üst düzey yaklaşımları depolar. Bu şablonlar, LLM’in karşılaştığı farklı görevlerden gelir.

Bunu, birçok farklı işe uyarlanabilen çok amaçlı araçlarla dolu bir alet çantası olarak düşünün.

Arabellek yöneticisi

 Arabellek yöneticisi, BoT sisteminin dinamik düzenleyicisidir. Rolü; daha fazla görev çözüldükçe meta-arabelleği yeni düşünce şablonlarıyla güncellemek, her yeni problem için en ilgili şablonları seçmek ve etkililiklerine göre mevcut şablonları iyileştirmeyi kapsar.

Sürekli notlarınızı düzenleyen, en faydalı bilgilerin altını çizen ve bunları yeni zorluklara uygulamanıza yardımcı olan kişisel bir asistanınızın olduğunu düşünün.

Düşünceyle zenginleştirilmiş akıl yürütme

Asıl sihir, düşünceyle zenginleştirilmiş akıl yürütme sayesinde gerçekleşir. Yeni bir problemle karşılaşıldığında, BoT çerçevesi şunları yapar:

1. Problemi analiz ederek temel öğelerini anlar.

2. Meta-arabellekten ilgili düşünce şablonlarını çağırır.

3. Bu şablonları uyarlayarak probleme özgü bir akıl yürütme yapısı oluşturur.

4. LLM’i bu yapı üzerinden problem çözme sürecinde yönlendirir.

Kendinizi bir şef olarak hayal edin. Meta-arabellek, kişisel yemek kitabınız olurdu. Bu kitap yalnızca belirli tarifler değil, aynı zamanda çeşitli pişirme tekniklerini de içerir. Örneğin; sebzeleri doğru şekilde sote etme, kusursuz bir redüksiyon sosu hazırlama ya da tatları dengeleme bölümleri vardır. Bu üst düzey stratejiler birçok farklı yemeğe uygulanabilir. 

Şimdi, son derece düzenli ve bilgili bir sous-chef’iniz olduğunu düşünün. Bu sous-chef, arabellek yöneticinizdir. Şu anda hazırladığınız yemek için yemek kitabınızdaki (meta-arabellek) hangi tekniklerin en uygun olduğuna karar vererek size yardımcı olur. Siz yemek pişirirken, neyin iyi çalıştığına ve neyin işe yaramadığına dair notlar alır; tekniklerinizi ve stratejilerinizi buna göre günceller.

Yeni bir sipariş geldiğinde sıfırdan başlamazsınız. Bunun yerine, en iyi teknikler için yemek kitabınıza (meta-arabellek) bakar ve süreci verimli şekilde yürütmek için sous-chef’inize (arabellek yöneticisi) güvenirsiniz. Sous-chef, geçmişte benzer yemeklerde neyin en iyi çalıştığını hatırlar ve yaklaşımınızı buna göre ayarlamanıza yardımcı olur; böylece yemek hızlı ve en yüksek standartta hazırlanır.

Şef benzetmesiyle Buffer of Thoughts (BoT) çerçevesini açıklayan infografik

Mutfakta süreç şu şekilde işlerdi:

  1. Siparişi analiz etme: Siz (şef) yeni siparişi analiz ederek temel unsurları anlarsınız—yemeğin türü, gerekli malzemeler ve müşteriden gelen özel istekler nelerdir.
  2. İlgili teknikleri çağırma: Sous-chef’iniz (arabellek yöneticisi), yemek kitabınızdan (meta-arabellek) ilgili pişirme tekniklerini (düşünce şablonları) getirir. Örneğin, ana malzemeyi pişirmek için belirli bir yöntem ve ona eşlik eden bir sos hazırlamak için başka bir yöntem önerebilir.
  3. Teknikleri uyarlama: Birlikte, bu teknikleri yeni yemek için özgül bir plan haline getirirsiniz. Bu, örneğin, sos tarifini ana malzemeye uygun olacak şekilde ayarlamayı veya porsiyon büyüklüklerine göre pişirme sürelerini değiştirmeyi içerebilir.
  4. Pişirme sürecini yönlendirme: Bu özelleştirilmiş planı kullanarak, siz ve sous-chef’inizin oluşturduğu yapılandırılmış yaklaşımla yemeği hazırlarsınız.

Buffer of Thoughts (BoT) Nasıl Çalışır

Artık BoT’un ne olduğunu ve temel bileşenlerini anladığımıza göre, perde arkasında nasıl çalıştığına bakabiliriz. Bunu dört unsur halinde ele alacağız:

  1. Problem damıtıcı
  2. Meta-arabellek ve düşünce çağırma
  3. Özelleştirilmiş akıl yürütme
  4. Arabellek yöneticisi

Problem damıtıcı

Problem damıtıcı, karmaşık problemleri BoT’un kolayca anlayıp üzerinde çalışabileceği bir dile çeviren yetenekli bir tercüman gibi işlev görür.

Bunu, girdi problemin kritik bilgilerini ve kısıtlarını çıkaran, adeta ders kitabı bölümünün en önemli kısımlarını fosforlayan titiz bir okuyucu olarak düşünün.

Problem damıtıcı bu temel öğeleri belirledikten sonra, onları üst düzey kavramlar ve yapılara dönüştürür. Bu süreç, uzun bir makalenin ana fikirlere odaklanan, gereksiz ayrıntıları dışarıda bırakan özlü bir özetini çıkarmaya benzetilebilir.

Örneğin, size tren tarifeleriyle ilgili karmaşık bir problem verildiğini düşünün. Problem damıtıcı, “tren hızları”, “kalkış saatleri” ve “istasyonlar arası mesafeler” gibi temel unsurları özenle çıkarır. Ardından, bu öğeleri BoT’un kolayca işleyip anlayabileceği yapılandırılmış bir formata dönüştürür.

Meta-arabellek ve düşünce çağırma

Meta-arabellek, düşünce şablonlarını kolay erişim için depolayıp düzenleyen BoT’un bilgi bankasıdır. Düşünce şablonlarını ve açıklamalarını içerir; verimli çağırma için bunları kategorize eder.

Bu, her kitabın (düşünce şablonu) ayrıntılı bir açıklaması olan ve doğru bölüme yerleştirildiği iyi düzenlenmiş bir kütüphane gibidir.

BoT bir düşünce şablonu çağırması gerektiğinde, damıtılmış problemi şablon açıklamalarıyla karşılaştırarak en ilgili olanı bulur. Bu süreç, ihtiyacınızı tarifinize göre mükemmel kitabı hızla bulan bir kütüphaneciye benzer.

BoT, tamamen yeni bir görevi tanımlayıp yeni bir düşünce şablonuna ihtiyaç duyulduğunu da fark edebilir. Bu, kişisel kütüphanenizde benzersiz bir kitap türü için yeni bir kategori oluşturmanız gerektiğini anlamaya benzer.

Tren örneğimize dönersek, BoT meta-arabelleğinde her biri ayrıntılı açıklamaya sahip çeşitli düşünce şablonları bulundurur. Örneğin, bazı şablonlar zaman yönetimiyle, bazıları mekânsal akıl yürütmeyle, bazıları da optimizasyon stratejileriyle ilgili olabilir.

BoT tren tarifesi problemiyle karşılaştığında, “tren hızları”, “kalkış saatleri” ve “istasyonlar arası mesafeler” gibi damıtılmış öğeleri, meta-arabellekteki açıklamalarla karşılaştırarak en ilgili düşünce şablonunu çağırır. Örneğin, bu problemi etkili biçimde ele almak için zamanlama ve zaman optimizasyonunda uzmanlaşmış bir düşünce şablonunu seçebilir.

Diyelim ki BoT, tren tarifesi probleminin daha önce karşılaşmadığı alışılmadık bir kısıt türü veya yeni bir optimizasyon hedefi gibi benzersiz bir unsur içerdiğini fark etti. Bu durumda, görevin tamamen yeni olduğunu ve yeni bir düşünce şablonu gerektirdiğini belirleyebilir.

Problem, birden fazla ulaşım modu (tren, otobüs, uçuşlar) arasında tarifelerin eşgüdümünü içeriyorsa, BoT gelecekte benzer sorunlara daha iyi hazırlanmak için çok modlu zamanlamaya yönelik yeni bir düşünce şablonu oluşturup depolayabilir.

Bu şekilde meta-arabellek, BoT’un problem çözme stratejilerini verimli biçimde depolamasını, çağırmasını ve yenilerini oluşturmasını sağlar; böylece karmaşık görevleri ele alma becerisi güçlenir.

Özelleştirilmiş akıl yürütme

BoT’un seçilen düşünce şablonlarını eldeki özgül problemi çözmek için uyguladığı yer burasıdır.

Mevcut şablonlar için, çağrılan düşünce şablonu güncel probleme uyacak şekilde uyarlanır. Bu, bir tarifi kullanırken daha kalabalık bir grup için malzemeleri ve miktarları ayarlamaya benzer. BoT, düşünce şablonunu problemin özelliklerine göre ince ayar yapar; böylece özelleştirilmiş ve etkili bir çözüm sağlar.

Mevcut şablonların olmadığı yeni bir görevle karşılaşıldığında BoT, önceden tanımlanmış genel amaçlı şablonlara başvurur. Bu, daha önce hiç yapmadığınız bir yemeği temel pişirme teknikleriyle hazırlamaya benzer. Temel ilkelerden yararlanmak, BoT’un alışılmadık problemleri yönetmesine ve gerektiğinde yeni stratejiler geliştirmesine olanak tanır.

Tren tarifesi problemimiz için, BoT zaman optimizasyonu ve zamanlamaya odaklanan bir düşünce şablonu çağırırdı. Bu şablon, güncel probleme uyacak şekilde uyarlanır. Örneğin, özgün şablon tek bir trenin tarifesini optimize etme yöntemi içeriyorsa, BoT bunu birden çok treni, değişken hızları ve farklı kalkış saatlerini yönetebilecek biçimde değiştirir. Bu özelleştirilmiş yaklaşım, mevcut problemin benzersiz kısıtlarını dikkate alarak tüm trenlerin verimli ve zamanında çalışmasını sağlar.

Şimdi de BoT’un, tren tarifelerini otobüs ve uçuş tarifeleriyle entegre ederek kesintisiz bir çok modlu ulaşım sistemi kurmak gibi yeni bir boyutla karşılaştığını varsayalım. Bu özgül senaryo için mevcut bir düşünce şablonu olmadığından BoT, önceden tanımlanmış genel amaçlı şablonları kullanır. Sorunu parçalara ayırmak, her ulaşım modunu ayrı ayrı analiz etmek ve ardından çözümleri entegre etmek gibi planlama ve optimizasyonun temel ilkelerini uygulayabilir. Bu süreçle BoT, gelecekte benzer çok modlu zamanlama problemlerini ele alma yeteneğini artıran yeni stratejiler ve şablonlar geliştirebilir.

Arabellek yöneticisi

Arabellek yöneticisi, BoT’un bilgi tabanını sürekli geliştiren öğrenme ve optimizasyon bileşenidir.

Şablon damıtma sürecinde, arabellek yöneticisi problem çözme sürecini üst düzey düşüncelere özetler. Bu, bir projeyi tamamladıktan sonra “öğrenilen dersler” belgesi yazmaya benzer; neyin neden etkili olduğunun özünü yakalar.

Dinamik güncellemelerde, arabellek yöneticisi meta-arabelleği yeni düşünce şablonlarıyla günceller. Yeni şablon ekleyip eklememeye ya da mevcutları güncellemeye benzerlik eşikleriyle karar verir; böylece meta-arabellek hafif ve verimli kalır. Bu, bir şefin tarif kitabını sürekli iyileştirip yeni teknikler eklerken kitabı öz ve kullanışlı tutmasına benzer.

Diyelim ki BoT, birden çok tren, değişken hızlar ve farklı kalkış saatlerini içeren karmaşık bir tren tarifesi problemini çözdü. Bu görevin ardından arabellek yöneticisi, problem çözme sürecini üst düzey düşüncelere özetleyerek, örtüşen tarifeleri optimize etmeye veya yoğun seyahat saatlerini yönetmeye yönelik belirli teknikler gibi işe yarayan başlıca stratejileri kayda geçirir.

Şimdi, BoT’un gelecekte benzer ama biraz farklı bir tren zamanlama problemiyle karşılaştığını varsayalım. Arabellek yöneticisi, bu deneyime dayanarak meta-arabelleği yeni düşünce şablonlarıyla günceller. Örneğin, yeni problem tren tarifelerinin otobüs tarifeleriyle entegre edilmesini içeriyorsa, arabellek yöneticisi mevcut tren zamanlama şablonunu çok modlu entegrasyon tekniklerini içerecek şekilde geliştirebilir.

Buffer of Thoughts’un akışı ve işlenmesi; temel bileşenleri ve etkileşimlerini vurgulayan görsel.

Buffer of Thoughts (BoT) Faydaları

Buffer of Thoughts (BoT) çerçevesi, LLM akıl yürütmesini geliştirmede doğruluk artışı, akıl yürütme verimliliği ve model sağlamlığı gibi bir dizi önemli avantaj sunar. 

Doğruluk artışı

BoT, şu yaklaşımıyla LLM’lerin akıl yürütme doğruluğunu önemli ölçüde artırır:

  • Paylaşılan düşünce şablonları
    • LLM’ler her görev için güçlü bir başlangıç noktasına sahip olur.
    • Bu, kanıtlanmış problem çözme stratejileri kütüphanesinin kullanılmasıyla sağlanır.
  • Uyarlanabilir örnekleme
    • BoT düşünce şablonlarını katı bir şekilde uygulamaz.
    • Onları eldeki özgül probleme uyarlar.
  • Tutarlı yaklaşım
    • BoT, rastgele hataların olasılığını azaltır.
    • Bu, benzer problemler için benzer stratejilerin kullanılmasına dayanır.

Akıl yürütme verimliliği

BoT, LLM akıl yürütmesinin verimliliğini dramatik biçimde artırarak zaman ve hesaplama kaynaklarından tasarruf sağlar:

  • Tarihsel yapıların kullanımı: BoT, her seferinde sıfırdan başlamak yerine kanıtlanmış akıl yürütme kalıplarını yeniden kullanır ve uyarlar.
  • Yalın süreç: BoT, diğer LLM akıl yürütme yöntemlerinde yaygın olan karmaşık çoklu sorgu süreçlerine duyulan ihtiyacı ortadan kaldırır.
  • Azaltılmış hesaplama yükü: Düşünce şablonlarını yeniden kullanarak BoT, her görev için belirgin ölçüde daha az işlem gücü gerektirir.

Model sağlamlığı

BoT, LLM’lerin sağlamlığını artırır; onları çeşitli görevlerde daha güvenilir ve tutarlı hale getirir:

  • Tutarlı problem çözme yaklaşımı: BoT, yapılandırılmış ve insana benzer bir düşünce süreci kullanarak benzer problemlerin benzer biçimde ele alınmasını sağlar.
  • Yeni senaryolara uyum: Çerçevenin yeni görevleri tanıma ve genel şablonları uygulama yeteneği, onu alışılmadık durumlarda da sağlam kılar.
  • Girdideki değişimlere karşı daha az hassasiyet: BoT, problem ifadesindeki küçük değişikliklerden daha az etkilenir; çünkü yüksek düzey düşünce yapısına odaklanır.

Deneysel Sonuçlar

Buffer of Thoughts (BoT) çerçevesi, geniş bir görev yelpazesinde test edilerek etkileyici sonuçlar vermiştir. Daha ayrıntılı bilgi için, bu bölümde ele alınan sonuçların daha kapsamlı sunulduğu makaleye ve GitHub deposuna bakabilirsiniz.

BoT, çok çeşitli zorlu ve akıl yürütme yoğunluklu 10 görev üzerinde değerlendirilerek esneklik ve etkililik gösterdi. Bu görevler şunları içeriyordu:

  • Game of 24
  • Geometric Shapes
  • Checkmate-in-One
  • Word Sorting

Bu görevler, matematiksel problem çözmeden stratejik oyunlara ve dil işleme görevlerine kadar çeşitli karmaşık akıl yürütme senaryolarını temsil etmek üzere seçildi.

BoT, önceki güncel yöntemlere kıyasla kayda değer performans artışları sergiledi:

  • %11 iyileşme: Game of 24
  • %20 iyileşme: Geometric Shapes
  • %51 iyileşme: Checkmate-in-One

Özellikle etkileyici olan, BoT’un bu sonuçlara çoklu sorgulu işaretleme yöntemlerinin hesaplama maliyetinin yalnızca yaklaşık %12’siyle ulaşmış olmasıdır!

Ayrıca, Llama3-8B gibi daha küçük dil modelleriyle BoT uygulanmasının, Llama3-70 gibi daha büyük modellerin performansını aşma potansiyeline sahip olduğu bulundu. Bu bulgu, BoT’un daha kompakt ve verimli dil modellerinin yeteneklerini önemli ölçüde geliştirebileceğini gösteriyor.

Bu sonuçlar, BoT’un farklı akıl yürütme görevlerinde verimli ve sağlam kalırken doğruluğu artırabildiğini gösteriyor. Tutarlı sonuçlar, BoT’un güvenilir performans artışlarını vurguluyor. Ancak, BoT’un yeteneklerini ve sınırlamalarını tam olarak anlamak için daha fazla bağımsız doğrulama ve daha çeşitli görevlerde test gereklidir.

Sonuç

Bugün pek çok konuya değindik; o halde bazı temel çıkarımlarla ve BoT’un nereye evrildiğine dair düşüncelerle toparlayalım.

Buffer of Thoughts özelliklerini özetleyen infografik

Buffer of Thoughts’a dair keşfimiz bu kadar. Umarım bu eğitim, temel kavramlarını, nasıl çalıştığını, faydalarını ve yapay zekâ akıl yürütmesi üzerindeki potansiyel etkisini net biçimde anlamanıza yardımcı olmuştur.

Okuduğunuz için teşekkürler, bir sonraki sefer görüşmek üzere!

Prompt engineering hakkında daha fazla bilgi edinmek isterseniz şu blogları öneririm:

FAQs

BoT mevcut LLM mimarilerine entegre edilebilir mi, yoksa tamamen yeni bir model mi gerektirir?

BoT, mevcut LLM mimarilerine entegre edilebilecek bir eklenti çerçevesi olarak tasarlanmıştır. Tam bir model revizyonu gerektirmeden akıl yürütme yeteneklerini iyileştirmelidir.

BoT’u kullanırken farkında olunması gereken sınırlamalar veya olası sakıncalar var mı?

Potansiyel sınırlamalar arasında, yeni problemler için mevcut düşünce şablonlarına aşırı güven, meta-arabelleğin yönetiminde hesaplama yükü ve arabelleği gelişen bilgiyle güncel tutma zorlukları sayılabilir.

BoT, son derece büyük dil modelleri veya veri kümeleri için ne kadar ölçeklenebilirdir?

BoT verimli olacak şekilde tasarlanmıştır; ancak çok büyük modeller için ölçeklenebilirlik uygulama ayrıntılarına bağlıdır. Meta-arabelleğin boyutu ve güncelleme sıklığı, uç ölçekler için optimize edilmeyi gerektirebilir.

BoT, meta-arabelleğindeki çelişen veya birbiriyle çakışan bilgileri nasıl ele alır?

BoT, farklı düşünce şablonlarının güvenilirliğini ve uygunluğunu tartan çatışma çözüm stratejileri kullanır. Arabellek yöneticisi, çatışmaları çözmede ve şablonları buna göre güncellemede önemli bir rol oynar.

BoT’u etkili bir şekilde uygulamak için ne tür hesaplama kaynakları gerekir?

BoT, verimliliği artırmayı hedefler; bu nedenle standart LLM’lere kıyasla önemli ölçüde daha fazla kaynak gerektirmemelidir. Ancak kesin gereksinimler, uygulamanın ölçeğine ve görevlerin karmaşıklığına bağlı olacaktır.

Dr Ana Rojo-Echeburúa

Yazar

Dr Ana Rojo-Echeburúa

Ana Rojo Echeburúa, Uygulamalı Matematik alanında doktora derecesine sahip bir yapay zeka ve veri uzmanıdır. Verileri eyleme dönüştürülebilir içgörülere çevirmeyi sever ve teknik ekipleri yönetme konusunda geniş deneyime sahiptir. Ana, müşterilerle yakın çalışarak onların iş sorunlarını çözmekten ve yenilikçi yapay zeka çözümleri geliştirmekten keyif alır. Sorun çözme becerileri ve açık iletişimiyle tanınan Ana, özellikle üretken yapay zeka olmak üzere yapay zekaya tutkuyla bağlıdır. Sürekli öğrenmeye ve etik yapay zeka geliştirmeye, ayrıca karmaşık sorunları basitleştirmeye ve teknolojiyi anlaşılır biçimde açıklamaya kendini adamıştır.

Konular

İlgili