Dil Modeli Nasıl Cevap Üretir — Neden Var Olmayan Bir Metot Uydurur?
30 saniyede özet
Dil modeli cevabı parça parça, her adımda en olası devamı seçerek yazar. Olası her zaman doğru değildir: uydurma bir ad da gerçeği kadar akıcı görünür. Belge vermek ve sonucu test etmek bu açığı kapatır.
Telefonunun klavyesi sen yazarken bir sonraki kelimeyi önerir. “Yarın sabah” yazınca “görüşürüz” der, çünkü bu ikili çok sık yan yana gelir. Önerinin doğru olup olmadığını bilmez; yalnızca olası olduğunu bilir.
Adım adım oku
- Model cümlenin bir sonraki parçasını tahmin eder.
- En olası devam çoğu zaman doğrudur, ama olmak zorunda değildir.
- Var olmayan bir ad da cümlede gerçeği kadar akıcı durur.
- İlgili belge bağlamdaysa öneriler gerçek adlara yapışır.
-
Bayt: Asistana Spring'de isteği nasıl doğrularım diye sordum. @ValidRequest koy dedi.
-
Sen: Çalıştı mı?
-
Bayt: Derlenmedi bile! Ama öyle emin yazmıştı ki.
-
Bayt: Emin görünmek ile doğru olmak ayrı şeyler. Model nasıl yazıyor, bakalım.
Parça parça yazmak
Bir dil modeli metni tokenDil modelinin metni okuyup yazdığı küçük parça: bir kelime, kelimenin bir kısmı ya da bir işaret. Bağlam penceresi de token sayısıyla ölçülür.Sözlükte gör → denen küçük parçalarla yazar: bir kelime, bir kelimenin bir kısmı ya da bir noktalama işareti. Her adımda, o ana kadar yazılanlara bakıp olası devamları puanlar ve birini seçer.
Bakabildiği her şey context windowBir dil modelinin tek seferde görebildiği metnin tamamı: senin mesajların, verdiğin dosyalar ve kendi cevapları. Pencerede olmayan bir şeyi model bilmez.Sözlükte gör → içindedir: senin mesajın, eklediğin dosyalar ve kendi yazdıkları. Orada olmayanı ancak eğitimden hatırladığı kadarıyla bilir.
Kafam karıştı, daha basit anlat
Model cevabı kelime kelime yazar ve her seferinde en olası devamı seçer. Doğruluğu ayrıca kontrol etmez.
Bir dil modeli cevabını nasıl yazar?
Model bir sohbette neye bakarak cevap verir?
Olası ama yanlış
Spring'de istek gövdesini doğrulamak için gerçek ad @Valid. Modelin aday listesinde @ValidRequest diye uydurma bir ad da var ve olasılığı küçük ama sıfır değil. Model bu uydurma adı hiç seçebilir mi? Cevabı göster
Evet, çünkü seçim olasılığa göre yapılır, doğruluğa göre değil. Uydurma ad, gerçek adlara çok benzediği için cümlede eşit derecede akıcı durur. Bu yüzden model onu da aynı güvenle yazar.
Modelin var olmayan bir şeyi kendinden emin yazmasına hallucinationBir dil modelinin var olmayan bir API'yi, parametreyi ya da kaynağı kendinden emin bir dille üretmesi. Çıktı akıcı olduğu için fark etmek zordur.Sözlükte gör → denir. Kod yazarken en sık hâli: olmayan bir metot, uydurma bir bağımlılık adı ya da yanlış sürüme ait bir ayar.
temperatureModelin bir sonraki parçayı ne kadar cesur seçeceğini belirleyen ayar. Sıfırda hep en olası parça seçilir; cevap tutarlı olur ama doğru olmak zorunda değildir.Sözlükte gör → seçimin ne kadar cesur olacağını belirler. Sıfırda hep en olası parça seçilir ve cevap tutarlı olur; yükseldikçe daha az olası parçalar da seçilebilir.
Kafam karıştı, daha basit anlat
Model olası olanı seçer. Olası olan bazen uydurmadır ve uydurma da akıcı görünür.
Asistan kendinden emin bir şekilde @ValidRequest yazdı ama Spring'de böyle bir şey yok. Bu durumun adı ne?
Sıcaklık (temperature) sıfıra indirildi. Hangisi doğru?
Kanıt nereden gelir?
İlgili belgeyi ya da kendi kodundan bir örneği bağlama koymak, olası devamları gerçek adlara bağlar ve uydurmayı azaltır. Ama sıfırlamaz.
Asıl kanıt dışarıdan gelir: kod derleniyor mu, bağımlılık gerçekten var mı, test geçiyor mu? Modelin cevabı bir taslaktır; derleyici, belge ve test onu doğrular.
Kafam karıştı, daha basit anlat
Belge vermek uydurmayı azaltır. Kanıt ise derleyiciden, belgeden ve testten gelir.
Asistanın önerdiği bir metodun gerçekten var olduğundan nasıl emin olursun?
Kendin gör
Model bir sonraki kelimeyi seçiyor
Tohum 878260Parametreye konacak işaret
___
Doğrulama başarısız olunca fırlayan hata
___
Eklenecek bağımlılık
___
Şu an ne oldu?
Bir sonraki parça ne olacak?
Model "doğru olanı" aramaz; o bağlamda en olası devamı seçer. Yeni tohumla tekrar oynatınca seçimler değişebilir.
Görevler0/3
Modele var olmayan bir Spring adı uydurtaçık
İpucu
Sıcaklığı artır, gerekirse yeni tohumla tekrar oynat.
Sıcaklık 0 ile cevabı tamamlaaçık
İpucu
Hep en olası parça seçilir; her seferinde aynı cevap.
Cesur sıcaklıkta, belge bağlamdayken uydurmasız bir cevap alaçık
İpucu
Belgeyi sohbete eklemek ne değiştiriyor?
Olay günlüğü (0)
Henüz olay yok. Oynat veya adımla.
- Varsayılanla oynat. Her boşluk için aday tablosu ve seçilen parça.
- Sıcaklığı 1.5 yap, birkaç kez yeni tohumla oynat. Bir gün uydurma bir ad gelecek.
- Sıcaklığı 0 yap. Her seferinde aynı ve en olası cevap.
- Sıcaklık 1.5’te belgeyi bağlama ekle. Uydurma adların payı neredeyse sıfıra indi.
Sohbete ilgili Spring belgesini ekledin. Ne değişir?
Tuzaklar
Uydurma bağımlılık: model, var olmayan ama gerçeğine benzeyen bir paket adı önerebilir. Kötü niyetli biri o adla bir paket yayınlamışsa, körü körüne kurmak güvenlik açığı olur. Her bağımlılığı resmi depoda kontrol et.
“Sıcaklık sıfır, o hâlde doğru.” Sıfır sıcaklık cevabı tutarlı yapar, doğru yapmaz. En olası cevap da yanlış olabilir.
Uzun sohbette erken bilgi. Bağlam penceresi dolunca ya da sohbet çok uzayınca, baştaki bir kural gözden kaçabilir. Önemli kısıtları görevin içinde yeniden söyle.
Kafam karıştı, daha basit anlat
Paket adlarını kontrol et, sıfır sıcaklığa güvenme, önemli kuralı tekrar yaz.
Asistan bir npm paketinin adını önerdi; bu ad resmi depoda yok ama çok tanıdık duruyor. En büyük risk nedir?
Aşağıdaki örnek, bir bankanın para gönderme API’sinde asistanın önerdiği doğrulama kodunu kanıtlarla kontrol etmenin hâli.
Derinleş · Para gönderme isteği: öneriyi kanıtla doğrulamak 4 dosya · ~48 satır · ilk okumada atlayabilirsin
Kendini sına
Dil modeli bir cevabı yazmadan önce doğru olup olmadığını kontrol eder.
Uzun bir sohbetin başında 'para tutarları için double kullanma' dedin. Saatler sonra asistan double kullanan bir kod yazdı. Olası açıklama ve çözüm?
Aklında kalacak üç şey
- 1 Dil modeli cevabı token token yazar: her adımda bağlama göre olası devamları puanlar ve birini seçer. Doğruluğu kontrol eden ayrı bir adım yoktur.
- 2 Var olmayan bir metot ya da bağımlılık adı, gerçeği kadar akıcı görünebilir. Akıcılık doğruluğun kanıtı değildir; derleyici, belge ve test kanıttır.
- 3 İlgili belgeyi bağlama koymak uydurmayı azaltır, sıcaklığı düşürmek cevabı tutarlı yapar. İkisi de doğrulamanın yerini tutmaz.
5 kart sonraki derste seni bekliyor
Bu dersin üstüne kurulanlar
Bunlar bu dersi temel alıyor; hazır olduğunda devam edebilirsin.