Mert AIrouting infrastructure
Model erişimi test aşamasında · Gerçek sağlayıcı trafiği kapalı.

Bir endpoint. Açık bir sözleşme.

Müşteri anahtarınız ve public model aliasıyla ilk metin isteğini gönderin. İstemci ve rota desteğini kullanmadan önce kontrol edin.

Test modu: Gerçek kredi yükleme ve gerçek sağlayıcı trafiği kapalıdır. Aşağıdaki sözleşme ve örnekler gateway'in desteklediği metin yollarını anlatır; canlı model yanıtı garantisi vermez.

Bağlantı bilgileri

Base URL
https://ai.mertcankarakulak.com/v1
Kimlik doğrulama
Authorization: Bearer YOUR_API_KEY
Model listesi
GET /v1/models
Metin isteği
POST /v1/chat/completions

Müşteri API anahtarınızı oluşturun ve public model aliasını seçin. Örneklerdeki YOUR_PUBLIC_MODEL_ALIAS değerini bununla değiştirin. Anahtarı yalnızca sunucu ortamınızda saklayın.

Python

from openai import OpenAI
import os

client = OpenAI(
    api_key=os.environ["MERT_AI_API_KEY"],
    base_url="https://ai.mertcankarakulak.com/v1",
)
response = client.chat.completions.create(
    model="YOUR_PUBLIC_MODEL_ALIAS",
    messages=[{"role": "user", "content": "Merhaba!"}],
    max_tokens=512,
)
print(response.choices[0].message.content)

JavaScript

import OpenAI from "openai";

const client = new OpenAI({
  apiKey: process.env.MERT_AI_API_KEY,
  baseURL: "https://ai.mertcankarakulak.com/v1"
});
const result = await client.chat.completions.create({
  model: "YOUR_PUBLIC_MODEL_ALIAS",
  messages: [{ role: "user", content: "Merhaba!" }],
  max_tokens: 512
});
console.log(result.choices[0].message.content);

Responses ve akış

response = client.responses.create(
    model="YOUR_PUBLIC_MODEL_ALIAS",
    input="Bir merhaba mesajı yaz.",
    max_output_tokens=512,
    store=False,
)
print(response.output_text)

POST /v1/chat/completions ve POST /v1/responses metin isteklerini destekler. Sertifikalı rotalarda stream: true artımlı SSE ile yanıt verir. Birincil rota bu yeteneğe sahip değilse uygun yedek rota seçilir; hiçbiri uygun değilse istek rezervasyondan önce 503 döner.

Azami ücret akıştan önce ayrılır; güvenilir son kullanım geldiğinde gerçek kullanıma göre hesaplaşılır. Bağlantı kopar ve kullanım kesinleşmezse ayrılan azami tutar ücretlendirilir. Başarı olayı gelmeyen isteği otomatik tekrarlamadan önce kullanım kaydını kontrol edin.

Function araçları

Chat Completions ve Responses, function tanımlı tools ile tool_choice için auto, none, required veya adlandırılmış function seçimi kabul eder. JSON ve desteklenen rotalarda artımlı SSE kullanılabilir. Chat yanıtındaki tool_calls ile eşleşen role: tool sonucunu; Responses yanıtındaki function_call ile eşleşen function_call_output öğesini sonraki isteğin geçmişine ekleyin. Tool şeması ve geçmişi giriş rezervasyonuna dahildir.

result = client.chat.completions.create(
    model="YOUR_PUBLIC_MODEL_ALIAS",
    messages=[{"role": "user", "content": "Hava nasıl?"}],
    tools=[{"type": "function", "function": {
        "name": "weather", "parameters": {
            "type": "object", "properties": {}
        }
    }}],
    tool_choice="required",
    max_tokens=512,
)
call = result.choices[0].message.tool_calls[0]

OpenCode yapılandırması

Projenizin opencode.json dosyasına özel provider ekleyin. OpenCode 1.15.12 istemci sözleşmesi yerel test sağlayıcısıyla doğrulanmıştır; gerçek model ajan davranışı ayrıca doğrulanmalıdır. Güncel kurulum tarifi ve indirilebilir dosya.

{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "mertai": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "Mert AI",
      "options": {
        "baseURL": "https://ai.mertcankarakulak.com/v1",
        "apiKey": "{env:MERT_AI_API_KEY}"
      },
      "models": {
        "YOUR_PUBLIC_MODEL_ALIAS": {"name": "Seçtiğiniz public model"}
      }
    }
  },
  "model": "mertai/YOUR_PUBLIC_MODEL_ALIAS"
}

