Skip to content

Yerel Modeller Kataloğu

Qevron, kendi GPU sunucularımızda çalışan kendi modellerimizi üçüncü taraf API'ler (OpenAI / Anthropic / Gemini) ile aynı arayüzden sunar. Müşteri / istemci tarafında tek değişen şey: istek gövdesindeki "model" alanı.

Bu sayfa, anlık olarak çalışan tüm yerel modelleri, hangi tip işi yaptığını ve nasıl çağrılacağını tek tabloda toparlar.

Hızlı tablo

Model adıTipAçıklamaEndpoint (qevron üzerinden)
verinovachatgpt-oss-20b Q8 — reasoning kapalı, telefonda hızlı yanıtPOST /v1/chat/completions
verinova-largechatQwen3-30B-A3B-Instruct (Q8 MoE) — reasoning açık, zengin/detaylı yanıtPOST /v1/chat/completions
veriEmbeddingembeddingÇok dilli embedding (vLLM)POST /v1/embeddings
verireragrerankTEI cross-encoder; arama sonuçlarını sıralarPOST /v1/rerank
solab-sttsttWhisper TR/EN — sesten metnePOST /v1/audio/transcriptions
blab-ttsttsPiper TTS (CPU) — kısa metinlere uygunPOST /v1/audio/speech
blab-fast-tr-nazttsPiper GPU — Türkçe Naz sesiPOST /v1/audio/speech
blab-fast-en-emmattsPiper GPU — İngilizce Emma sesiPOST /v1/audio/speech
blab-stablettsSupertonic v3 — yüksek kalite, doğal tonPOST /v1/audio/speech
spook-visionvisionGörsel anlama / VQAPOST /v1/chat/completions (image input)
spook-detectdetectNesne tespiti — bbox listesiPOST /api/channel/:id/custom_test
spook-backgroundimageArka plan kaldırma / değiştirmePOST /api/channel/:id/custom_test
spook-ocrocrGörseldeki yazıyı çıkarPOST /api/channel/:id/custom_test
spook-generateimageMetinden görsel üretimiPOST /v1/images/generations

Önemli

Hangi sunucuda, hangi portta çalıştığını bilmenize gerek yok. Tüm istekler Qevron gateway üzerinden (http://localhost:3001 içerden, https://app.qevron.ai dışarıdan) geçer. Qevron, model adına bakıp arkadaki uygun channel'a yönlendirir. Sunucular taşınınca, eklenince, çıkınca kod değişikliği gerekmez.

Bağlantı temelleri

İki ortam, iki base URL:

Nereden?Base URLAPI anahtarı
Aynı makinedeki servisler (calleague-platform, callekit-agents, vb.)http://localhost:3001QEVRON_API_KEY (= qevron ADMIN_KEY)
Dış / SaaS istemciler, tarayıcı SDK'larıhttps://app.qevron.aiKullanıcının kendi sk-... anahtarı

Yetkilendirme her iki durumda da aynı başlıkla:

Authorization: Bearer <ANAHTAR>

Tek bir model neden iki farklı kanalda olabilir? (verinova örneği)

Bazen aynı modelin iki ayarı birden istenir. Örnek:

  • verinova → CalleKit telefon ajanı için hızlı, kısa cevap (reasoning kapalı). Bu kanal port 8903'te çalışır — kanal #9.
  • verinova-large → Doküman / chatbot tarafı için detaylı, "düşünerek" cevap (reasoning açık). Bu farklı bir model (Qwen3 30B), kanal #143, port 8907.

Çağıran taraf hangi davranışı istiyorsa model adını ona göre verir. Aynı modelin iki kez kanal olarak eklenmesi gerekmez — bu kafa karışıklığı yaratır ve Qevron'un yük dağıtıcısı (distributor) ikisinden birini rastgele seçer, sonuçlar kararsız olur.

Yaygın hata

"verinova" model adıyla ikinci bir kanal oluşturup base URL'yi :8900 yazarsanız bağlantı reddedilir. Port 8900 vllm / veriEmbedding içindir — orada llama-server yok. Verinova zaten kanal #9 olarak tanımlı, ikincisini eklemenize gerek yok.

Chat — verinova / verinova-large

curl

bash
curl https://app.qevron.ai/v1/chat/completions \
  -H "Authorization: Bearer sk-..." \
  -H "Content-Type: application/json" \
  -d '{
    "model": "verinova",
    "messages": [
      {"role": "system", "content": "Kısa cevap ver."},
      {"role": "user",   "content": "1 + 1 kaç?"}
    ]
  }'

