Moonshot AI tarafından Kimi K2.5'in piyasaya sürülmesi, açık kaynaklı modeller için yeni bir dönüm noktası belirledi. 1 Trilyon parametresi ve Uzman Karışımı (MoE) mimarisiyle, GPT-4o gibi tescilli devlere rakip oluyor. Ancak, saf boyutu onu çalıştırmayı oldukça zorlaştırıyor.
Geliştiriciler ve araştırmacılar için K2.5'i yerel olarak çalıştırmak rakipsiz gizlilik, sıfır gecikme (ağ açısından) ve API tokenlarında maliyet tasarrufu sunar. Ancak daha küçük 7B veya 70B modellerinden farklı olarak, bunu standart bir oyun dizüstü bilgisayarına yükleyemezsiniz.
Bu kılavuz, bu devasa modeli llama.cpp kullanarak (biraz da olsa) erişilebilir donanıma sığdırmak için Unsloth'un çığır açan niceleme tekniklerinden nasıl yararlanacağınızı ve Apidog ile geliştirme iş akışınıza nasıl entegre edeceğinizi araştırıyor.
Kimi K2.5'i Çalıştırmak Neden Zor (MoE Zorluğu)
Kimi K2.5 sadece "büyük" değil; aynı zamanda mimari olarak karmaşık. Mixtral 8x7B gibi tipik açık modellere göre önemli ölçüde daha fazla uzmana sahip bir Uzman Karışımı (MoE) mimarisi kullanıyor.

