Autentikasi dan Penyiapan URL Dasar
Kunci API Anda mengautentikasi setiap permintaan ke server kami. Cukup daftar dengan Google atau alamat email dan salin kunci dari dashboard Anda. Tempelkan ke dalam variabel lingkungan Anda sebagai DEEPSEEK_API_KEY dan arahkan klien Anda ke https://api.keyapideepseek.com/v1. URL dasar ini berfungsi dengan pustaka kompatibel OpenAI standar apa pun.
curl https://api.keyapideepseek.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Check the system health and confirm uptime status"}]
}'Anda dapat memverifikasi pengaturan Anda dengan mencantumkan model yang tersedia. Respons mengonfirmasi bahwa kunci Anda valid dan aktif. Langkah ini memastikan integrasi Anda mengarah ke endpoint uncensored yang benar sebelum Anda mengirim prompt.
Endpoint Chat Completions
The POST /v1/chat/completions endpoint menerima prompt Anda dan mengembalikan respons model. Anda mengirim tubuh JSON berisi pesan, instruksi sistem Anda, dan parameter seperti suhu. ID model selalu uncensored. Model tunggal ini menangani semua kebutuhan generasi teks Anda tanpa kompleksitas pengalihan.
from openai import OpenAI
client = OpenAI(base_url="https://api.keyapideepseek.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)SDK Python menangani permintaan HTTP secara otomatis. Anda meneruskan kunci dan URL dasar ke konstruktor klien. Sisa kode mencerminkan pola OpenAI standar. Ini memastikan Anda dapat mengganti vendor nanti tanpa menulis ulang logika aplikasi Anda secara keseluruhan.
Respons Streaming dan Penggunaan Token
Aktifkan streaming dengan mengatur stream: true dalam permintaan Anda. API mengembalikan aliran Server-Sent Events (SSE) dari potongan. Setiap potongan berisi teks parsial dan statistik penggunaan. Potongan terakhir mencakup jumlah token total untuk permintaan tersebut.
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 oleh pengguna. Anda dapat menampilkan token saat tiba. Ini sangat penting untuk generasi teks panjang atau antarmuka obrolan interaktif. Pantau penggunaan token di chunk terakhir untuk melacak konsumsi kredit prabayar Anda secara akurat.
Mode JSON dan Pemanggilan Fungsi
Terapkan output terstruktur dengan mengatur response_format ke {"type": "json_object"}. Model akan mengembalikan JSON alih-alih teks bebas. Ini ideal untuk integrasi API atau tugas ekstraksi data. Anda juga dapat mendefinisikan definisi fungsi dalam prompt Anda untuk penggunaan alat.
Model mendukung tool_choice parameter. Anda dapat memaksa fungsi tertentu atau membiarkan model memutuskan. Fleksibilitas ini memungkinkan Anda membangun agen yang kompleks. Pastikan skema fungsi Anda bertipe ketat untuk menghindari kesalahan parsing di kode klien Anda.
Batas Laju dan Konvergensi
Setiap kunci API dibatasi hingga 300 permintaan per menit. Anda dapat memiliki hingga 8 permintaan simultan aktif secara bersamaan. Ukuran badan permintaan maksimum adalah 8 MB. Batasan ini mencegah penyalahgunaan dan memastikan kinerja stabil untuk semua pengguna. Melampaui batas ini akan mengembalikan error 429.
Terapkan backoff eksponensial dalam kode klien Anda. Coba ulang permintaan yang gagal setelah jeda singkat. Ini menangani masalah jaringan sementara secara elegan. Kredit prabayar Anda hanya dibebankan untuk penyelesaian yang berhasil, bukan untuk percobaan ulang yang dibatasi laju.
Penanganan Kesalahan dan Penolakan
Kesalahan 401 berarti kunci Anda tidak valid atau kedaluwarsa. Kesalahan 402 menunjukkan kredit prabayar tidak cukup. Kesalahan 429 menandakan Anda telah mencapai batas laju. Model menolak permintaan yang berisi konten seksual yang melibatkan anak di bawah umur. Semua konten dewasa hukum lainnya diperbolehkan.
Periksa badan respons kesalahan untuk pesan terperinci. Catat kesalahan ini untuk mendiagnosis masalah integrasi. Kredit Anda tidak dikonsumsi untuk permintaan yang gagal. Model penagihan transparan ini membantu Anda memprediksi biaya secara akurat tanpa biaya tersembunyi.
Node.js
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.keyapideepseek.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);