Character AI API: เปลี่ยนไคลเอนต์ของคุณในสามบรรทัด
เชื่อมต่อแชทบอทของคุณกับ LLM แบบไม่เซ็นเซอร์ในไม่กี่นาทีด้วย API ที่เข้ากันได้กับ OpenAI คู่มือนี้แนะนำการตั้งค่า คำขอพื้นฐาน และสตรีมมิง โดยไม่มีปัญหาคอนฟิกที่ยุ่งยาก
https://api.characteraiapi.com/v1
ข้อกำหนดเบื้องต้น
ก่อนเขียนโค้ด คุณต้องมีบัญชีใช้งานบน characteraiapi.com ไปที่หน้า Get API key และสมัครสมาชิกด้วยอีเมลและรหัสผ่านเพียงอย่างเดียว ไม่ต้องใช้บัตรเครดิตเพื่อเริ่มต้น และบัญชีใหม่จะได้รับเครดิตทดลองใช้ $0.50 ใช้ได้ 7 วัน เมื่อลงทะเบียนเสร็จ คีย์ API จะแสดงทันที เก็บคีย์นี้ให้ปลอดภัยเนื่องจากใช้ยืนยันตัวตนสำหรับคำขอทั้งหมดไปยังเอนด์พอยต์ คุณยังต้องติดตั้ง SDK ภาษาที่รองรับในสภาพแวดล้อมการพัฒนาของคุณ เอนด์พอยต์ character ai api รับพารามิเตอร์มาตรฐานของ OpenAI ดังนั้นไคลเอนต์ที่เข้ากันได้กับ OpenAI ที่มีอยู่จึงใช้งานได้ด้วยการเปลี่ยนแปลงเพียงเล็กน้อย
ติดตั้ง SDK
สำหรับโปรเจกต์ Python ให้ติดตั้งแพ็กเกจ OpenAI ทางการผ่าน pip ไลบรารีนี้จะจัดการ JSON serialization และคำขอ HTTP โดยอัตโนมัติ สำหรับแอปพลิเคชัน Node.js ให้ใช้ npm เพื่อเพิ่มแพ็กเกจ openai ไลบรารีทั้งสองรองรับฟีเจอร์สตรีมมิงและการเรียกใช้เครื่องมือตามที่อธิบายในคู่มือนี้ ตรวจสอบให้แน่ใจว่าเวอร์ชัน SDK ของคุณรองรับ Server-Sent Events (SSE) สำหรับการสตรีมโทเคนแบบเรียลไทม์ หากคุณใช้ไคลเอนต์ HTTP แบบกำหนดเองแทน SDK คุณต้องจัดการ JSON payload และการแยกวิเคราะห์สตรีม SSE ด้วยตนเองตามข้อกำหนด API ของ OpenAI
การตรวจสอบสิทธิ์
ทุกคำขอไปยัง API ต้องรวมคีย์ API ของคุณในหัว Authorization ใช้รูปแบบ Bearer YOUR_API_KEY URL พื้นฐานสำหรับคำขอทั้งหมดคือ https://api.characteraiapi.com/v1 เมื่อใช้ SDK ให้ตั้งค่าการกำหนดค่า base_url เป็นค่านี้นี้และระบุคีย์ของคุณผ่านพารามิเตอร์ api_key หากคุณทำคีย์หายหรือสงสัยว่ามีการรั่วไหล คุณสามารถสร้างคีย์ใหม่จากแดชบอร์ด; คีย์เก่าจะถูกเพิกถอนทันที อนุญาตให้ใช้คีย์ที่ใช้งานอยู่ได้เพียงหนึ่งคีย์ต่อบัญชี ตรวจสอบให้แน่ใจว่าคุณกำลังใช้ URL พื้นฐานที่ถูกต้อง เนื่องจากคำขอไปยังเอนด์พอยต์ OpenAI มาตรฐานจะล้มเหลวด้วยข้อผิดพลาด 404 หรือ 401
การตอบกลับแชทพื้นฐาน
ฟังก์ชันการทำงานหลักให้บริการผ่านเอนด์พอยต์ /v1/chat/completions ส่งคำขอ POST พร้อมชื่อโมเดล uncensored และประวัติข้อความของคุณ โมเดลจะตอบสนองด้วยเอาต์พุตข้อความโดยไม่ใช้ตัวกรองเนื้อหามาตรฐานสำหรับเนื้อหาผู้ใหญ่ที่ถูกต้องตามกฎหมาย ด้านล่างคือตัวอย่าง curl ที่แสดงคำขอการเติมข้อความข้อความแบบง่าย
curl https://api.characteraiapi.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Write a blunt product review of a cheap VPN."}]
}'
คำขอนี้ส่งคืนวัตถุการเติมข้อความที่มีข้อความที่สร้างขึ้น คุณสามารถปรับพารามิเตอร์เช่น temperature เพื่อควบคุมความสุ่มหรือ max_tokens เพื่อจำกัดความยาวเอาต์พุต โมเดลรองรับหน้าต่างบริบทของโทเคน 100,000 โทเคน ทำให้สามารถประมวลผลประวัติการสนทนาที่ยาวนานหรือเอกสารขนาดใหญ่ได้ในคำขอเดียว
การตอบกลับแบบสตรีมมิง
เพื่อประสบการณ์ผู้ใช้ที่ดีขึ้น ให้เปิดใช้งานสตรีมมิงโดยตั้งค่า stream: true ในคำขอ API จะส่ง Server-Sent Events (SSE) ที่มีโทเคนบางส่วนเมื่อสร้างเสร็จ ช่วยลดความล่าช้าสำหรับแอปพลิเคชันแชทบอท ใช้พารามิเตอร์ stream_options หากต้องการรับสถิติการใช้งานสุดท้ายในเหตุการณ์สุดท้าย สตรีมมิงมีประโยชน์มากสำหรับบทบาทสมมติแบบเรียลไทม์ ซึ่งการแสดงข้อความทีละคำช่วยเพิ่มอิมเมอร์ชัน ตรวจสอบให้แน่ใจว่าโค้ดไคลเอนต์ของคุณจัดการรูปแบบ SSE ได้ถูกต้องเพื่อแยกวิเคราะห์แต่ละชิ้นตามลำดับ
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 กำหนดขีดจำกัดอัตรา 300 คำขอต่อนาทีต่อคีย์ หากคุณเกินขีดจำกัดนี้ คุณจะได้รับข้อผิดพลาด 429 Too Many Requests ขนาดของคำขอจำกัดไว้ที่ 8 MB ข้อผิดพลาดทั่วไปรวมถึง 401 สำหรับคีย์ที่ไม่ถูกต้องหรือหายไป และ 402 หากเครดิตแบบเติมเงินล่วงหน้าของคุณหมด คุณสามารถเติมเงินเริ่มต้นที่ $10 โดยใช้คริปโต (USDT หรือ USDC) พร้อมเครดิตโบนัสสำหรับการฝากเงินขนาดใหญ่ ต่างจากผู้ให้บริการบางราย ไม่มีค่าธรรมเนียมซ่อนเร้นหรือการล็อกสมาชิก; คุณจ่ายเฉพาะโทเคนที่คุณใช้เท่านั้น ราคาโปร่งใส: $0.25 ต่อ 1M input tokens และ $1.00 ต่อ 1M output tokens ตรวจสอบให้แน่ใจว่าตรรกะการจัดการข้อผิดพลาดของคุณลองใหม่เมื่อเกิดข้อผิดพลาด 429 โดยมีการถอยหลังแบบทวีคูณ
from openai import OpenAI
client = OpenAI(base_url="https://api.characteraiapi.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.characteraiapi.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);ข้อมูลจำเพาะ API
ขีดจำกัดและความสามารถจริงทั้งหมดของ API ในที่เดียว ตรวจสอบก่อนเติมเงิน
| รายการ | ค่า |
|---|---|
| รูปแบบ API | รองรับ OpenAI: ใช้ OpenAI SDK ใดก็ได้ แค่เปลี่ยน base URL และคีย์ |
| เอนด์พอยต์ | POST /v1/chat/completions · GET /v1/models |
| การยืนยันตัวตน | Authorization: Bearer YOUR_KEY |
| Base URL | https://api.characteraiapi.com/v1 |
| ID โมเดล | uncensored |
| โหมด JSON | response_format: {"type": "json_object"} |
| เอาต์พุตสูงสุด | ได้ถึงส่วนที่เหลือของหน้าต่าง 100,000 โทเคน; max_tokens ไม่บังคับ (ไม่มีเพดานแยก) |
| พารามิเตอร์ | temperature, top_p, stop, seed, presence_penalty, frequency_penalty |
| หน้าต่างบริบท | 100,000 โทเคน (อินพุตรวมเอาต์พุต) |
| สตรีมมิง | รองรับ — server-sent events ชิ้นสุดท้ายมีจำนวนโทเคนที่ใช้ |
| การเรียกใช้ฟังก์ชัน | รองรับ — tools, tool_choice คำตอบมี tool_calls รวมถึงตอนสตรีม ส่งผลลัพธ์กลับด้วย role: tool |
| ขนาดคำขอ | ไม่เกิน 8 MB |
| เฮดเดอร์ของคำตอบ | X-Request-Id, X-Balance-USD, X-RateLimit-Limit-Requests, X-RateLimit-Limit-Concurrency |
| คำขอพร้อมกัน | สูงสุด 8 คำขอพร้อมกันต่อคีย์ |
| ขีดจำกัดอัตรา | 300 คำขอต่อนาทีต่อคีย์ |
| อายุเครดิต | เครดิตที่ซื้อไม่มีวันหมดอายุ ไม่มีการสมัครรายเดือน |
| โบนัส | +5% เมื่อเติมตั้งแต่ $50, +10% ตั้งแต่ $100 |
| เติมเงิน | USDT (TRC20) หรือ USDC (Base) จำนวนเต็มใดก็ได้ตั้งแต่ $10 ถึง $500 |
| ราคา | $0.25 ต่อ 1 ล้านโทเคนอินพุต · $1.00 ต่อ 1 ล้านโทเคนเอาต์พุต |
| การคิดเงิน | เครดิตแบบเติมเงินล่วงหน้าตามการใช้งานจริง ข้อผิดพลาดและการปฏิเสธไม่คิดเงิน |
| เครดิตทดลองใช้ฟรี | $0.50 ใช้ได้ 7 วัน ไม่ต้องใช้บัตร · คีย์ทดลอง: 2 คำขอพร้อมกัน, 60 ครั้งต่อนาที; ขีดจำกัดเต็ม (8 และ 300) หลังเติมเงินครั้งแรก |
| คีย์ | หนึ่งบัญชีมีคีย์ที่ใช้งานได้หนึ่งคีย์ คีย์ใหม่จะแทนคีย์เดิม |
| เข้าสู่ระบบ | Google หรืออีเมลและรหัสผ่าน |
| เนื้อหา | อนุญาตเนื้อหาสำหรับผู้ใหญ่ ปฏิเสธเนื้อหาทางเพศที่เกี่ยวข้องกับผู้เยาว์ |
รหัสข้อผิดพลาด
ข้อผิดพลาดส่งกลับเป็น JSON พร้อม type ที่คงที่ คำขอที่ล้มเหลวหรือถูกปฏิเสธไม่คิดเงิน
| รหัส | ประเภท | ความหมาย |
|---|---|---|
400 | bad_request | JSON ไม่ถูกต้อง ข้อความว่าง พารามิเตอร์ผิด หรือเกินหน้าต่างบริบท |
401 | missing_key · invalid_key · key_revoked | ไม่มีคีย์ คีย์ผิด หรือคีย์ถูกแทนที่แล้ว |
402 | no_credit | เครดิตหมด เติมเงินแล้วใช้งานต่อได้ทันที |
403 | content_blocked | เนื้อหาทางเพศเกี่ยวกับผู้เยาว์ ถูกปฏิเสธ ไม่คิดเงิน |
404 | not_found | ไม่รู้จักเอนด์พอยต์ |
413 | request_too_large | ขนาดเกิน 8 MB |
429 | rate_limited · concurrency | เกิน 300/นาที หรือ 8 พร้อมกัน รอแล้วลองใหม่ |
503 | upstream_busy | โมเดลไม่ว่าง ลองใหม่ในไม่กี่วินาที |
ถาม-ตอบ
นี่คือ API ของ Character.ai อย่างเป็นทางการหรือไม่?
ไม่ใช่ บริการนี้เป็นอิสระ โฮสต์ไว้ที่ characteraiapi.com มีโมเดลไม่เซ็นเซอร์ของตัวเอง ไม่เกี่ยวข้องกับ Character.AI หรือผู้ขาย LLM รายอื่น
โมเดลรองรับการสร้างภาพหรือเสียงหรือไม่?
ไม่ API ใช้ได้เฉพาะข้อความเท่านั้น รับอินพุตข้อความและส่งเอาต์พุตข้อความ ไม่รองรับ embeddings การปรับแต่ง หรืออินพุต/เอาต์พุตมัลติโมดัล
'ไม่เซ็นเซอร์' นิยามอย่างไร?
โมเดลไม่ปฏิเสธหัวข้อผู้ใหญ่ที่ถูกต้องตามกฎหมาย เรื่องแต่ง หรือหัวข้อที่ถกเถกันได้ โดยจะบล็อกเฉพาะเนื้อหาทางเพศที่เกี่ยวข้องกับเด็ก ซึ่งเป็นขีดจำกัดที่บังคับใช้กับทุกคำขอ
คีย์ของคุณอยู่ห่างแค่แบบฟอร์มเดียว
สร้างบัญชี คัดลอกคีย์ เปลี่ยน URL พื้นฐาน นั่นคือการตั้งค่าทั้งหมด