Model karşılaştırma · 2026-08-24

Ling 3.0 Tiny nedir, neden kapandı? Ling 3.0 Flash'a geçiş rehberi

Ling 3.0 Tiny'nin 7,9B MoE mimarisi, sağlayıcıda kapanma nedeni, gateway'in 410 yanıtı ve Ling 3.0 Flash'a geçişte model kimliğiyle düşünme kapatma yönteminin nasıl değiştiği anlatılıyor.

Ling 3.0 Tiny satırının kapanışını, gateway'in halefi adıyla söyleyen 410 yanıtını ve Ling 3.0 Flash'a geçişte değişen model kimliği ile düşünme sonekini gösteren sade şema.

Ling 3.0 Tiny neydi?

Ling 3.0 Tiny, InclusionAI'nin küçük Mixture-of-Experts modeliydi: 7,9 milyar toplam parametrenin token başına yalnızca 1,3 milyarı çalışıyordu. Küçük bir modelin hızını ve maliyetini, daha büyük bir modelin bilgi kapasitesiyle birleştirme fikrinin iyi bir örneğiydi.

İki modu vardı. Varsayılan Thinking modunda yanıt vermeden önce adım adım düşünüyor ve düşünce zincirini `reasoning_content` alanında ayrı döndürüyordu. Instant modunda ise doğrudan cevap veriyordu. Araç çağrısını yerel olarak destekliyor, tekrarlanan istemleri prompt cache'ten okuyor ve 262.144 tokenlık bağlam penceresi sunuyordu. Tek seferde en fazla 32.768 token çıktı veriyordu.

LLMTR üzerinde ücretsiz katmanda, günlük kullanım kotasıyla sunuluyordu. Bu yazının geri kalanının konusu, o rotanın neden artık yanıt vermediği ve yerine ne kullanacağınız.

Ling 3.0 Tiny neden artık yanıt vermiyor?

Rotayı sağlayıcı kapattı. 18 Ağustos 2026'da doğrudan sağlayıcının kendi ucuna bakılarak doğrulandı: model listesinde satır artık kapalı durum koduyla ve fiyat bloğu olmadan görünüyor, sohbet isteği ise `500 MODEL_NOT_AVAILABLE` döndürüyor. Aynı hesap ve aynı kimlik bilgisiyle `ling-3.0-flash` sorunsuz 200 yanıtı veriyor.

Bu ayrım önemli: sorun sunucuda, hesapta veya LLMTR tarafında değil, model kimliğinin kendisinde. Sağlayıcı ilk kez 15 Ağustos'ta erişilemez bildirdi; arıza birkaç kez sunucu kaynaklı sanıldıktan sonra doğru teşhise ulaşıldı.

LLMTR bu satırı katalogdan silmedi. Emekli edilen model, kendi URL'inde ve listede kalır; model adını arayan kişi doğru sayfaya ulaşır ve halefe yönlendirilir. Kaydı silmek ya da gizlemek, o kişiyi hiçbir yere ulaştırmamak demek olurdu.

Bugün `inclusionai/ling-3.0-tiny` çağırırsanız çıplak bir 400 veya 502 almazsınız. Gateway `410` döner ve yanıtta hem emeklilik tarihini (15 Ağustos 2026, sağlayıcının ilk erişilemez bildirdiği gün) hem halefi adıyla söyler. `details` bloğu makine tarafından okunabilir: halefin kimliğini oradan alıp geçişi kendi tarafınızda otomatikleştirebilirsiniz.

Emekli modele yapılan isteğin yanıtı: hata, halefi adıyla söyler

{
  "error": {
    "message": "Model \"inclusionai/ling-3.0-tiny\" was retired on 2026-08-15. Use \"inclusionai/ling-3.0-flash\" instead.",
    "type": "model_retired",
    "details": {
      "model": "inclusionai/ling-3.0-tiny",
      "retirement_date": "2026-08-15",
      "replacement_model": "inclusionai/ling-3.0-flash",
      "status": "retired"
    }
  }
}

Neden isteğinizi sessizce Flash'a yönlendirmiyoruz?

Teknik olarak mümkündü: `ling-3.0-tiny` çağrılarını arka planda `ling-3.0-flash`'a çevirebilirdik ve hiçbir istemci kırılmazdı. Bilerek yapmadık ve gerekçesi tek cümleyle şu: Tiny ücretsizdi, Flash ücretli.

Sessiz yönlendirme, ücretsiz kotayla çalışan bir kullanıcının fatura kalemi görene kadar fiyat değişikliğinden habersiz kalması demek olurdu. Kimse bir fiyat değişikliğini faturasından öğrenmemeli. Bu yüzden gateway isteği reddediyor, nedenini söylüyor ve kararı size bırakıyor.

Aynı sağlayıcının kataloğunda ücretsiz bir halef de kalmadı; yönlendirilecek eşdeğer bir $0 rota yok. Dolayısıyla seçenek gerçekten bir seçim: ücretli Flash'a geçmek ya da katalogdaki başka bir ücretsiz satıra bakmak.

Ling 3.0 Flash: halef ne sunuyor?

