fa ▾
همین حالا شروع کنید

Apertus ia API Documentation

ابزارهای موجود خود را با یک کلید API و یک نقطه پایانی سازگار با OpenAI به ia بدون سانسور متصل کنید.

1. Quickstart: Connect Your First Request

URL پایه https://api.apertusia.com/v1 است. کلید API خود را در هدر Authorization ارسال کنید. شناسه مدل uncensored است. این پیکربندی با هر کلاینت سازگار با OpenAI کار می‌کند.

از این دستور cURL برای تست فوری اتصال استفاده کنید. YOUR_API_KEY را با کلید واقعی خود جایگزین کنید.

curl https://api.apertusia.com/v1/chat/completions \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "uncensored",
    "messages": [{"role": "user", "content": "List the top 5 python libraries for web scraping"}]
  }'

خطاهای احراز هویت 401 را برمی‌گردانند. کمبود موجودی 402 را برمی‌گردانند. محدودیت‌های نرخ 429 را برمی‌گردانند.

۲. پارامترهای پشتیبانی‌شده: دما، Top P و Seed

کنترل تصادفی‌سازی با temperature، تنوع با top_p و قابلیت تکرارپذیری با seed. این پارامترها از استانداردهای رایج OpenAI پیروی می‌کنند. temperature را روی 0.7 برای خروجی متعادل یا 1.0 برای خلاقیت بیشتر تنظیم کنید. از top_p برای محدود کردن نمونه‌برداری به بالاترین توده احتمال استفاده کنید. پارامتر seed خروجی‌های یکسان را برای اشکال‌زدایی تضمین می‌کند.

Example Python snippet for local testing:

from openai import OpenAI

client = OpenAI(base_url="https://api.apertusia.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)

3. پاسخ‌های جریان‌دار با رویدادهای ارسالی سرور

جریان‌سازی را با تنظیم stream: true فعال کنید. API داده‌ها را از طریق رویدادهای ارسال‌شده توسط سرور (SSE) برمی‌گرداند. هر قطعه شامل متن ناقص و داده‌های مصرف توکن است. این کار تأخیر ادراک‌شده را برای پاسخ‌های طولانی کاهش می‌دهد. رویدادهای SSE را مدیریت کنید تا رابط کاربری خود را به‌صورت بلادرنگ به‌روز کنید.

مثال Node.js با استفاده از SDK رسمی:

import OpenAI from "openai";

const client = new OpenAI({ baseURL: "https://api.apertusia.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);

4. پیکربندی Function Calling و حالت JSON

از response_format همراه با {"type": "json_object"} برای خروجی JSON دقیق استفاده کنید. این کار داده‌های ساختاریافته را برای پایپ‌لاین‌های برنامه‌نویسی تضمین می‌کند. با ارائه آرایه tools در بدنه درخواست، قابلیت فراخوانی تابع را فعال کنید. مدل فراخوانی‌های ابزار را در قالب مورد انتظار برمی‌گرداند. از tool_choice برای اجبار به رفتار خاص استفاده کنید.

5. محدودیت‌های نرخ درخواست و محدودیت‌های اندازه درخواست

هر کلید API از 300 درخواست در دقیقه پشتیبانی می‌کند. درخواست‌های همزمان برای هر کلید به 8 محدود است. حداکثر اندازه بدنه درخواست 8 مگابایت است. پنجره زمینه در مجموع 100,000 توکن را در خود جای می‌دهد. حداکثر خروجی در هر درخواست تا 100,000 توکن (اندازه کامل پنجره) است. برای جلوگیری از قطع شدن، max_tokens را تنظیم نکنید یا آن را روی مقدار بالایی تنظیم کنید. خطاها اعتبار مصرف نمی‌کنند. بازپرداخت انجام نمی‌شود، اما خطاهای صورت‌حساب از طریق پشتیبانی اصلاح می‌شوند.

6. احراز هویت و مدیریت خطاها

کلید خود را از طریق داشبورد ایجاد کنید. از ورود با گوگل یا ایمیل استفاده کنید. کلید بلافاصله ظاهر می‌شود. آن را در هدر Authorization: Bearer قرار دهید. کلیدهای نامعتبر خطای 401 برمی‌گردانند. خطاهای 429 نشان‌دهنده اتمام محدودیت نرخ است. خطاهای 402 به معنای اتمام اعتبار پیش‌پرداخت شماست. با USDT یا USDC شارژ کنید. اعتبار‌ها هرگز منقضی نمی‌شوند.

استریم

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)

Common queries

What is the uncensored ia model context window?

مدل از پنجره زمینه ۱۰۰,۰۰۰ توکن پشتیبانی می‌کند. این شامل هم متن ورودی و هم خروجی است. محدودیت جداگانه‌ای برای خروجی وجود ندارد: یک پاسخ می‌تواند از تمام فضای باقی‌مانده در پنجره استفاده کند.

How do I handle streaming responses in Python?

پارامتر <code>stream</code> را در درخواست خود روی <code>true</code> تنظیم کنید. روی شیء پاسخ حلقه بزنید تا هر قطعه را پردازش کنید. از SDK رسمی برای تجزیه خودکار SSE استفاده کنید.

What happens if I hit the rate limit?

API کد وضعیت 429 را برمی‌گرداند. می‌توانید پس از یک تأخیر کوتاه دوباره تلاش کنید. هر کلید اجازه 300 درخواست در دقیقه را می‌دهد. در صورت نیاز، با تولید کلیدهای اضافی، همزمانی را افزایش دهید.

کلید خود را هم‌اکنون دریافت کنید

ثبت‌نام کنید، کلید را دریافت کنید، به نقطه پایانی ما اشاره کنید. تمام.