URL پایه و احراز هویت
API چتبات در https://api.chatterbotapi.com/v1. شما با یک توکن Bearer در Authorization header. کلید شما بلافاصله پس از ثبتنام از طریق گوگل یا ایمیل ظاهر میشود.
- URL پایه:
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 استفاده کنید. آن را به URL پایه ما متصل کنید و کلید خود را تزریق کنید. کلاینت سریالسازی 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)این رویکرد برای هر دو تماسهای استریم و غیراستریم کار میکند. شناسه مدل 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 رویدادهای ارسالی سرور (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)هر قطعه را همانطور که دریافت میشود پردازش کنید. این کار تأخیر ادراکشده را برای خروجیهای طولانی تا 16,000 توکن کاهش میدهد.
Limits and Errors
انتظار خطای 401 در صورت نامعتبر بودن کلید را داشته باشید. خطای 402 به این معنی است که اعتبار پیشپرداخت شما تمام شده است. خطاها و رد شدنها توکن مصرف نمیکنند. شما به ۳۰۰ درخواست در دقیقه محدود هستید. پنجره زمینه در مجموع ۱۰۰,۰۰۰ توکن ظرفیت دارد. اندازه بدنه درخواست باید کمتر از ۸ مگابایت باشد.