17 puan yazan GN⁺ 2026-03-13 | 1 yorum | WhatsApp'ta paylaş
  • Microsoft'un bitnet.cpp projesi, 1 bit büyük dil modelleri (LLM) için resmî çıkarım çerçevesi olup CPU ve GPU'da hızlı ve kayıpsız çıkarımı destekliyor
  • ARM CPU'larda 1,37~5,07 kat hız artışı ve %55,4~70 enerji tasarrufu, x86 CPU'larda ise 2,37~6,17 kat hız artışı ve %71,9~82,2 enerji tasarrufu sağlıyor
  • Paralel kernel uygulamaları ve embedding quantization eklenerek önceye kıyasla 1,15~2,1 kat ek performans artışı sunuluyor
  • BitNet b1.58 modeli tek bir CPU üzerinde saniyede 5~7 token hızında çalıştırılabiliyor; bu da yerel ortamda çok büyük modellerin çalıştırılması olasılığını genişletiyor
  • llama.cpp ve T-MAC tabanlı olarak geliştirildi; düşük bitli LLM çıkarım verimliliği için açık kaynak ekosisteminin büyümesine katkı sağlıyor

bitnet.cpp genel bakış

  • bitnet.cpp, 1 bit LLM'ler (ör. BitNet b1.58) için resmî çıkarım çerçevesidir ve CPU ile GPU üzerinde optimize edilmiş kernel'ler sunar
    • NPU desteği ileride eklenecek
  • İlk sürüm CPU çıkarımını destekliyor ve hem ARM hem de x86 mimarilerinde hız ile enerji verimliliği iyileştirmelerini kanıtlıyor
    • ARM CPU: 1,37~5,07 kat hız artışı, %55,4~70 enerji tasarrufu
    • x86 CPU: 2,37~6,17 kat hız artışı, %71,9~82,2 enerji tasarrufu
  • 100B parametreli BitNet b1.58 modeli, tek bir CPU üzerinde saniyede 5~7 token hızında çalıştırılabiliyor

En yeni optimizasyonlar

  • Paralel kernel uygulamaları, tiling yapılandırması ve embedding quantization özellikleri eklenerek önceye kıyasla 1,15~2,1 kat ek hız artışı elde edildi
  • Çeşitli donanım platformları ve iş yüklerinde performans iyileşmesi doğrulandı
  • Ayrıntılı teknik içerik optimization guide belgesinde sunuluyor

Demo ve resmî modeller

  • Apple M2 üzerinde BitNet b1.58 3B modelini çalıştıran bir demo sunuluyor
  • Resmî model olarak BitNet-b1.58-2B-4T Hugging Face'te yayımlandı ve x86 ile ARM CPU'larda destekleniyor
  • Desteklenen modeller arasında bitnet_b1_58-large(0.7B), bitnet_b1_58-3B(3.3B), Llama3-8B-1.58, Falcon3, Falcon-E serileri yer alıyor

Kurulum ve derleme

  • Gereksinimler: Python 3.9 veya üzeri, CMake 3.22 veya üzeri, Clang 18 veya üzeri
    • Windows kullanıcılarının Visual Studio 2022 kurması gerekiyor
    • Debian/Ubuntu kullanıcıları için otomatik kurulum betiği sunuluyor
  • Conda ortamı kullanılması öneriliyor ve setup_env.py ile model ortamı yapılandırılabiliyor
  • Model, Hugging Face'ten indirildikten sonra yerel yoldan çalıştırılabiliyor

Kullanım ve benchmark

  • run_inference.py ile quantized model çıkarımı çalıştırılabiliyor
    • Başlıca parametreler: model yolu(-m), prompt(-p), thread sayısı(-t), context boyutu(-c), temperature(-temp)
  • e2e_benchmark.py betiğiyle token sayısı, prompt uzunluğu, thread sayısı belirtilerek performans ölçümü yapılabiliyor
  • Herhangi bir resmî model yoksa, generate-dummy-bitnet-model.py ile dummy model oluşturup benchmark yapılabiliyor

Model dönüştürme ve SSS

  • .safetensors checkpoint'lerini gguf formatına dönüştüren bir betik sunuluyor
  • SSS bölümünde llama.cpp derleme hatası (std::chrono ile ilgili) için çözüm ve Windows'ta clang ortamı yapılandırma adımları anlatılıyor
    • Visual Studio geliştirici komut istemi veya PowerShell'de ortamın başlatılması gerekiyor

