جایگزین IranRouter در ۱۴۰۵: راهنمای مهاجرت به 1xAi
اگر کدتان با SDK سازگار با OpenAI نوشته شده، رفتن از IranRouter (یک API واحد که درخواست را بین ارائهدهندگان مدل مسیریابی میکند، نه روتر شبکه) به 1xAi معمولاً…
تیمِ فنیِ 1xAi گیتوی را میسازد و میگرداند — همانهایی که هر روز با APIهای OpenAI، Anthropic، Google و DeepSeek از داخلِ ایران کار میکنند. آنچه اینجا میخوانی از همان کارِ روزمره درآمده، نه از بازنویسیِ مستنداتِ انگلیسی. پروفایلِ نویسنده
در این مقالهCONTENTS
۲۰
- IranRouter چیست و کی باید دنبال جایگزین بگردیم؟
- ادعاهای خود IranRouter
- چه زمانی بررسی جایگزین منطقی است
- جدول مقایسه: 1xAi و IranRouter
- چطور از IranRouter به 1xAi مهاجرت کنیم؟ (OpenAI و Anthropic SDK)
- مراحل
- نمونهٔ Python با openai
- معادل curl
- نمونهٔ Anthropic SDK (شبهکد)
- نکات مهاجرتی
- امنیت کلید و مدیریت هزینه در گیتوی
- راهنمای عمومی نگهداری کلید
- آنچه در 1xAi صادق است
- کنترل هزینه
- سوالات متداول
- router چیست
- مهاجرت از IranRouter به 1xAi چقدر زمان میبرد؟
- هزینه در 1xAi چگونه محاسبه میشود؟
- برای استفاده از 1xAi VPN یا کارت خارجی لازم است؟
- بعد از مهاجرت، با مدلهای Claude چه نکتهای را بررسی کنم؟
اگر کدتان با SDK سازگار با OpenAI نوشته شده، رفتن از IranRouter (یک API واحد که درخواست را بین ارائهدهندگان مدل مسیریابی میکند، نه روتر شبکه) به 1xAi معمولاً فقط یعنی تغییر base_url به https://1xai.ir/v1 و جایگزینی کلید با کلیدی که از داشبورد 1xai.ir میسازید. شرطش این است که نام مدلهای کدتان را با فهرست https://1xai.ir/models تطبیق دهید، چون ممکن است نامها یکسان نباشند. ما در 1xAi همین گیتوی را اداره میکنیم، پس این مقایسه از زاویهٔ فروشنده است. برای کار از داخل ایران VPN و کارت بانکی خارجی لازم نیست، و SDKهای Anthropic و Google GenAI هم بدون تغییر روی مسیرهای بومی خودشان کار میکنند.
اگر کدتان با SDK سازگار با OpenAI نوشته شده، مهاجرت معمولاً فقط تغییر base_url به https://1xai.ir/v1 و جایگزینی کلید ir-… با کلید 1xai-… است. شرطش این است که نام مدلها را با فهرست صفحهٔ مدلهای 1xAi تطبیق دهید، چون هر گیتوی نامگذاری مدلهای خودش را دارد.
ما در 1xAi همین گیتوی را اداره میکنیم، پس این مقایسه از زاویهٔ فروشنده نوشته شده است.
یک توضیح کوتاه دربارهٔ معنی router: در نام IranRouter این واژه یعنی مسیریاب درخواستها، لایهای که یک فراخوانی API را به ارائهدهندهٔ مدل میرساند. ربطی به روتر شبکه یا مودم خانگی ندارد.
IranRouter چیست و کی باید دنبال جایگزین بگردیم؟
IranRouter یک API واحد سازگار با OpenAI است، نه روتر شبکه؛ «Router» در اینجا یعنی مسیریاب درخواست بین ارائهدهندگان مدل. جستوجوهایی مثل «router چیست» یا «معنی router» معمولاً به دستگاهی برمیگردد که بستههای داده را بین شبکهها جابهجا میکند، و با این سرویس فقط در اسم مشترک است.
ادعاهای خود IranRouter
طبق صفحهٔ سوالات متداول IranRouter و صفحهٔ اصلی، مصرف در یک کیف پول تومانی جمع میشود و قیمت مدلها همان نرخ رسمی ارائهدهنده است. اگر یک ارائهدهنده قطع شود، درخواست به مسیر جایگزین میرود.
برای gpt-4o-mini و gpt-6-luna هم سهمیهٔ رایگان اعلام کردهاند. بعد از اتمام آن، همان آدرس و کلید فقط پاسخ 402 همراه با لینک شارژ برمیگرداند. ما این موارد را خودمان آزمایش نکردهایم، پس پیش از تصمیم مستقیم از خود سایت بررسیشان کنید.
چه زمانی بررسی جایگزین منطقی است
دو دلیل واقعی دارد، و هیچکدام به معنای ضعف IranRouter نیست. یکی اینکه پروژهتان به اندپوینتهای اختصاصی Anthropic و Gemini نیاز دارد، نه فقط لایهٔ سازگار با OpenAI. دیگری اینکه قبل از انتخاب مدل، آمار تولیدی همان مدل را میخواهید.
دربارهٔ کیفیت، قیمت یا پایداری IranRouter دادهای نداریم و ادعایی نمیکنیم. این دو معیار را در ادامه با دادههای 1xAi نشان میدهیم.
جدول مقایسه: 1xAi و IranRouter
تفاوت اصلی این دو سرویس در مدل قیمتگذاری و بخش رایگان است؛ هر دو API سازگار با OpenAI و کیف پول تومانی دارند. جدول زیر فقط ردیفهایی را دارد که برای هر دو طرف منبع عمومی داریم. دادهٔ IranRouter از صفحهٔ اصلی و پرسشهای متداول خودش آمده و دربارهٔ چیزی که آنجا نیامده، حدس نزدهایم.
| ویژگی | 1xAi | IranRouter |
|---|---|---|
| base_url | https://1xai.ir/v1 |
` |
| پیشوند کلید | 1xai-… |
ir-… |
| روش پرداخت | کیف پول تومانی؛ پیشپرداخت با زرینپال، بدون کارت خارجی یا VPN | کیف پول تومانی |
| مدل قیمت | قیمت فهرست ارائهدهنده بهعلاوهٔ «کارمزد ۱۵ تا ۳۰٪ بسته به مدل»؛ ۱۰٪ مالیات هنگام شارژ | ادعای «همان نرخ رسمی ارائهدهنده» |
| خانوادهٔ مدلها | OpenAI، Claude، Gemini، DeepSeek | بیش از ۵۰ مدل از ۴+ ارائهدهنده (طبق صفحهٔ اصلی) |
| بخش رایگان | چرخ هدیه: اعتبار ۱۰۰ هزار تا ۱ میلیون تومان که منقضی نمیشود | سهمیهٔ رایگان روی دو مدل: gpt-4o-mini و gpt-6-luna |
مارکآپ ما برای هر مدل متفاوت است، پس چهار مدل زیر را جداگانه آوردهایم. قیمتها با نرخ روزانهٔ بازار بهروز میشوند و مرجع زندهٔ آنها فهرست مدلهای 1xAi است.
| مدل | مارکآپ | ورودی، هر ۱M توکن | خروجی، هر ۱M توکن | درخواست ۳۰ روز اخیر | موفقیت |
|---|---|---|---|---|---|
| gpt-5 | ۲۰٪ | ۴۰۳٬۹۵۰ تومان | ۳٬۲۳۱٬۶۰۰ تومان | ۱۳۸ | ۱۰۰٪ |
| gpt-4.1 | ۲۰٪ | ۶۴۶٬۳۲۰ تومان | ۲٬۵۸۵٬۲۸۰ تومان | ۱۰۵ | ۱۰۰٪ |
| deepseek-reasoner | ۲۰٪ | ۹۶٬۹۴۸ تومان | ۳۸۷٬۷۹۲ تومان | ۱۴۷ | ۱۰۰٪ |
| gpt-5.5 | ۱۵٪ | ۱٬۵۴۸٬۴۷۵ تومان | ۹٬۲۹۰٬۸۵۰ تومان | ۵۰۵ | ۱۰۰٪ |
آمار درخواست و موفقیت از ترافیک واقعی گیتوی خودمان در ۳۰ روز گذشته است و تعداد درخواستها کم است. gpt-5.5 با ۵۰۵ درخواست بیشترین ترافیک را داشته است.
چطور از IranRouter به 1xAi مهاجرت کنیم؟ (OpenAI و Anthropic SDK)
مهاجرت یعنی عوض کردن دو مقدار، کلید و base_url، و تطبیق نام مدلها؛ ساختار درخواستها همان قالب OpenAI میماند و لازم نیست کد را از نو بنویسید.
مراحل
- ساخت کلید: از داشبورد 1xai.ir کلید بسازید. کلیدها با
1xai-شروع میشوند و برای OpenAI، Claude، Gemini و DeepSeek یک کلید کافی است. پلیگراند وب هم اجازه میدهد پیش از کدنویسی مدلها را امتحان کنید. - جابهجایی با متغیر محیطی: کلید و آدرس را در کد ننویسید و از
LLM_API_KEYوLLM_BASE_URLبخوانید. برای بازگشت سریع کافی است مقدار قبلیLLM_BASE_URLرا برگردانید، بدون دیپلوی تازه. - تطبیق نام مدلها: نامهایی که در کدتان هست را با فهرست مدلها مقایسه کنید، چون مسیریابی بر اساس همین نام انجام میشود.
- تست کوچک: یک درخواست کوتاه بفرستید (نمونهها پایینتر است) و فقط بعد از موفق بودن آن ترافیک اصلی را جابهجا کنید.
- مقایسهٔ هزینه: برای همان مدل و همان حجم توکن، قیمت را در صفحهٔ قیمتها ببینید. کارمزد ۱۵ تا ۳۰٪ بسته به مدل است، قیمت تومانی با نرخ بازار هر صبح ساعت ۹ بهروز میشود و شارژ کیف پول ۱۰٪ مالیات بر ارزش افزوده دارد.
نمونهٔ Python با openai
pip install "openai>=1.0"
export LLM_API_KEY="1xai-xxxxxxxx"
export LLM_BASE_URL="https://1xai.ir/v1"
import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ["LLM_API_KEY"],
base_url=os.environ.get("LLM_BASE_URL", "https://1xai.ir/v1"),
)
resp = client.chat.completions.create(
model="gpt-4o-mini",
messages=[{"role": "user", "content": "سلام"}],
)
print(resp.choices[0].message.content)
خروجی مورد انتظار یک پاسخ کوتاه فارسی است، مثلاً «سلام! چطور میتوانم کمکتان کنم؟»؛ متن دقیق هر بار فرق میکند.
معادل curl
curl https://1xai.ir/v1/chat/completions \
-H "Authorization: Bearer $LLM_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"gpt-4o-mini","messages":[{"role":"user","content":"سلام"}]}'
پاسخ یک JSON است که متن مدل در choices[0].message.content قرار دارد.
نمونهٔ Anthropic SDK (شبهکد)
اندپوینت اختصاصی Claude روی https://1xai.ir/anthropic قرار دارد و با هدر x-api-key احراز هویت میکند. مسیر دقیق base_url را ما اینجا آزمایش و تأیید نکردهایم، پس این بلوک شبهکد است و پیش از استفاده باید آن را با مستندات تطبیق دهید.
# شبهکد: مسیر base_url را از مستندات تأیید کنید
import os
from anthropic import Anthropic
client = Anthropic(
api_key=os.environ["LLM_API_KEY"], # بهصورت x-api-key ارسال میشود
base_url="https://1xai.ir/anthropic",
)
msg = client.messages.create(
model="claude-sonnet-5",
max_tokens=256,
messages=[{"role": "user", "content": "سلام"}],
)
print(msg.content[0].text)
نکات مهاجرتی
- مدلهای نسل ۵ Claude (
claude-sonnet-5،claude-fable-5،claude-opus-5) پارامترهایtemperatureوtop_pو همچنین prefill پیام assistant را رد میکنند. اگر تنظیمات مشترکی در کدتان دارید، این موارد را برای این مدلها حذف کنید. - اگر از کش پرامپت Anthropic استفاده میکنید، از اندپوینت اختصاصی
/anthropicبروید، چون ویژگیهای مخصوص ارائهدهنده در آن حفظ میشود.
امنیت کلید و مدیریت هزینه در گیتوی
کلید API را فقط روی سرور و در متغیر محیطی نگه دارید، و برای محدود کردن هزینه مدل ارزانتر، سقف max_tokens و کش پرامپت را به کار بگیرید.
راهنمای عمومی نگهداری کلید
اینها توصیهٔ عمومی برای هر گیتوی هستند و مخصوص 1xAi نیستند:
- کلید را هرگز در کد فرانتاند یا مخزن Git نگذارید. مرورگر باید با بکاند شما حرف بزند و بکاند با گیتوی.
- اگر کلیدی در مخزن، لاگ یا چت عمومی دیده شد، همان لحظه آن را باطل کنید و کلید تازه بسازید.
- برای توسعه و تولید دو کلید جدا بسازید. کلیدها را در داشبورد 1xAi میسازید و نشت کلید آزمایشی به محیط تولید نمیرسد.
import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ["ONEXAI_API_KEY"],
base_url="https://1xai.ir/v1",
)
resp = client.chat.completions.create(
model="gpt-4o-mini",
messages=[{"role": "user", "content": "سلام"}],
max_tokens=300,
)
print(resp.choices[0].message.content)
آنچه در 1xAi صادق است
IP، کوکی و user-agent مشتری به ارائهدهندهٔ بالادستی نمیرسد، چون هر درخواست از زیرساخت 1xAi دوباره صادر میشود. پرداخت هم پیشپرداخت است، پس بدترین زیان ناشی از نشت کلید به موجودی کیف پول محدود میماند. هر شارژ ۱۰٪ مالیات میگیرد.
کنترل هزینه
کارمزد ۱۵ تا ۳۰٪ بسته به مدل است. مدلهای سبک مثل gpt-4o-mini و deepseek-v4-flash مارکآپ ۳۰٪ دارند و مدلهای پرچمدار مثل gpt-5.5 مارکآپ ۱۵٪. هزینهٔ نهایی فقط به درصد مارکآپ بستگی ندارد و به قیمت پایهٔ مدل، نوع درخواست و تعداد توکنهای ورودی و خروجی هم وابسته است، پس پیش از انتخاب، نرخ هر مدل را در جدول قیمت بسنجید.
- برای کارهای ساده مثل دستهبندی و خلاصهسازی، اول مدل سبک را امتحان کنید و کیفیت خروجی را بسنجید.
max_tokensرا متناسب با خروجی مورد انتظار بگذارید تا پاسخ بلند و پرهزینهٔ ناخواسته نگیرید.- کش پرامپت Anthropic را از اندپوینت اختصاصی
/anthropicمیتوان استفاده کرد. برای مقایسه، قیمت رسمی gpt-5.5 در فهرست ارائهدهنده ۵ دلار برای ورودی عادی و ۰٫۵ دلار برای ورودی کششده در هر یک میلیون توکن است. نرخ تومانی هر مدل، که با نرخ روزانهٔ بازار بهروز میشود، در جدول قیمت آمده است.
حسابهایی که مصرف کیف پولشان در ۳۰ روز اخیر از آستانهٔ مشخصی بالاتر برود، حداکثر ۱۵٪ مارکآپ میپردازند.
پژوهش و نگارش: CodeNest
سوالات متداول
router چیست
در این مقاله، router یعنی مسیریاب درخواستهای API، نه دستگاه شبکه یا مودم. چنین سرویسی با یک کلید و یک آدرس، درخواست را بر اساس نام مدل به ارائهدهندهٔ مناسب میرساند. در 1xAi هم یک کلید 1xai-… با آدرس https://1xai.ir/v1 مدلهای OpenAI، Anthropic، Google و DeepSeek را پوشش میدهد.
مهاجرت از IranRouter به 1xAi چقدر زمان میبرد؟
اگر کدتان با SDK سازگار با OpenAI نوشته شده، معمولاً فقط base_url را به https://1xai.ir/v1 و کلید قبلی را با کلید 1xai-… عوض میکنید. سپس نام مدلها را با https://1xai.ir/models مقایسه کنید، چون ناهماهنگی نام مدل رایجترین مانع مهاجرت است.
هزینه در 1xAi چگونه محاسبه میشود؟
قیمت رسمی هر ارائهدهنده بهاضافهٔ مارکآپ ما است و این مارکآپ کارمزد ۱۵ تا ۳۰٪ بسته به مدل دارد. قیمتهای تومانی هر روز صبح ساعت ۰۹:۰۰ به وقت تهران با نرخ دلار بازار هماهنگ میشوند، پس عدد ثابتی ندارند. پرداخت پیشپرداخت و تومانی از طریق زرینپال انجام میشود و هنگام شارژ کیف پول ۱۰٪ مالیات بر ارزش افزوده اضافه میشود. حداقل شارژ را در https://1xai.ir/api/topup/bounds ببینید. مثلاً deepseek-reasoner هر یک میلیون توکن ورودی ۹۶٬۹۴۸ و خروجی ۳۸۷٬۷۹۲ تومان است. قیمتهای زنده در صفحهٔ قیمتها هستند.
برای استفاده از 1xAi VPN یا کارت خارجی لازم است؟
خیر. با هر SDK استاندارد OpenAI از داخل ایران وصل میشوید. SDKهای Anthropic و Google GenAI هم بدون تغییر روی اندپوینتهای اختصاصی کار میکنند. هر درخواست از زیرساخت 1xAi دوباره صادر میشود و IP، کوکی و user-agent شما به ارائهدهندهٔ اصلی نمیرسد.
بعد از مهاجرت، با مدلهای Claude چه نکتهای را بررسی کنم؟
مدلهای نسل ۵ Claude، یعنی claude-sonnet-5، claude-fable-5 و claude-opus-5، پارامترهای temperature و top_p و prefill پیام دستیار را نمیپذیرند. اگر کد قبلی شما اینها را میفرستاد، پیش از انتقال حذفشان کنید. برای قابلیتهایی مثل کش پرامپت از اندپوینت اختصاصی /anthropic استفاده کنید.
1xAi
تیمِ 1xAi پروکسیِ تخصصیِ مدلهای OpenAI، Claude، Gemini و DeepSeek — و همچنین Grok، Kimi، GLM، Qwen، MiniMax و Hunyuan — برای کاربرانِ ایرانی را اداره میکند — از زیرساختِ شبکه تا صورتحسابِ تومانی. هرچه اینجا مینویسیم بر اساسِ تجربهٔ روزانه با APIهای OpenAI، Anthropic و Google و نیازهای واقعیِ توسعهدهندگانِ داخلِ ایران است.
