Tüm makaleler

Ollama mı vLLM mi: yanlış soruyu soruyoruz

  • On-Premise
  • Üretim

Verisi kurum dışına çıkamayan bir şirkette çıkarımı yerelde koşturmak bir tercih değil, kısıt. Asıl soru hangi çıkarım katmanı.

Bu seçim çoğu zaman yanlış eksende tartışılıyor - "hangisi daha hızlı" diye. Doğru eksen eşzamanlılık profili.

İkisi aynı işi yapmıyor

Ollama tek kullanıcıya, tek isteğe optimize bir deneyim sunuyor. Model indirmek, çalıştırmak, bir uç noktaya bağlanmak dakikalar sürüyor. Geliştirme sırasında bu paha biçilmez.

vLLM bir servis motoru. PagedAttention ile KV cache'i sayfalara bölerek bellek parçalanmasını azaltıyor, continuous batching ile gelen istekleri aynı GPU üzerinde sürekli harmanlıyor. Tek istekte farkı hissetmiyorsunuz; yirmi eşzamanlı istekte fark kategorik hale geliyor.

Ollama vLLM
Kurulum Dakikalar Saatler
Tek istek gecikmesi İyi İyi
Eşzamanlı verim Sınırlı Yüksek
GPU bellek verimliliği Standart PagedAttention
Uygun olduğu yer Geliştirme, düşük trafik Üretim, çok kullanıcı

Karar eşzamanlılıkta veriliyor

Bir ajan sistemi tek bir kullanıcı isteği için genelde birden fazla model çağrısı yapıyor - planlama, araç seçimi, çıktı doğrulama, özetleme. Yani sistemin eşzamanlılığı kullanıcı sayısının katı olarak büyüyor.

Kapasite planlaması bu yüzden kullanıcı sayısıyla değil, saniyedeki model çağrısıyla yapılmalı. Tek istekte gayet iyi görünen bir kurulum, ajan zinciri devreye girdiğinde beklenenden çok daha erken doyuyor.

Bizde ayrım şöyle oturdu: geliştirme ve prototipte Ollama - buradaki hız geliştiricinin hızı, modelin değil. Üretimde vLLM - batching olmadan GPU büyük ölçüde boş bekliyor.

Model boyutu ikinci sırada

Kalite düşünce daha büyük modele uzanmak yaygın refleks. Yerel kurulumda bu pahalıya patlıyor: büyük model hem daha fazla VRAM istiyor hem eşzamanlı istek kapasitesini düşürüyor.

Çoğu durumda kaliteyi belirleyen model boyutu değil, bağlamın kalitesi oluyor. RAG tarafındaki geri getirme kötüyse, daha büyük model yanlış bağlamı daha akıcı bir dille yanlış yorumluyor.

Sıralama şöyle işliyor: önce geri getirmeyi düzelt, sonra prompt'u daralt, en son modeli büyüt.

Kuantizasyonun sınırı

Kuantizasyon VRAM'i ciddi biçimde düşürüyor ve çoğu görevde kalite kaybı fark edilmiyor. Fark edildiği yerler ise belli: uzun bağlam, sayısal akıl yürütme, yapılandırılmış çıktı üretimi.

Ajan sistemlerinde bu üçü de kritik olduğu için, kuantize modele geçmeden önce şema doğrulama başarısızlık oranını ölçmek gerekiyor. Bu oran kuantizasyon sonrası yükseliyorsa, kazanılan bellek kaybedilen güvenilirliği karşılamıyor demektir.


Yerel çıkarımda seçim "hangi model" sorusundan önce geliyor. Eşzamanlı istek profili belirlenmeden yapılan bir çıkarım katmanı seçimi, üretimde ya boş GPU'ya ya da kuyrukta bekleyen isteklere dönüşüyor.

Geliştirmede Ollama, üretimde vLLM. Kalite sorunlarında ilk bakılacak yer ise model boyutu değil, bağlam.

Diğer makaleler