Prompt Chaining
İstem zincirleme, bir görevi model çağrıları dizisine böler; her istemi önceki çıktıyı kullanarak oluşturur ve adımlar arasına kod denetimleri ekler.
İstem zincirleme, bir görevi büyük dil modeline (LLM) veya başka bir modele yapılan bir dizi çağrıya böler; her istem, önceki çağrının çıktısından oluşturulur. Bir destek e-postasını okuyup sipariş numarasını bulması, siparişi kontrol etmesi ve yanıt taslağı hazırlaması gereken tek ve uzun bir istem yerine zincir, her adım için daha dar kapsamlı ayrı bir istem çalıştırır; sıradan kod da sonuçları adımlar arasında aktarır ve kontrol eder. Her ara çıktı ayrı ayrı incelenebilir, test edilebilir ve düzeltilebilir. Tongshuang Wu, Michael Terry ve Carrie Cai, 2022 CHI'de sunulan AI Chains çalışmasında bu düzeni inceledi; 20 kişilik bir kullanıcı çalışmasında zincirlemenin sonuçların kalitesini ve katılımcıların şeffaflık ve kontrol algısını artırdığını gösterdi.
İstem Zinciri Nasıl Çalışır#
Zincir, sabit bir programdır. Geliştirici adımlara, bunların sırasına ve her adımın istem şablonuna karar verir; kod da verileri adımlar arasında, çoğu zaman bir yapılandırılmış çıktı şemasının ayrıştırılabilir olmasını garanti ettiği JSON biçiminde taşır. Anthropic'in Etkili Ajanlar Oluşturma kılavuzu, istem zincirlemeyi yolu kodda belirlenen bir sistem olan iş akışı olarak sınıflandırır ve sürecin yolunda ilerlediğini doğrulamak için adımlar arasındaki kapı adı verilen programatik kontrolleri açıklar. Örnekleri arasında pazarlama metni yazıp ardından çevirmek ve bir taslak hazırlayıp ölçütlere göre kontrol ettikten sonra belgeyi yazmak bulunur. Buradaki ödünleşim, doğruluk karşılığında gecikmedir: Her çağrıda doğru sonuca ulaşmak daha kolaydır, ancak her adım bir gidiş-dönüş ekler.
Hatalar birikerek büyüdüğü için kapılar önemlidir. İlk adımda çıkarılan yanlış bir değer, üçüncü adımda güvenilir bir gerçekmiş gibi sunulur; bu nedenle zincirler genellikle herhangi bir şeyi aktarmadan önce biçimleri, aralıkları veya zorunlu alanları doğrular. Daha uzun zincirler, yukarıdaki gibi bir adımı isteme hata mesajını ekleyerek yeniden deneyen döngüler veya ilk çağrının isteği etiketlediği ve kodun bunu işleyen istemi seçtiği bir yönlendirme adımı içerebilir. LangChain gibi çerçeveler zincirleri birleştirmek için yapı taşları sunar; ancak üretimdeki zincirlerin çoğu düz Python ile yazılmış birkaç işlev çağrısından oluşur.
Gerçek Dünya Uygulamaları#
- Kod üretimi: AlphaCodium; problem analizini, test üretimini, çözüm taslağını ve test odaklı düzeltmeyi zincirler. CodeContests doğrulama problemlerinde GPT-4'ün pass@5 puanını tek bir doğrudan istemle alınan %19'dan %44'e yükseltmiştir.
- Belge işleme: Fatura ve sözleşme işleme hatları, alanları tek bir çağrıda çıkarır, bunları kodla doğrular ve başka bir çağrıda doğrulanmış alanlardan özet veya e-posta üretir.
- Getirim destekli üretim (RAG): İlk çağrı kullanıcının sorusunu bir arama sorgusu olarak yeniden yazar, kod bir vektör veritabanında bilgi erişimini yürütür ve ikinci çağrı getirilen bölümlere dayanarak yanıt verir.
- Plaka tanıma: Bir YOLO modeli video karelerindeki plakaları algılar ve kırpılan her plaka, karakterleri metin olarak okuyan GPT-4o mini'ye gönderilir; böylece dil modeli yalnızca plakaları görür.
Ultralytics Platform Agents, bu tür bir zinciri görsel tuval üzerinde oluşturur. YOLO → VLM Monitor şablonu bir görüntüde YOLO26 çalıştırır, algılamaları en az bir kişi bulunduğunda devam eden Gate bloğuna aktarır ve görüntüyü önceki bloklardan gelen sonuçlarla birlikte bir LLM bloğundaki görme-dil modeline gönderir. Aynı zincirin Python'da ikinci bağlantının istemine kadar olan kısmı:
from ultralytics import YOLO
model = YOLO("yolo26n.pt")
# Link 1: detect objects and list their class names
results = model("https://ultralytics.com/images/bus.jpg")
result = results[0]
names = [result.names[int(c)] for c in result.boxes.cls]
# Gate: call the language model only when a person is present
if "person" in names:
# Link 2: build the next prompt from link 1's output
prompt = f"Objects detected: {', '.join(names)}. In one sentence, describe what the people are doing."
print(prompt)Yazdırılan istem, nesne algılama sonuçlarını sonraki çağrıya aktarır; kişi bulunmayan bir görüntü ise bu çağrıya asla ulaşmaz.
İstem Zincirleme ve İlgili Kavramlar#
- Düşünce zinciri istemi: Tek bir model çağrısından akıl yürütme adımlarını yazmasını ister. İstem zinciri, adımları aralarında kod olacak şekilde birden fazla çağrıya yayar.
- Yapay zekâ ajanları ve ReAct istemi: Model bir sonraki eylemini seçer ve ne zaman işi bittiğine karar verir. Zincirde adımları önceden geliştirici belirler; bu da zincirlerin test edilmesini kolaylaştırır ve maliyetlerini öngörülebilir kılar.
- Ajan tabanlı iş akışları: Zincirlemenin yanı sıra yönlendirme, paralel çağrılar ve düzenleyici-çalışan düzeneklerini de kapsayan, birden fazla adım ve araçtan oluşan LLM sistemlerinin geniş ailesi.
- İstem mühendisliği: Her bir istemi yazma becerisi. Zincirleme, kaç istem kullanılacağı ve verilerin bunlar arasında nasıl akacağıyla ilgili bir tasarım kararıdır.