Ölçek Sorunu
- Toplam Parametreler: ~1 Trilyon. Standart FP16 hassasiyetinde, bu ~2 Terabayt VRAM gerektirirdi.
- Aktif Parametreler: Çıkarım her token için parametrelerin yalnızca bir alt kümesini kullanır (MoE sayesinde), ancak tokenleri doğru bir şekilde yönlendirmek için tüm modeli bellekte tutmanız gerekir.
- Bellek Bant Genişliği: Gerçek darboğaz sadece kapasite değil; hızdır. Her token üretimi için bellek kanalları aracılığıyla 240GB veri taşımak, tüketici donanımı üzerinde muazzam bir yüktür.
Bu nedenle niceleme (ağırlık başına bitleri azaltma) tartışılamaz. Unsloth'un aşırı 1.58-bit sıkıştırması olmadan, bunu çalıştırmak kesinlikle süper bilgisayar kümelerinin alanı olurdu.
Donanım Gereksinimleri: Çalıştırabilir misiniz?
"1.58-bit" niceleme, model boyutunu ~%60 oranında sıkıştırarak zekayı yok etmeden bunu mümkün kılan sihirli dokunuştur.
Minimum Özellikler (1.58-bit Niceleme)
- Disk Alanı: >240 GB (NVMe SSD şiddetle tavsiye edilir)
- RAM + VRAM: >240 GB Birleşik
- Örnek 1: 2x RTX 3090 (48GB VRAM) + 256GB Sistem RAM (Yapılabilir, yavaş)
- Örnek 2: 192GB RAM'e sahip Mac Studio M2 Ultra (Yetersiz, büyük olasılıkla çöker veya yoğun takas yapar)
- Örnek 3: 512GB RAM'e sahip Sunucu (CPU'da iyi çalışır)
- Hesaplama Gücü: AVX2 destekli CPU veya NVIDIA GPU'lar
Önerilen Özellikler (Performans)
Kullanılabilir hızlar (>10 token/s) elde etmek için:
- VRAM: Mümkün olduğunca fazla. Katmanları GPU'ya boşaltmak hızı önemli ölçüde artırır.
- Sistem: 4x H100/H200 GPU (Kurumsal) VEYA 512GB DDR5 RAM'e sahip bir iş istasyonu (Tüketici/Profesyonel Tüketici).
Not
Çözüm: Unsloth Dinamik GGUF
Unsloth, Kimi K2.5'in dinamik GGUF versiyonlarını yayınladı. Bu dosyalar, modeli llama.cpp'ye yüklemenizi sağlar ve bu da iş yükünü CPU (RAM) ve GPU (VRAM) arasında akıllıca bölebilir.
Dinamik Niceleme Nedir?
Standart niceleme, her katmana aynı sıkıştırmayı uygular. Unsloth'un "Dinamik" yaklaşımı daha akıllıdır:
- Kritik Katmanlar (Dikkat/Yönlendirme): Zekayı korumak için daha yüksek hassasiyette tutulur (örn. 4-bit veya 6-bit).
- İleri Beslemeli Katmanlar: Yerden tasarruf etmek için agresif bir şekilde 1.58-bit veya 2-bit'e sıkıştırılır.
Bu hibrit yaklaşım, 1T modelin ~240GB'de çalışmasına olanak tanırken, daha küçük 70B modellerin tam hassasiyette çalışırken sahip olduğu akıl yürütme yeteneklerini korur.
- 1.58-bit (UD-TQ1_0): ~240GB. En küçük uygulanabilir sürüm.
- 2-bit (UD-Q2_K_XL): ~375GB. Daha iyi akıl yürütme, önemli ölçüde daha fazla RAM gerektirir.
- 4-bit (UD-Q4_K_XL): ~630GB. Neredeyse tam hassasiyetli performans, yalnızca kurumsal donanım.
Adım Adım Kurulum Kılavuzu
Bölünmüş CPU/GPU iş yükleri için en verimli çıkarım motorunu sağladığı için llama.cpp kullanacağız.
Adım 1: llama.cpp'yi Kurun
En son Kimi K2.5 desteğine sahip olduğunuzdan emin olmak için llama.cpp'yi kaynaktan derlemeniz gerekir.
Mac/Linux:
# Bağımlılıkları kurun
sudo apt-get update && sudo apt-get install pciutils build-essential cmake curl libcurl4-openssl-dev -y
# Depoyu klonlayın
git clone https://github.com/ggml-org/llama.cpp
cd llama.cpp
# CUDA desteğiyle derleyin (NVIDIA GPU'larınız varsa)
cmake -B build -DBUILD_SHARED_LIBS=OFF -DGGML_CUDA=ON
# VEYA CPU/Mac Metal için derleyin (varsayılan)
# cmake -B build
# Derle
cmake --build build --config Release -j --clean-first --target llama-cli llama-server
Adım 2: Modeli İndirin
Unsloth GGUF sürümünü indireceğiz. Çoğu "ev laboratuvarı" kurulumu için 1.58-bit sürümü önerilir.
huggingface-cli veya doğrudan llama-cli kullanabilirsiniz.
Seçenek A: llama-cli ile Doğrudan İndirme
# Model için bir dizin oluşturun
mkdir -p models/kimi-k2.5
# İndirin ve çalıştırın (bu, modeli önbelleğe alır)
./build/bin/llama-cli \
-hf unsloth/Kimi-K2.5-GGUF:UD-TQ1_0 \
--model-url unsloth/Kimi-K2.5-GGUF \
--print-token-count 0
Seçenek B: Manuel İndirme (Yönetim için daha iyi)
pip install huggingface_hub
# Belirli nicelemeyi indirin
huggingface-cli download unsloth/Kimi-K2.5-GGUF \
--include "*UD-TQ1_0*" \
--local-dir models/kimi-k2.5
Adım 3: Çıkarımı Çalıştırın
Şimdi modeli başlatalım. Optimal performans için Moonshot AI tarafından önerilen belirli örnekleme parametrelerini ayarlamamız gerekiyor (temp 1.0, min-p 0.01).
./build/bin/llama-cli \
-m models/kimi-k2.5/Kimi-K2.5-UD-TQ1_0-00001-of-00005.gguf \
--temp 1.0 \
--min-p 0.01 \
--top-p 0.95 \
--ctx-size 16384 \
--threads 16 \
--prompt "User: Write a Python script to scrape a website.\nAssistant:"
Anahtar Parametreler:
--fit on: Katmanları mevcut VRAM'e sığdırmak için otomatik olarak GPU'ya boşaltır (hibrit kurulumlar için çok önemli).--ctx-size: K2.5 256k'ya kadar destekler, ancak bellek tasarrufu için 16k daha güvenlidir.
Yerel API Sunucusu Olarak Çalıştırma
Kimi K2.5'i uygulamalarınızla veya Apidog ile entegre etmek için, OpenAI uyumlu bir sunucu olarak çalıştırın.
./build/bin/llama-server \
-m models/kimi-k2.5/Kimi-K2.5-UD-TQ1_0-00001-of-00005.gguf \
--port 8001 \
--alias "kimi-k2.5-local" \
--temp 1.0 \
--min-p 0.01 \
--ctx-size 16384 \
--host 0.0.0.0
Yerel API'niz artık http://127.0.0.1:8001/v1 adresinde etkin.
Apidog'u Yerel Kimi K2.5'inize Bağlama
Apidog, yerel LLM'nizi test etmek için mükemmel bir araçtır. Curl komut dosyaları yazmadan istekleri görsel olarak oluşturmanıza, konuşma geçmişini yönetmenize ve token kullanımında hata ayıklamanıza olanak tanır.

