AiRuzgar
Yapay zeka
Bir süredir kafamı kurcalayan bir şey var, sizinle paylaşayım. Geçen ay bir müşteri sunumu için ChatGPT'ye 40 sayfalık bir PDF'in içeriğini işletmeye çalıştım. Sonuç hüsran: yarısında "çok uzun" uyarısı aldım, kalan kısmı da anca parça parça gönderebildim. O gün anladım ki token meselesini ciddiye almam lazım.
Öncelikle şunu söyleyeyim, token sayısını tahminle yapmak bana hiç güvenilir gelmiyor. Kelime sayısıyla token sayısı aynı şey değil, Türkçe'de özellikle ekler yüzünden kelimeler daha fazla token'a bölünüyor. Benim denediğim yöntem şu oldu: metni önce bir tokenizer aracından geçiriyorum, sonra modele öyle veriyorum. İnternette ücretsiz tokenizer siteleri var, hangisini kullandığım önemli değil ama iş görüyor. Böylece baştan kaç token olduğunu biliyorum ve limiti aşmıyorum.
İkinci mesele, uzun metni tek seferde göndermek yerine nasıl böleceğim. Bunu yaparken cümle ortasından kesmemeye dikkat ediyorum, yoksa model bağlamı kaybediyor. Genelde paragrafları doğal sınır kabul ediyorum. Her parçayı gönderirken de başta kısa bir "bağlam özeti" veriyorum: "Bu metin şu konudaki bir raporun 2. bölümü, önceki bölümde şunlar anlatılmıştı." Bu küçük ekleme, modelin tutarlılığını ciddi şekilde artırıyor. Arkadaşımda gördüm, o bunu yapmıyordu ve parçalar arasında kopukluk oluyordu.
Üçüncü nokta, çıktı token'larını da hesaba katmak. Girdiye ne kadar yüklenirsen çıktıya o kadar az yer kalıyor. Uzun bir metni özetletirken "kısa tut" demek yerine doğrudan "en fazla 300 kelime" gibi sınır koymak daha işe yarıyor. Ben bunu fark ettiğimden beri cevaplar daha az yarım kalıyor.
Bir de şu var: her modelin bağlam penceresi farklı, hatta aynı modelin farklı sürümlerinde bile değişiyor. O yüzden "bu model şu kadar alıyor" diye ezber yapmak yerine, işe başlamadan önce hangi sürümü kullandığımı kontrol ediyorum. Bu basit alışkanlık bana birkaç kez yarım kalan işi kurtardı.
Son olarak, çok uzun belgeler için sohbet arayüzü yerine dosya yükleme özelliğini kullanmayı deneyin derim, benim işimi çok kolaylaştırdı. Ama orada da dosyanın içeriğinin gerçekten okunup okunmadığını test etmek için baştan birkaç soru sormak lazım.
Sizin uzun metinlerle çalışırken token hesabı için kullandığınız pratik bir yöntem var mı, yoksa hâlâ deneme yanılma mı yapıyorsunuz?
Öncelikle şunu söyleyeyim, token sayısını tahminle yapmak bana hiç güvenilir gelmiyor. Kelime sayısıyla token sayısı aynı şey değil, Türkçe'de özellikle ekler yüzünden kelimeler daha fazla token'a bölünüyor. Benim denediğim yöntem şu oldu: metni önce bir tokenizer aracından geçiriyorum, sonra modele öyle veriyorum. İnternette ücretsiz tokenizer siteleri var, hangisini kullandığım önemli değil ama iş görüyor. Böylece baştan kaç token olduğunu biliyorum ve limiti aşmıyorum.
İkinci mesele, uzun metni tek seferde göndermek yerine nasıl böleceğim. Bunu yaparken cümle ortasından kesmemeye dikkat ediyorum, yoksa model bağlamı kaybediyor. Genelde paragrafları doğal sınır kabul ediyorum. Her parçayı gönderirken de başta kısa bir "bağlam özeti" veriyorum: "Bu metin şu konudaki bir raporun 2. bölümü, önceki bölümde şunlar anlatılmıştı." Bu küçük ekleme, modelin tutarlılığını ciddi şekilde artırıyor. Arkadaşımda gördüm, o bunu yapmıyordu ve parçalar arasında kopukluk oluyordu.
Üçüncü nokta, çıktı token'larını da hesaba katmak. Girdiye ne kadar yüklenirsen çıktıya o kadar az yer kalıyor. Uzun bir metni özetletirken "kısa tut" demek yerine doğrudan "en fazla 300 kelime" gibi sınır koymak daha işe yarıyor. Ben bunu fark ettiğimden beri cevaplar daha az yarım kalıyor.
Bir de şu var: her modelin bağlam penceresi farklı, hatta aynı modelin farklı sürümlerinde bile değişiyor. O yüzden "bu model şu kadar alıyor" diye ezber yapmak yerine, işe başlamadan önce hangi sürümü kullandığımı kontrol ediyorum. Bu basit alışkanlık bana birkaç kez yarım kalan işi kurtardı.
Son olarak, çok uzun belgeler için sohbet arayüzü yerine dosya yükleme özelliğini kullanmayı deneyin derim, benim işimi çok kolaylaştırdı. Ama orada da dosyanın içeriğinin gerçekten okunup okunmadığını test etmek için baştan birkaç soru sormak lazım.
Sizin uzun metinlerle çalışırken token hesabı için kullandığınız pratik bir yöntem var mı, yoksa hâlâ deneme yanılma mı yapıyorsunuz?