Python (openai SDK)

python
from openai import OpenAI

client = OpenAI(
    api_key="sk-...",
    base_url="https://app.qevron.ai/v1",
)

# Hızlı yanıt (telefon, kısa sohbet)
fast = client.chat.completions.create(
    model="verinova",
    messages=[{"role": "user", "content": "Bana bir limerik yaz"}],
)

# Detaylı / "düşünerek" yanıt (rapor, analiz)
deep = client.chat.completions.create(
    model="verinova-large",
    messages=[{"role": "user", "content": "Bir SaaS ürününün PRD'sini tasarla"}],
)

Akış (streaming)

"stream": true ekleyin; sunucu Server-Sent Events ile parça parça yanıt verir. SDK döngüsü:

python
for chunk in client.chat.completions.create(
    model="verinova",
    messages=[{"role": "user", "content": "..."}],
    stream=True,
):
    print(chunk.choices[0].delta.content or "", end="", flush=True)

Embedding — veriEmbedding

bash
curl https://app.qevron.ai/v1/embeddings \
  -H "Authorization: Bearer sk-..." \
  -H "Content-Type: application/json" \
  -d '{"model": "veriEmbedding", "input": ["merhaba dünya", "hello world"]}'
python
emb = client.embeddings.create(
    model="veriEmbedding",
    input=["merhaba dünya", "hello world"],
)
vectors = [item.embedding for item in emb.data]

Rerank — verirerag

bash
curl https://app.qevron.ai/v1/rerank \
  -H "Authorization: Bearer sk-..." \
  -H "Content-Type: application/json" \
  -d '{
    "model": "verirerag",
    "query": "qevron nedir",
    "documents": ["Qevron bir AI gateway'idir.", "Bugün hava güzel.", "Kanal yapısı OpenAI uyumludur."]
  }'

Yanıt, gönderdiğiniz documents dizisindeki indeksleri alaka sırasına göre döndürür (alan adı results[].index + relevance_score).

STT (sesten metne) — solab-stt

bash
curl https://app.qevron.ai/v1/audio/transcriptions \
  -H "Authorization: Bearer sk-..." \
  -F "model=solab-stt" \
  -F "file=@/yol/ses.wav" \
  -F "language=tr"

Dil ipucu

language parametresi opsiyonel ama önerilen — Whisper'ın yanlış dile sapmasını engeller. Türkçe için tr, İngilizce için en.

TTS (metinden sese) — blab-*

Aynı endpoint, üç farklı kalite/ses seçeneği:

bash
# Hızlı, CPU, kısa metinler (anlık duyuru)
curl https://app.qevron.ai/v1/audio/speech \
  -H "Authorization: Bearer sk-..." \
  -d '{"model": "blab-tts", "input": "Merhaba", "voice": "tr"}' \
  -o out.wav

# GPU, Naz sesi (Türkçe)
curl https://app.qevron.ai/v1/audio/speech \
  -H "Authorization: Bearer sk-..." \
  -d '{"model": "blab-fast-tr-naz", "input": "Tanıştığımıza memnun oldum"}' \
  -o naz.wav

# En kaliteli, doğal ton (uzun anlatım, ürün demosu)
curl https://app.qevron.ai/v1/audio/speech \
  -H "Authorization: Bearer sk-..." \
  -d '{"model": "blab-stable", "input": "Qevron, kendi modellerinizi tek API ile sunar."}' \
  -o stable.wav

