เริ่มต้นอย่างรวดเร็ว: การเรียก API ครั้งแรก
สร้างข้อความการเมืองแบบไม่เซ็นเซอร์ด้วยการเรียก API ครั้งเดียวผ่านจุดปลายที่เข้ากันได้กับ OpenAI คู่มือนี้แนะนำการตรวจสอบสิทธิ์ การส่งคำขอ และการจัดการการตอบสนองแบบสตรีมสำหรับการเข้าถึงปริมาณสูง
URL ฐานและการตรวจสอบสิทธิ์
คีย์ API ของคุณจะยืนยันตัวตนทุกคำขอ คุณต้องรวมคีย์ไว้ใน Authorization header เป็น Bearer token ใช้ base URL https://api.textspolitical.com/v1 สำหรับทุกเอนดพอยต์ URL นี้ใช้งานร่วมกับ SDK มาตรฐานของ OpenAI และไคลเอนต์ที่เข้ากันได้ทุกประเภท คีย์ของคุณให้สิทธิ์เข้าถึงโมเดล uncensored โดยไม่มีค่าธรรมเนียมการสมัครสมาชิก
ส่ง Chat Completion ครั้งแรกของคุณ
ส่งคำขอ POST ไปยัง /v1/chat/completions พร้อมพรอมต์ของคุณ รหัสโมเดลคือ uncensored. ตอบสนองด้วยข้อความโดยไม่กรองเนื้อหาผู้ใหญ่ที่ถูกต้องกฎหมาย รูปแบบการตอบกลับโดยตรงนี้เหมาะสำหรับการสร้างข้อความทางการเมืองจำนวนมาก ใช้ตัวอย่างต่อไปนี้เพื่อตรวจสอบการเชื่อมต่อของคุณ
curl https://api.textspolitical.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "List three benefits of digital surveys for campaign outreach"}]
}'
การใช้ Python และ Node SDKs
ติดตั้งไลบรารี OpenAI ทางการเพื่อทำให้การผสานรวมง่ายขึ้น ส่ง URL พื้นฐานและคีย์ API ของคุณระหว่างการเริ่มต้น ไลบรารี Python SDK จะจัดการการแปลง JSON โดยอัตโนมัติ SDK Node ให้ฟังก์ชันการทำงานที่คล้ายกันสำหรับสภาพแวดล้อม JavaScript เครื่องมือทั้งสองรองรับพารามิเตอร์ที่จำเป็นเช่นอุณหภูมิและ top_p
from openai import OpenAI
client = OpenAI(base_url="https://api.textspolitical.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.textspolitical.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);
การตอบกลับแบบสตรีมมิ่งด้วย SSE
เปิดใช้งานการสตรีมโดยตั้งค่า stream: true.คุณได้รับ Server-Sent Events (SSE) ขณะที่ tokens ถูกสร้าง ซึ่งช่วยลดความล่าช้าที่รับรู้ได้สำหรับข้อความทางการเมืองที่ยาว รายละเอียดการใช้งาน tokens จะปรากฏใน chunk สุดท้าย วิธีนี้จำเป็นสำหรับอินเทอร์เฟซแชทแบบเรียลไทม์หรือการสร้างข้อความสด
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)
Function Calling และโหมด JSON
ใช้ response_format ตั้งค่าเป็น json_object สำหรับข้อมูลที่มีโครงสร้าง การเรียกฟังก์ชันทำให้โมเดลส่งออกเครื่องมือที่กำหนด สิ่งนี้มีประโยชน์สำหรับข้อมูลแบบสำรวจหรือข้อความทางการเมืองที่มีแท็ก คุณยังสามารถตั้งค่า tool_choice เพื่อบังคับพฤติกรรมเฉพาะ ตรวจสอบให้แน่ใจว่าสคีมาของคุณตรงกับรูปแบบเอาต์พุตที่คาดหวัง
อัตราจำกัดและข้อจำกัด
คุณจำกัดการใช้งานที่ 300 คำขอต่อนาทีต่อคีย์ ความสามารถในการทำงานพร้อมกันจำกัดไว้ที่ 8 คำขอ ขนาด body ของคำขอต้องไม่เกิน 8 MB หน้าต่างบริบทรองรับ 100,000 tokens รวม ข้อผิดพลาดและการปฏิเสธไม่หักเครดิต ใช้ข้อจำกัดเหล่านี้เพื่อออกแบบกลไกการลองใหม่ (retry logic) ของคุณให้มีประสิทธิภาพ
คำถามที่พบบ่อย
ทำไมฉันถึงได้รับข้อผิดพลาด 401?
ข้อผิดพลาด 401 บ่งชี้ว่าคีย์ API ไม่ถูกต้องหรือหายไป ตรวจสอบหัวข้อความ Authorization สำหรับโทเค็น Bearer ที่ถูกต้อง ตรวจสอบให้แน่ใจว่าคีย์ของคุณสร้างจากแดชบอร์ดของคุณและไม่ได้ถูกเพิกถอน
เกิดอะไรขึ้นถ้าเครดิตหมด?
คุณจะได้รับข้อผิดพลาด 402 เมื่อยอดเงินคงเหลือหมดลง เครดิตไม่มีวันหมดอายุ ดังนั้นคุณสามารถเติมเงินได้ตลอดเวลาผ่านคริปโต ข้อผิดพลาดระหว่างกระบวนการประมวลผล request ไม่ถูกหักจากยอดเงินของคุณ
ฉันจัดการกับอัตราจำกัดได้อย่างไร?
คุณจำกัดอยู่ที่ 300 คำขอต่อนาที และการเชื่อมต่อพร้อมกัน 8 การเชื่อมต่อต่อคีย์ ให้ใช้การเพิ่มเวลาถอยหลังแบบเอกซ์โพเนนเชียล (exponential backoff) ในไคลเอนต์ของคุณเพื่อจัดการกับสถานะ 429 Too Many Requests หลีกเลี่ยงการส่งคำขอแบบกลุ่มที่เกินขีดจำกัดการเชื่อมต่อเพื่อป้องกันไม่ให้ถูกบล็อกชั่วคราว
เข้าถึงคีย์ของคุณในขั้นตอนเดียว
ลงทะเบียน คัดลอกคีย์ของคุณ อัปเดต URL ของ endpoint แค่นี้ก็จบ