İşlev çağırma çevriminin mekaniği
Modelin ürettiği araç çağrısı önerisini yürütmeye dönüştüren doğrulama katmanını, araç sonucunun gözleme indirilmesini ve tekrar denemeye dayanıklı yazma çağrılarını öğretir.
Önkoşul: AI Agent, Large Language Model
BU DERSİN SONUNDA
- Araç çağrısı önerisini yürütmeden ayırmak ve doğrulama katmanını doğru yere koymak
- Argümanları yürütmeden önce denetleyen kontrol kümesini kurmak
- Araç sonucunu bağlam bütçesine göre gözleme dönüştürmek
- Yazma çağrılarını idempotanlık anahtarıyla tekrar denemeye dayanıklı hâle getirmek
- 1
Teori
Kavramın çalışma mantığı
- 2
Örnek
Gerçek bir senaryo üzerinde gösterim
- 3
Lab
Uygulamalı alıştırma
- 4
Test
Kısa ölçüm
- 5
Proje
Rotadaki projeye katkı
Kısa cevap
İşlev çağırma, modelin bir aracı yürütmesi değil; yürütülmesini isteyen yapılandırılmış bir çıktı üretmesidir. Çevrim şöyle döner: model çağrı önerir, kod doğrular ve yürütür, sonuç bağlama gözlem olarak yazılır. Doğruluk ve güvenlik, bu çevrimin ortasındaki doğrulama katmanında kazanılır.
Teori: model yürütmez, önerir#
Model bir araç çağrısı ürettiğinde ortaya çıkan şey bir ad ve bir argüman nesnesidir; hiçbir yan etkisi yoktur. Yan etki, kodun o öneriyi yürütmeye karar vermesiyle oluşur. Pratikte en çok atlanan nokta burası: öneriyi doğrudan yürüten bir uygulama, modelin ürettiği her argümanı doğrulanmış veri kabul etmiş olur.
Şema modele bir niyet bildirir. `required`, `enum`, `pattern` gibi kısıtlar doğru argüman üretme olasılığını artırır; çözümleme şemayla kısıtlansa bile elde edilen şey yalnızca biçimsel uygunluktur — değerin iş kuralına, oturumun yetkisine ve o anki sistem durumuna uyduğunu söylemez. Var olmayan bir kayıt kimliği de şemaya uyar. Bu yüzden doğrulama iki yerde yapılır: şemada modele rehberlik için, yürütmeden hemen önce kodda güvence için.
Argüman, kullanıcı girdisiyle aynı güven seviyesindedir. Model bağlamında güvenilmeyen metin varsa — getirilmiş bir belge, gelen bir e-posta, bir web sayfası — ürettiği argüman o metinden etkilenmiş olabilir. Bu yüzden yetki kontrolü argümanın içeriğine değil, oturumun kimliğine bağlanır.
Uygulamada: doğrulama katmanının işleri#
| Kontrol | Ne yakalar | Hata modele nasıl dönmeli |
|---|---|---|
| Tip ve zorunluluk | Eksik alan, yanlış tipte değer | Hangi alan, beklenen tip, alınan değer |
| Değer kümesi | Şemada olmayan durum, sıralama veya kanal değeri | İzin verilen değerlerin tam listesi |
| Aralık ve büyüklük | On bin satırlık sayfa, on yıllık tarih aralığı | Üst sınır ve bu sınırla yeniden çağırma önerisi |
| Tutarlılık | Bitiş tarihinin başlangıçtan önce olması | Çelişen iki alanın adı |
| Yetki | Oturumun erişim hakkı olmayan kayıt | Erişilemediği; kaydın içeriği sızdırılmadan |
| İdempotanlık | Aynı yazma çağrısının tekrarı | Eylemin zaten uygulandığı ve ilk sonucun kendisi |
Gözlemi biçimlendirmek#
Aracın döndürdüğü şeyin ham API cevabı olması gerekmiyor. Bağlama yazılan her bayt, sonraki turda modelin okuduğu metindir: gereksiz alanlar hem bütçe harcar hem ilgili bilgiyi gürültüye gömer. Pratik kural üç parçalı — göreve yetecek en küçük gösterim, sonraki çağrı için gereken kimlik alanları, ve kesilme varsa devam işareti.
// HAM CEVAP: kırk alan, iç kimlikler, biçimlendirme meta verisi. Bağlama yazılmaz.
// GÖZLEM: göreve yeten alanlar artı devam bilgisi.
{
"bulunan": 3,
"gosterilen": 1,
"kayitlar": [
{ "siparis_no": "SIP-2026-0412", "durum": "kargoda", "tahmini_teslim": "2026-09-18" }
],
"kesildi": true,
"devam_anahtari": "s2",
"not": "Kalan kayıtlar için devam_anahtari ile tekrar çağır."
}Paralel ve sıralı çağrı#
- Bağımsız çağrılar aynı turda birlikte verilebilir; gecikme toplam değil en yavaş çağrı kadar olur.
- Bir çağrının argümanı başka çağrının sonucundan geliyorsa paralel verilemez. Bunu şema açıklamasıyla değil akış tasarımıyla çözün.
- Yan etkileri birbirini etkileyen çağrıları (aynı kaydı güncelleyen iki çağrı) kod tarafında sıraya alın; sıra belirsizliği en zor teşhis edilen hata sınıfıdır.
- Kısmi başarı davranışı önceden tanımlı olmalı: üç çağrıdan biri hata verdiğinde diğer ikisinin sonucu da gözleme yazılır, yoksa model neyin yapıldığını bilemez.
Tekrar deneme ve idempotanlık#
Ajan döngüsünde bir çağrı sessizce iki kez yürütülebilir: zaman aşımı sonrası yeniden deneme, modelin aynı kararı tekrar üretmesi veya kısmi hatadan sonra planın baştan koşması. Yazma araçlarında bunun karşılığı çift kayıt, çift mesaj, çift tahsilattır. Çözüm model tarafında değil araç sözleşmesinde: yazma çağrıları bir istemci anahtarı taşır ve aynı anahtarla gelen ikinci çağrı yeni kayıt açmak yerine ilk sonucun kendisini döndürür.
LAB · UYGULAMALI ALIŞTIRMA
Doğrulama katmanını araya koyun
- 1Bir yazma aracı seçin: ajanınız varsa oradan, yoksa kendi verinize dokunan bir işlevi (kayıt durumu güncelleme, taslak kaydetme) araç sözleşmesi olarak yazın. Argümanların doğrulanmadan yürütülüp yürütülmediğini işaretleyin.
- 2O araç için altı kontrolü (tip, değer kümesi, aralık, tutarlılık, yetki, idempotanlık) tek fonksiyonda toplayın; her biri için düzeltme yönlendirmesi içeren hata metni yazın.
- 3Elle altı bozuk argüman nesnesi üretin: eksik alan, sınır dışı sayı, çelişkili tarih, kümede olmayan değer, yetkisiz kayıt, tekrar eden anahtar. Doğrulayıcıyı bunlarla koşturun.
- 4Aracın ham cevabını gözlem biçimine indirin; kalan alan sayısını ve karakter uzunluğunu önce/sonra kaydedin.
- 5Aynı idempotanlık anahtarıyla çağrıyı iki kez yürütün ve ikinci çağrının yeni kayıt oluşturmadığını doğrulayın.
Beklenen çıktı
Tek bir yazma aracı için çalışan doğrulama fonksiyonu, altı bozuk argümanın yakalanma dökümü ve gözlem boyutunun önce/sonra karşılaştırması.
Sık sorulan sorular
Şemada kısıt varsa kodda tekrar doğrulamak gereksiz değil mi?
Şema modele rehberlik eder, yürütme garantisi vermez. Ayrıca aynı aracı başka çağıranlar da vardır: testler, başka bir ajan, elle yapılan çağrı. Doğrulama şemanın değil aracın kendi sözleşmesinin parçası olmalı.
Hata metnini modele döndürmek yerine döngüyü kesmek daha güvenli olmaz mı?
Düzeltilebilir hatalarda kesmek işi bitirmez, insana taşır. Ayrım hatanın düzeltilebilirliğinde: biçim ve değer hataları modele dönebilir, yetki reddi ve bütçe ihlali döngüyü kesmeli.
Paralel çağrı her zaman iyi mi?
Yalnızca çağrılar gerçekten bağımsızsa. Paralel yürütülen çağrıların sonuçları aynı turda bağlama yazılır; birbirini etkileyen yan etkilerde yürütme sırası belirsiz kalır ve ortaya tekrarı zor hatalar çıkar.
LEARN
AI Agent Developer rotasına devam et
Dersler tek başına da okunabilir, ama sıralı ilerlemek önkoşul boşluklarını kapatır.
