ข้อกำหนดเบื้องต้น: การตั้งค่า SDK
ติดตั้งไลบรารีไคลเอนต์ทางการสำหรับภาษาที่คุณต้องการก่อนกำหนดค่าการเชื่อมต่อ ไลบรารีจัดการการจัดรูปแบบ JSON การเรียกซ้ำ และโปรโตคอลสตรีมโดยอัตโนมัติ
สำหรับ Python ติดตั้งแพ็คเกจผ่าน pip สำหรับ Node.js ใช้ npm หรือ yarn เพื่อเพิ่ม dependency เข้าไปในโปรเจกต์ของคุณ
ตรวจสอบว่าคุณใช้เวอร์ชันล่าสุดของ SDK เพื่อรองรับฟีเจอร์ทั้งหมดเช่นการเรียกใช้ฟังก์ชันและโหมด JSON
การกำหนดค่า: URL พื้นฐาน & คีย์
ชี้ SDK client ของคุณไปยัง URL พื้นฐานเฉพาะของเราและระบุ API key ที่คุณได้รับระหว่างการสมัครสมาชิก
URL พื้นฐานคือ HTTPS://api.claudellmapi.com/v1 สิ่งนี้รับประกันว่าคำขอทั้งหมดจะไปยังเซิร์ฟเวอร์โมเดล uncensored ของเราแทนผู้ให้บริการเริ่มต้น
ตั้งค่าคีย์ API เป็นตัวแปรสภาพแวดล้อมหรือส่งตรงไปยังคอนสตรัคเตอร์ไคลเอนต์ ไม่ต้องใช้ส่วนหัวเพิ่มเติม
การส่งคำขอครั้งแรกของคุณ
ส่งคำขอ chat completion อย่างง่ายเพื่อตรวจสอบการเชื่อมต่อและคุณภาพการตอบกลับ ใช้ model id 'uncensored' เพื่อเข้าถึงโมเดลที่ไม่มีการจำกัด
โครงสร้างคำขอสะท้อนรูปแบบมาตรฐานของ OpenAI ทำให้การสลับการผสานรวมที่มีอยู่ทำได้ง่าย
คาดหวังการตอบกลับแบบข้อความที่ประกอบด้วยคำตอบของโมเดลสำหรับ prompt ของคุณ
การจัดการการตอบกลับแบบสตรีม
เปิดใช้งานการสตรีมเพื่อรับโทเค็นขณะกำลังสร้าง ซึ่งช่วยลดความล่าช้าที่รับรู้สำหรับผลลัพธ์ที่ยาวนาน
ตั้งค่าพารามิเตอร์ stream เป็น true ในการร้องขอของคุณ SDK จะส่งคืน chunk ข้อความเมื่อพร้อมใช้งาน
สิ่งนี้เหมาะสำหรับอินเทอร์เฟซแชทที่ผู้ใช้คาดหวังการตอบกลับทันทีในขณะที่โมเดลยังคงคิดอยู่
การดำเนินการเรียกใช้ฟังก์ชัน
กำหนดเครื่องมือในคำขอเพื่อให้โมเดลส่งข้อมูลที่มีโครงสร้างแทนข้อความธรรมดา
ระบุสคีมาของฟังก์ชันและตั้งค่า tool_choice เป็น 'auto' หรือชื่อฟังก์ชันเฉพาะ
โมเดลจะตอบสนองด้วยวัตถุการเรียกใช้ฟังก์ชันที่คุณสามารถดำเนินการในโค้ดของคุณ สิ่งนี้ทำงานได้อย่างราบรื่นกับโมเดล uncensored ของเรา
การจัดการข้อผิดพลาด & ขีดจำกัด
จัดการข้อผิดพลาด HTTP ที่พบบ่อยได้อย่างราบรื่นเพื่อรักษาประสบการณ์ผู้ใช้ที่ราบรื่น รหัสสถานะ 401 บ่งชี้ว่าคีย์ API ไม่ถูกต้องหรือไม่มีอยู่ รหัสสถานะ 402 หมายความว่าเครดิตเติมเงินล่วงหน้าของคุณหมดแล้ว รหัสสถานะ 429 บ่งชี้ว่าคุณได้เกินขีดจำกัดอัตราส่วน 300 คำขอต่อนาที
หน้าต่างบริบทของคุณมีขนาด 100,000 โทเค็นสำหรับคำนำและผลลัพธ์รวมกัน คำขอที่มีขนาดบอดี้เกิน 8 MB จะล้มเหลวเช่นกัน
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);การสตรีม
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)