Continue yapılandırması

config.yaml içinde OpenAI provider ve canonical apiBase kullanın. Agent araçlarını yalnız seçtiğiniz public model rotasında ayrıca doğruladığınızda etkinleştirin.

name: Mert AI
version: 1.0.0
schema: v1

models:
  - name: Seçtiğiniz public model
    provider: openai
    model: YOUR_PUBLIC_MODEL_ALIAS
    apiBase: https://ai.mertcankarakulak.com/v1
    apiKey: ${{ secrets.MERT_AI_API_KEY }}
    roles:
      - chat
      - edit
      - apply

Continue secret ayarına MERT_AI_API_KEY adıyla müşteri anahtarınızı ekleyin.

Open WebUI bağlantısı

Settings → Admin → Connections yolundan OpenAI API bağlantısı ekleyin. URL alanına https://ai.mertcankarakulak.com/v1, API Key alanına müşteri anahtarını girin. API Type için Chat Completions seçin; model listesi GET /v1/models üzerinden alınır.

ENABLE_OPENAI_API=true
OPENAI_API_BASE_URL=https://ai.mertcankarakulak.com/v1
OPENAI_API_KEY=YOUR_API_KEY

Birden fazla bağlantıda Open WebUI'nin çoğul OPENAI_API_BASE_URLS ve OPENAI_API_KEYS ayarlarını kullanın. Yönetici veya sağlayıcı anahtarı yerine müşteri anahtarı girin.

Cursor ve benzeri editörler

Özel OpenAI uyumlu adres kabul eden editörlerde müşteri anahtarını OpenAI anahtarı alanına girin, Override OpenAI Base URL seçeneğini açın ve https://ai.mertcankarakulak.com/v1 adresini kullanın. Model adını public alias olarak yazın.

Bu yol Chat ve Agent istekleri içindir; Tab otomatik tamamlama özel API adresine yönlendirilmez. Base URL override diğer OpenAI uyumlu istekleri de etkileyebilir.

İstemci uyumluluk durumu

İstemciBağlantı yoluDoğrulama düzeyi
Python OpenAI SDKChat ve ResponsesJSON, SSE ve function çağrıları yerel entegrasyon testinden geçti.
JavaScript OpenAI SDKChat ve ResponsesJSON, SSE ve function çağrıları yerel entegrasyon testinden geçti.
OpenCode 1.15.12@ai-sdk/openai-compatibleCLI streaming ve araç çağrısı yerel test sağlayıcısıyla doğrulandı.
Codex CLIOpenAI Responses providerYapılandırma hazır; gerçek istemci turu bekliyor. Kurulum
Claude CodeAnthropic Messages gerektirir/v1/messages yok; bağlantı doğrulanmadı. Durum
ContinueOpenAI provider / ChatÖrnek hazır; gerçek istemci turu bekliyor.
Open WebUIOpenAI connection / ChatÖrnek hazır; gerçek istemci turu bekliyor.
Cursor benzeriOpenAI base URL overrideÖrnek hazır; gerçek istemci turu bekliyor.

Gerçek sağlayıcı rotası etkin olmadığı için hiçbir istemci için canlı AI yanıtı sertifikası verilmemiştir.

Limitler ve ücretler

İstek öncesinde azami maliyet ayrılır. Yeterli kredi yoksa istek işlenmez. Kullanım doğrulanınca gerçek ücret kaydedilir ve kullanılmayan rezervasyon serbest bırakılır. Sonucu belirsiz işlemler azami tutarla kaydedilir ve inceleme gerektirir.

Bu sürüm metin, function çağrıları, tek yanıt (n=1) ve açık çıktı sınırları destekler. Görüntü/ses, örnekleme parametreleri, saklanan konuşmalar ve belgelenmemiş alanlar reddedilir. Varsayılan çıktı sınırı 1024; model veya hesap limiti daha düşük olabilir.

KodAnlamıYapılacak işlem
400Geçersiz istek veya token limitiParametreleri ve çıktı sınırını kontrol edin.
401Geçersiz veya iptal edilmiş anahtarAnahtarı kontrol edin.
402Yetersiz krediKredi veya çıktı sınırını kontrol edin.
429Hız veya eşzamanlılık limitiİstek sıklığını azaltın.
503Hizmet kullanılamıyorİstek kimliğini saklayın; belirsiz isteği otomatik tekrarlamayın.

Destek talebine X-Request-ID yanıt başlığını ekleyin. API anahtarınızı paylaşmayın.