Yazılım ve Yapay Zeka Sözlüğü

Bir yazılım projesi konuşulurken en sık karşılaşılan 20 terim. Her madde tek cümlelik bir tanımla başlıyor; kararı etkileyenlerde bir sayı ve bir karşılaştırma da var.

Son güncelleme:

Nasıl kullanılır: Terimler konuya göre gruplanmıştır. Ayrıntılı sayfası olan terimlerde devamını oku bağlantısı bulunur; o sayfalarda tanımın yanında ne zaman doğru, ne zaman yanlış tercih olduğu da anlatılır.

Yapay zeka5 terim

LLM

LLM (Large Language Model, büyük dil modeli), çok büyük miktarda metinle eğitilmiş, bir metnin devamında hangi kelimenin geleceğini olasılıkla tahmin ederek çalışan bir yapay sinir ağıdır.

ChatGPT, Claude ve Gemini'nin arkasındaki model türü. Bilgiyi bir veritabanından okumaz, eğitim verisinden öğrendiği örüntüyle üretir; doğruluğun kaynakla desteklenmesi bu yüzden gerekir.

LLM nedir? — devamını oku
RAG

RAG (Retrieval-Augmented Generation, erişimle desteklenmiş üretim), bir dil modelinin cevabı kendi eğitim verisinden üretmek yerine, soruya göre aranıp bulunan belgelere dayanarak yazmasını sağlayan yöntemdir.

Modelin uydurmasını azaltmanın en pratik yolu. Kurumun kendi belgelerini modele bağlamak için standart yaklaşım.

RAG nedir? — devamını oku
Chatbot

Chatbot, kullanıcıyla yazılı ya da sesli olarak doğal dilde konuşarak bir işi tamamlamasına yardım eden yazılımdır.

Kural tabanlı olanlar sabit senaryoyu izler, dil modeline dayananlar serbest soruyu anlar. İkisi farklı maliyet ve farklı risk demektir.

Chatbot nedir? — devamını oku
Vektör veritabanı

Vektör veritabanı, metin veya görselin anlamını temsil eden sayı dizilerini saklayan ve bir sorguya anlamca en yakın kayıtları bulmaya göre optimize edilmiş veritabanıdır.

Anahtar kelime eşleşmesi yerine anlam yakınlığıyla arar. RAG kurulumlarının bilgi tarafını tutan bileşen.

Fine-tuning

Fine-tuning (ince ayar), önceden eğitilmiş bir dil modelinin daha küçük ve göreve özgü bir veri setiyle yeniden eğitilerek belirli bir biçime ya da alana uyarlanmasıdır.

Modele üslup ve biçim öğretmek için etkilidir; güncel bilgi yüklemek için değil. Bilgi için doğru araç RAG'dir.

Yazılım mimarisi8 terim

API

API (Application Programming Interface, uygulama programlama arayüzü), bir yazılımın başka bir yazılıma hangi işlevleri hangi kurallarla sunduğunu tanımlayan sözleşmedir.

İki sistemin birbiriyle konuşma biçimi. Kullanıcı arayüzü insanlar için ne ise, API de programlar için odur.

API nedir? — devamını oku
Mikroservis

Mikroservis mimarisi, bir uygulamanın tek bir bütün yerine, birbirinden bağımsız çalışan ve ayrı ayrı yayına alınabilen küçük servislere bölündüğü yaklaşımdır.

Ekip sayısı arttıkça bağımsız yayın kabiliyeti kazandırır. Küçük ekipte ise işletme yükü çoğu zaman faydasını aşar.

Middleware

Middleware, iki sistem ya da bir isteğin iki aşaması arasında durup veriyi dönüştüren, doğrulayan veya yönlendiren ara yazılım katmanıdır.

Kimlik doğrulama, günlükleme ve hız sınırlama gibi her istekte tekrarlanan işler burada toplanır.

Sistem entegrasyonu

Sistem entegrasyonu, ayrı ayrı çalışan yazılımların veriyi paylaşacak ve birlikte tek bir süreci yürütecek biçimde birbirine bağlanmasıdır.

Kurumlarda yeni yazılım yazmaktan çok mevcut olanları konuşturmak gerekir. Zorluk teknik olmaktan çok veri modellerinin uyuşmamasıdır.

Yazılım mimarisi

Yazılım mimarisi, bir sistemin parçalara nasıl bölündüğünü, parçaların birbiriyle nasıl konuştuğunu ve sonradan değiştirilmesi pahalı olan kararların bütününü tanımlar.

