TR ▾
API anahtarı al

Character AI API: İstemcinizi üç satırda değiştirin

Kusursuz API'mizle sohbet robotunuzu dakikalar içinde sansürsüz bir LLM'e bağlayın. Bu kılavuz, sıfır yapılandırma derdi olmadan kurulumu, temel istekleri ve akışı adım adım anlatır.

https://api.characteraiapi.com/v1

Önkoşullar

Kod yazmadan önce characteraiapi.com üzerinde aktif bir hesabınız olmalıdır. API anahtarı al sayfasını ziyaret edin ve yalnızca e-posta ve şifre ile kaydolun. Başlamak için kredi kartı gerekmez; yeni hesaplar 7 gün geçerli $0.50 deneme kredisi alır. Kayıt olduktan sonra API anahtarınız hemen görüntülenir. Bu anahtarı güvenli tutun, çünkü uç noktaya yapılan tüm istekleri doğrular. Geliştirme ortamınızda desteklenen bir dil SDK'sının yüklü olması gerekir. character ai api uç noktası standart OpenAI parametrelerini kabul eder; bu nedenle mevcut herhangi bir OpenAI uyumlu istemci, minimum değişikliklerle çalışabilir.

SDK'yı Yükleyin

Python projeleri için resmi OpenAI paketini pip kullanarak yükleyin. Bu kütüphane JSON serileştirmesini ve HTTP isteklerini otomatik olarak yönetir. Node.js uygulamaları için npm ile openai paketini ekleyin. Her iki kütüphane de bu kılavuzda daha sonra açıklanan akış ve araç çağırma özelliklerini destekler. Gerçek zamanlı token akışı için Sunucu Tarafı Olayları'nı (SSE) destekleyecek kadar güncel bir SDK sürümü kullandığınızdan emin olun. Bir SDK yerine özel bir HTTP istemcisi kullanıyorsanız, OpenAI API spesifikasyonuna göre JSON yükünü ve SSE akış ayrıştırmayı manuel olarak yönetmeniz gerekir.

Kimlik Doğrulama

Her API isteğinde Authorization başlığına API anahtarınızı eklemelisiniz. Bearer YOUR_API_KEY formatını kullanın. Tüm istekler için temel URL https://api.characteraiapi.com/v1 şeklindedir. Bir SDK kullanırken, base_url yapılandırmasını bu değere ayarlayın ve anahtarınızı api_key parametresi aracılığıyla sağlayın. Anahtarınızı kaybederseniz veya sızdırılmasından şüphelenirseniz, panelden anahtarınızı yeniden oluşturabilirsiniz; eski anahtar hemen iptal edilir. Hesap başına yalnızca bir aktif anahtar izine izin verilir. Standart OpenAI uç noktasına yapılan isteklerin 404 veya 401 hatası ile başarısız olacağını unutmayın, bu nedenle doğru temel URL'yi kullandığınızdan emin olun.

Temel Sohbet Tamamlama

Temel işlevsellik /v1/chat/completions uç noktası aracılığıyla sunulur. Model adı olarak uncensored ve mesaj geçmişinizle bir POST isteği gönderin. Model, yasal yetişkin içerik için standart içerik filtreleri uygulamadan metin çıktısı verir. Aşağıda basit bir metin tamamlama isteğini gösteren bir curl örneği bulunmaktadır.

curl https://api.characteraiapi.com/v1/chat/completions \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "uncensored",
    "messages": [{"role": "user", "content": "Write a blunt product review of a cheap VPN."}]
  }'

Bu istek, oluşturulan metni içeren bir tamamlama nesnesi döndürür. Rastgeleliği kontrol etmek için temperature veya çıktı uzunluğunu sınırlamak için max_tokens gibi parametreleri ayarlayabilirsiniz. Model, 100.000 token'lık bir bağlam penceresi destekler; bu da tek bir istekte kapsamlı bir sohbet geçmişinin veya uzun belgelerin işlenmesine olanak tanır.

Akışlı Yanıtlar

Daha iyi bir kullanıcı deneyimi için isteğinizde stream: true ayarlayarak akışı etkinleştirin. API, kısmi token parçaları oluşturuldukça bunları içeren Sunucu Tarafı Olayları'nı (SSE) döndürür. Bu, chatbot uygulamaları için algılanan gecikmeyi azaltır. Son olayda kullanım istatistiklerini almak istiyorsanız stream_options parametresini kullanın. Akış, metni kelime kelime görüntüleyerek içg tiêneyi artıran gerçek zamanlı karakter rol yapma için özellikle yararlıdır. İstemci kodunuzun her parçayı sırayla ayrıştırmak için SSE formatını doğru şekilde işlediğinden emin olun.

stream = client.chat.completions.create(
    model="uncensored",
    messages=[{"role": "user", "content": "Tell the story in second person."}],
    stream=True,
)
for chunk in stream:
    if chunk.choices and chunk.choices[0].delta.content:
        print(chunk.choices[0].delta.content, end="", flush=True)

Hız Limitleri ve Hatalar

