Model Hatırlamaz. Siz Hatırlarsınız.

LLM'lerin hafızası yoktur.

Eskiden her sohbetin kendi bağlamını sakladığını düşünürdüm. Modelin önceki kelimelerimizi otomatik olarak hatırladığını sanırdım. Yanılmışım.

Messages API durumsuzdur (stateless). Model, yalnızca mevcut istekte gönderdiğiniz verileri bilir. Eğer bir sohbet istiyorsanız, tüm geçmişi her seferinde modele geri göndermelisiniz.

Hafızanız sadece bir mesaj dizisinden (array) ibarettir.

Bir sohbet oluşturduğunuzda, bu diziyi siz yönetirsiniz. Şuna benzer:

• Kullanıcı: Merhaba, Claude • Asistan: Merhaba! Nasıl yardımcı olabilirim? • Kullanıcı: LLM'leri tanımlayabilir misin?

Her yeni soru sorduğunuzda, yeni mesajı o listeye eklersiniz ve listenin tamamını API'ye gönderirsiniz.

Bunu SDK'lardan kaçınarak öğrendim. Çoğu geliştirici Anthropic SDK gibi araçlar kullanır. Bu araçlar karmaşıklığı gizler. Yeniden denemeleri (retries) ve başlıkları (headers) sizin yerinize hallederler.

Bunun yerine ham fetch kullanmayı tercih ettim. Bu, başlıkları ve istek gövdesini (request body) manuel olarak yönetmemi zorunlu kıldı. Soyutlamayı ortadan kaldırdı. Verinin tam olarak nasıl hareket ettiğini gördüm.

Bu kavram, geri kalan her şeyin temelidir. Gelişmiş sistemler kurmak istiyorsanız, bu diziyi anlamalısınız. RAG veya kayan pencereler (sliding windows) gibi stratejilerin tamamı, bu mesaj listesini nasıl yönettiğinizle başlar.

Geçmişe hakim olduğunuzda, araç kullanımına (tool use) geçebilirsiniz. Bu, modelin görevleri yürütmesine ve çalıştırılacak doğru fonksiyonları seçmesine olanak tanır.

Bağlamınızı kontrol edin. Modelinizi kontrol edin.

Kaynak: https://dev.to/marcochavezco/the-model-doesnt-remember-you-do-3mmk

İsteğe bağlı öğrenme topluluğu: https://t.me/GyaanSetuAi