Mimari kararların ayırt edici özelliği geri dönüşünün pahalı olmasıdır. Veritabanı seçimi mimaridir, buton rengi değildir.

Veri ambarı

Veri ambarı, farklı kaynaklardan gelen verinin raporlama ve analiz için tek bir yapıda toplandığı, sorgulamaya göre düzenlenmiş veritabanıdır.

Günlük işlem veritabanı hızlı yazmak için, veri ambarı geniş sorgular için tasarlanır. İkisini aynı yerde yapmaya çalışmak ikisini de yavaşlatır.

Webhook

Webhook, bir sistemde olay gerçekleştiğinde önceden tanımlanmış bir adrese otomatik olarak istek gönderilmesi yöntemidir.

API'de siz sorarsınız, webhook'ta karşı taraf haber verir. Sürekli sorgulamaya göre hem daha hızlı hem daha ucuzdur.

CI/CD

CI/CD (Continuous Integration / Continuous Delivery), kod değişikliklerinin otomatik olarak derlenip test edilmesini ve onaylandığında otomatik olarak yayına alınmasını sağlayan uygulama bütünüdür.

Yayın adımını insana bağlı olmaktan çıkarır. Küçük ve sık yayın, büyük ve seyrek yayından belirgin biçimde az risk taşır.

Mobil ve web3 terim

Flutter

Flutter, Google'ın geliştirdiği, tek bir kod tabanından iOS, Android, web ve masaüstü için uygulama üretilmesini sağlayan açık kaynaklı arayüz geliştirme çatısıdır.

Dart dilini kullanır ve arayüzü platformun bileşenlerini çağırmak yerine kendi motoruyla çizer. Bu, görsel tutarlılık sağlar ama platform hissini değiştirir.

Flutter nedir? — devamını oku
PWA

PWA (Progressive Web App, ilerici web uygulaması), tarayıcıda çalışan ama telefona kurulabilen, çevrimdışı açılabilen ve bildirim gönderebilen web uygulamasıdır.

Uygulama mağazasına girmeden mobil uygulama deneyimi verir. Kurulum sürtünmesini kaldırır, buna karşılık donanım erişimi sınırlıdır.

PWA nedir? — devamını oku
React Native

React Native, JavaScript ve React kullanarak tek kod tabanından iOS ve Android için, platformun kendi bileşenleriyle çalışan mobil uygulama geliştirmeyi sağlayan açık kaynaklı çatıdır.

Flutter'ın aksine arayüzü platformun kendi bileşenlerine çevirir. Web ekibi olan şirketlerde öğrenme maliyeti en düşük seçenek.

Ürün4 terim

SaaS

SaaS (Software as a Service, hizmet olarak yazılım), yazılımın müşterinin sunucusuna kurulmak yerine sağlayıcı tarafından internet üzerinden çalıştırıldığı ve genellikle abonelikle satıldığı dağıtım modelidir.

Kurulum, güncelleme ve altyapı sağlayıcıda kalır; müşteri tarayıcıdan kullanır. Peşin lisans yerine kullandığın kadar öde mantığı.

SaaS nedir? — devamını oku
MVP

MVP (Minimum Viable Product, minimum uygulanabilir ürün), bir fikrin işe yarayıp yaramadığını gerçek kullanıcılarla ölçmeye yetecek en küçük çalışan sürümüdür.

Amacı ürünü küçültmek değil, öğrenmeyi hızlandırmak. Yanlış varsayımı altı ay yerine altı haftada bulmak için yapılır.

MVP nedir? — devamını oku
Teknik borç

Teknik borç, bugün hızlı ilerlemek için seçilen kolay çözümün ileride ödenmesi gereken ek geliştirme maliyetine dönüşmesidir.

Her borç kötü değildir; kayıt altına alınmamış borç kötüdür. Ödenmeyen borcun faizi her yeni özellikte tahsil edilir.

SLA

SLA (Service Level Agreement, hizmet seviyesi anlaşması), bir hizmetin ölçülebilir hangi seviyede sunulacağını ve bu seviyenin altına düşülürse ne olacağını yazılı olarak tanımlayan sözleşmedir.

Erişilebilirlik yüzdesi, müdahale süresi ve çözüm süresi gibi ölçülebilir taahhütler içerir. Ölçülemeyen madde SLA maddesi değildir.