Ollama kullanıcıları için hızlı başlangıç
Sansürsüz Ollama API'siyle dakikalar içinde başlayın. Mevcut OpenAI SDK kodunuzla istek göndermeye başlamak için temel URL'nizi ve anahtarınızı ekleyin.
Önkoşullar
Bu API'yi kullanmak için geçerli bir API anahtarına sahip aktif bir hesabınız olmalıdır. Google veya e-posta ve şifre ile API anahtarını alın sayfasında kaydolun. Telefon numarası gerekmez. Makinenizde desteklenen bir dil SDK'sının yüklü olması gerekir. Bu kılavuz, OpenAI uyumlu uç noktalar için en yaygın istemciler olan Python ve Node.js'i kapsar. API, uncensored kimliğiyle tek bir sansürsüz modeli sunar. Metri kabul eder ve metrik döndürür. Gömme, görüntü veya ses özellikleri yoktur. Tüm istekler https://api.ollamaapi.cc/v1 adresine gider.
SDK'yı Yükleyin
Tercih ettiğiniz dil için resmi SDK'yı yükleyin. Python için pip kullanın. Node.js için npm kullanın. Bu kütüphaneler HTTP protokolünü, JSON serileştirmesini ve akışı otomatik olarak yönetir. Kontrol seviyesini tercih ediyorsanız ham HTTP istekleri yazmanıza gerek yoktur. SDK'lar iyi belgelenmiştir ve üretim ortamlarında yaygın olarak kullanılır. Ortamınızın SDK gereksinimleriyle eşleştiğinden emin olun. Python 3.8+ ve Node.js 18+ önerilir. Uyumluluk sorunlarından kaçınmak için bağımlılıklarınızı güncel tutun.
İstemciyi Yapılandırın
Temel URL'yi uç noktamıza ayarlayın. OpenAI'dan sansürsüz hizmetimize geçmek için gereken tek yapılandırma değişikliği budur. API anahtarınızı yetkilendirme başlığı olarak iletin. SDK geri kalanını halleder. Model adını gpt-4 veya benzeri olarak değiştirmeyin; uncensored kullanın. API, OpenAI chat-completions protokolünü sıkı bir şekilde takip eder. OpenAI ile çalışan herhangi bir istemci, bu iki değişiklikle burada da çalışacaktır. Bu, geçişi veya A/B testlerini kolaylaştırır. Çıktıları karşılaştırmak için her iki API'yi paralel olarak çalıştırabilirsiniz.
İlk İsteği Gönderin
/v1/chat/completions adresine POST isteği gönderin. Model kimliğini, sistem istemini ve kullanıcı mesajını ekleyin. API bir metin yanıtı döndürür. Krediniz varsa istek başarılı olur. Kredi yoksa 402 hatası alırsınız. Anahtarınız geçersizse 401 alırsınız. Bu hatalar standarttır ve kodda kolayca işlenebilir. Model yasal yetişkin içeriği reddetmez; bu da yaratıcı yazım, güvenlik araştırmaları veya sansürsüz sohbet için kullanışlıdır. Kalan kredilerinizden emin değilseniz kontrol panelinden bakiyenizi kontrol edin.
Akış Yanıtları
stream: true ayarlayarak akışı etkinleştirin. API, tokenlar oluşturuldukça onları döndürür. Bu, kullanıcılar için algılanan gecikmeyi azaltır. Son parça, faturalandırma için toplam token kullanımını içerir. Akış, tüm resmi SDK'lar tarafından desteklenir. Metnin yazıldığı gibi gösterilmek istendiği sohbet arayüzleri için önemlidir. Sunucu SSE (Sunucu Tarafından Gönderilen Olaylar) gönderir. İstemci kitaplığınız ayrıştırmayı yönetir. Özel bir istemci oluşturmadıkça olay akışını manuel olarak yönetmenize gerek yoktur.
Limitler, Hatalar ve Bağlam
Bağlam penceresi toplam 100.000 token, maksimum çıktı 32.000 token'dır. İstekler dakika başına 300 ve anahtar başına 8 eşzamanlı istekle sınırlıdır. İstek gövdesi 8 MB'ın altında olmalıdır. Hatalar arasında geçersiz anahtarlar için 401, yetersiz kredi için 402 ve hız limitleri için 429 bulunur. Bunlar standart HTTP kodlarıdır. Bunları uygulamanızda zarifçe yönetin. Model, çocuklarla ilgili cinsel içerik bloklar. Diğer tüm içeriklere izin verilir. Kredi geçerliliğini kaybetmez, bu nedenle fonları kaybetmeden kullanıma ara verebilirsiniz. İade sorunları için destek sayfasını kullanın.
cURL
curl https://api.ollamaapi.cc/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."}]
}'Python
from openai import OpenAI
client = OpenAI(base_url="https://api.ollamaapi.cc/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.ollamaapi.cc/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)Deneme kredisiyle başlayın
E-posta ve parola, anahtar hemen ekranda.
Sorular ve cevaplar
Bu resmi Ollama API'si mi?
Hayır. Bağımsız bir hizmet sunuyoruz ve tek bir sansürsüz modeli barındırıyoruz. Ollama, OpenAI veya başka bir satıcı ile bağlantımız yok. Kullanım kolaylığı için OpenAI uyumlu protokolü kullanıyoruz.
Hangi ödeme yöntemleri kabul ediliyor?
Sadece kripto kabul ediyoruz: USDT (TRC20) veya USDC (Base). Minimum bakiye yükleme tutarı $10'dur. Kredi kartı, PayPal veya banka havalesi desteklenmez. Kredi süresi dolmaz.
Bunu ticari projeler için kullanabilir miyim?
Evet. Hız limitleri dışında kullanım kısıtlaması yoktur. Model yasal içeriği reddetmez, bu da ticari uygulamalar için uygun olduğunu gösterir. Güncel token oranları için fiyatlandırma sayfasını kontrol edin.
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 özellikleri
Kredi yüklemeden önce kontrol edebilmeniz için API'nin gerçek limitleri ve özellikleri tek yerde.
| Öğe | Değer |
|---|---|
| Biçim | OpenAI uyumlu: herhangi bir OpenAI SDK'sı base URL ve anahtarı değiştirerek çalışır |
| Kimlik doğrulama | Authorization: Bearer YOUR_KEY |
| Model kimliği | uncensored |
| Uç noktalar | POST /v1/chat/completions · GET /v1/models |
| Base URL | https://api.ollamaapi.cc/v1 |
| Parametreler | temperature, top_p, stop, seed, presence_penalty, frequency_penalty |
| Bağlam penceresi | 100.000 token (girdi + çıktı) |
| Fonksiyon çağırma | evet — tools, tool_choice; yanıtta tool_calls, akışta da; sonuçlar role: tool olarak |
| Maksimum çıktı | 100.000 token'lık pencerenin kalanına kadar; max_tokens isteğe bağlı (ayrı sınır yok) |
| Akış | evet — server-sent events; son parça token kullanımını içerir |
| JSON modu | response_format: {"type": "json_object"} |
| Eşzamanlılık | anahtar başına aynı anda 8 istek |
| Hız limiti | anahtar başına dakikada 300 istek |
| Yanıt başlıkları | X-Request-Id, X-Balance-USD, X-RateLimit-Limit-Requests, X-RateLimit-Limit-Concurrency |
| İstek boyutu | en fazla 8 MB |
| Faturalama | ön ödemeli kredi, gerçek kullanıma göre; hatalar ve retler ücretsiz |
| Bonus | $50'dan itibaren +%5, $100'dan itibaren +%10 |
| Fiyat | 1M girdi token'ı $0,25 · 1M çıktı token'ı $1,00 |
| Ü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) |
| Geçerlilik | ödenen kredinin süresi dolmaz, abonelik yok |
| Yükleme | USDT (TRC20) veya USDC (Base), $10–$500 arası herhangi bir tam tutar |
| Anahtarlar | hesap başına bir aktif anahtar; yenisi eskisinin yerini alır |
| İçerik | yetişkin içeriğe izin var; reşit olmayanları içeren cinsel içerik reddedilir |
| Giriş | Google veya e-posta ve şifre |
Hata kodları
Hatalar sabit bir type ile JSON olarak döner; başarısız veya reddedilen istekler ücretlendirilmez.
| Kod | Tür | Anlamı |
|---|---|---|
400 | bad_request | geçersiz JSON, boş mesajlar, hatalı parametre veya bağlam çok uzun |
401 | missing_key · invalid_key · key_revoked | anahtar yok, yanlış veya değiştirilmiş |
402 | no_credit | kredi bitti — yükleyin, hemen devam eder |
403 | content_blocked | reşit olmayanları içeren cinsel içerik — reddedildi, ücret yok |
404 | not_found | bilinmeyen uç nokta |
413 | request_too_large | gövde 8 MB'tan büyük |
429 | rate_limited · concurrency | dakikada 300 veya aynı anda 8 aşıldı — bekleyip tekrar deneyin |
503 | upstream_busy | model meşgul — birkaç saniye sonra tekrar deneyin |