Yapay zeka modelleri bağlamında token’lar – Token nedir?

Bu yazıda token’ların ne olduğunu ve nasıl hesaplandığını anlatıyoruz. Ayrıca somut bir örnek gösterip token’ları verimli şekilde nasıl azaltabileceğine dair ipuçları paylaşıyoruz.

Token tanımı

Token’lar, OpenAI’ın ChatGPT’si gibi makine öğrenimi modellerinde metin işlemenin temel bir parçasıdır ve metin verisini anlamanın ve yorumlamanın temelini oluşturur. Bu token’lar, bu tür modellerin işleyebildiği en küçük birimlerdir.

En basit haliyle bir token bir kelime, bir noktalama işareti ya da bir boşluk olabilir. Ancak ChatGPT gibi daha gelişmiş modeller bu konsepti genişletir ve token’ları kelimelerin parçaları hatta birden fazla kelimenin birleşimleri olarak da tanımlayabilir. Bu yaklaşıma alt-kelime tokenizasyonu denir.

Token’lar nasıl hesaplanır

Bir metin işlenirken önce bir dizi token’a ayrılır — bu işleme tokenizasyon denir. Model daha sonra metni analiz etmek ve tahminlerde bulunmak için bu token’ların sayısal temsillerini kullanır.

Önemli bir nokta da bir modelin işleyebileceği maksimum token sayısıdır. Örneğin GPT-3.5 Turbo’da bu limit 4.096 token, GPT-4’te ise 8.192 token’dır. Bu sınır hem girdiler hem çıktılar için geçerlidir ve bağlam penceresi (context window) olarak adlandırılır.

Gerçekte kullanılabilir token sayısı sadece modelin teknik sınırlarına değil, aynı zamanda kullanılan uygulama veya platformun ayarlarına da bağlıdır.

Token’lara bir örnek

“ChatGPT OpenAI’ın bir dil modelidir” gibi bir cümle tek tek token’lara bölünür. Basit bir kelime tokenizasyonunda bölünme şu şekilde olabilir:

Token örneği

Alt-kelime tokenizasyonunda ise aynı cümle, ilgili modelin tokenizasyon mantığına bağlı olarak daha fazla ya da daha az token’a ayrılabilir.

Karşılaştırma: kelime vs. alt-kelime tokenizasyonu

Diyelim ki bir metin 1.000 kelimeden oluşuyor. Basit bir kelime tokenizasyonunda bu, aynı zamanda 1.000 token demektir. Alt-kelime tokenizasyonunda ise token sayısı değişken olabilir.

Örneğin “Konfiguration” gibi bir kelime birden fazla token’a bölünebilir; mesela “Konfi”, “gura”, “tion”. Noktalama işaretleri ya da boşluklar da ayrı token olarak sayılabilir. Bu yüzden toplam token sayısı, gerçek kelime sayısından daha yüksek olabilir.

Token’ları verimli kullanma

Temel kural şu: Girdi ve çıktıda ne kadar az metin kullanırsan, o kadar az token harcanır. Bu, verimliliği artırmak ve token tüketimini optimize etmek için kritik.

Verimli girdiler: Sorularını mümkün olduğunca net ve kısa yaz. Gereksiz tekrarlar, çok uzun cümleler veya alakasız bilgiler token tüketimini artırır.

Daha kısa cevaplar istemek: Birçok durumda cevap uzunluğunu kontrol edebilirsin. Daha kısa cevaplar daha az token harcar.

Önceki mesajlarla çalışma: Kullandığın uygulamaya göre, önceki mesajları saklama özelliğini açmak ya da kapatmak mantıklı olabilir. Bu ayar örneğin sohbet ayarlarından değiştirilebilir. Önemli: Bu özellik açıksa, önceki soru ve cevaplar da toplam token sayısına dahil edilir.

Hafıza özelliği açıkken: Mesela ChatGPT’yi metin özetlemek için kullanıyor ve ilk sonucu iyileştirmek istiyorsan, hafıza özelliği işe yarayabilir. Böylece model önceki bilgilere dayanıp daha iyi bir sürüm oluşturabilir. Bu da token kazandırır, çünkü orijinal metni yeniden girmek zorunda kalmazsın.

Hafıza özelliği kapalıyken: Buna karşılık, birden fazla bağımsız içerik (ör. ayrı ayrı birkaç şiir) üretmek istiyorsan hafızayı kapatmak daha mantıklıdır. Böylece her istek ayrı ele alınır. Alternatif olarak her istek için yeni bir sohbet başlatabilirsin. Bu da token kazandırır, çünkü alakasız önceki içerikler hesaba katılmaz.


Posted

in

by

Tags: