İçeriğe atla
SinaptikLabAI KNOWLEDGE PLATFORM
RehberOrtaMLOps / LLMOps

Model, veri ve istem sürümlemesi kurmak

Model, veri ve istem sürümlemesi; her üretim yanıtına tek bir koşu kimliği yazıp bu kimliği çözülmüş model künyesine, veri anlık görüntüsünün içerik özetine ve istem dosyasının sürümüne bağlamakla kurulur. Ölçüt aynı çıktıyı üretmek değildir — aynı yapılandırmada bile yanıt birebir tekrarlanmayabilir; ölçüt, tek bir koşu kimliğinden model, istem, veri ve dizin sürümlerini eksiksiz geri kurabilmektir. Geri alma da bu kimlikle yapılır; bileşenleri tek tek geri çekmek, hiç denenmemiş bir bileşim üretir.

ÖNKOŞULLAR

  • Üretim yanıt kaydına alan ekleme yetkisi — ölçüm, kaydın şemasına dokunmadan kurulmaz
  • Eğitim veya geri getirme verisinin durduğu depoya okuma ve anlık görüntü alma hakkı
  • Sürüm karşılaştırması için koşturulabilir bir değerlendirme kümesi ve kabul edilebilir fark için önceden yazılmış eşikler
  • Yayını durdurabilecek bir onay noktası; sürüm kapısı ancak durdurabiliyorsa kapıdır

