ข้อกำหนดเบื้องต้น: ติดตั้ง OpenAI SDK
เริ่มด้วยการติดตั้ง official OpenAI SDK สำหรับภาษาของคุณ ไลบรารีนี้จะจัดการการตรวจสอบสิทธิ์ การทำซ้ำ (retries) และการแยกวิเคราะห์ JSON เพื่อให้คุณไม่ต้องเขียน HTTP client ตั้งแต่ต้น API ของเราใช้อินเทอร์เฟซมาตรฐานเดียวกับบริการต้นฉบับ ทำให้ตรรกะโค้ดที่มีอยู่ของคุณยังคงเดิม
คุณต้องการเพียงสภาพแวดล้อม Python หรือ Node.js ที่ถูกต้อง SDK จัดการงานหนักทั้งหมดให้คุณ
- Python:
pip install openai - Node.js:
npm install openai
กำหนดค่า Base URL และ API Key ของคุณ
ชี้ไคลเอนต์ของคุณไปยังเอนด์พอยต์เฉพาะ แทนที่ URL ฐานเริ่มต้นด้วยโดเมนเฉพาะของเราเพื่อ routing การจราจรไปยังโมเดล uncensored ของคุณ คุณต้องระบุ API key ของคุณจากแดชบอร์ดด้วย
ขั้นตอนนี้แยกคำขอของคุณจากผู้ให้บริการรายอื่น ตรวจสอบให้แน่ใจว่าคุณใช้ URL พื้นฐานที่ระบุด้านล่าง
from openai import OpenAI
client = OpenAI(base_url="https://api.unrestrictedaigpt.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)import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.unrestrictedaigpt.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);
ส่งคำขอ POST /v1/chat/completions ครั้งแรกของคุณ
ส่งคำขอ chat completion มาตรฐาน ใช้รหัสตัวระบุ uncensored เพื่อให้แน่ใจว่าคุณได้โมเดลที่ถูกต้อง API ยอมรับพารามิเตอร์มาตรฐานเช่น temperature และ max_tokens.
curl https://api.unrestrictedaigpt.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Run python script to sort list numerically"}]
}'การตอบกลับจะประกอบด้วยข้อความที่สร้างขึ้น หากคุณต้องการจัดการข้อผิดพลาด ให้ตรวจสอบรหัสสถานะ
จัดการการตอบกลับแบบสตรีมผ่าน SSE
เปิดใช้งานการสตรีมโดยตั้งค่า stream: trueสิ่งนี้ส่งคืนสตรีม Server-Sent Events คุณประมวลผลแต่ละชิ้นเมื่อมาถึง ซึ่งช่วยลดความล่าช้าที่รับรู้สำหรับผลลัพธ์ที่ยาวนาน
ชิ้นข้อมูลสุดท้ายรวมถึงสถิติการใช้งานโทเค็น ซึ่งช่วยให้คุณติดตามต้นทุนแบบเรียลไทม์
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)
ใช้การเรียกใช้เครื่องมือ (tool calling) และโหมด JSON
ใช้ tools พารามิเตอร์เพื่อเปิดใช้งานการเรียกใช้ฟังก์ชัน กำหนด schema ฟังก์ชันของคุณและปล่อยให้โมเดลตัดสินใจเมื่อจะเรียกใช้มัน คุณยังสามารถบังคับ output JSON โดยใช้ response_format สำหรับโครงสร้างข้อมูลแบบเข้มงวด
ทั้งสองฟีเจอร์ทำงานเหมือนกับ API มาตรฐานของ OpenAI พอดี
ข้อจำกัด, ข้อผิดพลาด และหน้าต่างบริบท
API ของเรากำหนดขีดจำกัดที่เข้มงวดเพื่อให้มั่นใจในความเสถียร คุณได้รับหน้าต่างบริบทขนาด 100,000 tokens ผลลัพธ์สูงสุดต่อการเรียกใช้คือ 16,000 tokens คุณจำกัดอยู่ที่ 300 ครั้งต่อนาที ข้อผิดพลาด 401 หมายถึงคีย์ของคุณไม่ถูกต้อง ข้อผิดพลาด 402 หมายถึงคุณไม่มีเครดิต ข้อผิดพลาด 429 หมายถึงคุณชนขีดจำกัดอัตราแล้ว ข้อผิดพลาดและการปฏิเสธไม่ใช้เครดิต