Autentikasi
Autentikasi ditangani melalui satu kunci API. Anda dapat mendaftar menggunakan Google atau kata sandi email di halaman Dapatkan kunci API. Kunci ditampilkan segera dan terkait dengan saldo prabayar Anda. Berbeda dengan vendor besar, tidak ada langganan bulanan atau kartu kredit yang diperlukan untuk uji coba. Gunakan header Authorization: Bearer YOUR_API_KEY untuk semua permintaan. Kunci Anda adalah satu-satunya kredensial aktif per akun; membuat kunci baru akan membuat yang sebelumnya tidak berlaku.
Penyelesaian Dasar
Kirim permintaan penyelesaian chat standar ke endpoint yang kompatibel dengan OpenAI. Pengenal model adalah uncensored. Model ini adalah model bobot terbuka dan disesuaikan untuk menjawab tanpa penolakan konten untuk penggunaan dewasa yang sah. Ini bukan GPT, Claude, atau model vendor lain. URL dasar untuk layanan ini disediakan di bawah.
curl https://api.ornith.top/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."}]
}'Ganti YOUR_API_KEY dengan kunci Anda dari dasbor. Respons mencakup teks yang dihasilkan di choices[0].message.content. Error seperti 401 menunjukkan kunci tidak valid, sedangkan 402 berarti saldo prabayar Anda telah habis.
SDK Python
Gunakan paket Python openai resmi. Arahkan ke URL dasar Ornith dan berikan kunci API Anda. Ini memastikan kompatibilitas dengan struktur klien OpenAI standar. Anda dapat meneruskan pesan sebagai daftar kamus yang berisi role dan content. Klien menangani permintaan HTTP secara otomatis. Pendekatan ini berfungsi untuk generasi teks sederhana dan interaksi yang lebih kompleks menggunakan alat atau mode JSON.
from openai import OpenAI
client = OpenAI(base_url="https://api.ornith.top/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)Objek respons mencerminkan struktur OpenAI standar. Anda dapat mengakses teks yang dihasilkan langsung dari objek respons. Metode ini ideal untuk layanan backend atau skrip di mana Anda memerlukan akses programatik ke output model.
SDK Node.js
Instal paket npm openai. Inisialisasi klien dengan URL dasar Ornith dan kunci API Anda. Struktur permintaan identik dengan SDK Python. Gunakan metode chat.completions.create. Ini cocok untuk lingkungan JavaScript, apakah Anda membangun backend web atau alat CLI. Klien menangani serialisasi dan deserialisasi respons.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.ornith.top/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);Tangani kesalahan dengan tepat. Kesalahan jaringan atau API akan melempar pengecualian. Periksa kode status untuk membedakan antara kegagalan autentikasi, batas laju, atau kesalahan server. Respons berisi detail penyelesaian dalam format yang sama dengan SDK Python.
Respons Streaming
Aktifkan streaming dengan mengatur stream: true dalam permintaan Anda. Ini mengembalikan aliran token saat dihasilkan. Gunakan ini untuk pembaruan UI waktu nyata atau tampilan teks progresif. Aliran berakhir dengan potongan akhir yang berisi penggunaan token total. Ini memungkinkan Anda melacak biaya secara real-time tanpa menunggu respons penuh. Ini efisien untuk konteks panjang di mana Anda ingin menunjukkan kemajuan.
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)Iterasi melalui aliran untuk memproses setiap potongan. Potongan terakhir menyertakan bidang usage. Ini berguna untuk transparansi penagihan. Pastikan klien Anda menangani aliran dengan benar untuk menghindari masalah memori dengan respons besar.
Batas, Error & Konteks
Jendela konteks adalah 100.000 token untuk prompt dan penyelesaian gabungan. Output maksimum per permintaan adalah 32.000 token (2.048 jika max_tokens tidak diatur). Anda dibatasi hingga 300 permintaan per menit dan 8 permintaan paralel per kunci. Badan permintaan harus di bawah 8 MB. Jika Anda melebihi batas laju, Anda menerima kesalahan 429. Penolakan untuk konten terkait anak adalah hard-coded dan selalu berlaku. Kesalahan tidak mengonsumsi kredit. Kredit adalah saldo prabayar dan tidak pernah kedaluwarsa.