شروع سریع: Drop-in API سازگار با OpenAI
سازگاری OpenAI Drop-in یعنی شما فقط یک URL پایه و یک کلید را تغییر میدهید، سپس کد موجود شما بدون بازنویسی منطق در برابر مدل بدون سانسور ما اجرا میشود. این شروع سریع شما را در عرض چند دقیقه به یک پاسخ استریم میرساند.
تغییر base_url و تنظیم کلید API
اولین مرحله اشاره SDK شما به انتهای نقطه ماست. استفاده از https://api.whatisopenrouterai.com/v1 بهعنوان آدرس پایه (base URL) خود تنظیم کنید و کلید خود را از داشبورد در آن قرار دهید. این تغییر واحد، تمام درخواستها را به مدل زبانی بزرگ بدون سانسور ما هدایت میکند، در حالی که هدرهای استاندارد سازگار با OpenAI شما را حفظ مینماید.
- یک کلید از طریق گوگل یا ایمیل تولید کنید.
- آن را در متغیرهای محیطی خود ذخیره کنید.
- بررسی کنید که کلید با یک درخواست ساده کار میکند.
curl https://api.whatisopenrouterai.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Set variable x to five"}]
}'
درخواستها را به /v1/chat/completions ارسال کنید
Our API accepts standard chat completions with text input and returns text output. You send a POST request to the /v1/chat/completions اندپوینت با شناسه مدل و تاریخچه پیامهای شما. شناسه مدل به سادگی uncensored, که مدل را برای پاسخ دادن بدون رد برای محتوای بزرگسالان قانونی تنظیم میکند.
from openai import OpenAI
client = OpenAI(base_url="https://api.whatisopenrouterai.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)
ابزارها و tool_choice را با SSE پخش کنید
استریمینگ بازخورد بلادرنگ را از طریق رویدادهای ارسالی سرور فراهم میکند. هر قطعه شامل متن جزئی است و قطعه نهایی شامل آمار مصرف توکن میباشد. این رویکرد رابط کاربری شما را هنگام انتظار برای تکمیل پاسخهای طولانیمحتوا، واکنشگرا نگه میدارد.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.whatisopenrouterai.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);
json_object را با response_format مجبور کنید
از response_format پارامتر روی {"type": "json_object"} برای اجبار به خروجی JSON سختگیرانه. این تجزیهی قابلپیشبینی را برای برنامههای شما تضمین میکند و نیازی به حدس زدن ساختار صحیح توسط مدل در هر زمان ندارد.
از ابزارها و tool_choice استفاده کنید
فراخوانی تابع دقیقاً مانند پیادهسازی استاندارد API OpenAI کار میکند. ابزارهای خود را در درخواست تعریف کنید و مدل در صورت نیاز استدلالهای ساختاریافته را برمیگرداند. میتوانید استفاده از ابزار را با tool_choice یا اجازه دهید مدل بر اساس زمینه تصمیم بگیرد.
بررسی مدلهای موجود
پرسوجو GET /v1/models برای مشاهده مدل بدون سانسور موجود. این نقطه پایانی (Endpoint) شناسه مدل و جزئیات را برمیگرداند و تأیید میکند که سرویس ما فعال است و آماده دریافت درخواستهاست. ما گزینههای چندگانه مدل ارائه نمیدهیم تا یکپارچهسازی ساده و متمرکز باقی بماند.
جریانسازی
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)سوالات متداول
open router AI چیست
این یک API میزبانیشده و سازگار با OpenAI است که یک مدل زبانی بزرگ بدون سانسور را ارائه میدهد. یک جایگزین مستقیم برای کد استاندارد OpenAI دریافت میکنید با تغییر آدرس پایه و کلید. مدل محتوای قانونی بزرگسالان را رد نمیکند و تجربه LLM بدون سانسور واقعی ارائه میدهد.
چگونه محدود نرخها و خطاها را مدیریت کنم؟
برای کلید نامعتبر خطای ۴۰۱، برای عدم وجود اعتبار خطای ۴۰۲ و برای محدودیت نرخ خطای ۴۲۹ دریافت میکنید. محدودیت ما ۳۰۰ درخواست در دقیقه به ازای هر کلید است. خطاها و رد شدنها، توکنهای پیشپرداخت شما را مصرف نمیکنند.
اندازه پنجره زمینه چقدر است؟
پنجره زمینه برای هم ورودی و هم خروجی ۱۰۰,۰۰۰ توکن است. حداکثر خروجی در هر درخواست ۱۶,۰۰۰ توکن است، یا ۲,۰۴۸ توکن اگر max_tokens را مشخص نکنید. این امکان مکالمات طولانی بدون قطع فوری را فراهم میکند.