Hangisini seçmeliyim?

  • blab-tts — Latans kritik, içerik kısa (bildirim, IVR menü).
  • blab-fast-* — Telefonda gerçek zamanlı konuşma; ses karakteri sabit (Naz/Emma).
  • blab-stable — Kalitenin önemli olduğu kayıtlar (eğitim videosu, ürün tanıtımı, podcast prototipi).

Vision — spook-vision

OpenAI'nin görsel girdi formatıyla çalışır. URL veya base64 data URL kabul eder.

python
resp = client.chat.completions.create(
    model="spook-vision",
    messages=[{
        "role": "user",
        "content": [
            {"type": "text", "text": "Bu görselde ne var?"},
            {"type": "image_url", "image_url": {"url": "https://.../foto.jpg"}},
        ],
    }],
)

Image generation — spook-generate

bash
curl https://app.qevron.ai/v1/images/generations \
  -H "Authorization: Bearer sk-..." \
  -H "Content-Type: application/json" \
  -d '{
    "model": "spook-generate",
    "prompt": "İstanbul Boğazı, gün batımı, sinematik aydınlatma",
    "size": "1024x1024"
  }'

Yardımcı modeller — spook-detect / -ocr / -background

Bu üçü saf OpenAI şemasına oturmadığı için, admin "custom_test" endpoint'i üzerinden çağrılır:

bash
curl https://app.qevron.ai/api/channel/85/custom_test \
  -H "Authorization: Bearer sk-..." \
  -H "Content-Type: application/json" \
  -d '{"model": "spook-detect", "image": "data:image/jpeg;base64,..."}'

Channel ID'leri: spook-detect=85, spook-background=86, spook-ocr=87. (UI'da Channels sayfasından "Test" düğmesi ile interaktif denenebilir.)

Calleague-platform tarafı

Calleague projeleri Qevron'a iki ENV ile bağlanır:

bash
# .env
QEVRON_URL=http://localhost:3001          # Aynı makinedeyseniz
QEVRON_API_KEY=<qevron ADMIN_KEY>         # qevron'un .env'indeki ADMIN_KEY

Pro / Plus akışlarda [...path].ts self-host handler'ı bu iki değeri okuyup OpenAI SDK'sini Qevron'a yönlendirir — kodda model adını değiştirmek yeterli.

callekit-agents için:

bash
QEVRON_INTERNAL_URL=http://localhost:3001
QEVRON_API_KEY=<aynı>

Sorun çözme

"connection refused"

%99 durumda base URL yanlış porta gidiyor. Doğru port qevron tarafında zaten tanımlı — kendi başınıza port belirlemeniz gerekmez. Qevron admin SPA'sında:

  1. /channel sayfasına gidin
  2. İlgili modeli arayın
  3. "Test" düğmesine basın — 200 OK alıyorsa endpoint sağlam

Hala hata varsa /cluster/assignments sayfasında ilgili runtime'ın Actual kolonuna bakın:

  • active → servis çalışıyor; sorun başka yerde (channel base_url, ağ, vs.)
  • inactive / failed → servis kapalı; sağ taraftaki Start ile başlatın

Yanıt çok yavaş

  • Önce streaming'i deniyor musunuz? ("stream": true)
  • verinova-large doğası gereği verinova'dan ~3-5 kat yavaştır (30B vs 20B + reasoning açık).
  • Uzun bağlamlarda token sayısını azaltın; verinova için max_tokens: 256-512 mantıklı bir tavandır.

"model not found"

İstek gövdesindeki "model" değeri yukarıdaki tabloda olmalı. Tipik yanlışlar: Verinova (büyük harf), verinova-large yerine verinova_large (alt çizgi), eski isim gpt-oss-20b. Geçerli model listesi:

bash
curl https://app.qevron.ai/v1/models -H "Authorization: Bearer sk-..."

Daha fazlası

Qevron — AI gateway. Arpanet / OpenAI / Anthropic / Gemini uyumlu.