İçeriğe atla
SinaptikLabAI KNOWLEDGE PLATFORM
DersBaşlangıç35 dakikaLLM Uygulama Geliştirici · 2. ders

Şemaya bağlı çıktı ve araç çağrısı

Görev istemini dört parçaya ayırmayı, çıktıyı serbest metin yerine doğrulanabilir bir şemaya bağlamayı ve araç çağrısında dönen argümanları güvenilir biçimde doğrulamayı öğretir.

Önkoşul: Large Language Model, Tokenization

BU DERSİN SONUNDA

  • Görev istemini rol, girdi sınırı, çıktı sözleşmesi ve kaçış yolu olarak dört parçaya ayırmak
  • Modelden serbest metin yerine doğrulanabilir bir veri yapısı istemek
  • Araç şemasını modelin doğru argüman üretmesini kolaylaştıracak biçimde yazmak
  • Şema ihlalinde çalışan bir onarım döngüsü tasarlamak
  1. 1

    Teori

    Kavramın çalışma mantığı

  2. 2

    Örnek

    Gerçek bir senaryo üzerinde gösterim

  3. 3

    Lab

    Uygulamalı alıştırma

  4. 4

    Test

    Kısa ölçüm

  5. 5

    Proje

    Rotadaki projeye katkı

Kısa cevap

Yapılandırılmış çıktı, modelden anlatı değil uygulamanın doğrulayabileceği bir veri yapısı istemektir. İstem görevi tarif eder, şema sözleşmeyi bağlar, doğrulayıcı sözleşmenin tutup tutmadığına karar verir. Araç çağrısı bunun özel hâlidir: model işlevi çalıştırmaz, çağrının argümanlarını üretir; çağırma kararını ve yürütmeyi uygulama verir.

Teori: istem bir belirtimdir#

Model, istemde belirsiz bıraktığınız her yeri kendi eğilimiyle doldurur. Bu bir kusur değil, koşullu tahminin doğal sonucudur. İstem yazmanın işi bu yüzden ikna etmek değil, belirsizliği azaltmaktır: girdinin sınırları nerede biter, çıktı hangi biçimde beklenir, bilgi yoksa ne yapılır.

Örnekle yönlendirme işe yarar çünkü biçimi tarif etmek yerine gösterir; ama yanlış seçilmiş örnek, tarif edilmemiş bir kuralı öğretir. Hepsi olumlu sonuçlanan örneklerden oluşan bir küme, modele reddetmeyi öğretmez. Örnekler dağılımı temsil etmeli ve en az biri sınır durumu olmalıdır.

İstem iskeleti#

ParçaİçerikSık hata
Rol ve görevTek cümlelik iş tanımı ve kapsamBirden çok işi tek isteme yığmak
Girdi sınırıGirdinin nerede başlayıp bittiği, hangi kısmın veri olduğuKullanıcı metnini talimat bölgesine gömmek
Çıktı sözleşmesiAlan adları, tipler, izinli değerler, biçimŞemayı düz metinle tarif edip doğrulamamak
ÖrneklerBiçimi ve bir sınır durumunu gösteren az sayıda örnekBirbirine çok benzeyen uzun örnek listesi
Kaçış yoluBilgi yoksa ne döndürüleceğiBoş bırakmak; model ortalama bir cevap uydurur
Beş parçanın hepsi her istemde gerekmez; eksik bıraktığınızı bilerek eksik bırakın.

Şemayı yazarken#

  • Serbest metin alanını, mümkün olan her yerde sabit seçenek kümesine çevirin; model kümeden seçmekte üretmekten daha iyidir.
  • Alanı atlanabilir yapmak yerine 'bilinmiyor' değeri tanımlayın: eksik alan ile bilinmeyen değer farklı hatalardır.
  • Birim ve biçimi alan adının içine koyun; ayrı bir açıklamada kalan kural gözden kaçar.
  • İç içe derinliği düşük tutun; derin yapılarda geçersiz JSON üretme olasılığı artar.
  • Her alana bir cümlelik açıklama yazın: bu açıklamalar modelin gördüğü tek belgedir.
json
{
  "ad": "siparis_durumu_getir",
  "aciklama": "Verilen sipariş numarasının güncel durumunu döndürür. Numara kullanıcı tarafından verilmediyse bu araç çağrılmaz.",
  "parametreler": {
    "tip": "nesne",
    "alanlar": {
      "siparis_no": {
        "tip": "metin",
        "bicim": "SP-000000",
        "aciklama": "Kullanıcının açıkça yazdığı sipariş numarası. Tahmin edilmez, tamamlanmaz."
      },
      "kanal": {
        "tip": "secim",
        "secenekler": ["web", "mobil", "magaza", "bilinmiyor"],
        "aciklama": "Kullanıcı belirtmediyse bilinmiyor yazılır."
      }
    },
    "zorunlu": ["siparis_no"]
  }
}

