Entegrasyon rehberleri · 2026-08-29
OpenCode yapılandırmasında LLMTR sağlayıcı bloğu ve model adları
OpenCode tarafında LLMTR bağlantısının hangi dalda belgelendiği, bağlantı komutunun akışı, opencode.json içindeki sağlayıcı bloğunun yapısı ve katalog kimliklerinin bu bloğa nasıl yazıldığı adım adım anlatılıyor.
Belgelendirme hangi depoda ve hangi dalda duruyor
Bu kurulumun kaynağı knowhycodata/opencode deposundaki add-llmtr-docs dalı. Değişiklik packages/web/src/content/docs/providers.mdx dosyasına, sağlayıcı listesinin içine yeni bir bölüm ekliyor. Yani elinizdeki tarif tahmin değil, aracın kendi sağlayıcı dokümanına yazılmış bir bölüm.
Dürüstçe söylenmesi gereken nokta şu: bu dal upstream’e merge edilmedi. OpenCode’un yayımlanmış dokümanına bakarsanız LLMTR bölümünü orada bulamazsınız. İçeriği görmek isteyen knowhycodata/opencode deposundaki add-llmtr-docs dalına bakmalı.
Bölümün LLMTR tarifi kısa: Türkiye’de barındırılan, OpenAI uyumlu bir gateway. Tek anahtar hem kendi ilk taraf modellerine hem de OpenAI, Anthropic ve Google gibi satıcıların geçiş rotalarına erişim veriyor. Kurulumun tamamı bu tek anahtarın etrafında dönüyor.
Bağlantı komutu ve dört adımlık akış
Kurulum arayüzden yürüyor. Önce panelde hesap açıp anahtar üretiyorsunuz, ardından araç içinde bağlantı komutunu çalıştırıp sağlayıcı listesinde LLMTR’yi arıyorsunuz. Komut anahtarı soran küçük bir alan açıyor; anahtarı yapıştırıp onaylıyorsunuz.
Dördüncü adım model seçimi. Model komutu çalıştırıldığında ilk taraf llmtr ön ekli rotalar hazır olarak listede duruyor, çünkü onlar önceden yüklü geliyor. Katalogdaki başka bir modeli kullanmak istiyorsanız iş burada bitmiyor; kimliği yapılandırma dosyasına eklemeniz gerekiyor. Bir sonraki bölüm tam olarak bunu anlatıyor.
| Adım | Komut veya girdi | Sonucu |
|---|---|---|
| 1 | Panelde hesap ve anahtar | llmtr ön ekli bir API anahtarı elde edilir |
| 2 | Bağlantı komutu | Sağlayıcı listesinde LLMTR aranır |
| 3 | Anahtar girişi | Anahtar araca kaydedilir |
| 4 | Model komutu | Seçici açılır, ilk taraf rotalar listede görünür |
Bağlantı komutunun anahtar isteyen adımı
/connect
┌ API key
│
│
└ enter
/models
Yapılandırma dosyasındaki sağlayıcı bloğu
Ek modeller opencode.json dosyasında tanımlanıyor. Blok üç kat derinlikte: sağlayıcı anahtarı, onun altında model haritası, her modelin altında da görüntülenecek ad. Harita anahtarı katalogdaki canonical kimliğin ta kendisi, yani saglayici ve model adının eğik çizgiyle birleştiği biçim.
Ad alanı yalnızca arayüzde görünen etiketi belirler; isteğe giden değer harita anahtarıdır. Bu ayrımı bilmek, seçicide gördüğünüz adla katalogdaki kimliğin farklı görünmesini açıklar. Etiketi istediğiniz gibi yazabilirsiniz, ancak anahtarı harfi harfine katalogdaki gibi yazmanız gerekir.
Dosyanın başındaki şema bildirimi düzenleyicide alan tamamlama sağlar. Bloğu elle yazarken kimliği kopyalayıp yapıştırmak, nokta ve tire farklarından doğan yazım hatalarını önler; sürüm numaraları noktalı yazıldığı için bu hata sık görülür.
opencode.json içinde iki katalog kimliğinin tanımlanması
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"llmtr": {
"models": {
"anthropic/claude-opus-4.8": {
"name": "Claude Opus 4.8"
},
"openai/gpt-5.5": {
"name": "GPT-5.5"
}
}
}
}
}
İlk taraf rotalar ile geçiş rotaları arasındaki adlandırma farkı
Katalogda iki tür kimlik var ve OpenCode bunlara farklı davranıyor. llmtr ön ekiyle başlayanlar gateway’in kendi altyapısında çalışan ilk taraf rotalar; bunlar seçicide hazır geliyor. Öndeki bölümü bir satıcı adı olan kimlikler ise geçiş rotaları ve yapılandırmaya elle yazılmaları gerekiyor.
Sağlayıcı dokümanı bu ikinci kümeyi tarif ederken araç çağrısını destekleyen geçiş modellerini özellikle anıyor. Kodlama oturumunda modelin araç tanımlarını kabul etmesi belirleyici olduğu için, bloğa yazacağınız kimliği seçerken katalogda bu desteğe bakmak yerinde olur.
- llmtr ön ekli kimlikler önceden yüklü gelir, yapılandırmaya yazılması gerekmez
- Satıcı ön ekli kimlikler geçiş rotalarıdır ve model haritasına elle eklenir
- Harita anahtarı katalogdaki kimliğin birebir kopyasıdır
- Ad alanı yalnızca arayüz etiketidir, istekte kullanılmaz
- Aynı blok altında istediğiniz kadar kimlik tanımlayabilirsiniz
Kimliği yazmadan önce uç uyumuna bakın
Gateway’de her modelin bir veya birden çok binding’i var ve bu, kimliğin hangi uçtan çağrılabileceğini belirliyor. Sohbet tamamlama ucuna gelen bir istek, modelin sohbet tamamlama binding’i olduğunda da yalnızca Responses binding’i olduğunda da karşılanır. Dokümandaki örnek listenin iki farklı türden kimlik taşıyabilmesinin sebebi bu.
Tersi geçerli değil; ama OpenCode kurulumunda o yönü zaten kullanmıyorsunuz. Yine de bir istisna var: gateway dokümanı GPT-5 Codex ailesini yalnızca Responses ucunda tanımlıyor. Sohbet dışı rotalar, örneğin gömme modelleri, model haritasına hiç yazılmamalı; onlar bir kodlama oturumunun karşılığı olan uçta hizmet vermiyor.
| Kimlik | Katalogdaki binding | Yapılandırmada yeri |
|---|---|---|
| anthropic/claude-opus-4.8 | CHAT_COMPLETIONS | Model haritasına eklenir |
| openai/gpt-5.5 | RESPONSES | Model haritasına eklenir |
| llmtr/gemma-4 | CHAT_COMPLETIONS | İlk taraf, hazır gelir |
| llmtr/trendyol-asure-12b | CHAT_COMPLETIONS | İlk taraf, hazır gelir |
| llmtr/embeddinggemma-300m | EMBEDDINGS | Sohbet rotası değil, yazılmaz |
Doğrulama ve bu dalın kapsamadığı kısım
Bloğu kaydetmeden önce kimliğin katalogda gerçekten var olduğunu ve emekli olmadığını doğrulayın. Model listesi ucu anahtarsız okunabildiği için bu kontrol araca girmeden yapılabilir. Emekli kayıtların sayfaları yayında kalır, bu yüzden bir kimliği internette görmüş olmak onun kullanılabilir olduğunu göstermez.
Kapsam konusunda bir şeyi de açıkça söylemek gerekiyor: incelenen dal yalnızca dokümantasyon ekliyor. Sağlayıcı kaydının araç içinde nasıl tanımlandığı, hangi paketle konuşulduğu ve isteğin hangi kütüphaneden geçtiği bu değişikliğin dışında kalıyor. Bu rehber de o kısım hakkında iddia üretmiyor; yalnızca belgelenmiş akışı ve yapılandırma biçimini anlatıyor.
Maliyet tarafı ise gateway kurallarına göre işler. Ücretlendirme token bazlıdır ve seçtiğiniz modelin kendi tarifesine göre hesaplanır. Platform marjı model fiyatlarına eklenmez, yalnızca kredi yüklemede uygulanır ve yüzde sekizdir.
Bloğa yazılacak kimliği katalogda doğrulama
curl -s https://llmtr.com/v1/models \
| grep -o '"id":"anthropic/claude-opus-4.8"'
Sık sorulan sorular
OpenCode dokümanında LLMTR bölümünü göremiyorum, nerede duruyor?
Bölüm knowhycodata/opencode deposundaki add-llmtr-docs dalında, packages/web/src/content/docs/providers.mdx dosyasında. Dal upstream’e merge edilmediği için yayımlanmış dokümanda görünmüyor; içeriği görmek için o dala bakmanız gerekir.
Model seçicide neden yalnızca birkaç model çıkıyor?
İlk taraf llmtr ön ekli rotalar önceden yüklü geldiği için hazır listelenir. Kataloğun geri kalanı otomatik gelmez. Kullanmak istediğiniz geçiş rotasının kimliğini opencode.json içindeki model haritasına eklediğinizde seçicide görünür.
Model haritasındaki ad alanını değiştirebilir miyim?
Evet. Ad alanı yalnızca arayüzde görünen etikettir ve istediğiniz gibi yazılabilir. İsteğe giden değer harita anahtarıdır, o yüzden anahtarı katalogdaki canonical kimlikle harfi harfine aynı yazmanız gerekir.
Her katalog kimliğini bu bloğa yazabilir miyim?
Hayır. Blok bir kodlama oturumu için model tanımlar, dolayısıyla sohbet rotası olmayan kimlikleri yazmak anlamsızdır. Gömme, görüntü veya ses rotaları farklı uçlarda hizmet verir. Kimliği yazmadan önce katalogdaki desteklenen operasyon bilgisine bakın.