1 yorum

 
GN⁺ 2026-03-13
Hacker News görüşleri
  • Microsoft aslında 1.58 bit değil 2 bit kullanıyor
    Bu durumda -1, 0, 1, 2 olmak üzere dört değer temsil edilebiliyor
    İnhibitör sinapsların %20-30 paya sahip olduğu düşünüldüğünde, bunun biyolojik beynin yapısıyla iyi örtüştüğünü düşünüyorum

    • Üçüncü cümleyi, yani “inhibitör sinapsların %20-30 paya sahip olduğu” kısmını biraz daha açıklayabilir misin, merak ettim
  • Sık sık “asgari işlevli LLM”in nasıl bir şey olacağını merak ediyorum
    Yani elinde sadece minimum bilgi olup geri kalanını Google aramasıyla tamamlayarak yine de yeterince makul cevaplar verebilen bir model
    Encyclopedia Britannica gibi bir yer verilerini LLM'lere satıp sonuç doğrulama hizmeti sunsa büyük fark yaratabilir gibi geliyor
    Wikipedia da iyi ama insan hatası ve önyargısı bakımından zayıf kalıyor

    • Andrej Karpathy'nin kısa videosu bu konudan bahsediyor
      Küçük LLM'ler zaten bu yöne doğru ilerliyor; genel bilgi eksikleri var ama araç kullanma yetenekleri (ör. Google araması) giderek gelişiyor
      Yine de neyi bilip neyi bilmediklerini net biçimde ayırt etmek hâlâ zor bir problem
    • Benim kastettiğim “asgari işlevli LLM”den çok dili iyi bilip neredeyse hiç bilgiye sahip olmayan bir LLM
      Belirli bir cihazı tanımayan bir mühendis gibi; problem çözme becerisi var ama ayrıntı bilgisi yok
      Böyle bir modelin sadece Google araması ya da wiki aramasıyla işi çözüp çözemeyeceğinden emin değilim ama edge LLM mimarisi gelecekte standart olacak gibi duruyor
    • Muhakeme yeteneği sonuçta eğitim sırasında edinilen bilgi miktarına bağlı
      Eğitim verisinde bulunan bilgiyi aramak ve yorumlamak daha kolay oluyor
      Bu yüzden içsel ezber yerine harici bellek (arama vb.) bağımlı eğitim daha pratik olabilir
    • Wikipedia'daki hata ve önyargılardan endişe ederken aynı anda web erişimi olan bir LLM'in daha iyi olacağını düşünmek bana çelişkili geliyor
      Ben tam tersini düşünüyorum
    • “Makul cevap” ifadesinin tam olarak hangi seviyeyi kastettiğine göre sonuç değişir gibi görünüyor
  • Orijinal makaleye (pdf) göre fp16 modele kıyasla yaklaşık 4-5 kat daha fazla parametre gerekiyor
    Elle derleyip denenebilir ama baştan eğitmek gerektiği için seçenekler sınırlı
    Yine de en güncel 4 bit ve 8 bit kuantizasyonlu modellere göre çıkarım hızı daha yüksek olabilir

  • Asıl mesele enerji tasarrufu etkisi
    CPU çıkarımında %70-82 tasarruf mümkün deniyor
    Eğer 1 bit modeller yeterince iyi hâle gelirse, GPU olmadan sıradan donanımlarda LLM çalıştırmak mümkün olacak ve bu da erişilebilirlik dengelerini değiştirecek

  • bitnet.cpp'nin 1 bit LLM'ler (BitNet b1.58 vb.) için resmi çıkarım çatısı olduğu söyleniyor ama
    “1 bit mi 1 trit mi” konusunda bir karışıklık var

    • “1 bit LLM” daha çok pazarlama terimi gibi; gerçekte 3 durum (-1, 0, 1) kullanıldığı için 1.58 bit ediyor
    • log₂(3)≈1.58 olduğundan bu, 2 durumlu (1 bit) değil 3 durumlu (1.58 bit) bir model
      İki kavramı birbirine karıştırmak kafa karıştırıcı
  • Bu projenin geliştirilmeye devam ettiğini görmek sevindirici
    Geçen yıl ilgili yazıyı görünce potansiyel hissetmiştim ama yeni model çıkmaması hayal kırıklığı yaratmıştı

    • Ama bu yaklaşım sonuçta sadece yüksek hassasiyetli modellerin kuantizasyonu; yani çıkarımı hızlandırıyor ama eğitimi hızlandırmıyor
      Asıl ilginç olan, kayan nokta işlemleri olmadan ikili modelleri doğrudan eğitmek yönü
      İlgili makale NeurIPS 2024'te var
  • “100B BitNet çalıştırabiliyor” demek modelin mevcut olduğu değil, çıkarım çatısının bunu desteklediği anlamına geliyor

    • Gerçekte bir dummy model kullanılmış gibi görünüyor
      “1-bit 100b model” diye aratınca indirilebilir bir model çıkmıyor
  • Model çıktısının kalitesi daha çok GPT-2 seviyesinde gevezeliğe benziyor ve paragrafları olduğu gibi tekrar ediyor
    Hatta (Jenkins, 2010) gibi uydurma alıntıları sürekli yeniden kullanıyor

    • Ama bunun 2 yıllık 3B parametreli bir temel model olduğunu ve sadece 100B token ile eğitilmiş araştırma sürümü olduğunu da not etmek gerek
  • Başlık yanıltıcı
    Gerçekte eğitilmiş bir 100B model değil, onu işleyebilen bir çıkarım çatısı söz konusu
    Ben M2 Max 96GB üzerinde llama.cpp + LiteLLM ile 70B kuantize bir model çalıştırıyorum ve darboğaz bellek bant genişliği
    1.58 bit yaklaşımı matris çarpımını toplamalara dönüştüren bir yapı olduğu için CPU'da temelden farklı bir hesaplama deseni kullanıyor
    Eğer CPU tek çekirdekte 100B sınıfı bir modeli saniyede 5-7 token hızında çalıştırmak mümkün olursa, bu cihaz üstü çıkarım için dönüm noktası olur
    Çatı hazır, şimdi geriye birilerinin gerçekten modeli eğitmesi kalıyor

    • Microsoft 2 yıldır modeli kendisi eğitmediyse, iddialarını olduğu gibi kabul etmek zor geliyor
    • “Yeni model” deniyor ama Hugging Face'teki ağırlıklar 11 ay önce yüklenmiş ve 2B parametre seviyesinde
      Tanıtıma kıyasla somut çıktı zayıf
    • 2 bit işlem donanımda son derece ucuza uygulanabildiği için, özel çip yapılırsa GPU olmadan da güçlü çıkarım mümkün olabilir
      Eğitim için yine GPU gerekir ama çıkarıma özel donanım çok daha basit olabilir
    • Saniyede 5-7 token hızı gerçek okuma hızından daha yavaş
      7 token/sn veren bir modeli kullandım ve yavaş yürüyen birinin arkasından gidiyormuşum gibi bunaltıcıydı
      Yerel ortamda en az 10 token/sn üstü hedeflenmeli
    • “CPU'daki hesaplama profili temelden farklı” iddiasına şüpheyle yaklaşıyorum
      Modern CPU'lardaki FMA (Fused Multiply-Add) komutları, basit toplamayla neredeyse aynı throughput'a sahip
  • İleride NPU'lu PC'lerin ne zaman gerçekten sonuç vermeye başlayacağını merak ediyorum
    AMD, NPU/iGPU hibrit çıkarım çekirdeklerinde iyi sonuçlar alıyor
    Böyle büyük modeller NPU'da çalışırsa CPU'ya kıyasla enerji verimliliği çok daha iyi olur

    • Yakın zamanda OpenAI'nin Whisper'ını CPU'da çalıştırdım, sonra Intel NPU için optimize edilmiş sürümü denedim; 6 kat daha hızlıydı ve çok daha sessizdi
      O günden beri NPU hayranıyım. Elbette RTX 5090 düzeyi değil ama CPU'dan çok daha verimli
    • Rockchip RK3588 SBC'nin NPU'sunda da şimdiden küçük LLM'ler çalıştırılabiliyor
      Yazılım ekosistemi kararsız olsa da CPU/GPU kullanımı neredeyse sıfır düzeyinde
    • Yine de NPU'ların gerçekten o kadar güçlü olup olmadığından emin değilim
      Ben onların düşük güç odaklı tasarımlar olduğunu sanıyordum