Ling 3.0 Flash, aynı ailenin belirgin biçimde daha büyük üyesidir: 124 milyar parametreli bir MoE ve token başına yaklaşık 5,1 milyar parametre çalışıyor. Ajan iş akışlarında token verimliliği hedefiyle ayarlanmıştır.

Bağlam penceresi ve çıktı tavanı Tiny ile aynı kalıyor, yani bu iki sınıra göre kurulmuş kodunuz olduğu gibi çalışır. Değişen şey model boyutu, fiyat ve düşünmeyi kapatma yöntemi.

Ling 3.0 Tiny ile Ling 3.0 Flash karşılaştırması. Kaynak: LLMTR model kataloğu, 24 Ağustos 2026.
ÖzellikLing 3.0 Tiny (emekli)Ling 3.0 Flash
Toplam parametre7,9 milyar124 milyar
Aktif parametreToken başına 1,3 milyarToken başına yaklaşık 5,1 milyar
Bağlam penceresi262.144 token262.144 token
Çıktı tavanı32.768 token32.768 token
Giriş fiyatıÜcretsiz, günlük kotalı1M token başına 0,06 USD
Cache okumaÜcretsiz, günlük kotalı1M token başına 0,012 USD
Çıkış fiyatıÜcretsiz, günlük kotalı1M token başına 0,18 USD
Düşünmeyi kapatma`:fast` soneki`:none` soneki
DurumSağlayıcıda kapalıAktif

Geçişte kodda değişen iki şey

Birincisi model kimliği: `inclusionai/ling-3.0-tiny` yerine `inclusionai/ling-3.0-flash`. Taban adres, istemci ve mesaj biçimi aynı kalır.

İkincisi ve gözden kaçanı: düşünmeyi kapatma yöntemi değişiyor. Tiny'de bunu `:fast` soneki veya gövdede `reasoning` alanını `false` göndererek yapıyordunuz. Flash'ta mekanizma farklıdır: `:none` soneki ya da `reasoning_effort` alanını `none` göndermek gerekir.

Eski `:fast` sonekini Flash'a taşırsanız 400 alırsınız; gateway hangi seviyelerin desteklendiğini yanıtta söyler. Bu bilinçli bir tasarım: anlamsız bir parametreyi sağlayıcıya iletip sessizce yok saydırmak yerine, isteği açık bir hatayla reddetmeyi tercih ediyoruz.

Geçiş: model kimliği ve düşünme soneki birlikte değişir

import os

from openai import OpenAI

client = OpenAI(
    base_url="https://llmtr.com/v1",
    api_key=os.environ["LLMTR_API_KEY"],
)

# ESKI (artik 410 doner):
#   model="inclusionai/ling-3.0-tiny"        # dusunme acik
#   model="inclusionai/ling-3.0-tiny:fast"   # dusunme kapali

# YENI: kimlik degisti, dusunmeyi kapatan sonek de degisti.
yanit = client.chat.completions.create(
    model="inclusionai/ling-3.0-flash:none",   # dusunme kapali
    messages=[{"role": "user", "content": "Bu destek talebini tek kelimeyle etiketle."}],
    max_tokens=32,
)

# Dusunme acik istiyorsaniz sonek vermeyin; varsayilan olarak dusunur.
analiz = client.chat.completions.create(
    model="inclusionai/ling-3.0-flash",
    messages=[{"role": "user", "content": "Bu mimari kararin risklerini degerlendir."}],
    max_tokens=8192,
)

print(yanit.usage.completion_tokens, analiz.usage.completion_tokens)

reasoning_effort neden tek seviye sunuyor?

OpenAI uyumlu birçok modelde `reasoning_effort` beş kademeli bir kadrandır. Ling ailesinde değil ve bunu varsaymak yerine ölçtük.

Aşağıdaki tablo Ling 3.0 Tiny üzerinde 6 Ağustos 2026'da yapılan ölçümdür: her seviye için üretilen düşünme zincirinin karakter uzunluğu. Sonuç bir kadran değil, gürültü. `low` seviyesi `high` seviyesinin iki katı düşünme üretiyor, geçersiz bir değer olan "banana" ise ortalarda bir yere düşüyor — yani sağlayıcı değeri kabul edip yok sayıyor.

Tek gerçek olan `none` seviyesidir: düşünmeyi sıfırlar. Bu yüzden Ling 3.0 Flash katalogda yalnızca `none` seviyesini duyurur. Diğer seviyeleri istemeniz hâlinde gateway açık bir 400 döner; sağlayıcıya iletip 200 yanıtla birlikte hiçbir şey değişmemesini tercih etmiyoruz, çünkü o durumda parametrenin çalıştığını sanırsınız.

reasoning_effort seviyelerine göre üretilen düşünme uzunluğu. Ling 3.0 Tiny üzerinde ölçüm, 6 Ağustos 2026.
reasoning_effort değeriÜretilen düşünme (karakter)Yorum
none0Tek gerçek seviye: düşünmeyi kapatır
minimal3.463Sıralama yok
low30.239En uzun düşünme — "low" olmasına rağmen
medium21.878Sıralama yok
high15.787"low" seviyesinin yarısı kadar
xhigh13.582En yüksek seviye, en kısa düşünmelerden biri
"banana" (geçersiz)19.354Geçersiz değer de kabul ediliyor
"" (boş)9.105Boş değer de kabul ediliyor

