Bosphorus

← Bilgi bankası

aimo'da Jev Router seçmek: hangi model yanıt verir

aimo'da OpenRouter'ın Jev Router'ını seçtiğinizde hangi modelin yanıt verdiğini görün: onu listeleyen, ona gönderen ve yanıtlayan modeli gösteren çağrılar.

ModellerOpenRouterAPIaimoÜrün üzerinde doğrulandığı tarih:

Seçicideki bazı modeller tek bir model değildir. OpenRouter’daki typesafe/jev-router, yani Jev Router, her isteğe bakar ve yanıtlamak için başka bir model seçer. aimo’da onu seçtiğinizde yanıt veren model bir mesajdan ötekine değişebilir; platform da hangisinin yanıt verdiğini size gösterir.

Bu makale bunun arkasındaki API çağrılarını izler: yönlendirici listeye nasıl girer, ağ geçidi ne gönderir, seçim nerede yapılır ve geri ne okuyabilirsiniz. Aşağıdaki komutların hepsi 5 Ekim 2026’da canlı bir kurulumda çalıştırıldı; aktarılan yanıtlar da o gün alınanlardır.

Kısa yanıt

aimo hiçbir zaman model değiştirmez. Yalnızca tek bir model kimliği gönderir, OR/typesafe/jev-router; ağ geçidi de bu kimliği OpenRouter’a iletir. Seçim OpenRouter’ın içinde yapılır. Yönlendiricinin arkasındaki karar modeli Jev, konuşmayı okur; görevi ve görevin ne kadar zor olduğunu değerlendirir ve havuzunda çıtayı geçen en ucuz modeli seçer. Seçtiği model yanıtın model alanında, onu çalıştıran sağlayıcı da provider alanında bildirilir.

Ağ geçidinin rolü daha küçüktür. Yönlendiriciyi diğer OpenRouter modelleri gibi listeler, hesabınızın kullanabileceği model listesini uygular, isteği gönderir ve OpenRouter’ın bildirdiği sağlayıcıyı ve maliyeti kaydeder.

Kim ne yapar

Adım Kim Nerede
Yönlendiriciyi kaydetmek Yönetici Konsol, /providers → OpenRouter
Bir ekibe ya da kişiye izin vermek Yönetici Konsol, /keys → model profilleri
Sohbette seçmek Herkes kendisi aimo, model seçici
Bir betikten çağırmak Herkes kendisi Bir platform anahtarıyla herhangi bir HTTP istemcisi

Adım 1: yönlendirici listede

Bir yönetici typesafe/jev-router’ı /providers sayfasının OpenRouter sekmesinde kaydeder. Add & check, OpenRouter’a token harcatmayan iki soru sorar: anahtar geçerli mi ve bu model kimliği var mı. Yönlendiricinin sabit bir uç noktası yoktur; bu yüzden uç nokta listesinin boş olması normaldir ve hata sayılmaz. Denetim, modelin modalitesini kaydeder; platform da bunu gösterdiği yeteneklere dönüştürür.

aimo, model seçicisini ağ geçidinin verdiği listeden doldurur. Aynı listeye kendiniz bakın:

GW=https://ai.corp.example
curl -s $GW/v1/models -H "Authorization: Bearer $BOSPHORUS_KEY" \
  | jq -c '.data[] | select(.id=="OR/typesafe/jev-router")'

Canlı ağ geçidinin döndürdüğü kayıt:

{"capabilities":["vision","audio"],"id":"OR/typesafe/jev-router","nodes":["openrouter"],"object":"model","owned_by":"openrouter","type":"llm"}

OpenRouter modelleri OR/ önekiyle listelenir. Kayıt yalnızca hesabınızın kullanabileceği modeller arasında yer alıyorsa görünür. Bir kayıtta eksik olan yetenek, platformun onu doğrulayamadığı anlamına gelir; modelin o yeteneğe sahip olmadığı anlamına gelmez.

Adım 2: bir mesaj ne yapar

Bir mesaj gönderdiğinizde aimo, isteği /v1/chat/completions adresine OR/typesafe/jev-router modeliyle gönderir. Ağ geçidi sonra:

  1. OR/ önekini kaldırır ve bundan sonra typesafe/jev-router kimliğiyle çalışır.
  2. İsteği yalnızca OpenRouter modellerinden karşılar. İsteği, aynı ada sahip bir modeli bulunan başka bir sağlayıcıya asla kaydırmaz.
  3. Modelin etkin olduğunu, onun için bir anahtar bulunduğunu ve hesabınızın onu kullanabildiğini denetler. Ardından politika denetimleriniz ve hız limitleriniz, her modelde olduğu gibi çalışır.
  4. İsteğe, OpenRouter maliyeti bildirsin diye tek bir alan ekleyip onu OpenRouter’a gönderir.

