Hızlı Başlangıç: Entegre edin Uncensored API
Sansürsüz API'mizi mevcut kodunuza ekleyin. Tek bir temel URL'yi değiştirin ve mantığınızı koruyun.
Önkoşullar: SDK ve Ortam Kurulumu
Diliniz için resmi SDK'yı yükleyin. Herhangi bir openai uyumlu istemci. Hizmetimiz, standart OpenAI entegrasyonları için tak-çalıştır bir değişimdir.
Ortam değişkeninizi hemen ayarlayın. Bu, kimlik bilgilerinin kaynak dosyalarınıza sabit kodlanmasını (hardcoding) önler. API anahtarınız hesabınızı tanımlar ve kullanımı izler.
Standart kütüphane sürümünü kullanın. Çoğu geliştirici zaten bunlara sahiptir. Yoksa, paketi bağımlılıklarınıza ekleyin.
Kimlik Doğrulama: API Anahtarını Ayarlama
Anahtarınızı Authorization header. Her istek için Bearer token gerektiriyoruz. Bu yöntem tüm OpenAI-uyumlu uç noktalar boyunca standarttır.
Kontrol panelinden anahtarınızı oluşturun. Hesap başına bir aktif anahtar alırsınız. Anahtarı değiştirmek öncekini anında geçersiz kılar.
Anahtarınızı güvende tutun. İstemci tarafı kodunda ifşa etmeyin. Uç noktanız, tokenları işlemeden önce kimlik bilgilerini doğrular.
Uç nokta: POST /v1/chat/completions
Prompt'unuzu chat uç noktasına gönderin. Şunu kullanın model field değeri uncensored. Bu, isteğin özel modelimize yönlendirilmesini sağlar.
SSE Üzerinden Akış Yanıtları
Ayarlayarak akışı etkinleştirin stream: true. Oluşturuldukları gibi parçalar alırsınız. Bu, uzun çıktılar için algılanan gecikmeyi azaltır.
Sunucu Tarafından Gönderilen Olaylar (SSE) formatını ayrıştırın. Her parça kısmi metni içerir. Tam yanıtı yeniden oluşturmak için bu parçaları birleştirin.
Akışın son parçasında token kullanımını izleyin. Son olay, tam kullanım istatistiklerini içerir. Bu, maliyetleri doğru bir şekilde izlemenize yardımcı olur.
Fonksiyon Çağırma ve Araç Kullanımı
İstek gövnenize araçlar tanımlayın. Model yapılandırılmış argümanlar döndürür. Bu argümanları uygulama mantığınızda ayrıştırın.
Standart araç tanımlarını destekler. Kullan tool_choice belirli bir davranışı zorlamak için. Bu, herhangi bir OpenAI-uyumlu SDK ile çalışır.
Çıktı biçimini doğrulayın. Kodunuzun eksik argümanları zarifçe ele aldığınından emin olun. Model gerekli değilse alanları atlayabilir.
JSON Modu ve Yapılandırılmış Çıktılar
Ayarla response_format için json_object. Model, sıkı biçimlendirilmiş JSON döndürür. Bu, yapılandırılmış veriler için ayrıştırma hatalarını ortadan kaldırır.
Şemanızı net bir şekilde tanımlayın. Model talimatlarınıza tam olarak uyar. Bu, veri çıkarma veya yapılandırma oluşturma için kullanın.
JSON ayrıştırma hatalarını yönetin. Geçersiz yapılar hala ara sıra oluşur. Sağlam uygulamalar için yedek mantık uygulayın.
Hata Yönetimi ve Hız Sınırlamaları
HTTP durum kodlarını uygun şekilde yönetin. A 401 anahtarınızın geçersiz olduğunu gösterir. A 402 yetersiz kredi olduğunu gösterir. A 429 hız sınırlandırma olduğunu gösterir.
Dakikada 300 istek limitine saygı gösterin. 8 eşzamanlı istek gönderebilirsiniz. Bu limitleri aşmak 429 hatası döndürür. Yeniden denemeden önce bekleyin.
Bağlam pencereniz istem ve çıktı birlikte 100.000 token'dır. Token bütçenizi dikkatlice yönetin. İstek başına maksimum çıktı 16.000 token'dır. Hatalar kredi tüketmez.
cURL
curl https://api.alternativeapiopenai.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "List the primary functions in this module"}]
}'Python
from openai import OpenAI
client = OpenAI(base_url="https://api.alternativeapiopenai.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.alternativeapiopenai.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);Akış
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)Sık sorulan sorular
Bu gerçek bir OpenAI API alternatifi mi?
Evet, OpenAI protokolünü tam olarak takip eder. Base URL ve model adını değiştirmeniz yeterlidir. Mevcut kodunuz değişiklik yapmadan çalışır.
Context window limiti nedir?
Bağlam penceresi toplamda 100.000 token'dır. Bu hem girdinizi hem de model'in çıktısını içerir. Her istek için maksimum çıktı 16.000 token'dır.
Hız sınırlarını nasıl yönetebilirim?
Anahtar başına dakikada 300 istekle sınırlısınız. 8 eşzamanlı isteğiniz olabilir. Bunu aşarsanız 429 hatası alırsınız. Yeniden denemeden önce kısa bir süre bekleyin.
Anahtar oluşturma için sadece bir form gerekir
Kaydolun, anahtarınızı kopyalayın ve temel URL'nizi güncelleyin. Gerekli tüm yapılandırma bu.