Kuantizasyon Nedir? Yapay Zeka Modelini Küçültme Yöntemi

Kuantizasyon nedir ve yapay zeka modelinde ne işe yarar?
Kuantizasyon (quantization), bir yapay zeka modelinin ağırlıklarını daha düşük bit hassasiyetiyle tutarak modelin bellek ihtiyacını azaltan ve çoğu zaman çalışmasını hızlandıran sıkıştırma yöntemidir. Model aynı kalır, yalnızca sayıların ayrıntı düzeyi düşer. Böylece daha küçük bir donanım da modeli çalıştırabilir.
Bunu bir fotoğrafa benzetebiliriz. Yüksek çözünürlüklü bir fotoğrafı daha düşük çözünürlükte kaydettiğinizde dosya ufalır, ama sahneyi hâlâ tanırsınız. Kuantizasyon da modelin sayılarını bu şekilde yuvarlar. Önemli olan, yuvarlamanın cevap kalitesini bozmadığı sınırı bulmaktır.
Bu yazıda kuantizasyon nedir sorusunu kavram olarak anlatıyoruz. Belirli model adlarına, sürümlere ya da donanım rakamlarına yaslanmıyoruz, çünkü bunlar hızla eskiyor. Güncel değerleri sağlayıcının resmi belgesinden kontrol etmenizi öneririz.
Yazı boyunca sırayla şunları ele alıyoruz: ağırlık ve bit mantığı, kalibrasyon, iki ana yöntem, kalite riski, test planı, yerel kullanım, komşu tekniklerle farklar ve kontrol listesi.
Model neden bu kadar çok bellek kullanır?
Bir yapay zeka modeli, eğitim sırasında öğrendiği bilgiyi ağırlık denen çok sayıda sayıya yazar. Büyük bir dil modelinde bu sayıların adedi milyarları bulabilir. Her sayı bellekte belirli sayıda bit tutar. Dolayısıyla ağırlık sayısını bit hassasiyetiyle çarptığınızda modelin dosya boyutunu bulursunuz.
Ağırlıklar geleneksel olarak 32 bitlik kayan noktalı sayılarla durur. Günümüzde 16 bitlik biçimler de yaygındır. Hugging Face belgeleri, kuantizasyonun bu ağırlıkları daha düşük hassasiyette tutarak bellek gereksinimini azalttığını anlatıyor. Belgeler int8 ya da int4 gibi tamsayı biçimlerini örnek veriyor.
Belleğin yanında hız da önemlidir. Cevap üretirken model bu ağırlıkları defalarca okur. Ağırlıklar ufalınca okuyacağı veri azalır. Bu nedenle kuantizasyon, çıkarım (inference) maliyetini düşürmenin en yaygın yollarından biridir.
Kısacası model büyüdükçe belleğe sığmak zorlaşır. Bu teknik darboğazı, modeli baştan tasarlamadan hafifletir.
Kuantizasyon nedir ve ağırlıklar düşük bit hassasiyetine nasıl dönüşür?
Kuantizasyon nedir sorusunun teknik cevabı basittir: geniş bir sayı aralığını daha az sayıda kutuya bölersiniz. Örneğin 8 bitlik bir tamsayı yalnızca 256 farklı değer taşır. Kayan noktalı sayıların aralığı ise çok geniştir. Bu yüzden önce hangi aralığı kutulara böleceğinize karar verirsiniz.
Hugging Face Optimum belgeleri bu dönüşümü ölçek (scale) ve sıfır noktası (zero point) ile anlatır. Ölçek, her kutunun gerçek dünyada kaç birime karşılık geldiğini söyler. Sıfır noktası ise gerçek sıfır değerinin hangi tamsayıya denk düştüğünü gösterir. Sıfırı tam temsil etmek önemlidir, çünkü modellerde sıfır her yerde karşımıza çıkar.
Aralığın dışına taşan değerleri en yakın uca çekersiniz. Bu yüzden aralığı doğru seçmek gerekir. Çok dar seçerseniz uç değerleri kaybedersiniz. Çok geniş seçerseniz kutular kabalaşır ve ince farklar yok olur.
Belgeler iki şemayı da tanıtır. Asimetrik şemada aralık sıfıra göre simetrik olmak zorunda değildir. Simetrik şemada ise sıfır noktası sıfıra denk gelir ve bazı işlemler basitleşir. Bunu seçmek çoğu zaman kütüphanenin işidir, siz yalnızca sonucu test edersiniz.
Bit sayısı düşünce bellek ne kadar azalır?
Bellek ihtiyacı, ağırlık sayısı ile her ağırlığın bayt cinsinden boyutunun çarpımıdır. Aşağıdaki küçük tablo yalnızca mantığı göstermek için kurduğumuz bir örnek hesaptır. Gerçek bir modelin sayılarını temsil etmez ve yalnızca ağırlıkları kapsar.
| Hassasiyet | Ağırlık başına bayt | Örnek: 1 milyar ağırlık için yaklaşık boyut |
|---|---|---|
| 32 bit kayan nokta | 4 | 4 GB |
| 16 bit kayan nokta | 2 | 2 GB |
| 8 bit tamsayı | 1 | 1 GB |
| 4 bit tamsayı | 0,5 | 0,5 GB |
Gerçek hayatta tablodaki oranlar birebir tutmaz. Ölçek ve sıfır noktası gibi ek bilgiler de yer tutar. Üstelik çalışma sırasında ara sonuçlar ve bağlam belleği (KV cache) ayrıca bellek ister. Yine de oran fikri doğrudur: bit sayısı yarıya inince ağırlıkların kapladığı alan da yaklaşık yarıya düşer.
Bu hesap size bir ön fikir verir. Örneğin kendi modelinizin ağırlık sayısını biliyorsanız aynı çarpımı yapıp aşağı yukarı hangi bellek sınıfına ihtiyaç duyacağınızı kestirebilirsiniz. Kararı yine de kendi donanımınızda yapacağınız bir ölçümle vermelisiniz.
Kuantizasyon nedir sorusu büyük dil modellerinde neden daha önemlidir?
Büyük dil modellerinde (LLM) ağırlıklar belleğin en büyük kalemidir. Model büyüdükçe tek bir ekran kartının ya da sunucunun belleği yetmemeye başlar. Kuantizasyon bu noktada modelin sığabilmesini sağlayan en doğrudan araçtır. Kuantizasyon nedir diye araştıran geliştiricilerin çoğu da tam bu sorunla karşılaşır.
Bir dil modeli cevabı parça parça üretir. Her parça için ağırlıkların büyük kısmını yeniden okur. Çoğu senaryoda bu okuma işi, hesaplamadan daha çok zaman alır. Ağırlıklar küçülünce okuma da hafifler. Bu yüzden kuantizasyon bellekle birlikte cevap hızına da dokunabilir.
Bu parçaların ne olduğunu merak ediyorsanız token yazımıza bakın. Ayrıca uzun bağlam kullandığınızda ek bir bellek kalemi doğar. Bağlam penceresi büyüdükçe bu kalem de büyür. Ağırlıkları küçültmek bu kalemi kendiliğinden küçültmez.
Kalibrasyon neden gerekir?
Kalibrasyon, kayan noktalı değerlerin hangi aralıkta durduğunu ölçme adımıdır. Ağırlıklar için bu kolaydır, çünkü ağırlıklar elinizde hazırdır. Etkinleştirme (activation) değerleri ise modele verdiğiniz girdiye göre değişir. Bu yüzden aralığı bir örnek veriyle tahmin etmeniz gerekir.
Optimum belgeleri üç yaklaşım sayar. Dinamik yöntemde aralığı çalışma anında hesaplarsınız. Statik yöntemde aralığı önceden, temsil gücü yüksek örnek verilerle belirlersiniz. Eğitim sırasındaki yöntemde ise model, yuvarlama hatasına alışmak için bu aralığı eğitimin içinde öğrenir.
Kalibrasyon verisi gerçek kullanımınıza ne kadar benzerse sonuç o kadar sağlıklı olur. Örneğin modeliniz Türkçe müşteri yazışmalarını yanıtlayacaksa, kalibrasyon örneklerinin de buna benzemesi mantıklıdır. Farklı bir veriyle kalibre ederseniz kalite beklenmedik yerlerde düşebilir.
Belgeler, aralığı seçmek için min max, hareketli ortalama ve histogram gibi teknikleri de sıralar. Sonuç olarak teknik ayrıntı kütüphanede gizlidir, ama veri seçimi sizin kararınızdır.
Eğitim sonrası kuantizasyon nasıl çalışır?
Eğitim sonrası kuantizasyon (post training quantization, PTQ), eğitimi bitmiş bir modeli yeniden eğitmeden sıkıştırmaktır. Elinizde hazır bir model vardır. Ağırlıkları daha düşük hassasiyete çevirirsiniz ve gerekirse küçük bir kalibrasyon verisiyle aralıkları ayarlarsınız.
Bu yöntemin en büyük avantajı hızlı ve ucuz olmasıdır. Yeniden eğitim için büyük bir hesaplama gücü ya da eğitim verisi gerekmez. Bu nedenle yerel çalıştırma ve hızlı deneme için en yaygın yoldur. Hugging Face belgeleri bazı yöntemlerin kalibrasyon istediğini, bazılarının ise model yüklenirken anında kuantizasyon yaptığını belirtiyor.
Dezavantaj şudur: model bu yuvarlamaya hazırlıksız yakalanır. Bit sayısı çok düşerse kalite kaybı artabilir. Dolayısıyla PTQ uygularken sonucu mutlaka kendi görevlerinizle denemeniz gerekir.
PTQ içinde de seçenekler vardır. Yalnızca ağırlıkları küçültebilirsiniz ya da etkinleştirmeleri de küçültebilirsiniz. İkinci seçenek daha fazla hız getirebilir, ama kalite riski de büyür.
Eğitim sırasında kuantizasyon nasıl çalışır?
Eğitim sırasında kuantizasyon (quantization aware training, QAT), yuvarlama hatasını eğitimin bir parçası yapar. Model eğitim boyunca sahte kuantizasyon işlemleriyle çalışır. Bu işlemler gerçek yuvarlamayı taklit eder. Böylece ağırlıklar, düşük hassasiyette de iyi sonuç verecek biçimde kendini ayarlar.
Optimum belgeleri bu yaklaşımı, eğitim sonrası yöntem yeterli doğruluğu vermediğinde son adım olarak önerir. Mantık şöyledir: önce basit yöntemi denersiniz, kalite yetmezse daha pahalı olan QAT'a geçersiniz.
QAT genellikle daha iyi kalite verir. Buna karşılık ek eğitim süresi, veri ve uzmanlık ister. Bu yüzden çoğu işletme için ilk tercih eğitim sonrası yöntemlerdir. Kendi modelini eğiten ekipler ise QAT'ı ciddi bir seçenek olarak değerlendirir.
Bir benzetme yapalım. PTQ, bitmiş bir resmi küçük bir çerçeveye sığdırmaktır. QAT ise ressamın baştan küçük çerçeveyi bilerek çizmesidir. İkincisi daha emek ister, ama sonuç genellikle daha tutarlıdır.
Eğitim sonrası ve eğitim sırasında kuantizasyon arasındaki fark nedir?
İki yöntem aynı hedefe gider, ama yol ve maliyet olarak ayrışır. Aşağıdaki tablo farkları yan yana gösteriyor. Seçim yaparken tabloyu hızlı bir rehber olarak kullanabilirsiniz.
| Ölçüt | Eğitim sonrası (PTQ) | Eğitim sırasında (QAT) |
|---|---|---|
| Ne zaman uygularsınız | Model hazır olduktan sonra | Eğitim ya da ek eğitim sırasında |
| Yeniden eğitim | Gerekmez | Gerekir |
| Maliyet ve süre | Genellikle düşük | Genellikle yüksek |
| Kalite | Düşük bit sayısında kayıp artabilir | Genellikle daha korunaklı |
| Kimin için uygun | Hazır modeli kullanan ekipler | Kendi modelini eğiten ekipler |
Seçimde pratik kural şudur: önce PTQ ile başlayın, sonucu ölçün. Kalite hedefinizi tutturamıyorsanız bit sayısını yükseltin ya da QAT'ı düşünün.
Ayrıca iki yöntemi aynı proje içinde de kullanabilirsiniz. Ekip önce hızlı bir PTQ denemesi yapar. Sonuç yetersizse yalnızca kritik model için QAT bütçesi ayırır.
int8, int4 ve fp16 arasında nasıl seçim yaparsınız?
Seçimin tek doğrusu yoktur, ama sağlam bir yöntem vardır. Yüksek hassasiyetle başlar, adım adım aşağı inersiniz. Her adımda kaliteyi ölçersiniz. Kalite hedefinizin altına düştüğünüz noktada bir adım geri dönersiniz.
- 16 bit (fp16 ya da bf16): Güvenli başlangıç noktasıdır. Bellek kazancı orta düzeydedir, kalite riski düşüktür.
- 8 bit (int8): Çoğu iş için dengeli bir adımdır. Bellek belirgin biçimde azalır. Yine de kendi görevlerinizde test etmelisiniz.
- 4 bit (int4): Agresif bir adımdır. Yerel kullanımda çok tercih edilir, ama sayı, kod ve uzun mantık gibi işlerde dikkat ister.
- 4 bitin altı: Hugging Face uyumluluk tablosu 1 ve 2 bit yöntemlerini de sayar. Bu yöntemler kalibrasyon ister ve daha çok araştırma alanıdır.
Bu sıralama kesin bir kural değil, saha deneyimine dayalı bir başlangıç yaklaşımıdır. Hangi biçimin hangi donanımda çalıştığını sağlayıcının resmi belgesinden kontrol edin.
Kuantizasyon kaliteyi ne kadar düşürür?
Bu sorunun tek ve sabit bir cevabı yoktur. Kayıp; modelin yapısına, bit sayısına, seçtiğiniz yönteme ve görevinize göre değişir. Bu yüzden internette gördüğünüz tek bir yüzdeyi kendi işinize uyarlamayın. Biz de kaynağı olmayan bir oran yazmıyoruz.
Genel eğilim şöyledir: bit sayısı düştükçe risk artar. Kuantizasyon nedir diye düşünürken bu eğilimi hatırlayın: orta düzeyde bir azaltma çoğu görevde göze batmaz. Çok agresif bir azaltma ise bazı görevlerde belirgin sorun çıkarır. Özellikle matematik, kod üretimi ve uzun mantık zincirleri hassasiyete duyarlı olabilir.
LLM.int8 makalesi, büyük modellerde birkaç uç değerin (outlier) kuantizasyonu zorlaştırdığını anlatır. Yani sorun her ağırlıkta eşit değildir. Bazı yöntemler bu uç değerleri ayrı ele alarak kaliteyi korumaya çalışır.
Büyük modellerin temelini büyük dil modelleri yazımızda anlattık. Makalelerin ayrıntısı için kaynaklar bölümüne bakabilirsiniz.
Örneğin aynı model bir soruda kusursuz, başka bir soruda belirgin biçimde zayıf kalabilir. Bu yüzden ortalama bir puana güvenmek yerine, kritik görevlerinizi tek tek izleyin. Böylece sürpriz yaşamazsınız.
Kuantize ettiğiniz modeli nasıl test edersiniz?
Kuantizasyon nedir sorusunun pratik yanı testtir; test, sürecin en kritik adımıdır. Bir model küçüldü diye iyi çalıştığını varsayamazsınız. Orijinal modeli ve kuantize sürümü aynı sorularla karşılaştırmalısınız. Bunun için basit bir plan yeterlidir.
- Gerçek kullanımınızdan temsil gücü yüksek bir soru seti toplayın. Set boyutu işinize göre değişir; kural değil, başlangıç fikri olarak birkaç düzine soru yeterli olabilir.
- Orijinal modelle cevap alın ve bunları referans olarak saklayın.
- Kuantize modele aynı soruları aynı ayarlarla sorun.
- Cevapları doğruluk, biçim ve dil kalitesi açısından yan yana puanlayın.
- En kritik görevlerinizde, örneğin sayı ve kod içeren cevaplarda, ayrıca kontrol yapın.
- Hız ve bellek kullanımını ölçün, çünkü amaç kazancı kanıtlamaktır.
Sonuç sizi tatmin ediyorsa devam edersiniz. Etmiyorsa bit sayısını yükseltin ya da başka bir yöntem deneyin. Her değişiklikten sonra testi tekrarlayın.
Modelin rastgeleliğini ayarlayan değerleri sabit tutmak da önemlidir. İki modeli karşılaştırırken `temperature` gibi ayarları aynı bırakın; yoksa farkın kaynağını bulamazsınız.
Kuantizasyon her zaman hız kazancı sağlar mı?
Hayır, her zaman değil. Bellek kazancı neredeyse garantidir, çünkü dosya gerçekten küçülür. Hız kazancı ise donanıma, yönteme ve iş yüküne bağlıdır. Donanımınız seçtiğiniz düşük bit biçimini doğrudan hesaplayamıyorsa değerleri önce geri açması gerekir. Bu ek iş kazancı eritebilir.
Optimum belgeleri bu konuda dürüst bir not düşer. Küçük modellerde bazı biçimler enerji tüketimini artırabilir. Aynı belge, tek seferde işlenen istek sayısının (batch) sonucu güçlü biçimde etkilediğini de söyler. Yani yalnızca bit sayısına bakmak yetmez.
Özetle üç şeyi birlikte düşünün: model boyutu, donanım desteği ve istek yoğunluğu. Ardından kendi ortamınızda küçük bir hız ölçümü yapın. Böylece "küçük dosya" ile "hızlı sistem" arasındaki farkı görürsünüz.
Yerel çalıştırmada kuantizasyonun rolü nedir?
Modeli kendi bilgisayarınızda ya da sunucunuzda çalıştırmak istediğinizde ilk engel bellektir. Kuantizasyon bu engeli aşmanın en pratik yoludur. Aynı model, daha küçük bir bellekle ve daha ucuz bir donanımla çalışabilir.
Hugging Face belgeleri, yerel kullanımda sık görülen bazı biçim ve yöntem adlarını listeler. GGUF (llama.cpp ekosistemi), GPTQ, AWQ ve bitsandbytes bunlardan bazılarıdır. Hangisinin hangi donanımda çalıştığı değişebildiği için uyumluluk tablosunu resmi belgeden kontrol etmenizi öneririz.
Yerel model çalıştıran araçlar bu seçimi kullanıcıya kolaylaştırır. Ollama ile kendi sunucunuzda LLM çalıştırmayı ayrı bir yazıda anlattık. Donanım tarafını düşünüyorsanız GPU sunucu kiralama rehberimiz da işinize yarar.
Yerel kullanımın bir bedeli de vardır: sürüm, biçim ve donanım uyumunu sizin takip etmeniz gerekir. Bu yüzden önce küçük bir deneme kurmak akıllıca olur.
Kuantizasyon nedir sorusunun işletme tarafındaki karşılığı nedir?
İşletme için kuantizasyon, aynı işi daha küçük kaynakla yapmak demektir. Üç tipik fayda vardır: daha düşük bellek, daha düşük gecikme ve daha düşük altyapı maliyeti. Ayrıca veriyi dışarı göndermeden yerelde çalışmak, gizlilik açısından da avantaj sağlar.
Örnek senaryo: Bir e-ticaret ekibi, müşteri sorularını sınıflandıran küçük bir modeli kendi sunucusunda çalıştırmak istiyor. Orijinal model mevcut belleğe sığmıyor. Ekip modeli kuantize ediyor, sınıflandırma doğruluğunu kendi örnek sorularıyla ölçüyor ve kabul edilebilir bulursa canlıya alıyor. Bu senaryo kurgudur, gerçek bir müşteri sonucu değildir.
Bir başka örnek senaryo, iç belge arama asistanıdır. Şirket belgeleri dışarı çıkmasın diye model yerelde çalışır. Kuantizasyon, bu modelin makul bir sunucuya sığmasını sağlar.
Bu tür işleri planlarken destek almak isterseniz yerel LLM kurulumu çözümümüze göz atabilirsiniz.
Kuantizasyon hangi durumlarda doğru seçim değildir?
Kuantizasyon nedir öğrenmek kadar nerede işe yaramadığını bilmek de önemlidir. Her durumda çözüm değildir. Birkaç durumda dikkatli olmanız gerekir. İlk olarak, görev çok hassas sayısal doğruluk istiyorsa kayıp riski daha önemli hale gelir. Ayrıca modeliniz zaten küçükse kazanç sınırlı kalabilir.
Optimum belgelerinin enerji bölümü de önemli bir uyarı içerir. Küçük modellerde bazı kuantizasyon biçimleri, çözme (dequantization) yükü yüzünden enerji tüketimini artırabilir. Yani bellek kazancı her zaman hız ya da enerji kazancı anlamına gelmez. Bunu kendi donanımınızda ölçmelisiniz.
Son olarak, hedef donanımınız seçtiğiniz biçimi desteklemiyorsa kazanç doğmaz. Bu yüzden önce donanımı, sonra yöntemi seçmek daha sağlıklıdır. Karar vermeden önce küçük bir deneme yapmak genellikle en ucuz sigortadır.
Bir de hizmet tarafı vardır. Sağlayıcının API üzerinden sunduğu bir modeli kullanıyorsanız kuantizasyon kararını genellikle sağlayıcı verir; sizin elinizde olan, doğru modeli ve ayarı seçmektir.
Kuantizasyon nedir bilen bir ekipte kim hangi işi üstlenir?
Kuantizasyon yalnızca bir mühendislik işi değildir. İş sahibi hedefi koyar: neyi, neden küçültüyoruz? Geliştirici yöntemi seçer ve uygular. Alanı bilen kişi ise cevapların kabul edilebilir olup olmadığına karar verir. Bu üçlü olmadan test eksik kalır.
İş sahibi tarafında sorular basittir. Hangi maliyeti düşürmek istiyorsunuz? Hangi gecikme kabul edilebilir? Cevap hataları ne kadar pahalıya mal olur? Geliştirici tarafında ise donanım, biçim ve kütüphane uyumu öne çıkar.
Alan uzmanı, yani çoğu zaman müşteri hizmetleri ya da operasyon çalışanı, örnek soruları toplamada büyük değer katar. Gerçek sorular, yapay üretilmiş sorulardan çok daha öğreticidir. Ayrıca ekip içinde ortak bir dil oluşur. Dolayısıyla kuantizasyon projesini kısa bir ortak çalışma olarak kurmak, uzun bir teknik denemeden daha verimlidir.
Kuantizasyon verinin gizliliğiyle nasıl ilişkilidir?
Kuantizasyon tek başına gizlilik sağlamaz. Ancak modeli yerelde çalıştırmayı kolaylaştırdığı için dolaylı bir katkısı vardır. Model kendi sunucunuzda çalışırsa, soruları ve belgeleri üçüncü bir tarafa göndermeniz gerekmez. Bu, bazı işletmeler için önemli bir avantajdır.
Yine de dikkatli olun. Yerel çalıştırma, güvenlik sorumluluğunu size taşır. Sunucuyu, erişim yetkilerini ve kayıtları siz yönetirsiniz. Kişisel veri işliyorsanız ilgili mevzuata uymanız gerekir. Bu yazı hukuki danışmanlık değildir; KVKK gibi konularda uzman görüşü alın.
Ayrıca modelin kendisi de bir riskli yüzeydir. Kötü niyetli bir girdi modeli yanlış yönlendirebilir. Prompt injection konusunu bilmek, yerel bir sistem kurarken de gereklidir.
Kuantizasyon, distilasyon ve budama arasındaki fark nedir?
Üç yöntem de modeli küçültür, ama farklı yoldan. Kuantizasyon sayıların hassasiyetini düşürür. Budama (pruning) önemsiz bağlantıları ya da ağırlıkları siler. Distilasyon ise büyük bir modelin davranışını küçük bir modele öğretir. Distilasyonu ayrıntılı anlattığımız model distilasyonu yazımıza bakabilirsiniz.
| Yöntem | Ne yapar | Yeniden eğitim | Tipik sonuç |
|---|---|---|---|
| Kuantizasyon | Sayı hassasiyetini düşürür | Çoğu zaman gerekmez | Daha küçük dosya, aynı yapı |
| Budama | Önemsiz bağlantıları siler | Çoğu zaman gerekir | Daha seyrek model |
| Distilasyon | Büyük modelden küçük model öğretir | Gerekir | Yeni, küçük bir model |
Bu yöntemleri birlikte kullanabilirsiniz. Örneğin önce distilasyonla küçük bir model elde edip sonra onu kuantize edebilirsiniz.
Hangisini seçeceğiniz hedefinize bağlıdır. Dosya boyutunu hızla küçültmek istiyorsanız kuantizasyon en kısa yoldur. Yapısal olarak daha hafif bir model istiyorsanız distilasyon ve budama devreye girer.
Kuantizasyon nedir diye soranlar hangi terimleri karıştırır?
En sık karışan terimler şunlardır. İlk olarak fp16 ve bf16, 16 bitlik kayan nokta biçimleridir ve kendileri de bir tür hassasiyet düşürmedir. int8 ve int4 ise tamsayı biçimleridir. Bit sayısı küçüldükçe bellek azalır, ama yuvarlama riski artar.
İkinci karışıklık, ince ayarla (fine tuning) ilgilidir. İnce ayar modelin bilgisini değiştirir, kuantizasyon yalnızca tutma biçimini değiştirir. Bu iki yöntemi birlikte de kullanabilirsiniz. Detay için fine tuning ve LoRA yazımızı okuyabilirsiniz.
Üçüncü karışıklık cihaz üstü çalışmayla ilgilidir. Edge AI bir çalışma yeridir, kuantizasyon ise o yerde çalışmayı kolaylaştıran bir tekniktir. Son olarak açık ağırlıklı modeller ağırlıkların indirilebilir olması demektir. Kuantize etmek için ağırlıklara erişmeniz gerekir, bu yüzden iki kavram sık birlikte geçer.
Hazır kuantizasyonlu model indirirken hangi riskleri düşünmelisiniz?
Hazır kuantizasyonlu modeller internette kolayca çıkar. Ancak her kaynak güvenilir olmayabilir. Bilinmeyen birinin hazırladığı dosyada ne olduğunu doğrulamak zordur. Bu nedenle modeli resmi sağlayıcıdan ya da iyi tanınan, doğrulanmış bir kaynaktan almak daha güvenlidir.
Lisans da ayrı bir konudur. Kuantizasyonlu sürüm, orijinal modelin lisans koşullarını taşır. Ticari kullanım izni olup olmadığını modelin resmi sayfasından kontrol etmeniz gerekir. Bu yazı hukuki danışmanlık değildir; lisans ve veri koruma sorularında uzman görüşü alın.
Son olarak, kuantizasyon bir güvenlik önlemi değildir. Modelin davranışını korumaya çalışır, ama onu daha güvenli yapmaz. Kuantizasyonlu bir model de yanlış bilgi üretebilir ya da yanıltıcı cevaplar (halüsinasyon) verebilir. Çıktı denetimi yine sizin sorumluluğunuzdadır.
Kuantizasyon kararı için pratik kontrol listesi nedir?
Karar vermeden önce şu listeyi adım adım izleyebilirsiniz. Liste hem işletme sahiplerine hem de geliştiricilere göre kurgulu.
- Amacınızı yazın: bellek mi, hız mı, maliyet mi azaltmak istiyorsunuz?
- Hedef donanımınızı ve desteklediği biçimleri resmi belgeden kontrol edin.
- Önce eğitim sonrası bir yöntemle başlayın.
- Orijinal ve kuantize modeli aynı örnek sorularla karşılaştırın.
- Sayı, kod ve uzun mantık içeren görevleri ayrıca test edin.
- Kaynağın güvenilirliğini ve lisansı doğrulayın.
- Hız ve bellek kazancını gerçekten ölçün.
- Canlıya almadan önce bir geri dönüş planı hazırlayın.
Ayrıntıları yukarıdaki bölümlere bıraktık. Yine de her maddeyi işaretlemeden canlıya geçmemenizi öneririz.
Kuantizasyon nedir bilmeyenlerin en sık yaptığı hatalar nelerdir?
Ekiplerin düştüğü hatalar genellikle tahmin edilebilir. İlk hata, yalnızca dosya boyutuna bakıp kaliteyi test etmemektir. İkinci hata, en düşük bit sayısını otomatik olarak en iyi seçenek sanmaktır. Üçüncü hata ise kalibrasyon verisini gerçek kullanımdan farklı seçmektir.
Bir başka hata, donanım desteğini atlamaktır. Seçtiğiniz biçim donanımınızda hızlı çalışmıyorsa küçük dosya size hız getirmez. Bu yüzden önce küçük bir deneme yapmak çoğu zaman en doğru yoldur.
Son olarak, kuantize modeli bir kez test edip bırakmak risklidir. Model, yöntem ya da görev değiştiğinde testi tekrarlayın. Token ve maliyet mantığını bilmek, tasarrufun gerçek değerini anlamanıza da yardımcı olur.
Kuantizasyon için hangi kaynaklara bakmalısınız?
Güvenilir kaynaklar önemlidir. Kavramı ve yöntemleri resmi belgelerden öğrenmeniz, sonradan yanlış bilgiyle uğraşmanızı önler. Aşağıdaki kaynakları birincil referans olarak öneriyoruz.
- Hugging Face Transformers kuantizasyon genel bakışı: yöntemler ve uyumluluk tablosu.
- Hugging Face Optimum kuantizasyon kavram rehberi: ölçek, sıfır noktası, kalibrasyon ve adımlar.
- Tamsayı aritmetiğiyle çıkarım için kuantizasyon makalesi: temel akademik kaynak.
- LLM.int8 makalesi: büyük dil modellerinde uç değer sorunu.
- GPTQ makalesi: eğitim sonrası kuantizasyon yaklaşımı.
Yazılım tarafında özel bir çözüm düşünüyorsanız özel yazılım geliştirme hizmetimizi da inceleyebilirsiniz. Güncel yöntem adlarını ve desteklenen donanımı her zaman sağlayıcının resmi belgesinden kontrol edin.



