|
|
2025-2-7 10:51:47 tarihinde yayınlandı
|
|
|
|

GGUF büyük model dosya formatına giriş
PyTorch gibi çerçeveler genellikle büyük dil modellerinin geliştirilmesinde kullanılır ve ön eğitim sonuçları genellikle ilgili ikili formatta kaydedilir; örneğin pt eki dosyası genellikle PyTorch çerçevesi tarafından kaydedilen ikili ön eğitim sonucudur.
Ancak, büyük modellerin depolanmasıyla ilgili çok önemli bir sorun, model dosyalarının çok büyük olmasıdır ve modelin yapısı, parametreleri vb. modelin akıl yürütme etkisini ve performansını da etkiler. Büyük modelleri depolama ve değişimde daha verimli hale getirmek için farklı formatlarda büyük model dosyaları mevcuttur. Bunlar arasında GGUF, çok önemli bir büyük model dosya formatıdır.
GGUF dosyası, Georgi Gerganov tarafından tanımlanan ve yayımlanan büyük model dosya formatı olan GPT-Generated Unified Format anlamına gelir. Georgi Gerganov, ünlü açık kaynak projesi llama.cpp'ın kurucusudur.
GGUF, ikili format dosyaları için bir spesifikasyondur ve orijinal büyük model ön eğitim sonuçları GGUF formatına dönüştürülür, daha hızlı yüklenip kullanılabilir ve daha az kaynak tüketebilir. Bunun nedeni, GGUF'nin büyük modellerin ön eğitim sonuçlarını korumak için kompakt ikili kodlama formatları, optimize edilmiş veri yapıları, bellek eşleme gibi çeşitli teknolojiler kullanmasıdır.
GGUF, GGML, GGMF ve GGJT farkları
GGUF, modelleri hızlıca yüklemek ve kaydetmek için tasarlanmış ikili bir formattır. GGML, GGMF ve GGJT'nin halefi olan dosya formatıdır ve modeli yüklemek için gereken tüm bilgileri içererek açıklık sağlar. Ayrıca, uyum bozulmadan modele yeni bilgilerin eklenebilmesi için ölçeklenebilir olarak tasarlanmıştır.
- GGML (Sürüm Yok): Versiyonlama veya hizalama olmadan temel format.
- GGMF (Versiyonlu): GGML ile aynı, ancak sürüm ile.
- GGJT: Hizalanması gereken mmap'lerle kullanılacak şekilde tensörleri hizala. v1, v2 ve v3 aynıdır, ancak sonraki sürümler önceki sürümlerle uyumlu olmayan farklı kuantizasyon şemaları kullanır.
GGUF formatı büyük model dosyalarının neden iyi performans gösterdiğini
GGUF dosya formatı, birkaç temel özellik sayesinde modelleri daha hızlı yükleyebilir:
İkili format: GGUF, ikili format olarak metin dosyalarından daha hızlı okunabilir ve ayrıştırılabilir. İkili armalar genellikle daha kompakttır, bu da okuma ve ayrıştırma için gereken I/O işlemlerini ve işlem süresini azaltır.
Optimize Edilmiş Veri Yapıları: GGUF, model verilerine hızlı erişim ve yüklenmeyi destekleyen özel optimize edilmiş veri yapıları kullanabilir. Örneğin, veriler bellek yüklemesi için gerektiği gibi organize edilebilir ve yük üzerinde işleme azaltılabilir.
Bellek Eşleme (mmap) Uyumluluğu: Eğer GGUF bellek eşlemeyi (mmap) destekliyorsa, bu verilerin doğrudan diskten bellek adres alanına eşlenmesine olanak tanır ve böylece veri yüklenmesi daha hızlı olur. Bu şekilde, verilere tüm dosya yüklenmeden erişilebilir ki bu özellikle büyük modeller için etkilidir.
Verimli Serileştirme ve Deserileştirme: GGUF, verimli serileştirme ve seri dışı bırakma yöntemleri kullanabilir, bu da model verilerinin hızla kullanılabilir formatlara dönüştürülebileceği anlamına gelir.
Az sayıda bağımlılık ve harici referanslar: GGUF formatı kendi içinde olacak şekilde tasarlanmışsa, yani tüm gerekli bilgiler tek bir dosyada saklanıyorsa, bu modeli ayrıştırıp yüklemek için gereken harici dosya arama ve okuma işlemlerini azaltır.
Veri Sıkıştırma: GGUF formatı, dosya boyutlarını azaltarak okuma sürecini hızlandırarak etkili veri sıkıştırma teknikleri kullanabilir.
Optimize Edilmiş Indeksleme ve Erişim Mekanizmaları: Dosyalardaki verilerin indeksleme ve erişim mekanizmaları, ihtiyaç duyulan belirli veri parçalarını daha hızlı bulup yüklemeyi kolaylaştıracak şekilde optimize edilebilir.
Özetle, GGUF çeşitli optimizasyon yöntemleriyle hızlı model yüklemesini sağlar; bu durum özellikle farklı modellerin sık yüklenmesini gerektiren senaryolar için önemlidir.
GGUF örnek dosyası:Bağlantı girişi görünür. llama.cpp Proje Adresi:Bağlantı girişi görünür. |
Önceki:[AI] (5) Ollama isteği bilgisini yazdırınÖnümüzdeki:Ön yüz, .js dosyasından .d.ts bir dosya üretir
|