Linux Sunucularda vLLM ve PagedAttention ile Yüksek Performanslı Model Dağıtımı

Kişisel kullanımda llama.cpp ve Ollama fazlasıyla yeterli ve pratik çözümlerdir. Ancak bir şirkette, geliştirici ekibinde veya yüksek trafikli bir web uygulamasında aynı anda onlarca veya yüzlerce kullanıcının eşzamanlı olarak modelden yanıt beklediği bir senaryoda bu araçlar ciddi performans darboğazlarına girer. Standart motorlar istekleri çoğunlukla sırayla (sequential) işler veya statik gruplama nedeniyle GPU belleğini verimsiz kullanır. […]

Open WebUI ve RAG ile Kendi Özel Yapay Zeka Asistanınızı Kurmak

Ollama ile modelleri arka planda bir servis olarak çalıştırmaya başladıktan sonra, bu gücü günlük kullanımda tam verimle değerlendirebilmek için modern bir web arayüzüne ihtiyaç duyarız. Open WebUI (eski adıyla Ollama WebUI); ChatGPT benzeri zengin kullanıcı deneyimini, çoklu model karşılaştırmasını ve en önemlisi RAG (Retrieval-Augmented Generation) yeteneğini yerel ortamınıza getiren en popüler açık kaynak platformdur. Bu […]

Ollama ile Linux’ta Model Yönetimi, Systemd Servisi ve API Entegrasyonu

Bir önceki yazıda incelediğimiz llama.cpp, doğrudan C/C++ seviyesinde azami performans ve kontrol sağlar; ancak onlarca farklı modeli indirip denemek, modeller arasında geçiş yapmak ve arka plan servisi olarak yönetmek söz konusu olduğunda süreç manuel iş gücü gerektirir. Ollama, arka planda llama.cpp çekirdeğini kullanarak Docker benzeri pratik bir model yönetim arayüzü sunan açık kaynaklı bir araçtır. […]

llama.cpp ile C/C++ Tabanlı Düşük Kaynaklı LLM Çıkarımı ve GGUF Formatı

Yerel yapay zeka devriminin arkasındaki en önemli açık kaynak projelerden biri şüphesiz Georgi Gerganov tarafından başlatılan llama.cpp projesidir. Python bağımlılıkları (PyTorch, Transformers, HuggingFace ekosistemi) olmadan, tamamen saf C ve C++ ile yazılan bu kütüphane; büyük dil modellerini minimum kaynakla çalıştırma standardını belirledi. Bu rehberde; llama.cpp projesinin mimarisini, GGUF formatını, kaynak koddan derleme adımlarını ve yerleşik […]

Linux’ta Yerel Yapay Zeka (Local AI) Ekosistemi ve Donanım Planlaması

Büyük Dil Modellerinin (LLM) yükselişiyle birlikte yapay zeka araçları günlük yazılım geliştirme pratiklerimizin merkezine yerleşti. Ancak bulut tabanlı API’ler (OpenAI, Anthropic, Google) her senaryo için ideal çözüm değildir. Şirket içi hassas kodların veya kişisel verilerin dış sunuculara aktarılması gizlilik riskleri doğurur; sürekli yapılan API çağrıları yüksek maliyetlere yol açar ve internet bağlantısı kesildiğinde tüm iş […]

Gömülü Sistemler Açısından C++ ve Rust Üzerine Gözlemler

Son yıllarda yazılım sektöründe en çok konuşulan konulardan biri Rust programlama dilinin bellek güvenliği (memory safety) vaadiyle C ve C++’ın yerini alıp alamayacağıdır. Özellikle Linux çekirdeğine Rust desteğinin girmesiyle bu tartışmalar gömülü yazılım alanına da sıçradı. Yıllardır C++ ile gömülü Linux (Orange Pi, Raspberry Pi) ve mikrodenetleyiciler (ESP32, STM32) üzerinde çalışan bir mühendis olarak, Rust […]

Modern CMake Yapısına Geçiş Deneyimim ve Proje Mimarisi

C++ dünyasında derleme sistemleri uzun süre geliştiricilerin en çok zorlandığı ve kaçındığı konuların başında geldi. Yıllar önce yazılmış CMake projelerine baktığınızda includedirectories(), linkdirectories() ve set(CMAKECXXFLAGS …) gibi küresel değişkenlerle doldurulmuş, projenin bir yerindeki değişikliğin başka bir hedefi beklenmedik şekilde bozduğu kırılgan yapılara rastlarsınız. Bu yazıda; projelerimde eski CMake alışkanlıklarını bırakıp modern hedef (Target) odaklı CMake […]

C++ Projelerinde Bellek Sızıntısı Analizi ve Valgrind Deneyimlerim

Kısa süreli çalışan komut satırı araçlarında birkaç baytlık bellek kaçakları işletim sistemi süreç kapandığında temizlediği için genellikle fark edilmez. Ancak bir ağ servisi, kripto ticaret botu veya gömülü donanım üzerinde 7/24 çalışacak bir C++ uygulaması geliştiriyorsanız, döngü başına sızan tek bir bayt bile günler sonra sistemin OOM (Out Of Memory) mekanizması tarafından öldürülmesine neden olur. […]

ESP32 ve MQTT ile Yerel Ortam İzleme Sistemi Tasarımı

Piyasadaki akıllı ev sensörlerinin büyük çoğunluğu üreticinin uzak bulut sunucularına bağlanarak çalışır. Bu durum internet kesintilerinde veri kaybına, veri gizliliği endişelerine ve üreticinin sunucuları kapattığında cihazın işlevsiz kalmasına yol açar. Kendi yaşam alanımda sıcaklık, nem ve hava kalitesi gibi verileri takip etmek için tamamen yerel ağda (LAN) çalışan, dış internete bağımlı olmayan bir mimari kurmayı […]

Orange Pi Zero 2 ile Düşük Güç Tüketen Ev Sunucusu Kurulumu

Ev ağında sürekli açık kalması gereken hafif servisleri (DNS engelleyici, MQTT aracısı, küçük veri tabanları veya arka plan otomasyonları) çalıştırmak için standart bir masaüstü bilgisayarı ya da eski bir dizüstü bilgisayarı açık bırakmak hem gereksiz elektrik tüketimine hem de gürültüye neden olur. Bu ihtiyacı karşılamak için tek kart bilgisayarlar (SBC) oldukça cazip bir alternatiftir. Piyasadaki […]