GEREKEN ARAÇLAR

  • Sürüm kontrol sistemi (istem metni ve yapılandırma için)
  • Anlık görüntü alınabilen bir nesne deposu veya veri deposu
  • Model kayıt defteri ya da onun yerini tutan bir künye tablosu
  • İz kaydı veya günlük toplayıcı
  • Sürekli entegrasyon koşucusu (sürüm kapısını çalıştırmak için)
  1. 01

    Sürümlenecek eksenleri sayıp adlandır

    Model, veri, istem, geri getirme dizini ve çıkarım parametrelerini ayrı eksenler olarak listele; her eksenin sürümünü kimin değiştirebildiğini yaz.

    Sürümleme tartışması çoğunlukla "hangi modeli kullanıyoruz" sorusuyla başlar ve orada biter. Oysa üretimdeki çıktıyı belirleyen tek bir eksen değil; birbirinden bağımsız değişebilen en az beş eksen var ve bunların herhangi biri sessizce kaydığında sonucu kimse açıklayamıyor. İlk iş, bu eksenleri yazılı hâle getirmek ve her birinin sahibini belirlemek.

    EksenSürümü ne değiştirirTipik sahibi
    ModelSağlayıcı güncellemesi, takma adın başka bir sürüme çözülmesiPlatform ekibi
    İstemSistem istemi, araç açıklaması, çıktı şeması, örnek bloklarıÜrün veya uygulama ekibi
    VeriYeni belge, silinen belge, geriye dönük düzeltmeVeri sahibi birim
    DizinGömme modeli değişimi, parçalama stratejisi, yeniden dizinlemeArama ekibi
    Çıkarım parametreleriSıcaklık, azami çıktı uzunluğu, durdurma dizileriUygulama ekibi
    Sahibi yazılmayan eksen, sürümü de kaydedilmeyen eksendir.
  2. 02

    Tek bir koşu kimliği tanımla

    Bütün eksenlerin sürümünü tek kayıtta toplayan bir koşu kimliği üret; bu kimlik kayıtlarda, değerlendirme çıktılarında ve hata bildiriminde aynı biçimde geçsin.

    Beş ayrı sürüm alanını beş ayrı yerde tutmak, teoride yeterli görünür; pratikte bir olay incelemesinde bunları bir araya getirmek saatler alır. Koşu kimliği bu birleştirme işini önceden yapar: tek bir dizeyi arattığınızda hangi model, hangi istem, hangi veri ve hangi parametrelerle çalışıldığı tek kayıttan çıkar.

    json
    {
      "kosu_kimligi": "destek-yaniti-r7",
      "istem": {
        "dosya": "istemler/destek-yaniti.md",
        "surum": "g:9f2ab41"
      },
      "model": {
        "saglayici": "<saglayici-adi>",
        "cozulmus_kimlik": "<takma-ad-degil-cozulmus-kimlik>",
        "sicaklik": 0.2
      },
      "veri": {
        "anlik_goruntu": "bilgi-tabani-2026-09-14",
        "icerik_ozeti": "sha256:<ozet>"
      },
      "dizin": {
        "gomme_modeli": "<gomme-model-kimligi>",
        "dizin_surumu": "idx-14"
      }
    }

    Doğrulama adımı: hâlihazırda çalışan bir yapılandırmayı elinize alın ve eksen listesindeki her eksenin kimlik kaydında bir karşılığı olduğunu tek tek görün. Karşılığı bulunmayan eksen, kimliğe eklenmesi gereken alandır. Bu denetimi kimliği üretim kaydına iliştirmeden önce yapın; sonraya bırakmak, dolmuş kayıtların üstünde şema değişikliği demektir.

    Doğrulama adımı: rastgele bir üretim kaydı seçin, koşu kimliğini alın ve yalnızca bu kimlikle çalışarak ortamı yeniden kurmayı deneyin. Eksik kalan her alan, kimliğe eklenmesi gereken bir eksendir.

  3. 03

    Veriyi anlık görüntüyle dondur

    Eğitim veya geri getirme verisini değişmez bir anlık görüntüye al, içeriğinden özet çıkar ve bu özeti koşu kimliğine bağla.

    Veri sürümlemesinin en yaygın yanılgısı, veriyi tarihle etiketlemenin yeterli olduğunu sanmaktır. Kaynak tablo değiştirilebilir olduğu sürece "14 Eylül verisi" ifadesi bir sürüm değil bir niyet beyanıdır: geriye dönük bir düzeltme yapıldığında aynı tarih artık aynı satırları göstermez. Sürüm, içeriğin kendisinden türeyen bir özet olmalı.

    • Satır kümesi: hangi kayıtların dâhil olduğu, kimliğiyle sabit.
    • Şema: alan adları ve tipleri; şema değişimi de sürüm değişimidir.
    • Filtre: hangi koşulla süzüldüğü, sorgunun kendisi dâhil.
    • Kesim anı: verinin hangi ana kadar okunduğu.
    • İçerik özeti: yukarıdakilerden üretilen ve karşılaştırılabilir tek değer.

    Ödünleşim şurada: tam kopya almak depolama maliyeti üretir, yalnızca kimlik listesi tutmak ise kaynak silindiğinde yeniden üretilemez hâle gelir. Karar ölçütü basit — veri kümesini yeniden üretmek zorunlu bir yükümlülükse tam kopya, yalnızca karşılaştırma yapacaksanız kimlik listesi ve özet yeter.

  4. 04

    İstemleri kod gibi sürümle

    İstem metnini uygulama koduyla aynı depoda dosya olarak tut, değişikliği inceleme sürecine bağla ve çalışma anında istem sürümünü kayda yaz.

    Panelden düzenlenen istem, üç şeyi birden kaybettirir: değişiklik farkı, inceleme ve geri alma. Bunların üçü de kod deposunda bedava geliyor. İstemi depoya taşımanın maliyeti bir günlük iş; panelde bırakmanın maliyeti, ilk ciddi olayda "dün ne yazıyordu" sorusuna cevap verememek.

    • Sistem istemi ve rol tanımı.
    • Araç adları, açıklamaları ve parametre şemaları — model davranışını istem kadar etkiler.
    • Beklenen çıktı şeması veya biçim talimatı.
    • Örnek (few-shot) blokları ve seçilme kuralı.
    • Kaçış metni: modelin cevap veremediğinde ne diyeceği.
  5. 05

    Model künyesini çözülmüş kimlikle kaydet

    Sağlayıcı adını, çözülmüş model kimliğini ve çıkarım parametrelerini kendi tablona yaz; takma ad arkasındaki değişim senin kaydına düşmez.

    Takma adlar — "en yeni", "kararlı", "varsayılan" gibi işaretçiler — geliştirme hızını artırır ama sürüm kaydını çürütür. Kayda takma adı yazdığınızda, aylar sonra o kaydın hangi modeli gösterdiğini söyleyemezsiniz. Doğrusu, çağrı anında takma adın çözüldüğü kimliği okuyup kendi tablonuza yazmak.

    Kaydedilecek alanNeden gerekli
    SağlayıcıAynı ada sahip modeller farklı sağlayıcılarda farklı davranır
    Çözülmüş model kimliğiTakma ad kaydığında farkı görebilmenin tek yolu
    Çıkarım parametreleriAynı model farklı parametrelerle farklı bir sistemdir
    Çağrı biçimiAkış, araç çağrısı ve yapılandırılmış çıktı ayrı davranış üretir
    Kayıt anıKaymanın ne zaman olduğunu daraltır

    Doğrulama adımı: aynı isteği birkaç hafta arayla koşturup kaydedilen çözülmüş kimlikleri karşılaştırın. Kimlik değişmişse, sizin hiçbir değişiklik yapmadığınız bir sürüm geçişi yaşanmış demektir ve değerlendirme sonuçlarınız artık aynı sistemi anlatmıyor.

  6. 06

    Kimliği üretim yanıtına iliştir

    Her üretim yanıtının kaydına koşu kimliğini ekle; kullanıcıdan gelen bir şikâyet tek bir yapılandırmaya geri götürülebilmeli.

    Sürümleme, laboratuvarda değil üretim kaydında işe yarar. Bir kullanıcı "model saçmaladı" dediğinde elinizde yalnızca zaman damgası varsa, o anda hangi istem ve hangi model sürümünün çalıştığını tahmin etmek zorunda kalırsınız. Koşu kimliği bu tahmini ortadan kaldırıyor.

    1. 1Şikâyet gelir

      Kullanıcı veya destek ekibi bir yanıt kimliğiyle birlikte kaydı açar.

    2. 2Yanıt kaydı okunur

      Kayıttaki koşu kimliği alınır; metin içeriğine bakmaya gerek kalmaz.

    3. 3Bileşen sürümleri çözülür

      Model künyesi, istem sürümü, veri anlık görüntüsü ve dizin sürümü tek sorguda gelir.

    4. 4Ortam yeniden kurulur

      Aynı bileşenlerle koşu tekrarlanır; davranış üretilebiliyorsa sorun yapılandırmadadır.

    5. 5Karar verilir

      Düzeltme mi geri alma mı gerektiği, tahmine değil yeniden üretime dayanır.

  7. 07

    Sürüm kapısını yayın hattına koy

    Yeni sürümü yayına ancak değerlendirme koşusu tamamlanıp sonuç önceki sürümle karşılaştırıldıktan sonra al; kapı hattın içinde otomatik çalışsın.

    Kapının işlevi kalite ölçmek değil, ölçülmemiş bir değişikliğin yayına geçmesini engellemek. Bu ayrım önemli: kapı, değerlendirme kümesinin kendisinden bağımsız olarak, kaydın eksiksiz olduğunu ve karşılaştırmanın yapıldığını doğrular. Kapıyı elle çalıştırılan bir kontrol listesi olarak kurarsanız, yoğun bir haftada atlanır.

    1. 01Hangi eksenlerin değiştiği otomatik çıkarıldı mı?
    2. 02Yeni koşu kimliği üretildi ve bütün alanları dolu mu?
    3. 03Değerlendirme kümesi hem eski hem yeni sürümde koşturuldu mu?
    4. 04Sonuç farkı, kabul edilebilir aralık olarak önceden yazılmış eşiklerle karşılaştırıldı mı?
    5. 05Geri dönülecek önceki koşu kimliği kayıtlı mı?
    Kapının kararıNe zaman verilirSonuç
    GeçerKayıt eksiksiz, karşılaştırma yapılmış, fark eşik içindeYayına devam
    Uyarıyla geçerFark eşik içinde ama tek yönde ve süreklilik gösteriyorYayın sürer, kayda not düşülür
    DururKayıt eksik ya da karşılaştırma hiç koşturulmamışYayın engellenir
    Üçüncü satır en çok tartışılanı ve en çok işe yarayanıdır: eksik kayıt, kötü sonuçtan daha tehlikelidir.
  8. 08

    Geri alma tatbikatı yap

    Önceki koşu kimliğine dönmeyi üretim dışı bir ortamda dene ve süreyi ölç; ilk geri alma denemesi gerçek bir olayda yapılmamalı.

    Geri alma, yazıldığında kolay görünen ama denenmediğinde neredeyse hiç çalışmayan bir yetenektir. Tatbikatın amacı, geri almanın mümkün olduğunu kanıtlamak değil; hangi adımın elle müdahale gerektirdiğini ve toplam sürenin ne olduğunu ortaya çıkarmak. Bu iki bilgi olmadan bir olay sırasında "geri alalım" demek bir plan değil bir temennidir.

    1. 1Hedef kimliği seç

      Bilinen iyi durumdaki koşu kimliğini kayıttan al.

    2. 2Bileşimi bütün olarak uygula

      Model, istem, veri ve dizin sürümlerini tek paket hâlinde geri yükle.

    3. 3Uyumu doğrula

      Gömme modeli değişmişse dizinin de geri alınması gerekir; vektörler aynı uzayda değildir.

    4. 4Duman testi koştur

      Küçük bir sorgu kümesiyle sistemin yanıt ürettiğini ve biçimin doğru olduğunu gör.

    5. 5Süreyi yaz

      Baştan sona geçen dakikayı kaydedin; olay planındaki gerçekçi hedef budur.

