deniz.in

Piyasalar

Hava durumu

Hava durumu yükleniyor

· kaynak Hacker News – Front Page (hnrss.org)

vLLM 0.31'in kısıtlı kod çözümü, tool-call şema doğruluğunu %92'den %100'e taşıyor

Ubicloud mühendisleri, Kimi K2.6 gibi açık ağırlıklı modellerin üretimde neden hatalı biçimlendirilmiş tool call'lar ürettiğini ve vLLM 0.31'in kısıtlı kod çözüm (constrained decoding) bayrağının şema doğruluğunu nasıl %100'e çıkardığını anlatıyor.

vLLM 0.31'in kısıtlı kod çözümü, tool-call şema doğruluğunu %92'den %100'e taşıyor

%92'lik bir sorun ve %100'lük bir çözüm

Ubicloud, Moonshot AI'nin Kimi K2.6'sını vLLM 0.28 üzerinde sunarken, model yalnızca zamanın %92'sinde beklenen şemaya uyan tool call'lar üretiyordu — kabaca her 25 denemede iki başarısızlık. 20 Ekim'de yayımlanan ve Hacker News ana sayfasında öne çıkan bir blog yazısında, Ubicloud kıdemli yazılım mühendisleri Jesse Donkervliet ve Junhao Li bu boşluğun neden var olduğunu ve nasıl kapatılabileceğini açıklıyor. vLLM yakın zamanda kısıtlı kod çözüm (constrained decoding) desteği ekledi ve bu özellik vLLM 0.31'de sunucu tarafı bir bayrak olarak yayımlandı; özellik etkinleştirildiğinde Ubicloud, daha yeni Kimi ve DeepSeek modellerinde %100 şema doğruluğu bildiriyor.

Tool calling nasıl çalışır

Yazarlar, bir LLM'in harici bir aracı çağırmasını sağlamanın iki adım sürdüğünü açıklıyor. Önce OpenCode gibi bir agent harness, modele kullanılabilir araçları tanımlayan bir JSON dizisi gönderir — her giriş, fonksiyonun adını, açıklamasını, parametre türlerini, varsayılan değerlerini ve hangi parametrelerin zorunlu olduğunu belirtir. Ardından çıkarım motoru bu tanımlamayı, modelin eğitildiği biçimle eşleşen modele özgü token'larla sarar. Model harekete geçmeye karar verdiğinde, kendi özel token'larını yayarak bir çağrının başlangıcını, fonksiyon adını ve indeksini ile JSON argümanlarını işaretler. Sunucunun ayrıştırıcısı bu işaretleri temizler ve harness'e bir JSON nesnesi döndürür; harness de aracı çalıştırıp sonucu geri besler. Çağrı yalnızca aracın şemasına uyarsa başarılı olur.

Hatalı biçimlendirilmiş çağrılar nereden geliyor

Basit yaklaşım, modelin serbestçe üretmesine izin verip iyi biçimlendirilmiş çağrılar üretmesi için eğitimine güvenmektir. Bu genellikle işe yarar; ancak bir dil modeli token'ları olasılıkla örnekler ve döngüdeki hiçbir şey çıktıyı derlemez ya da tür bakımından doğrulamaz. Yazı yapısal bir nedene işaret ediyor: modeller, her biri kendi araçlarına ve adlandırma kurallarına sahip çok sayıda tool-calling veri kümesiyle eğitilir; dolayısıyla bir model, canlı aracın adı web_search iken search_web, etkin şema location beklerken city_name yayabilir. Her hatalı biçimlendirilmiş çağrı bir hata döndürür, bağlam penceresinde istenmeyen içerik birikir, agent yeniden dener ve hem kalite hem de maliyet zarar görür — özellikle hataların biriktiği çok turlu agentic oturumlarda.

Moonshot sunum kalitesini nasıl ölçüyor

Sağlayıcıların Kimi'yi özgün hizmetle aynı kalitede sunduklarını doğrulayabilmeleri için Moonshot AI, K2VV ToolCall benchmark'ını yayımladı. Bu iş yükü 2000 istekten oluşur ve iki metriği nicelendirir: bir hizmetin bir aracı ne zaman çağıracağına dair kararlarının Moonshot'ın kendi hizmetiyle ne kadar örtüştüğünü ölçen tetikleyici benzerliği (trigger similarity) ve üretilen tool call'ların şemaya uyarak başarıyla çalıştırılabilen kısmını ölçen şema doğruluğu.

Kısıtlı kod çözüm, token token

Kısıtlı kod çözüm sorunu örnekleme noktasında ele alır. Modelin serbestçe üretmesine izin verip sonucu sonra doğrulamak yerine, çıkarım motoru üretimi adım adım yönlendirir ve yalnızca tool call'u sözdizimsel olarak geçerli tutan token'lara izin verir. Geçerli sayılan şey aracın şemasından türetilir. Yazıya göre vLLM bunu, bir modelin tool-call sözdizimini kodlayan XGrammar kitaplığındaki yapısal etiketleri kullanarak uygular: bir çağrının nerede başladığını, fonksiyon adı ve indeksinin nerede göründüğünü ve şemayla kısıtlanmış JSON argümanlarının üretilmesi gereken bölgeyi.

Neden önemli

Yazı, yapay zeka modelleriyle çalışan geliştiricilerin tanıdık bir yakınmasıyla açılıyor: sonuçların kalite benchmark'larının vaat ettiğinin oldukça altında kalması. Bu eksikliğin bir kısmı, meğer, ağırlıklardan değil sunum yığıınından kaynaklanıyormuş — aynı model, çıkarım motoruna ve yapılandırmasına bağlı olarak çok farklı tool-calling kalitesi gösterebiliyor. Kısıtlı kod çözüm, doğruluk garantisini modelin olasılıksal eğitiminden çıkarıp çıkarım sunucusundaki deterministik mekanizmaya taşıyor; bu, üretimde agent çalıştıran ve tek bir hatalı biçimlendirilmiş çağrının uzun bir oturumu rayından çıkarabileceği herkes için önemli. Garanti aynı zamanda sınırlıdır: benchmark'ın tetikleyici benzerliğini şema doğruluğundan ayırması, geçerli ve çağrılabilir çağrıların doğru aracı doğru argümanlarla seçmekle aynı şey olmadığının bir hatırlatıcısı.

  • #vllm
  • #llm-inference
  • #tool-calling
  • #ai-agents
  • #open-source

İlgili yazılar