Hangi ihtiyaca cevap veriyor?
Bir kullanıcı sadece bilgi istemeyebilir; araştırma yapmak, dosya hazırlamak veya bir sayfayı incelemek gibi bir işi tamamlamak isteyebilir. Sidekick'te görev metninin yanında başarı ölçütü de giriliyor. Örneğin bir çalışma planı istendiğinde, kaç adımdan oluşacağı ve hangi çıktıları içereceği belirtilebiliyor.

Görev döngüsü nasıl kurulmuş?
LangChain ile oluşturulan yardımcı ajan, göreve uygun araçları seçiyor. Ekranın yanındaki plan alanı, yapılacak işleri ve ilerlemeyi gösteriyor. Sonuç hazır olduğunda ayrı bir değerlendirme adımı, kullanıcının başarı ölçütünün karşılanıp karşılanmadığına bakıyor.
Sonuç eksikse yardımcıya geri bildirim verilip yeni bir deneme istenebiliyor. Kullanıcıdan bilgi gerekiyorsa akış soru sorarak duruyor. İncelediğim sürümde bu değerlendirme döngüsü en fazla üç denemeyle sınırlandırılmış.
Teknolojiler ne işe yarıyor?
LangGraph'in bellekte tuttuğu kontrol noktaları, konuşmanın ve görevin durumunu adımlar arasında koruyor. Pydantic, değerlendirme sonucunu başarı durumu, geri bildirim ve kullanıcı ihtiyacı gibi belirli alanlara ayırıyor. Gradio da sohbeti, görev girişini ve planı aynı ekranda gösteriyor.
Araç katmanında web araması, dosya alanı ve tarayıcı işlemleri bulunuyor. Böylece model yalnızca kendi cevabını yazmakla kalmıyor; tanımlanmış araçlardan gelen sonuçları da kullanabiliyor.

Sınırları nasıl yönetiliyor?
Çağrı sayısını sınırlayan kurallar ve hassas işlemler öncesi insan onayı akışa eklenmiş. Görev geçmişi bu sürümde bellekte saklanıyor; uygulama yeniden başlatıldığında kalıcı bir görev arşivi varmış gibi düşünülmemeli. Araçların erişebildiği alanlar da verdiğimiz görev kadar önemli.
Ne öğrendim?
Başarı ölçütü açık olmadığında bir ajanın ne zaman durması gerektiği belirsizleşiyor. Bu projeyi anlatırken görev, araç, durum kaydı ve sonuç değerlendirmesinin birbirine nasıl bağlandığını örnek bir istek üzerinden açıklayabilirim.
Bu sürümde ne geliştirdim?
Görev veya başarı ölçütü boş bırakıldığında işlem başlamıyor. Girdilerin başındaki ve sonundaki gereksiz boşluklar temizleniyor. Bu davranışlar için API çağrısı yapmadan çalışan otomatik testler ekledim.
Mülakatta sorulabilecek bir soru
Ajan işin bittiğini nasıl anlıyor?
Üretilen sonuç, kullanıcının başarı ölçütüne göre değerlendiriliyor. Eksik varsa geri bildirimle tekrar deneniyor; bilgi gerekiyorsa kullanıcıya dönülüyor. Deneme sayısı da sınırlı.
Ajan geliştirme çalışması: ders deposu ve temel örnekler.
Kısa Özet
Bir görev ve başarı ölçütü alan kişisel yardımcı ajan üzerinde çalıştım. Python, LangChain ve LangGraph ile modelin araç kullanması, planını saklaması ve sonucunun kontrol edilmesi bir araya geliyor. Yardımcı, işi tamamladığını söylemeden önce sonucu başarı ölçütüne göre değerlendiriyor. Bu projede yalnızca cevap üreten bir sohbet ekranı değil, ne yaptığını takip eden ve gerektiğinde kullanıcıya geri dönen bir iş akışını öğrendim.