SIK DÜŞÜLEN TUZAKLAR

  • Takma adı sürüm saymak

    Kayda "en yeni" yazıldığında, aylar sonra o kaydın hangi modeli gösterdiği bilinemez. Sağlayıcı takma adın arkasındaki modeli değiştirdiğinde değerlendirme geçmişiniz sessizce anlamını kaybeder.

  • Veriyi tarihle sürümlemek

    Kaynak tablo değiştirilebilir olduğu sürece aynı tarih aynı satırları göstermez. Geriye dönük tek bir düzeltme, o tarihe dayanan bütün koşuları yeniden üretilemez hâle getirir.

  • İstemi panelden düzenlemek

    Fark, inceleme ve geri alma birlikte kaybolur. Bir olay incelemesinde "değişiklikten önce ne yazıyordu" sorusuna cevap üretilemez ve tartışma hafızaya kalır.

  • Geri almayı bileşen bileşen yapmak

    Yeni istem ile eski modeli birleştirdiğinizde hiç test edilmemiş bir sistem elde edersiniz. Olay sırasında bu, ikinci bir arıza kaynağı üretir.

  • Gömme modeli değişimini sıradan bir model yükseltmesi sanmak

    Farklı gömme modellerinin vektörleri aynı uzayda değildir. Dizin yenilenmeden yapılan geçiş, hata vermeyen ama arama kalitesini düşüren bir bozulma üretir.

