
Jev hakkında bir Two Minute Papers videosu izledim ve fikrin en ilginç yanının hype'tan daha küçük, ama ondan daha işe yarar olduğunu düşündüm. Bunu yeni bir sihirli model hikayesine çevirince asıl nokta kaçıyor. Birçok model çağrısının yazı yazmasına gerek yok. Açık seçenekler arasında karar vermesi gerekiyor.
İki kısa soru Bir destek kaydı her zaman paragrafa ihtiyaç duymaz. Bazen sadece hangi kuyruğa gideceği gerekir. Bir dağıtım notu her zaman özet istemez. Başarılı oldu mu diye bir evet ya da hayır yeterli olabilir. Araç çağıracak bir ajanın ikinci bir sohbet cevabına değil, üç olası sonucu olan küçük bir kontrole ihtiyacı olabilir.
İlk yerel ipucu Bu yöne en yakın pratik proje Kev oldu, Jared Palmer'ın küçük Jev benzeri karar modeli ailesi. Kev aynı tür soruları destekliyor: evet ya da hayır için noul, sabit seçenekler için choice, sıralı değerlendirme için score. Yerelde deneyince bir sohbet modelinden farklı hissettirdi. Konuşmaya çalışmıyordu. Kanıt ve sorudan olasılık çıkarıyordu.
Kev önemli, çünkü sadece bir prompt sarmalayıcısı değil. Qwen3.5 tabanları, eğitilmiş adapterlar ve bu istek biçimi için hazırlanmış bir karar readout'u kullanıyor. Bu yüzden düz bir genel modelden daha sadık bir açık Jev benzeri uygulama. Benim için soru şuydu: Kev eğitimli yerel yolsa, aynı arayüzü hızlıca denetebilen küçük bir zero-shot yol da olabilir mi?
Pratik boşluk Eksik kalan şey paketleme idi. Kev gerçek bir yerel yol, ama ben normal bir Linux makinesinde kolayca denenebilecek küçük bir kurulum istedim. Tek komutla indirme, yerel sunucu, tanıdık API. Sonra GGUF modellerle aynı semantic-if fikrini araştıran SemIf'i buldum. Yol netleşti: arayüzü koru, llama.cpp kullan, cevap harflerinin logitlerini oku, olasılıkları döndür.
Sonuç local-jev Sonuç local-jev oldu. TypeSafe ağırlıkları kullanmaz ve TypeSafe ile bağlantısı yoktur. Yerel bir Jev tarzı pakettir: local-jev setup küçük bir runtime kurar ve açık bir GGUF model indirir, local-jev serve ise /v1/systemone altında yerel API başlatır. Varsayılan model Qwen3 0.6B Q4_K_M, yaklaşık 484 MB. Daha iyi davranış isteyenler için Qwen3.5 4B preset de var.

Biçim önemli Sunucu her seferinde aynı biçimi alır. state gönderirsiniz, ardından soruları verirsiniz. Her soru noul, choice veya score olduğunu söyler ve izin verilen cevapları açıkça yazar. Model JSON şeması icat etmez. Kanıtı, kriteri ve A ile P arasındaki cevap yuvalarını görür. local-jev bu harflerin logitlerini okur, softmax uygular ve dağılımı döndürür.
Logit nedir Bir dil modeli metin yazmadan önce olası her sonraki token için ham bir skor üretir. Bu ham skorlara logit denir. Normal üretim bu skorları tekrar tekrar metne çevirir: sonraki tokenı değerlendir, bir token seç veya örnekle, ekle ve devam et. Normal bir structured-output sarmalayıcısı modele çoğu zaman {"choice":"billing"} gibi bir çıktı yazdırır ve sonra bu metni parse etmeye çalışır.
local-jev bu yazma adımından önce durur. Cevabın seçenek harflerinden biri olması gereken bir prompt kurar, yerel GGUF modeli bir kez çalıştırır, sadece izin verilen harflerin logitlerini okur ve bu skorları olasılıklara dönüştürür. JSON cevabını model değil, sunucu kodu üretir. Temel fark budur: altta normal bir yerel LLM vardır, ama proza üreteci gibi değil, karar skorlayıcısı gibi kullanılır.
Faydası kontroldür. Şema sabittir, bozuk JSON tamiri gerekmez, sonuç seçenek dağılımı içerir ve model fazladan metin ekleyemez. Fayda olmayan taraf da gerçektir: skorlar otomatik olarak kalibre edilmiş doğruluk değildir, seçeneklerin yazımı ve sırası sonucu etkileyebilir, küçük bir genel model de bu karar görevini Kev kadar öğrenmiş değildir. Bu yüzden buna Jev tarzı diyorum. Tipli karar readout'unu yaklaştırır, ama Jev olduğunu iddia etmez.
curl -s http://127.0.0.1:8010/v1/systemone \
-H 'content-type: application/json' \
-d '{"state":"reset email never arrived",
"questions":{"route":{"type":"choice",
"instructions":"Which queue should handle this?",
"criteria":{"account":"login and access",
"billing":"payment or invoice",
"sales":"buying or evaluation"}}}}'
Makinede Bir yerel CPU makinesinde ilk CLI çağrısı yaklaşık 21 saniye sürdü, çünkü model yükleniyordu. Sunucu modeli bellekte tuttuğunda asıl kullanım yolu çok daha hızlıydı: üç soruluk destek benzeri istek yaklaşık 486 ms, biraz daha uzun bir sınıflandırma isteği yaklaşık 847 ms sürdü. .deb paketi yaklaşık 15 KB, çünkü model kurulum sırasında indiriliyor.