API, anahtar başına dakikada 300 isteklik bir limite tabidir. Bu limiti aşarsanız, 429 Too Many Requests hatı alırsınız. İstek gövdeleri 8 MB ile sınırlıdır. Yaygın hatalar arasında geçersiz veya eksik anahtar için 401 ve ön ödemeli krediniz tükendiğinde 402 yer alır. Kripto para (USDT veya USDC) kullanarak 10 $'dan başlayan bakiye yükleyebilirsiniz; daha büyük para yatırmaları için bonus kredi sunulur. Bazı sağlayıcıların aksine, gizli ücretler veya abonelik kilitlemeleri yoktur; yalnızca tükettiğiniz token'lar için ödeme yaparsınız. Fiyatlandırma şeffaftır: 1M giriş token'ı başına 0,25 $ ve 1M çıkış token'ı başına 1,00 $. Hata işleme mantığınızda 429 hatalarında üstel geri çekilme ile yeniden deneme yaptığınızdan emin olun.

from openai import OpenAI

client = OpenAI(base_url="https://api.characteraiapi.com/v1", api_key="YOUR_KEY")

resp = client.chat.completions.create(
    model="uncensored",
    messages=[{"role": "user", "content": "Summarise this thread without softening it."}],
)
print(resp.choices[0].message.content)

Node.js

import OpenAI from "openai";

const client = new OpenAI({ baseURL: "https://api.characteraiapi.com/v1", apiKey: process.env.API_KEY });

const resp = await client.chat.completions.create({
  model: "uncensored",
  messages: [{ role: "user", content: "Draft a villain monologue for my game." }],
});
console.log(resp.choices[0].message.content);

API özellikleri

Kredi yüklemeden önce kontrol edebilmeniz için API'nin gerçek limitleri ve özellikleri tek yerde.

ÖğeDeğer
BiçimOpenAI uyumlu: herhangi bir OpenAI SDK'sı base URL ve anahtarı değiştirerek çalışır
Uç noktalarPOST /v1/chat/completions · GET /v1/models
Kimlik doğrulamaAuthorization: Bearer YOUR_KEY
Base URLhttps://api.characteraiapi.com/v1
Model kimliğiuncensored
JSON moduresponse_format: {"type": "json_object"}
Maksimum çıktı100.000 token'lık pencerenin kalanına kadar; max_tokens isteğe bağlı (ayrı sınır yok)
Parametrelertemperature, top_p, stop, seed, presence_penalty, frequency_penalty
Bağlam penceresi100.000 token (girdi + çıktı)
Akışevet — server-sent events; son parça token kullanımını içerir
Fonksiyon çağırmaevet — tools, tool_choice; yanıtta tool_calls, akışta da; sonuçlar role: tool olarak
İstek boyutuen fazla 8 MB
Yanıt başlıklarıX-Request-Id, X-Balance-USD, X-RateLimit-Limit-Requests, X-RateLimit-Limit-Concurrency
Eşzamanlılıkanahtar başına aynı anda 8 istek
Hız limitianahtar başına dakikada 300 istek
Geçerliliködenen kredinin süresi dolmaz, abonelik yok
Bonus$50'dan itibaren +%5, $100'dan itibaren +%10
YüklemeUSDT (TRC20) veya USDC (Base), $10–$500 arası herhangi bir tam tutar
Fiyat1M girdi token'ı $0,25 · 1M çıktı token'ı $1,00
Faturalamaön ödemeli kredi, gerçek kullanıma göre; hatalar ve retler ücretsiz
Ücretsiz deneme$0,50, 7 gün, kart gerekmez · Deneme anahtarı: 2 paralel istek, dakikada 60; ilk yüklemeden sonra tam limitler (8 ve 300)
Anahtarlarhesap başına bir aktif anahtar; yenisi eskisinin yerini alır
GirişGoogle veya e-posta ve şifre
İçerikyetişkin içeriğe izin var; reşit olmayanları içeren cinsel içerik reddedilir

Hata kodları

Hatalar sabit bir type ile JSON olarak döner; başarısız veya reddedilen istekler ücretlendirilmez.

KodTürAnlamı
400bad_requestgeçersiz JSON, boş mesajlar, hatalı parametre veya bağlam çok uzun
401missing_key · invalid_key · key_revokedanahtar yok, yanlış veya değiştirilmiş
402no_creditkredi bitti — yükleyin, hemen devam eder
403content_blockedreşit olmayanları içeren cinsel içerik — reddedildi, ücret yok
404not_foundbilinmeyen uç nokta
413request_too_largegövde 8 MB'tan büyük
429rate_limited · concurrencydakikada 300 veya aynı anda 8 aşıldı — bekleyip tekrar deneyin
503upstream_busymodel meşgul — birkaç saniye sonra tekrar deneyin

Sorular ve cevaplar

Bu resmi Character.ai API'si mi?

Hayır, bu characteraiapi.com adresinde barındırılan bağımsız bir hizmettir. Kendi sansürsüz modelini sunar ve Character.AI veya diğer büyük LLM sağlayıcılarıyla bağlantılı değildir.

Model görüntü veya ses üretimi destekliyor mu?

Hayır. API yalnızca metin içindir. Metin girdisi kabul eder ve metin çıktısı verir. Gömme (embedding), ince ayar veya çok modlu girdi/çıktı desteklemez.

'Sansürsüz' nasıl tanımlanıyor?

Model yasal yetişkin, kurgusal veya tartışmalı konularda reddetmez. Yalnızca çocukları içeren cinsel içeriği engeller; bu, tüm isteklere uygulanan bir sınırdır.

Anahtarınız tek bir formun uzağında

Bir hesap oluşturun, anahtarı kopyalayın, temel URL'yi değiştirin. Kurulumun tamamı bu kadar.

API anahtarı al