Autentikasi dan Konfigurasi URL Dasar
Kunci API Anda memberikan akses langsung ke endpoint chat completions. Buat kunci melalui Google atau email di dashboard dan tempelkan ke variabel lingkungan Anda. URL dasar adalah https://api.cheapaiapikeys.com/v1 yang berfungsi dengan klien SDK OpenAI standar apa pun.
- Atur
OPENAI_API_KEYke string yang Anda hasilkan. - Timpa
base_urlke titik ke server yang di-host kami. - Verifikasi konektivitas dengan memanggil
GET /v1/modelsuntuk daftar model yang tersedia.
curl https://api.cheapaiapikeys.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "List three common regex patterns for validating email addresses"}]
}'
Kirim Permintaan Chat Completion Pertama Anda
Kirim input teks dan dapatkan teks yang dihasilkan menggunakan struktur penyelesaian obrolan standar. Model uncensored tunggal kami memproses permintaan tanpa menolak topik dewasa yang sah atau kontroversial. Anda dapat menyesuaikan parameter seperti temperature dan top_p untuk mengontrol acak.
from openai import OpenAI
client = OpenAI(base_url="https://api.cheapaiapikeys.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)
Aktifkan Streaming dan Tangani Event SSE
Aktifkan pengiriman token real-time dengan mengatur stream: true dalam permintaan Anda. server mengembalikan Server-Sent Events (SSE) yang harus Anda parsing secara inkremental. Detail penggunaan token muncul di chunk terakhir stream. Pendekatan ini mengurangi latensi yang dirasakan untuk respons panjang.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.cheapaiapikeys.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 Function Calling dan Mode JSON
Tentukan alat dalam payload permintaan Anda untuk mengaktifkan output terstruktur atau eksekusi fungsi eksternal. Gunakan response_format: {type: "json_object"} untuk memaksa kepatuhan JSON yang ketat. Model mendukung tool_choice untuk kontrol presisi atas fungsi mana yang dipicunya. Ini memastikan parsing yang andal untuk logika aplikasi Anda.
Memahami Batas Token dan Harga
Harga transparan di $0.15 per juta token input dan $0.50 per juta token output. Kesalahan dan penolakan tidak menggunakan kredit. Jendela konteks mendukung total 100,000 token. Permintaan yang melebihi batas mengembalikan kesalahan batas laju 429. Pastikan payload Anda tetap di bawah 8 MB untuk menghindari kesalahan body.
Tangani Kesalahan dan Kasus Tepi
Kesalahan umum termasuk 401 untuk kunci tidak valid dan 402 untuk kredit tidak cukup. Status 429 menunjukkan Anda telah melebihi 300 permintaan per menit. Gunakan backoff eksponensial saat mencoba lagi setelah batas kecepatan. Periksa error object dalam respons JSON untuk detail spesifik. Pengembalian dana tidak diterbitkan, jadi pantau penggunaan Anda dengan cermat.
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)