Araç şeması istemin bir parçasıdır ve her istekte girdi jetonu olarak ödenir. Bu yüzden araç sayısını artırmanın iki ayrı bedeli vardır: sabit jeton maliyeti ve seçim hatası. Birbirine benzeyen çok sayıda araç yerine, sınırları birbirinden ayrık az sayıda araç hem daha ucuz hem daha isabetlidir.

Onarım döngüsü#

  1. 1Üret

    Modelden şemaya göre çıktı veya araç argümanı iste; çıktıyı doğrudan işleme sokma.

  2. 2Doğrula

    Şema kontrolünden geçir: alan, tip, izinli değer, biçim. Geçerse akışa devam et.

  3. 3Hatayı geri ver

    Geçmezse doğrulayıcının ürettiği somut hata mesajını modele geri ilet; 'yanlış oldu, tekrar dene' değil, hangi alanın neden düştüğünü ilet.

  4. 4Bir kez dene

    Onarım denemesini sayıyla sınırla. Sınırsız döngü hem maliyeti hem gecikmeyi kontrolsüz büyütür.

  5. 5Reddet veya devret

    Hâlâ geçmiyorsa yarım veriyi kabul etme; isteği reddet, günlüğe yaz ve gerekiyorsa insana devret.

Sık yapılan hata#

En pahalı yanılgı, araç çağrısının gelmesini argümanların doğru olması sanmaktır. Model hangi araçların var olduğunu yalnızca şemadan okur; gerçek dünyadaki kayıtları bilmez. Biçim olarak kusursuz ama sisteminizde karşılığı olmayan bir sipariş numarası üretmesi beklenen bir davranıştır. Her kimlik alanı, kullanılmadan önce kendi kayıtlarınızla eşleştirilmelidir.

LAB · UYGULAMALI ALIŞTIRMA

Bir uç noktayı şemaya bağlayın

  1. 1Uygulamanızda modelin serbest metin döndürdüğü bir yeri seçin ve oradan çıkmış son 20 gerçek çıktıyı bir dosyaya kopyalayın. Böyle bir yeriniz yoksa birinci dersin alıştırmasındaki ayıklama görevini 20 örnekle koşturup çıktıları kaydedin.
  2. 2Bu 20 çıktıyı okuyup uygulamanın gerçekten kullandığı alanları listeleyin; hiç kullanılmayan her alanı şemanın dışında bırakın.
  3. 3Şemayı yazın: her alana tip, zorunluluk, birim veya biçim ve tek cümlelik açıklama ekleyin; serbest metin alanlarını yapabildiğiniz kadar sabit seçenek kümesine çevirin.
  4. 420 çıktının her birini şemaya karşı kontrol edin ve düşenleri sınıflandırın: eksik alan, yanlış tip, küme dışı değer, sisteminizde karşılığı olmayan kimlik.
  5. 5En sık görülen iki hata sınıfı için istemi veya şemayı tek bir değişiklikle düzeltin, aynı 20 örneği yeniden geçirin ve düşen sayısını önceki turla karşılaştırın.

Beklenen çıktı

Bir uç nokta için yazılmış çıktı şeması, 20 gerçek örnek üzerindeki ihlal dökümü ve tek değişiklik sonrası önce/sonra karşılaştırması.

Sık sorulan sorular

Çıktıyı şemaya bağlamak modelin uydurmasını engeller mi?

Hayır. Şema biçimi garanti eder, doğruluğu değil. Alanların dolu ve tiplerin doğru olduğu, değerlerin tamamen uydurma olduğu bir çıktı şema kontrolünden geçer. Bu yüzden kimlik, tarih ve tutar gibi alanlar kendi kayıtlarınızla ayrıca eşleştirilmelidir.

Kaç örnek koymalıyım?

Sayı değil kapsam belirleyicidir. Birbirinin benzeri uzun bir örnek listesi hem girdi jetonu yakar hem yeni bir şey öğretmez. Biçimi gösteren bir örnek, bir sınır durumu ve bir de reddetme örneği çoğu görevde daha iyi bir başlangıçtır; artırmadan önce ölçün.

Araçları tek bir büyük araçta toplasam olur mu?

Parametre sayısı arttıkça modelin doğru kombinasyonu üretme olasılığı düşer, yani tek büyük araç genelde daha çok argüman hatası üretir. Öte yandan birbirine çok benzeyen çok sayıda küçük araç da seçim hatası doğurur. Ölçüt şudur: iki aracın açıklamasını okuyan bir insan hangisini seçeceğinden emin olabiliyor mu.

LEARN

LLM Uygulama Geliştirici rotasına devam et

Dersler tek başına da okunabilir, ama sıralı ilerlemek önkoşul boşluklarını kapatır.