OpenRouter isteği, modeli seçen Jev’e verir. Yanıt, onu üreten modelin ve hizmet veren sağlayıcının adıyla geri gelir; ağ geçidi de yanıtı size değiştirmeden akış olarak iletir.

Adım 3: geçişi kendiniz görün

Birbirinden çok farklı iki istem gönderin ve her yanıtın model alanını karşılaştırın. İlk komut küçük bir yardımcı tanımlar; böylece iki çağrı kısa kalır.

ask() {
  curl -s $GW/v1/chat/completions \
    -H "Authorization: Bearer $BOSPHORUS_KEY" -H 'Content-Type: application/json' \
    -d "$1" \
    | jq -c '{model, provider, cost: .usage.cost, tokens: .usage.completion_tokens}'
}

Kolay bir istem:

ask '{"model":"OR/typesafe/jev-router","max_tokens":200,"messages":[{"role":"user","content":"Say hello in one word."}]}'
{"model":"openai/gpt-6-luna","provider":"Azure","cost":0.0000037,"tokens":5}

Zor bir istem:

ask '{"model":"OR/typesafe/jev-router","max_tokens":3000,"messages":[{"role":"user","content":"Prove that the square root of 2 is irrational, then find the smallest solution of x^2 - 2y^2 = 1 with y>0."}]}'
{"model":"anthropic/claude-sonnet-5.5","provider":"Claude Platform on AWS","cost":0.005046,"tokens":494}

İstekte aynı model kimliği, yanıtlarda iki farklı model ve her biri için OpenRouter’ın o tek istek için bildirdiği maliyet. Bu ikisi, Jev’in o gün seçtiklerinin örnekleridir. Neyi seçeceği OpenRouter ile TypeSafe’e bağlıdır ve değişebilir.

"stream": true ile ilk çerçeve aynı iki alanı zaten taşır; bu yüzden bir istemci metin gelmeden önce hangi modelin yanıt verdiğini gösterebilir:

{"model":"openai/gpt-6-luna","provider":"Azure"}

Havuzu daraltmak

Varsayılan olarak Jev bütün havuzundan seçer. Bir betik, isteğle birlikte bir jev-router eklentisi göndererek havuzu daraltabilir. Her girdi tam bir model kimliği ya da openai/* gibi bir desendir. Ağ geçidi bu alanı olduğu gibi geçirir. aimo’nun model seçicisi eklenti göndermez.

ask '{"model":"OR/typesafe/jev-router","max_tokens":300,"plugins":[{"id":"jev-router","models":["openai/*"]}],"messages":[{"role":"user","content":"Prove that the square root of 2 is irrational, in three sentences."}]}'
{"model":"openai/gpt-6.1-sol","provider":"OpenAI","cost":0.001734,"tokens":169}

Yukarıda Anthropic’in modeline giden zor bir istem burada OpenAI’da kaldı. models içinde hiçbir şeyle eşleşmeyen girdiler yok sayılır. excluded_models içindeki girdiler asla yok sayılmaz: tüm adayları eliyorlarsa istek 404 ile başarısız olur.

Bir politika notu. Bir ekip için OR/typesafe/jev-router’a izin vermek, Jev’in yönlendirdiği her şeye izin vermek demektir; çünkü platform seçilen modeli ancak yanıt geldiğinde öğrenir. Bu önemliyse havuzu eklentiyle daraltın ya da belirli bir model seçin. Bir betiğin hangi kimlik bilgisini gönderdiğini kendi anahtarlarınızla API çağırma makalesi anlatır.

Platform neyi kaydeder

Her istek bir kullanım kaydı bırakır. Kayıtta sizin istediğiniz model olan typesafe/jev-router, isteği gerçekte karşılayan sağlayıcı ve OpenRouter’ın bildirdiği maliyet bulunur. Yanıt veren modelin adı, bu kayıtta değil, size gelen yanıt gövdesindedir. Konsolda aynı istekler /activity sayfasında, maliyet de /usage sayfasında görünür.

Bir şey yolunda gitmediğinde

Gördüğünüz Olası neden
Yönlendirici listede yok Kayıtlı değil, devre dışı ya da hesabınızın kullanabileceği modeller onu dışarıda bırakıyor. Bir yöneticiye sorun.
/providers sayfasını anan bir 503 Model kimliği kayıtlı değil ya da onun için tanımlı bir anahtar yok.
403 model_not_allowed Hesabınızın kullanabileceği modeller onu içermiyor. aimo’da bu, sohbette bir mesaj olarak görünür.
Eklenti gönderdikten sonra 404 excluded_models içindeki girdileriniz tüm adayları eledi.
Maliyet turdan tura değişiyor gibi görünüyor Jev farklı bir model seçti. Her yanıtın model alanını karşılaştırın.