Tools vs. Subagents: Building Effective AI Agents Without Over-Engineering

Ajanlı Sistemler İçin Araçlar ve Alt-Atanalmışlar: Etkili Ajanslarwithout O-İleri-Mühendislik

Bala Priya C tarafından yazılmış bir makale bu. Makalenin konusu, araçlar ve alt-atanaşılanlar arasındaki farklılıklar ve uygun kullanım durumlarıdır.

Ajanlı sistemler, görevleri gerçekleştirmek için kullanılan araçlar ve alt-atanaşılanlar arasında ayrım yapar. Bu ayrım, doğru karar vermenizi sağlamak için önemlidir. Bu makalede, bu farklılıklar ve durumlar açıklanmıştır.

Nasıl bir Araç?
Bir araç, modelin dışında kalan sistemlerle etkileşmek için kullanılan bir kabildir. Genellikle, fonksiyonlar, API çağrıları, veritabanı sorguları, aramalar, dosya operasyonları veya diğer tanımlanmış bir arabirim üzerinden modeli iletişime geçiren yürütülebilecek kod parçalarıdır. Araçlar, kararlar vermek, verileri yorumlamak ve planlamak yerine, önceden tanımlanmış işlemleri gerçekleştirirler.

Tasarım, yürütme ve karar verme, araçların yürütülecek işlemlerinden farklıdır. Bir araç, modelin yürütme zincirine katıldığında, araç sonuçlarını modelin mevcut yürütme bağlamına dönderir ve model karar verme ve planlama yapabilir.

Araçlar, dış dünya ile etkileşmek için kullanılan bir araçtur. Veritabanlarından veri çekebilir, API çağrıları yapabilir, web sayfası aramalar yapabilir, dosyaları okuyabilir veya yazabilir, hesabları güncellebilir veya silbilirsiniz. Araçlar, diğer bir LLM çağrısından daha hızlı, kesin ve daha ucuzlardır.

Nasıl bir Alt-Atanaşivir?
Bir alt-atanalmış, aynı LLM çağrısından farklı olan bir araçtır. Bir alt-atanalmış, bir görevi tamamlamak için bağımsız bir LLM çağrısıdır ve görevi tamamladıktan sonra sonuçları ana ajan ile iletişime geçer. Ana ajanın bakış açından, bir alt-atanalmış çağırmak gibi araç çağırmaktan farklı değildir. Bir alt-atanalmış çağırdığında bir çok adımdan oluşan işleme girmekte ve sonuçları kendisi belirlemektedir.

Araçlar ve alt-atanalmışlar Arasındaki Farklar
Araçlar ve alt-atanalmışlar arasında şu farklar vardır:
– Araçlar, kodlar çalıştırırken, alt-atanalmışlar bir çok adımdan oluşan işleme girer.
– Araçlar, sonucun ana ajanın bağlamına dönerken, alt-atanalmışlar kendi bağlamına girip sonuçları belirler.

Nasıl Bir Araç Kullanılır?
Bir araç kullanılması gerektiği durumlardan bazıları:
– İşlemleri iyi tanımlanmıştır (deterministik davranış gösterir) ve çok adımlı düşünmek gerekmez.
– Veri alınmak istenildiğinde: Araçlar çağrılarak, verileri alınabilir. Veri almak için bir araç çağırmak yerine, araç sonuçlarını modelin bağlamına döndermek daha iyi olacaktır. Veritabanlarından veri al, API çağrıları yap, web sayfası aramaları yap, dosyaları oku veya yaz, hesaplara ekle ya da sil.
– Veri işleme veya doğrulanması: Araçlar çağrılarak, veri işleme veya doğrulama işlemleri yapılabilir. Veri işlemleri yapmadan, modelin mevcut bağlamına döneden araç sonuçlarını döndermek daha iyi olacaktır.
– Dosyalar okunmalıdır ya da yazılmalıdır: Araçlar çağrılarak, dosyalar okunabilir ya da yazılabilir. Dosyalar okuma veya yazma için araç çağırmayı tercih etmelisiniz.

Yöntem testi:
Bir araç kullanılması gerektiğinin bir teste tabi olduğunu düşününüz. Bir Python fonksiyonuyla, bu davranışları yazmak mümkün müdür? Belirli girdilere verilen belirli çıktıları yazabilmekle mümkünse araç kullanılması gerekir.

Nasıl Bir Alt-Atanaşivdir?
Bir alt-atanalmış kullanılması gerektiği durumlardan bazıları:
– İşlemleri çok adımlı düşünmek ve sonuçları ortaya koyabilmek gerektiği durumlar
– Çalışması sırasında ortaya çıkan sonuçlar ana ajanın bağlamını kirlenirse alt-atanalmış kullanılması gerektiği durumlar
– Görevler paralel olarak yapılabilirse alt-atanalmış kullanılması gerektiği durumlar

Alt-atanaşılanlar, araştırmadan kod yazılıma kadar birçok alanda kullanılabilir. Alt-atanaşılanlara göre, birçok görevin çözülmesi kolaylaşabilir.