כתובת URL בסיסית ואימות
API ה-Chatterbot יושב ב- https://api.chatterbotapi.com/v1. אתה מאשר באמצעות אסימון נושא (Bearer token) ב Authorization header. המפתח שלך מופיע מיד לאחר ההרשמה באמצעות Google או דוא"ל.
- כתובת בסיס:
https://api.chatterbotapi.com/v1 - כותרת:
Authorization: Bearer YOUR_API_KEY
מפתח אחד לחשבון מחליף את הישן מיד. שמור אותו מאובטח.
בקשה ראשונה
שלחו בקשת POST ל /v1/chat/completions עם המודל uncensored. ה-API מחזיר טקסט שנוצר ללא סירובים סטנדרטיים לתוכן מבוגר חוקי.
להלן דוגמה מינימלית ל-cURL:
curl https://api.chatterbotapi.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "What is the capital city of France"}]
}'ודא שהתגובה כוללת את הטקסט שנוצר ב choices[0].message.content.
אינטגרציית SDK Python
השתמשו בספריית הפיתון הרשמית של OpenAI. ציין אותה לכתובת הבסיס שלנו והזרק את המפתח שלך. הלקוח מטפל ברישום JSON באופן אוטומטי.
from openai import OpenAI
client = OpenAI(base_url="https://api.chatterbotapi.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)גישה זו עובדת הן עבור קריאות זרימה (streaming) והן עבור קריאות לא זורמות. מזהה המודל נשאר uncensored.
הגדרת SDK Node.js
אתחל את חבילת npm של OpenAI עם כתובת ה-URL הבסיסית המותאמת אישית. זה מבטיח תאימות עם לקוחות OpenAI קיימים.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.chatterbotapi.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 מתנהג כמו כל נקודת קצה סטנדרטית של chat-completions.
תגובות בסטרימינג
אפשרו זרימה על ידי הגדרת stream: true. ה-API שולח אירועים מוכוונים-שרת. נתוני שימוש באסימונים מופיעים רק במקטע הסופי.
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)עבדו כל חלק כפי שהוא מגיע. זה מפחית את תחוית העיכוב לתפוקות ארוכות עד 16,000 טוקנים.
מגבלות ושגיאות
צפה לשגיאת 401 אם המפתח לא חוקי. שגיאת 402 אומרת שאשראי ששולם מראש אזל. שגיאות וסירובים לא צורכים אסימונים. אתה מוגבל ל-300 בקשות לדקה. חלון ההקשר מכיל 100,000 אסימונים בסך הכל. גופי בקשות חייבים להישאר מתחת ל-8 MB.