เริ่มต้นใช้งาน: ผสานรวม API Uncensored
วาง API uncensored ของเราลงในโค้ดที่มีอยู่ของคุณ เปลี่ยน URL พื้นฐานเพียง URL เดียวและรักษาตรรกะของคุณไว้
ข้อกำหนดเบื้องต้น: SDK และการตั้งค่าสภาพแวดล้อม
ติดตั้ง SDK ทางการสำหรับภาษาของคุณ เรารองรับทุก openai compatible ไคลเอนต์ บริการของเราทำหน้าที่เป็นทางเลือกแทนการบูรณาการ OpenAI มาตรฐาน
ตั้งค่าตัวแปรสภาพแวดล้อมของคุณทันที สิ่งนี้หลีกเลี่ยงการเขียนค่ารับรองความถูกต้องแบบคงที่ในไฟล์แหล่งที่มาของคุณ คีย์ API ของคุณระบุบัญชีของคุณและติดตามการใช้งาน
ใช้เวอร์ชันไลบรารีมาตรฐาน นักพัฒนาส่วนใหญ่มีแพ็กเกจเหล่านี้ติดตั้งอยู่แล้ว หากยังไม่มี ให้เพิ่มแพ็กเกจลงใน dependencies ของคุณ
การตรวจสอบสิทธิ์: การตั้งค่าคีย์ API
ส่งคีย์ของคุณผ่าน Authorization header. เราต้องการ Bearer token สำหรับการร้องขอทุกครั้ง วิธีนี้เป็นมาตรฐานสำหรับจุดสิ้นสุดที่เข้ากันได้กับ OpenAI ทั้งหมด
สร้างคีย์ของคุณจากแดชบอร์ด คุณจะได้รับคีย์ที่ใช้งานหนึ่งคีย์ต่อบัญชี การแทนที่คีย์นี้จะทำให้คีย์ก่อนหน้าหมดอายุทันที
รักษาความมั่นคงปลอดภัยของคีย์ของคุณ อย่าเปิดเผยคีย์ในโค้ดฝั่งไคลเอนต์ เอนด์พอยต์ของเราตรวจสอบข้อมูลรับรองก่อนประมวลผล tokens
จุดปลาย: POST /v1/chat/completions
ส่งพรอมต์ของคุณไปยังจุดสิ้นสุด chat ใช้ model field set to uncensoredสิ่งนี้ช่วยให้คำขอถูกกำหนดเส้นทางไปยังโมเดลเฉพาะของเรา
การตอบกลับแบบสตรีมมิ่งผ่าน SSE
เปิดใช้งานการสตรีมโดยตั้งค่า stream: true. คุณได้รับชิ้นข้อมูลเมื่อโมเดลสร้างออกมา สิ่งนี้ช่วยลดความล่าช้าที่รับรู้ได้สำหรับเอาต์พุตที่ยาวนาน
แยกวิเคราะห์รูปแบบ Server-Sent Events แต่ละชิ้นมีข้อความบางส่วน รวมชิ้นเหล่านี้เพื่อสร้างคำตอบเต็มรูปแบบ
ติดตามการใช้งานโทเค็นในชิ้นส่วนสุดท้าย เหตุการณ์สุดท้ายรวมสถิติการใช้งานที่สมบูรณ์ สิ่งนี้ช่วยให้คุณติดตามต้นทุนได้อย่างแม่นยำ
Function Calling และการใช้งานเครื่องมือ
กำหนดเครื่องมือใน body ของคำขอ โมเดลจะส่งค่าอาร์กิวเมนต์ที่มีโครงสร้าง นำอาร์กิวเมนต์เหล่านี้ไปประมวลผลในตรรกะของแอปพลิเคชันของคุณ
รองรับคำจำกัดความเครื่องมือมาตรฐาน ใช้ tool_choice เพื่อบังคับพฤติกรรมเฉพาะ ซึ่งทำงานกับ SDK ที่เข้ากันได้กับ OpenAI ใดๆ ก็ตาม
ตรวจสอบรูปแบบผลลัพธ์ ตรวจสอบให้แน่ใจว่าโค้ดของคุณจัดการอาร์กิวเมนต์ที่หายไปได้อย่างราบรื่น โมเดลอาจละเว้นฟิลด์หากไม่จำเป็น
โหมด JSON และผลลัพธ์ที่มีโครงสร้าง
ตั้งค่า response_format เพื่อ json_objectโมเดลส่งคืน JSON ที่มีรูปแบบเข้มงวด ซึ่งขจัดข้อผิดพลาดในการแยกวิเคราะห์สำหรับข้อมูลที่มีโครงสร้าง
กำหนดสคีมาของคุณให้ชัดเจน โมเดลปฏิบัติตามคำแนะนำของคุณอย่างแม่นยำ ใช้สิ่งนี้สำหรับการแยกข้อมูลหรือการสร้างกำหนดค่า
จัดการข้อผิดพลาดการแยกวิเคราะห์ JSON โครงสร้างที่ไม่ถูกต้องยังคงเกิดขึ้นเป็นครั้งคราว ใช้ตรรกะสำรองสำหรับแอปพลิเคชันที่แข็งแกร่ง
การจัดการข้อผิดพลาดและขีดจำกัดอัตรา
จัดการรหัสสถานะ HTTP อย่างเหมาะสม A 401 error หมายถึงคีย์ของคุณไม่ถูกต้อง A 402 error บ่งชี้ว่าเครดิตไม่เพียงพอ A 429 error บ่งชี้ว่าเกินขีดจำกัดอัตราการใช้งาน
เคารพขีดจำกัด 300 คำขอต่อนาที คุณสามารถส่งคำขอพร้อมกัน 8 คำขอ การเกินข้อจำกัดเหล่านี้จะส่งกลับข้อผิดพลาด 429 รอแล้วลองใหม่
หน้าต่างบริบทของคุณมีขนาด 100,000 tokens ซึ่งรวมถึงทั้ง input และ output จัดการงบประมาณ tokens อย่างระมัดระวัง ผลลัพธ์สูงสุดคือ 16,000 tokens ต่อการเรียกใช้ ข้อผิดพลาดไม่หักเครดิต
cURL
curl https://api.alternativeapiopenai.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "List the primary functions in this module"}]
}'Python
from openai import OpenAI
client = OpenAI(base_url="https://api.alternativeapiopenai.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.alternativeapiopenai.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)คำถามที่พบบ่อย
นี่คือตัวเลือก API OpenAI ที่แท้จริงหรือไม่?
ใช่ มันปฏิบัติตามโปรโตคอลของ OpenAI อย่างถูกต้อง คุณเพียงแค่เปลี่ยน base URL และชื่อโมเดล โค้ดที่มีอยู่ของคุณจะทำงานได้โดยไม่ต้องแก้ไข
ขีดจำกัดหน้าต่างบริบทคืออะไร?
หน้าต่างบริบทมีขนาดรวม 100,000 tokens ซึ่งรวมถึงทั้ง input ของคุณและ output ของโมเดล โดย output สูงสุดต่อหนึ่งการเรียกใช้คือ 16,000 tokens
ฉันจัดการกับอัตราจำกัดได้อย่างไร?
คุณจำกัดอยู่ที่ 300 คำขอต่อนาที คุณสามารถมีความพร้อมใช้งานพร้อมกัน 8 คำขอ หากเกินขีดจำกัดนี้ คุณจะรับข้อผิดพลาด 429 รอสักครู่ก่อนลองใหม่
การสร้างคีย์ต้องการเพียงแบบฟอร์ม
สมัครสมาชิก คัดลอกคีย์ของคุณ แล้วอัปเดต URL พื้นฐานของคุณ นั่นคือการกำหนดค่าทั้งหมดที่ต้องการ