Prasyarat: Penyiapan SDK
Instal pustaka klien resmi untuk bahasa pemrograman pilihan Anda sebelum mengkonfigurasi koneksi. Pustaka ini menangani serialisasi JSON, pengulangan, dan protokol streaming secara otomatis.
Untuk Python, instal paket melalui pip. Untuk Node.js, gunakan npm atau yarn untuk menambahkan dependensi ke proyek Anda.
Pastikan Anda menggunakan versi SDK terbaru untuk mendukung semua fitur seperti pemanggilan fungsi dan mode JSON.
Konfigurasi: URL Dasar & Kunci
Arahkan klien SDK Anda ke URL dasar spesifik kami dan berikan kunci API yang Anda peroleh saat pendaftaran.
URL dasar adalah HTTPS://api.claudellmapi.com/v1. Ini memastikan semua permintaan dikirim ke server model tanpa sensor kami sebagai pengganti penyedia default.
Atur kunci API sebagai variabel lingkungan atau berikan langsung ke konstruktor klien. Tidak ada header tambahan yang diperlukan.
Mengirim Permintaan Pertama Anda
Kirimkan permintaan penyelesaian obrolan sederhana untuk memverifikasi konektivitas dan kualitas respons. Gunakan ID model 'uncensored' untuk mengakses model tanpa batasan.
Struktur permintaan mencerminkan format standar OpenAI, sehingga mudah untuk mengganti integrasi yang sudah ada.
Diharapkan respons teks berisi jawaban model terhadap prompt Anda.
Menangani Respons Streaming
Aktifkan streaming untuk menerima token saat token tersebut dihasilkan, sehingga mengurangi latensi yang dirasakan untuk output panjang.
Atur parameter stream menjadi true dalam permintaan Anda. SDK akan menghasilkan chunk teks saat tersedia.
Ini ideal untuk antarmuka obrolan di mana pengguna mengharapkan umpan balik segera saat model masih berpikir.
Mengimplementasikan Function Calling
Tentukan alat dalam permintaan Anda untuk memungkinkan model mengembalikan data terstruktur alih-alih teks biasa.
Spesifikkan skema fungsi dan tetapkan tool_choice ke 'auto' atau nama fungsi spesifik.
Model akan merespons dengan objek panggilan fungsi yang dapat Anda eksekusi dalam kode Anda. Ini bekerja dengan mulus dengan model uncensored kami.
Penanganan Kesalahan & Batasan
Tangani kesalahan HTTP umum dengan baik untuk menjaga pengalaman pengguna yang lancar. Status 401 menunjukkan kunci API tidak valid atau hilang. Status 402 berarti kredit prabayar Anda habis. Status 429 menandakan bahwa Anda telah melebihi batas laju 300 permintaan per menit.
Jendela konteks Anda adalah 100,000 token untuk prompt dan gabungan completion. Permintaan yang melebihi batas body 8 MB juga akan gagal.
cURL
curl https://api.claudellmapi.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "What are the current rate limits for large context windows"}]
}'Python
from openai import OpenAI
client = OpenAI(base_url="https://api.claudellmapi.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.claudellmapi.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);Streaming
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)