GOGOGOLLC
Blog'a dön
Long arcMay 18, 20269 min read

2015 AIML'den 2026 çoklu-ajan sistemine: konuşma yapay zekânın 10 yıllık eğrisi.

2015'te Turkcell BiP Messenger için XML kural ağaçları yazıyordum. 2026'da GOGOGO LLC için tipli çoklu-ajan runtime'ları kuruyorum. İkisi arasındaki yol düz bir çizgi değil — her dönemin modeliyle yapılmış zorunlu uzlaşmaların serisi; ve her uzlaşma bir sonraki dönemde de hayatta kalan bir kalıp üretti.

Atakan Özalan

Atakan Özalan

Kurucu ortak & mühendislik lideri, GOGOGO LLC

2015 AIML'den 2026 çoklu-ajan sistemine: konuşma yapay zekânın 10 yıllık eğrisi.

2015'te Turkcell BiP Messenger için AIML yazdım — chatbot kuralları için tasarlanmış bir XML lehçesi. Yüzlerce <category><pattern> bloğu. O dönemde hiçbir transformer sizin için bir cümle yazamazdı. Sanatın geldiği nokta, regex eşleştiricilerinden oluşan bir ağaç ve bir yedek paragraftı. Dünya 'chatbot' kelimesini ciddi anlamda kullanmaya başlamadan iki yıl önce yayına aldım.

2026'da GOGOGO LLC'de çoklu-ajan runtime'ını kuruyorum. Tipli bir orchestrator, uzmanlaşmış ajanlar, runtime olarak araç çağrıları, tekrar oynatabileceğiniz trace'ler, her deploy'u kontrol eden eval harness'leri. Önünüzdeki şey, 2015'teki kendime tanınmaz görünür — gerçekten önemli olan, hâlâ önemli olan kısımlar hariç.

2015 — AIML, ya da: çok iyi zevkli kurallar

AIML'in işi: kullanıcının mesajını okumak, hangi <pattern> ile eşleştiğine karar vermek, bir <template> yanıt yaymaktı. Günlerinizi varyant yazarak geçirirdiniz:

xml
<category>
  <pattern>BAKİYEM NE</pattern>
  <template>Mevcut bakiyeniz <get name="balance"/>.</template>
</category>
<category>
  <pattern>NE KADAR * PARAM *</pattern>
  <template><srai>BAKİYEM NE</srai></template>
</category>

Kostüm giymiş bir state machine'di. Doğru yanıtı üretemezdiniz; sadece kullanıcının niyetinin daha önce yazdığınız bir şeyle eşleşip eşleşmediğini tanıyabilirdiniz. Model anlam çıkaramıyordu — ama sistem bir bütün olarak çoğu zaman akıllı hissettiriyordu, çünkü kuralları yazan insanlar Türkçe konuşan müşterilerin soruları gerçekte nasıl ifade ettiğini çok dikkatli düşünüyordu.

2015'in size öğrettiği şey (2026'da hâlâ ihtiyaç duyduğunuz)

  • Düzyazı üretmeden önce yapılandırılmış bir payload doldurun. AIML, yanıt yazmadan ÖNCE bakiye / telefon / müşteri-id çıkarmaya zorluyordu. Bu kalıp tam olarak 2026'daki tipli function-calling.
  • Yazarlık bir mühendislik işidir. Kural yazdınız; test corpus'u koştunuz; intent-match kapsamını ölçtünüz. <srai> yönlendirmeleri üzerinde A/B testi yaptık. Bugün buna 'eval-driven prompting' deniyor.
  • Yedek davranışlar birinci sınıftır. Her AIML sistemi 'Anlamadım' yolunu ve insana yumuşak bir devri içeriyordu. 2026'nın bu kavram için kelimesi 'human-in-the-loop'.

2017–2020 — intent classifier'lar ve Rasa: denetimli öğrenme dönemi

Sonraki aşama bir sıçrama değil, bir ikameydi. <pattern> eşleştirici küçük bir sinir ağı sınıflandırıcısına dönüştü (önce BiLSTM, sonra DistilBERT). Niyet başına 200 ifade etiketlediniz, modeli niyeti seçmek için eğittiniz, slot doldurma ve yanıt kompozisyonu için kural motorunu koruduyunuz. Rasa, Dialogflow, Watson — aynı mimari, farklı satıcılar.

O zaman devrim niteliğinde hissettiriyordu. Geriye dönüp baktığımda: farklı bir sınıflandırıcıyla aynı AIML mimarisiydi. Model okumayı öğreniyordu; hâlâ yazmıyordu.