Küçük bir benchmark Sonra paketi 100 genel destek yönlendirme mesajıyla denedim: 25 account, 25 billing, 25 shipping ve 25 technical. Test, varsayılan Qwen3 0.6B Q4_K_M preset ile sıcak yerel sunucuda ve dört sabit cevap seçeneğiyle çalıştı. Bu bilimsel benchmark değil, smoke test.

| Metrik | Sonuç |
|---|---|
| Toplam örnek | 100 |
| Doğru | 42 |
| Yanlış | 58 |
| Doğruluk | 42% |
| Ortalama seçilen olasılık | 0.587 |
| Ortalama confidence | 0.450 |
| Doğru cevaplarda ortalama confidence | 0.491 |
| Yanlış cevaplarda ortalama confidence | 0.420 |
| Median gecikme | 997 ms |
| 95. yüzdelik gecikme | 2389 ms |
| Confidence ≥ 0.75 | 5 örnek, 100% doğru |
Etiket bazında sonuçlar şöyleydi: account 18/25, billing 9/25, shipping 2/25 ve technical 13/25. Bu saklanacak kadar iyi değil. Zero-shot yaklaşımın en zayıf yerini net gösteriyor: küçük varsayılan modelde birinci seçeneğe güçlü bir bias vardı, özellikle shipping aleyhine. Confidence sadece en üstte yardımcı oldu. Çoğu çağrı 0.75 confidence altında kaldı ve orta confidence bantları gürültülüydü. Bu yüzden skor doğrulanacak bir gate sinyalidir, gerçeklik ölçeri değildir.
Neye yarar İyi kullanım alanları özellikle sade: destek yönlendirme, politika kontrolü, triyaj, alaka kontrolü, dağıtım başarısı, otomasyon öncesi güven aralığı ve ajanların araç çağrısından önce geçmesi gereken kapılar. Karar küçük bir seçenek listesine yazılabiliyorsa ve olasılık prozadan daha önemliyse bu desen işe yarar.
Sınır Sınır net olmalı. Varsayılan model küçük ve fazla kendinden emin olabilir. Bu olasılıklar ölçülmüş gerçek değil, seçenek skorlarıdır. Daha büyük model yardımcı olabilir, ama doğrulamanın yerine geçmez. local-jev'i ucuz bir yerel karar primitive'i olarak görüyorum, kahin olarak değil.
Küçük ama işe yarar Bu projede sevdiğim şey, Jev tartışmasını test edilebilir hale getirmesi. Kur, istek gönder, olasılıkları gör ve arayüzün kendi iş akışına uyup uymadığına karar ver. Belki gelecekte özel barındırılan karar modelleri yaygınlaşır. Belki birçok yerel araç için şu kadarı yeterlidir: sabit cevaplar, yerel model ve yeterince hızlı bir olasılık okuması.
