Mengapa Menggunakan API Uncensored.chat?
API LLM standar sering menerapkan filter konten kaku yang menolak konten dewasa yang sah, fiksi kreatif, atau topik kontroversial. API chat tanpa sensor menghilangkan penghalang ini, memungkinkan model merespons prompt berdasarkan relevansi daripada kepatuhan kebijakan. Ini sangat penting untuk aplikasi yang membutuhkan kemampuan model mentah tanpa kendala buatan.
API kami melayani satu model bobot terbuka yang disesuaikan secara khusus untuk perilaku ini. Model ini tidak melakukan routing antar vendor atau menawarkan pilihan model ganda. Anda mendapatkan output yang konsisten dan dapat diprediksi dari satu mesin yang disesuaikan. Ini menyederhanakan debugging dan penyetelan kinerja karena Anda tidak berurusan dengan kepribadian model variabel atau lapisan penyaringan tersembunyi.
Berbeda dengan penyedia tujuan umum, kami tidak menggabungkan embedding, generasi gambar, atau pemrosesan audio. Ini membuat API ringan dan cepat. Jika aplikasi Anda memerlukan kemampuan multi-modal, Anda harus mengintegrasikannya secara terpisah dan menggunakan API ini hanya untuk generasi teks. Fokus di sini murni pada output teks berkualitas tinggi dan tanpa batasan dengan jendela konteks 100.000 token.
Menyiapkan Lingkungan Anda
Integrasi dimulai dengan mengkonfigurasi lingkungan pengembangan Anda untuk menunjuk ke URL dasar kami. Ini adalah endpoint kompatibel OpenAI standar, sehingga Anda dapat menggunakan SDK OpenAI resmi atau pustaka klien kompatibel apa pun. Anda hanya perlu mengubah URL dasar dan menyediakan kunci API.
URL dasar adalah https://api.nofilteraichat.com/v1. ID model yang harus Anda kirimkan dalam permintaan Anda adalah uncensored. Model ini dijalankan di server kami sendiri dan bukan GPT, Claude, atau model vendor lain. Ini adalah model bobot terbuka yang dihaluskan untuk respons tanpa sensor.
Pastikan lingkungan Anda mendukung streaming melalui Server-Sent Events (SSE) jika Anda berencana menggunakan output waktu nyata. API mendukung parameter standar seperti temperature, top_p, stop, dan seed. Anda juga dapat mengaktifkan mode JSON dengan mengatur response_format ke {"type": "json_object"}.
Jendela konteks: 100,000 token total (prompt + completion). Tidak ada batas output terpisah, dan jika max_tokens tidak diatur, respons dapat berjalan hingga akhir jendela.
Autentikasi dengan Kunci API
Otentikasi ditangani melalui kunci API yang diteruskan dalam header Authorization. Anda dapat masuk menggunakan Lanjutkan dengan Google atau email dan kata sandi di halaman Dapatkan Kunci API. Tidak diperlukan nomor telepon.
Saat Anda membuat akun, Anda menerima satu kunci API aktif. Kunci ini ditampilkan segera setelah pembuatan. Jika Anda membuat kunci baru, kunci lama akan diganti; kami tidak mendukung beberapa kunci simultan per akun. Ini menyederhanakan manajemen kunci tetapi berarti Anda tidak dapat memiliki kunci terpisah untuk lingkungan yang berbeda pada akun yang sama.
Kunci ini digunakan untuk mengotorisasi permintaan ke endpoint /v1/chat/completions. Kesalahan dan penolakan (kecuali batas keras pada konten seksual minor) tidak mengonsumsi saldo prabayar Anda. Saldo hanya dibebankan untuk penggunaan token aktual.
Privasi: Prompt tidak digunakan untuk pelatihan. Akun hanya memerlukan alamat email.
Melakukan Permintaan Pertama Anda
Permintaan pertama Anda harus berupa penyelesaian chat sederhana untuk memverifikasi konektivitas. Gunakan endpoint POST /v1/chat/completions dengan ID model uncensored.
Berikut adalah contoh permintaan dasar:
curl https://api.nofilteraichat.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."}]
}'Permintaan ini mengirimkan prompt dan menerima respons teks. Model akan menjawab tanpa memfilter konten dewasa yang sah. Jika Anda perlu menerapkan nada atau format tertentu, gunakan pesan system untuk menetapkan instruksi.
Ingatlah bahwa API memiliki batas 300 permintaan per menit per kunci dan memungkinkan 8 permintaan konkuren. Jika Anda melebihi batas ini, Anda akan menerima kesalahan batas laju. Ukuran isi permintaan dibatasi hingga 8 MB. Pastikan klien Anda menangani batas-batas ini dengan baik dengan menerapkan backoff eksponensial untuk percobaan ulang.
Mengimplementasikan Respons Streaming
Streaming didukung melalui Server-Sent Events (SSE). Ini memungkinkan Anda menerima token saat dihasilkan, memberikan pengalaman pengguna yang lebih baik untuk respons panjang. Setiap potongan berisi delta parsial dari respons.
Penting: Statistik penggunaan token (token input dan output) hanya disertakan dalam bagian terakhir dari aliran. Anda harus mengumpulkan delta dan kemudian memproses bagian terakhir untuk mendapatkan data penggunaan yang akurat untuk tujuan penagihan.
Berikut adalah contoh cara menangani streaming dalam kode Anda:
from openai import OpenAI
client = OpenAI(base_url="https://api.nofilteraichat.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)Pendekatan ini memastikan Anda dapat menampilkan teks secara waktu nyata sambil tetap melacak konsumsi token secara akurat. Jika terjadi kesalahan selama streaming, aliran mungkin berakhir lebih awal. Periksa potongan terakhir atau status kesalahan untuk detailnya.
Menggunakan Pemanggilan Fungsi
Pemanggilan fungsi didukung melalui parameter tools dan tool_choice. Ini memungkinkan model menghasilkan data terstruktur yang dapat dieksekusi oleh aplikasi Anda. Tentukan fungsi Anda dalam larik tools, dan model akan mengembalikan bidang tool_calls dalam respons jika sesuai.
Atur tool_choice ke "auto" untuk memungkinkan model memutuskan kapan memanggil fungsi, atau tentukan ID fungsi tertentu untuk memaksa panggilan. Model akan mengembalikan nama fungsi dan argumen dalam format JSON.
Struktur contoh:
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.nofilteraichat.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);Pastikan klien Anda memparse larik tool_calls dan mengeksekusi fungsi-fungsi tersebut. Model tidak mengeksekusi fungsi-fungsi itu sendiri; model hanya menghasilkan instruksi panggilan. Ini adalah pola kompatibel OpenAI standar, jadi pustaka apa pun yang mendukung pemanggilan fungsi dengan OpenAI seharusnya berfungsi di sini.
Menangani Mode JSON
Mode JSON memastikan model mengeluarkan JSON yang valid secara ketat. Ini berguna untuk aplikasi yang membutuhkan data terstruktur, seperti respons API atau file konfigurasi. Atur response_format ke {"type": "json_object"} dalam permintaan Anda.
Saat mode JSON diaktifkan, model akan mencoba mengeluarkan satu objek JSON yang valid. Jika output tidak valid, API mungkin mengembalikan kesalahan atau respons yang rusak. Selalu validasikan JSON di sisi klien.
Contoh:
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)Mode ini sangat berguna untuk membangun agen atau aplikasi yang memerlukan format output deterministik. Ini mengurangi kebutuhan untuk pasca-pemrosesan untuk mengekstrak data terstruktur dari teks bebas-form. Perhatikan bahwa mode JSON mungkin sedikit meningkatkan latensi karena kendala tambahan pada output model.
Mengelola Batas Laju dan Kesalahan
Batas laju ditegakkan pada 300 permintaan per menit per kunci dan 8 permintaan konkuren per kunci. Isi permintaan dibatasi hingga 8 MB. Jika Anda melebihi batas ini, Anda akan menerima kode status 429. Terapkan backoff eksponensial di klien Anda untuk menangani percobaan ulang.
Kesalahan seperti parameter tidak valid atau masalah server tidak mengonsumsi saldo. Penolakan untuk konten dewasa yang sah juga tidak mengonsumsi saldo. Satu-satunya batas keras yang selalu berlaku adalah penolakan konten seksual yang melibatkan anak di bawah umur, yang akan mengonsumsi token jika permintaan diproses.
Harga transparan: $0,15 per 1 juta token input dan $0,50 per 1 juta token output. Saldo prabayar dan tidak pernah kedaluwarsa. Kesalahan gratis, sehingga Anda dapat bereksperimen tanpa khawatir tentang biaya. Jika Anda mengalami masalah penagihan, gunakan halaman Dukungan untuk bantuan.