Araç çağrısı: adlandırılmış fonksiyon burada gerçekten çalışıyor

Ling 3.0 Flash araç çağrısını yerel olarak destekler ve bu ailede kayda değer bir ayrıntı vardır: `tool_choice` alanının üç kullanımı da ölçümde çalıştı. `auto`, `required` ve belirli bir fonksiyonu ada göre zorlamak — üçü de `finish_reason=tool_calls` ve düzgün biçimli argümanlarla döndü.

Bu, katalogdaki her modelde geçerli değildir. Örneğin Tencent Hy3 ve Nemotron 3 Ultra 262K dağıtımlarında adlandırılmış fonksiyonu zorlamak güvenilir çalışmaz; model istediğiniz aracı değil prompt'a uygun gördüğü aracı çağırabilir. Akışınız belirli bir aracın çağrılmasına bağlıysa bu fark model seçiminizi doğrudan etkiler.

Prompt cache de ölçüldü: tekrarlanan yaklaşık 30 bin tokenlık bir önek, ikinci çağrıdan itibaren cache'ten okundu. Cache okuma fiyatı girişin beşte biri olduğu için, sabit sistem istemi kullanan akışlarda anlamlı bir fark yaratır.

  • `tool_choice: "auto"` — çalışır.
  • `tool_choice: "required"` — çalışır.
  • Ada göre belirli bir fonksiyonu zorlamak — bu modelde çalışır.
  • Şema zorlamalı JSON çıktısı — desteklenmez.
  • Görsel ve ses girdisi — desteklenmez.

Kimler Flash'a geçmeli, kimler başka bir satıra bakmalı?

Tiny'yi üretimde kullanıyorduysanız ve iş yükünüz araç çağrısı, uzun bağlam veya ajan akışıysa Flash doğrudan halefidir: aynı bağlam penceresi, aynı çıktı tavanı, daha büyük model. Giriş tarafında 1 milyon token 0,06 USD tutar, yani ölçek küçükken maliyet de küçüktür.

Tiny'yi yalnızca ücretsiz olduğu için kullanıyorduysanız karar farklıdır. Bu sağlayıcıda ücretsiz bir halef kalmadı; katalogdaki diğer ücretsiz satırlara bakmanız gerekir. Model listesinde ücretsiz satırlar durum rozetiyle işaretlidir.

Her iki durumda da model yurt dışındaki üçüncü taraf altyapı üzerinde çalışır. İstemler ve tamamlamalar sağlayıcı tarafından günlüğe kaydedilebilir; Türkiye'de barındırılan bir LLMTR modeli değildir. Kişisel veri içeren istemler için katalogdaki Türkiye'de barındırılan satırları değerlendirin.

Sık sorulan sorular

Ling 3.0 Tiny neden MODEL_NOT_AVAILABLE hatası veriyor?

Sağlayıcı rotayı kapattı. 18 Ağustos 2026'da doğrulandı: sağlayıcının model listesinde satır kapalı durum koduyla ve fiyatsız görünüyor, sohbet isteği 500 MODEL_NOT_AVAILABLE döndürüyor. LLMTR üzerinden çağırdığınızda ise halefi adıyla söyleyen bir 410 alırsınız.

Ling 3.0 Tiny yerine ne kullanmalıyım?

inclusionai/ling-3.0-flash. Aynı ailenin daha büyük üyesi: 124B MoE, aynı 262.144 tokenlık bağlam penceresi ve aynı 32.768 tokenlık çıktı tavanı. Tiny ücretsizdi, Flash ücretlidir: 1M token başına 0,06 USD giriş ve 0,18 USD çıkış.

İsteklerim neden otomatik olarak Flash'a yönlendirilmiyor?

Tiny ücretsizdi, Flash ücretli. Sessiz yönlendirme, ücretsiz kotayla çalışan bir kullanıcının fiyat değişikliğini faturasından öğrenmesi anlamına gelirdi. Gateway bu yüzden isteği reddediyor, halefi adıyla söylüyor ve kararı size bırakıyor.

Ling 3.0 Flash'ta düşünmeyi nasıl kapatırım?

Model kimliğine :none soneki ekleyerek ya da istek gövdesinde reasoning_effort alanını none göndererek. Tiny'deki :fast soneki Flash'ta çalışmaz; mekanizma farklıdır ve eski soneki taşırsanız 400 alırsınız.

reasoning_effort neden low, medium, high seviyelerini kabul etmiyor?

Ölçümde bu seviyeler düşünme uzunluğunu düzenli biçimde değiştirmiyor: low seviyesi high seviyesinin iki katı düşünme üretiyor ve geçersiz bir değer bile kabul ediliyor. Gerçek etkisi olan tek seviye none olduğu için katalog yalnızca onu duyurur, diğerlerine açık bir 400 döner.

İlgili yazılar