شروع سریع نقطه پایایی سازگار با OpenAI
همین حالا با استفاده از نقاط پایانی سازگار با استاندارد OpenAI شروع به تولید متن کنید. ما یک مدل بدون فیلتر ارائه میدهیم که از طریق درخواستهای HTTP ساده یا SDK مورد علاقه شما قابل دسترسی است.
URL پایه و احراز هویت
اتصال به API ما با استفاده از URL پایه استاندارد و کلید منحصربهفرد خود. هر درخواست نیاز به احراز هویت از طریق هدر Authorization دارد تا دسترسی امن به اعتبار از پیش پرداخت شده شما را تضمین کند.
ساختار نقطه پایانی ما با استاندارد صنعت همخوانی دارد و به شما امکان میدهد پیکربندی OpenAI موجود خود را با حداقل اصطکاک جایگزین کنید. نیازی به مدیریت مسیریابی پیچیده یا قفلشدگی با فروشنده ندارید؛ ما زیرساخت را مدیریت میکنیم در حالی که شما بر منطق برنامه تمرکز میکنید.
کلید خود را بهسرعت از طریق داشبورد ایجاد کنید. هر حساب فقط یک کلید فعال دارد که با ایجاد کلید جدید، جایگزین کلید قبلی میشود و امنیت حساب شما را ساده و شفاف نگه میدارد.
curl https://api.aiinferenceapi.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 of France?"}]
}'
نقطه پایانی تکمیل چت
پرامپت خود را به نقطه پایانی تکمیل چت ارسال کنید تا یک پاسخ مستقیم متنی از مدل بدون سانسور دریافت کنید. این نقطه پایانی واحد تمام تولید متن را بدون سربار جاسازی یا پردازش چندوجهی مدیریت میکند.
مدل یک آرایه پیام استاندارد شامل نقشهای system، user و assistant را میپذیرد. برای پاسخدهی بدون رد محتوای بزرگسالان قانونی تنظیم شده است که آن را برای نوشتن خلاقانه، نقشآفرینی (roleplay) یا تحلیل دادههای نامحدود ایدهآل میسازد.
پیکربندیهای خود را مختصر نگه دارید. حداکثر اندازه بدنه درخواست 8 مگابایت است که به راحتی بیشتر تاریخچههای مکالمه استاندارد را پیش از رسیدن به محدودیت زمینه پوشش میدهد.
from openai import OpenAI
client = OpenAI(base_url="https://api.aiinferenceapi.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)
استریمینگ و استفاده از توکن
فعالسازی خروجی بلادرنگ با تنظیم پارامتر 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)
فراخوانی تابع و حالت JSON
خروجیهای خود را برای مصرف برنامهنویسی با حالت JSON یا فراخوانی تابع ساختار دهید. response_format را روی json_object تنظیم کنید تا مدل را به یک طرح JSON سختگیرانه مجبور کنید.
برای استفاده از ابزارها، توابع خود را در آرایه tools تعریف کنید. مدل آرگومانهای ساختاریافتهای برمیگرداند که کد شما میتواند آنها را تجزیه و اجرا کند. این قابلیت از جریانهای کاری پیچیده پشتیبانی میکند و نیاز به کتابخانههای تجزیه خارجی را حذف میکند.
حالت JSON زمانی که دادهها را از متن نامساختاریافته استخراج میکنید بهویژه مفید است. این فرمتبندی سازگار را تضمین کرده و نیاز به پاکسازی پردازش پسین را در منطق برنامه شما کاهش میدهد.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.aiinferenceapi.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);
پارامترها: دما، Top P و Stop
خلاقیت و پایانپذیری پاسخهای خود را با پارامترهای تولید استاندارد کنترل کنید. temperature را برای تغییرپذیری و top_p را برای نمونهبرداری هستهای تنظیم کنید. از پارامتر stop برای تعریف دنبالههای خاصی که پایان خروجی را نشان میدهند استفاده کنید.
تنظیم دمای پایینتر نتایج قطعیتر و متمرکزتری تولید میکند. مقادیر بالاتر تصادفیبودن بیشتری را معرفی میکنند که میتواند برای طوفان فکری یا وظایف داستانسرایی خلاقانه مفید باشد.
توالیهای توقف (stop sequences) را تعریف کنید تا از اجرای بیپایان مدل جلوگیری شود. این کار برای حفظ مصرف قابل پیشبینی توکن و اطمینان از دریافت یک پاسخ تمیز و جدا شده توسط برنامه شما ضروری است.
مدیریت خطا و محدودیتها
درخواستهای خود را برای کدهای وضعیت HTTP رایج پایش کنید تا خطاها را به طور موثر مدیریت کنید. یک ۴۰۱ نشاندهنده کلید API نامعتبر یا منقضی شده است، در حالی که ۴۰۲ نشان میدهد که اعتبار پیشپرداخت شما تمام شده است.
محدودیت نرخ 429 اگر بیش از 300 درخواست در دقیقه یا بیش از 8 درخواست همزمان برای هر کلید داشته باشید فعال میشود. تراکم خود را با توزیع بار در چندین کلید یا کاهش فرکانس درخواست افزایش دهید.
پنجره زمینه شما ۱۰۰,۰۰۰ توکن برای مجموع پرامپت و تکمیل پشتیبانی میکند. به این محدودیت توجه داشته باشید تا از برش جلوگیری کنید. خطاها و رد شدنها توکن مصرف نمیکنند، بنابراین شما فقط برای تولید واقعی هزینه میپردازید.
سوالات متداول
اندازه پنجره زمینه برای مدل بدون محدودیت (uncensored) چقدر است؟
مدل از یک پنجره زمینه ۱۰۰,۰۰۰ توکنی پشتیبانی میکند که هم پرسپ ورودی و هم تکمیل خروجی را ترکیب میکند. حداکثر خروجی در هر درخواست ۱۶,۰۰۰ توکن است، یا ۲,۰۴۸ اگر max_tokens را مشخص نکنید.
چگونه محدود نرخها را با API استنتاج AI مدیریت کنم؟
محدود به 300 درخواست در دقیقه و 8 درخواست همزمان به ازای هر کلید API هستید. اگر خطای 429 را دریافت کردید، چند لحظه صبر کنید یا بار خود را بین چند کلید ایجاد شده توزیع کنید. هر حساب کاربری در هر زمان فقط یک کلید فعال نگه میدارد.
آیا مدل محتوا را رد میکند؟
مدل بدون سانسور است و موضوعات بزرگسالان، داستانی یا بحثبرانگیز قانونی را رد نمیکند. تنها محدودیت سخت، رد محتوای جنسی مرتبط با کودکان است. درخواستهای حاوی آن نوع محتوا فیلتر میشوند.
کلید API خود را بازیابی کنید
ثبتنام کنید، کلید خود را بازیابی کنید و آدرس پایه (base URL) را بهروز کنید. این پیکربندی کامل است.