URL Dasar dan Autentikasi
Terhubung ke API menggunakan URL dasar yang disediakan dan kunci token pra-dibayar. Anda melakukan autentikasi dengan meneruskan kunci API Anda di header permintaan, memastikan hanya akun Anda yang mengakses kredit Anda. Daftar melalui Google atau email untuk menerima kunci Anda segera tanpa verifikasi nomor telepon.
curl https://api.kimicodeapi.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "What is the current rate limit for free tier users?"}]
}'Permintaan Anda menargetkan endpoint OpenAI-compatible standar. Desain ini memungkinkan Anda mengganti layanan kami tanpa menulis ulang kode klien Anda yang ada, asalkan Anda memperbarui URL dasar dan kredensial.
Endpoint Chat Completions
Kirim pesan ke model menggunakan POST /v1/chat/completions endpoint. Anda harus menentukan ID model sebagai uncensored untuk mengakses model bahasa besar yang dioptimalkan yang berjalan di server kami. Sistem menerima peran pesan standar seperti pengguna atau asisten untuk percakapan multi-putaran.
from openai import OpenAI
client = OpenAI(base_url="https://api.kimicodeapi.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)Endpoint ini menangani input teks dan mengembalikan teks yang dihasilkan. Endpoint ini tidak mendukung embedding, gambar, atau audio. Fokus pada struktur prompt Anda untuk mendapatkan hasil terbaik dari model uncensored.
Respons Streaming (SSE)
Aktifkan pengiriman token secara real-time dengan mengatur parameter stream menjadi true dalam permintaan Anda. API mengembalikan potongan Server-Sent Events (SSE), memungkinkan aplikasi Anda menampilkan teks saat teks tersebut dihasilkan. Potongan terakhir berisi statistik penggunaan token lengkap untuk penagihan.
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)Streaming mengurangi latensi yang dirasakan bagi pengguna akhir. Anda dapat memproses setiap token saat tiba, yang sangat ideal untuk antarmuka chat. Ingatlah bahwa streaming tidak mengubah perilaku model dasar atau harga token.
Pemanggilan Fungsi dan Alat
Tentukan alat dalam permintaan Anda untuk memungkinkan model mengembalikan panggilan fungsi terstruktur. API mendukung parameter tool_choice, memungkinkan Anda memaksa model menggunakan alat tertentu atau memutuskan secara otonom. Fitur ini bekerja dengan format alat OpenAI standar, sehingga integrasi menjadi mudah.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.kimicodeapi.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);Gunakan pemanggilan fungsi untuk mengekstrak data atau memicu tindakan dalam aplikasi Anda. Model menafsirkan definisi alat dan mengembalikan objek JSON yang berisi argumen yang diperlukan. Kemampuan ini memperluas API melampaui generasi teks sederhana.
Mode JSON dan Parameter
Terapkan output JSON ketat dengan mengatur response_format ke {"type": "json_object"}Ini memastikan model mengembalikan JSON, yang sangat penting untuk parsing programatik. Anda juga dapat menyesuaikan parameter seperti suhu, top_p, dan urutan henti untuk mengontrol kreativitas dan panjang output.
Model ini mendukung jendela konteks 100.000 token. Ini memungkinkan Anda meneruskan jumlah konteks yang besar dalam satu permintaan. Output maksimum adalah 16.000 token per permintaan, atau 2.048 jika Anda tidak menentukan max_tokens.
Batas, Error, dan Konteks
Pantau batas permintaan Anda untuk menghindari gangguan layanan. API mengizinkan 300 permintaan per menit per kunci dan hingga 8 permintaan simultan. Badan permintaan Anda harus tetap di bawah 8 MB. Jika Anda melebihi batas ini, Anda akan menerima error batas laju 429.
Kegagalan autentikasi mengembalikan kesalahan 401 jika kunci tidak valid. Kesalahan 402 menunjukkan kredit prabayar yang tidak cukup. Kesalahan selama generasi tidak mengonsumsi token Anda. Jendela konteks mencakup token prompt dan penyelesaian. Kredit yang tidak terpakai tidak pernah kedaluwarsa, memastikan saldo prabayar Anda tetap tersedia untuk proyek di masa depan.