1. Yeni İstek Oluşturma
Apidog'u açın ve yeni bir HTTP projesi oluşturun. Şu adrese bir POST isteği oluşturun:http://127.0.0.1:8001/v1/chat/completions
2. Başlıkları Yapılandırma
Aşağıdaki başlıkları ekleyin:
Content-Type:application/jsonAuthorization:Bearer not-needed(Yerel sunucular genellikle anahtarı yok sayar, ancak iyi bir uygulamadır)
3. Gövdeyi Ayarlayın
OpenAI uyumlu formatı kullanın:
{
"model": "kimi-k2.5-local",
"messages": [
{
"role": "system",
"content": "You are Kimi, running locally."
},
{
"role": "user",
"content": "Explain Quantum Computing in one sentence."
}
],
"temperature": 1.0,
"max_tokens": 1024
}
4. Gönderin ve Doğrulayın
Gönder'e tıklayın. Yanıtın akışını görmelisiniz.
Neden Apidog kullanılır?
- Gecikme İzleme: Yerel modelin yanıt vermesinin ne kadar sürdüğünü tam olarak görün (İlk Tokena Kadar Geçen Süre).
- Geçmiş Yönetimi: Apidog, sohbet oturumlarınızı tutar, böylece yerel modelin çok turlu konuşma yeteneklerini kolayca test edebilirsiniz.
- Kod Üretimi: İsteminiz çalıştıktan sonra, bu yerel sunucuyu uygulamanızda kullanmak için Apidog'da "Kod Oluştur" düğmesine tıklayarak Python/JS snippet'ini alın.
Ayrıntılı Sorun Giderme ve Performans Ayarlama
1T'lik bir modeli çalıştırmak, tüketici donanımını sınırlarına kadar zorlar. İşte onu kararlı tutmak için gelişmiş ipuçları.
"Model yüklenemedi: bellek yetersiz"
Bu en yaygın hatadır.
- Bağlamı Azaltın:
--ctx-size'ı 4096 veya 8192'ye düşürün. - Uygulamaları Kapatın: Chrome, VS Code ve Docker'ı kapatın. Her bayt RAM'e ihtiyacınız var.
- Diskten Boşaltmayı Kullanın (Son çare):
llama.cpp, model parçalarını diske eşleyebilir, ancak çıkarım hızı <1 token/s'ye düşer.
"Anlamsız Çıktı" veya Tekrarlayan Metin
Kimi K2.5 örneklemeye duyarlıdır. Kullandığınızdan emin olun:
Temperature: 1.0 (Şaşırtıcı derecede yüksek, ancak bu model için önerilir)Min-P: 0.01 (Düşük olasılıklı tokenleri kesmeye yardımcı olur)Top-P: 0.95
Yavaş Üretim Hızı
0,5 token/s elde ediyorsanız, muhtemelen sistem RAM bant genişliği veya CPU hızı nedeniyle darboğaz yaşıyorsunuzdur.
- Optimizasyon:
--threads'in fiziksel CPU çekirdeklerinizle (mantıksal iş parçacıkları değil) eşleştiğinden emin olun. - GPU Boşaltma: Küçük bir GPU'ya 10 katman bile boşaltmak, istem işleme süresini önemli ölçüde iyileştirebilir.
- NUMA Desteği: Çift soketli bir sunucudaysanız, bellek erişimini optimize etmek için
llama.cppderleme bayraklarında NUMA farkındalığını etkinleştirin.
Çökmelerle Başa Çıkma
Model yüklenir ancak üretim sırasında çökerse:
- Takas Alanını Kontrol Edin: Büyük bir takas dosyasının (100 GB+) etkinleştirildiğinden emin olun. 256 GB RAM'iniz olsa bile, geçici yükselişler işlemi sonlandırabilir.
- KV Önbellek Boşaltmayı Devre Dışı Bırakın: VRAM darsa KV önbelleği CPU'da tutun (
--no-kv-offload).
Hazır mısınız?
Kimi K2.5'i yerel olarak çalıştırmayı başarsanız da veya API'yi kullanmaya karar verseniz de, Apidog yapay zeka entegrasyonlarınızı test etmek, belgelemek ve izlemek için birleşik bir platform sunar. Apidog'u ücretsiz indirin ve bugün denemeye başlayın.