KONTROL LİSTESİ

  • Sürümlenen eksenler yazılı ve her birinin sahibi belli
  • Her üretim yanıtı bir koşu kimliği taşıyor
  • Veri anlık görüntüsünün içerik özeti kayıtta duruyor
  • İstem metni sürüm kontrolünde; panelden elle düzenleme kapalı
  • Model künyesi takma ada değil çözülmüş kimliğe yazılıyor
  • Sürüm kapısı yayın hattında ve eksik kayıtlı sürümü durduruyor
  • Geri alma en az bir kez tatbikat olarak denendi ve süresi ölçüldü
  • Gömme modeli değişiminin dizin yenileme gerektirdiği yazılı

Maddelerin tamamı işaretlenmeden kurulum üretime alınmamalı.

Sık sorulan sorular

Model, istem ve veri sürümleri aynı numarayı mı taşımalı?

Hayır, üçü bağımsız değişir ve zorla ortak numaraya sıkıştırıldığında kayıt yanıltıcı olur. Ortak olan şey numara değil kimliktir: her eksen kendi sürümünü taşır, koşu kimliği bunları bir arada gösterir.

Sağlayıcı modeli benim haberim olmadan güncellerse ne olur?

Kodunuzda hiçbir değişiklik olmadan çıktı davranışı değişebilir. Bunu ancak çağrı anında çözülen model kimliğini kendi kaydınıza yazıyorsanız fark edersiniz; sabit sürüm sunan bir uç nokta varsa üretimde onu tercih edin.

Küçük bir istem değişikliği için de sürüm açmak gerekir mi?

Evet, çünkü istemde küçük değişiklik diye bir kategori güvenilir değil. Tek bir kelimenin çıktı biçimini değiştirdiği durumlar sık görülüyor; sürüm açmanın maliyeti bir satır, açmamanın maliyeti izlenemeyen bir kayma.

Geri alma ne kadar sürmeli?

Hedef süreyi kitaptan değil kendi tatbikatınızdan çıkarın. Tatbikatta ölçtüğünüz süre gerçekçi hedeftir; elle müdahale gerektiren her adım bu süreyi hem uzatır hem de olay anında hata ihtimalini artırır.

Kaynaklar

  1. 01Model ve altyapı sağlayıcılarının sürümleme ve model künyesi dokümantasyonları — Model ve altyapı sağlayıcıları · Dokümantasyon
  2. 02Sinaptik Research — yayın hattı ve geri alma uygulama notları — Sinaptik Lab · Teknik rapor

BUILD

Bu rehberi kurumunuzda uygulayalım mı?

Aynı mimariyi kendi verinizle kurmak için discovery oturumundan üretime kadar birlikte ilerliyoruz.