OpenRouter چیست؟ دسترسی به صدها مدل با یک کلید
اگر تا حالا مجبور شدهاید برای هر مدل هوش مصنوعی یک حساب جداگانه بسازید، یک کلید جدا بگیرید و کد خود را برای هر سرویس تغییر دهید، OpenRouter دقیقاً برای شما ساخته شده است. OpenRouter یک درگاه واحد است که با یک API Key و یک آدرس، دسترسی به صدها مدل از دهها ارائهدهنده را فراهم میکند؛ از مدلهای OpenAI و Anthropic گرفته تا Google، DeepSeek و مدلهای متنباز. در این مقاله توضیح میدهیم OpenRouter چیست، چطور کار میکند، چه مزایا و محدودیتهایی دارد و چطور در چند خط کد از آن استفاده کنید.
OpenRouter چیست؟
OpenRouter خودش مدل هوش مصنوعی نمیسازد. این سرویس یک درگاه یا روتر است که بین برنامهٔ شما و ارائهدهندگان مختلف مدل قرار میگیرد. شما درخواست را با قالب استاندارد OpenAI به یک آدرس واحد میفرستید و OpenRouter آن را به سرویسی که مدل انتخابی شما را اجرا میکند هدایت میکند، پاسخ را برمیگرداند و هزینه را از اعتبار حساب شما کم میکند.
به بیان ساده، بهجای این وضعیت:
- یک حساب و کلید برای OpenAI
- یک حساب و کلید برای Anthropic
- یک حساب و کلید برای Google
- و چند حساب دیگر برای مدلهای متنباز
فقط یک کلید، یک صورتحساب و یک قالب کد دارید.
OpenRouter چطور کار میکند؟
آدرس پایهٔ OpenRouter با API اوپنایآی سازگار است. یعنی کتابخانههای رسمی OpenAI با تغییر دو مقدار، یعنی آدرس پایه و کلید، کار میکنند. نام مدلها در OpenRouter به شکل سازنده/مدل نوشته میشود؛ برای مثال openai/...، anthropic/... یا deepseek/.... فهرست کامل و بهروز را در صفحهٔ Models سایت OpenRouter یا از طریق endpoint مربوط به فهرست مدلها میتوانید ببینید.
دو سطح مسیریابی در OpenRouter وجود دارد:
- مسیریابی ارائهدهنده (Provider Routing): یک مدل، بهویژه مدلهای متنباز، ممکن است توسط چند ارائهدهنده اجرا شود. OpenRouter بهطور پیشفرض بار را بین آنها تقسیم میکند و اگر یکی از دسترس خارج شد، سراغ دیگری میرود. میتوانید ترتیب ارائهدهندگان را هم خودتان مشخص کنید یا بر اساس قیمت، سرعت یا تأخیر مرتب کنید.
- مدلهای جایگزین (Model Fallbacks): میتوانید فهرستی از مدلها بدهید؛ اگر مدل اول خطا داد یا به محدودیت خورد، درخواست به مدل بعدی میرود و فقط برای مدلی که واقعاً پاسخ داده هزینه پرداخت میکنید.
علاوه بر این، OpenRouter یک «روتر خودکار» هم دارد که خودش تصمیم میگیرد کدام مدل به درخواست شما پاسخ دهد.
مزایای OpenRouter برای توسعهدهندگان ایرانی
| مزیت | توضیح |
|---|---|
| یک کلید برای همه | نیازی به خرید و مدیریت چند کلید جداگانه نیست. |
| مقایسهٔ آسان مدلها | با تغییر یک رشته، مدل را عوض کنید و نتایج را مقایسه کنید. |
| پایداری بیشتر | با مسیریابی ارائهدهنده و مدلهای جایگزین، قطعی یک سرویس کل برنامه را از کار نمیاندازد. |
| سازگاری با OpenAI | کد موجود با کمترین تغییر کار میکند. |
| یک صورتحساب | مصرف همهٔ مدلها در یک داشبورد قابل مشاهده است. |
| دسترسی به مدلهای متنباز | مدلهایی مثل Llama، Qwen و DeepSeek بدون راهاندازی سرور. |
طبق مستندات خود OpenRouter، این سرویس روی قیمت توکنها سود اضافه نمیکشد و قیمت ارائهدهندهٔ اصلی را منتقل میکند؛ درآمد آن از کارمزد شارژ اعتبار است. با این حال قیمتها و کارمزدها ممکن است تغییر کنند، پس قبل از پروژههای بزرگ صفحهٔ قیمتگذاری را بررسی کنید.
محدودیتها و نکاتی که باید بدانید
- یک لایهٔ واسط اضافه: درخواست شما از یک سرویس دیگر عبور میکند؛ برای دادههای بسیار حساس، سیاستهای حریم خصوصی هر ارائهدهنده را بررسی کنید. OpenRouter امکان فیلتر کردن ارائهدهندگان بر اساس سیاست داده را هم دارد.
- تفاوت جزئی رفتار: یک مدل یکسان نزد ارائهدهندگان مختلف ممکن است طول context یا سطح کوانتیزهسازی متفاوتی داشته باشد.
- مدلهای رایگان محدودند: برخی مدلها با پسوند
:freeرایگاناند، اما محدودیت تعداد درخواست دارند و برای محصول واقعی مناسب نیستند. - همهٔ قابلیتها در همهٔ مدلها نیست: فراخوانی ابزار، ورودی تصویر یا خروجی JSON را برای هر مدل جداگانه بررسی کنید.
آموزش استفاده از OpenRouter در پایتون
درخواست ساده
from openai import OpenAI
client = OpenAI(
base_url="BASE_URL", # برای OpenRouter معمولاً https://openrouter.ai/api/v1
api_key="API_KEY",
)
resp = client.chat.completions.create(
model="deepseek/MODEL_NAME",
messages=[{"role": "user", "content": "سه ایده برای نام یک کافه بده."}],
)
print(resp.choices[0].message.content)
print("مدل پاسخدهنده:", resp.model)
فیلد model در پاسخ نشان میدهد کدام مدل واقعاً جواب داده است؛ این موضوع وقتی از مدلهای جایگزین استفاده میکنید مهم است.
تعریف مدلهای جایگزین
با کتابخانهٔ OpenAI، پارامترهای اختصاصی OpenRouter را داخل extra_body میفرستید:
resp = client.chat.completions.create(
model="anthropic/MODEL_A",
messages=[{"role": "user", "content": "این متن را خلاصه کن: ..."}],
extra_body={
"models": ["openai/MODEL_B", "google/MODEL_C"],
},
)
اگر مدل اول در دسترس نباشد، OpenRouter به ترتیب سراغ مدلهای بعدی میرود.
تعیین ترتیب ارائهدهندگان
resp = client.chat.completions.create(
model="meta-llama/MODEL_NAME",
messages=[{"role": "user", "content": "سلام!"}],
extra_body={
"provider": {"sort": "price"} # ارزانترین ارائهدهنده اول
},
)
اگر با کتابخانهٔ OpenAI در پایتون آشنا نیستید، ابتدا راهنمای API هوش مصنوعی در پایتون را بخوانید.
OpenRouter یا API مستقیم؟
انتخاب بین این دو به نیاز پروژه بستگی دارد:
- OpenRouter را انتخاب کنید اگر: هنوز مدل نهایی را انتخاب نکردهاید، میخواهید چند مدل را مقایسه کنید، به پایداری بالا با مدل جایگزین نیاز دارید یا از مدلهای متنباز استفاده میکنید.
- API مستقیم را انتخاب کنید اگر: فقط از یک مدل استفاده میکنید، به قابلیتهای اختصاصی یک سرویس نیاز دارید که هنوز در OpenRouter نیست، یا میخواهید کمترین لایهٔ واسط را داشته باشید.
در الین لند هر دو مسیر را دارید: خرید اعتبار OpenRouter برای دسترسی چندمدلی، و کلیدهای مستقیم مانند API اوپنایآی، API کلاد یا API گروک برای مدلهای Llama برای پروژههای تکمدلی. برای انتخاب مدل مناسب، مقالهٔ مقایسهٔ GPT، Claude و Gemini کمکتان میکند.
چند سناریوی کاربردی OpenRouter
- مقایسهٔ کیفیت فارسی: یک مجموعه پرامپت فارسی را به چند مدل بفرستید و بهترین را برای محصول انتخاب کنید.
- بهینهسازی هزینه: درخواستهای ساده را به مدل ارزان و درخواستهای پیچیده را به مدل قوی بفرستید.
- چتبات همیشه در دسترس: با تعریف مدلهای جایگزین، اگر یک سرویس قطع شد، ربات شما بیپاسخ نمیماند.
- ابزارهای برنامهنویسی: بسیاری از ابزارها و دستیارهای کدنویسی که با API اوپنایآی کار میکنند را میتوان به OpenRouter وصل کرد.
چطور مدل مناسب را در OpenRouter پیدا کنیم؟
وقتی صدها مدل در دسترس دارید، انتخاب خودش یک چالش است. صفحهٔ مدلهای OpenRouter امکان فیلتر بر اساس چند معیار را میدهد که برای تصمیمگیری کمککنندهاند:
- طول context: اگر اسناد طولانی پردازش میکنید، مدلهایی با پنجرهٔ بزرگتر را انتخاب کنید.
- نوع ورودی: برخی مدلها فقط متن میپذیرند و برخی تصویر یا فایل هم.
- قیمت ورودی و خروجی: برای هر مدل جداگانه نمایش داده میشود.
- پارامترهای پشتیبانیشده: مثل فراخوانی ابزار یا خروجی ساختاریافته.
- میزان استفاده: محبوبیت یک مدل بین توسعهدهندگان میتواند نقطهٔ شروع خوبی باشد.
توصیهٔ ما این است که سه تا پنج مدل کاندید انتخاب کنید، یک مجموعهٔ ثابت از پرامپتهای واقعی پروژه را به همه بفرستید و نتایج را از نظر کیفیت، سرعت و هزینه کنار هم بگذارید. نوشتن پرامپتهای دقیق در این مقایسه نقش مهمی دارد؛ راهنمای مهندسی پرامپت را ببینید.
مدیریت هزینه و امنیت در OpenRouter
چون یک کلید به همهٔ مدلها دسترسی دارد، محافظت از آن اهمیت بیشتری پیدا میکند. اگر کلید نشت کند، کسی میتواند با گرانترین مدلها اعتبار شما را خالی کند. توصیهها:
- کلید را فقط در سمت سرور و در متغیر محیطی نگه دارید.
- در کد خود فهرست مجاز مدلها را محدود کنید.
- برای هر درخواست سقف
max_tokensتعیین کنید. - مصرف را در داشبورد مرتب بررسی کنید.
جزئیات بیشتر در مقالهٔ امنیت API Key هوش مصنوعی و روش محاسبهٔ هزینه در مقالهٔ توکن و هزینهٔ API آمده است.
سؤالات متداول دربارهٔ OpenRouter
آیا OpenRouter گرانتر از API مستقیم است؟
طبق اعلام OpenRouter، قیمت هر توکن همان قیمت ارائهدهندهٔ اصلی است و هزینهٔ اضافه به صورت کارمزد هنگام شارژ اعتبار دریافت میشود. برای اطلاع دقیق از شرایط فعلی، صفحهٔ قیمتگذاری OpenRouter را ببینید.
آیا کدهای نوشتهشده برای OpenAI با OpenRouter کار میکنند؟
بله. API اوپنروتر با قالب Chat Completions اوپنایآی سازگار است و معمولاً فقط باید آدرس پایه، کلید و نام مدل را تغییر دهید.
با OpenRouter به کدام مدلها دسترسی دارم؟
صدها مدل از سازندگان مختلف، از جمله OpenAI، Anthropic، Google، DeepSeek، xAI، Mistral، Qwen و Llama. فهرست مدلها مرتب بهروز میشود و نسخهٔ کامل آن در سایت OpenRouter موجود است.
آیا مدلهای رایگان OpenRouter برای محصول نهایی مناسباند؟
برای تست و یادگیری بله، اما محدودیت تعداد درخواست دارند و ممکن است در دسترس بودنشان تضمینی نباشد. برای محصول واقعی از مدلهای پولی با اعتبار شارژشده استفاده کنید.
چطور اعتبار OpenRouter را با ریال تهیه کنم؟
شارژ مستقیم OpenRouter با کارت بینالمللی یا رمزارز انجام میشود. در الین لند میتوانید اعتبار OpenRouter را با پرداخت ریالی و تحویل فوری تهیه کنید.
میخواهید با یک کلید به همهٔ مدلها دسترسی داشته باشید؟ به فروشگاه الین لند سر بزنید و اعتبار OpenRouter را با پرداخت ریالی تهیه کنید.