2022 — talimat-ayarlı LLM'ler orta katmanı yer

Sonra GPT-3.5 oldu ve ChatGPT herkesin modelin artık yazabildiğini fark etmesini sağladı — sadece sınıflandırmadığını. Intent classifier bir prompt'a indi. Yanıt şablonu bir üretime indi. Chatbot endüstrisinin yarısı Rasa stack'ini çöpe attı ve yerine tek bir sistem prompt'u koydu.

Bunun bir kısmı doğruydu. Çoğu aşırı düzeltmeydi. Tipli, test edilebilir, debug edilebilir orta katmanları opak bir autocomplete ile değiştirdik. GOGOGO orchestrator'unun ilk versiyonu aynı hataydı — bir model, bir uzun prompt, araç çağrıları. Demolarda işliyordu, üretimde çöktü. (Sonraki üç yeniden yazıma dair yazdık.)

2024–2026 — çoklu-ajan: yapıyı geri kazanmak

Çoklu-ajan yeni bir fikir değil. Bir boyut daha eklenmiş AIML çerçevelemesi: kurallar arasında dallanan tek bir model yerine, her biri dar bir işe sahip birkaç modeliniz var, birbirleriyle tipli devirler üzerinden konuşuyorlar. Orchestrator küçük ve kural şeklinde. Uzmanlar üretici. Runtime — araçlar, trace'ler, eval'lar — bütünü bir arada tutan şey.

ts
// 2015 — AIML
<category><pattern>BAKİYEM NE</pattern>
  <template>Bakiyeniz <get name="balance"/>.</template>
</category>

// 2026 — tipli çoklu-ajan devri
type HandOff =
  | { to: "billing.balance"; input: { customerId: string } }
  | { to: "billing.invoice"; input: { invoiceId: string } };

const next = orchestrator.decide(state);
const result = await runtime.run(next);

İki snippet aynı işi yapıyor. On bir yıl arayla yazılmış. AIML kuralı bir fonksiyon adlandırıyor ve bir değişken bağlıyor; tipli devir bir fonksiyon adlandırıyor ve bir değişken bağlıyor. Birinin regex ağacından, diğerinin bir transformer'ın tool-calling head'inden geçmesi — şaşırtıcı biçimde — aralarındaki en az ilginç fark.

10 yıllık eğri gerçekte ne öğretiyor

  1. Sorunun yapısı değişmedi. Niyeti tanı → slotları çıkar → bir araç çağır → yanıt oluştur. AIML 1995'te bunu böyle çerçeveledi. Çoklu-ajan 2026'da bunu böyle çerçeveliyor.
  2. Üretim SON adım olmalı. Modelin önce üretip sonra yapılandırmasına izin verdiğimiz her seferde güvenilirlik çöktü. Model önce yapılandırmalı, sonra yapı karşısında üretmeli.
  3. Araçlar runtime'dır. Bu en derin ders. AIML'de 'araçlar' <set> ve <get> ve bant dışı kancalardı. 2026'da tipli fonksiyon çağrıları. Model dekoratif; araçlar işi yapan.
  4. Replay pazarlık konusu değildir. Üç yıllık model çalkantısından sağ çıkan her sistemin tekrar oynatabileceğiniz bir trace'i vardı. Onsuz olanlar her model değişikliğinde yeniden yazıldı.

AIML yazmakla tipli ajan devirleri yazmak arasında on bir yıl. Framework'ler her iki yılda bir değişiyor. Çerçeveleme değişmiyor. Çerçevelemeye bahis koyun.

2026–2036 için bahsim

Çoklu-ajan, LLM'lerin 2022'de yediği gibi orta katmanı yemeye devam edecek — ama altındaki katman (tipli kontratlar, trace'ler, eval'lar) doğrudan sahip olmanız gereken kısım. Framework'ler gelir ve gider. Bugün yazdığım orchestrator, 2030'da yazacağım orchestrator olmayacak. Ama 'devirler tipli değerlerdir, düzyazı değil' kuralı her ikisini de ardında bırakacak.

Eğer Goddo, GoPeople, GoVista ve GoTrack'in altındaki ajan runtime'ını istiyorsanız ya da bir kahve eşliğinde ajan tasarımı üzerine not değiş tokuş etmek istiyorsanız — atakanozalan.com adresindeyim, ya da o ilk XML kurallarını yazdığım günlerden beri ezagor olarak.

Bunu işin için ister misin?

Önce hangi iş akışını kuracağını anlat. Sana 4 fazlı bir plan ve uygun ajanlarla geri döneriz.