تنظیم API برای Janitor AI: پیکربندی دقیق proxy، فیلد به فیلد

Updated 2026-07-15

در تنظیمات API جنیتور AI (JanitorAI)، Proxy را انتخاب کنید و پنج فیلد را پر کنید: یک نام برای config، یک model ID دقیق مثل deepseek-v4-flash، endpoint کامل https://api.apisrouter.com/v1/chat/completions، API key شما، و یک custom prompt اختیاری. رایج‌ترین خطا paste کردن یک base URL است که در /v1 متوقف می‌شود، چون JanitorAI هرگز مسیر را برای شما اضافه نمی‌کند.

پاسخ سریع: پنج مقداری که JanitorAI می‌خواهد

تنظیم proxy در JanitorAI دقیقاً پنج فیلد دارد، و چهار تای آن‌ها copy-paste هستند. هر چتی را باز کنید، به API Settings بروید، Proxy را به عنوان نوع API انتخاب کنید، سپس یک پیکربندی جدید با این مقادیر بسازید:

Configuration name:  APIsRouter-deepseek        (any label, only you see it)
Model name:          deepseek-v4-flash       (exact model ID, no spaces)
Proxy URL:           https://api.apisrouter.com/v1/chat/completions
API key:             sk-...                  (paste with no leading/trailing spaces)
Custom prompt:       (optional, leave blank to use the character card as written)

هر فیلد واقعاً چه کاری انجام می‌دهد

custom prompt را کوتاه و مکانیکی نگه دارید. استفاده‌های خوب: محدود کردن طول پاسخ، اجباری کردن سوم‌شخص، ممنوع کردن action هایی که برای کاراکتر شما نوشته شده‌اند. استفاده‌های بد: paste کردن یک character sheet دوم یا یک راهنمای سبک هزار کلمه‌ای، که هر درخواست را متورم می‌کند و تاریخچه چت قدیمی‌تر را زودتر از context بیرون می‌راند. بعد از ذخیره، اگر build شما دکمه check proxy دارد از آن استفاده کنید، سپس یک پیام تست کوتاه ارسال کنید. اگر چیزی برنگشت، قبل از تغییر مدل‌ها جدول خطاهای زیر را بررسی کنید.

  • Configuration name: یک برچسب محلی. هرگز به API ارسال نمی‌شود. آن را بر اساس نام مدل بگذارید، مثل APIsRouter-deepseek یا APIsRouter-glm، تا بتوانید یک config ذخیره‌شده به ازای هر مدل نگه دارید و با دو tap جابه‌جا کنید.
  • Model name: به عنوان پارامتر model در هر درخواست ارسال می‌شود. باید دقیقاً همان ID باشد، حروف کوچک با خط تیره: deepseek-v4-flash کار می‌کند، «DeepSeek V4 Flash» کار نمی‌کند.
  • Proxy URL: endpoint کامل chat completions. JanitorAI درخواست‌ها را دقیقاً به URL ای که تایپ می‌کنید ارسال می‌کند. SillyTavern یک base URL که به /v1 ختم می‌شود می‌گیرد و خودش مسیر را اضافه می‌کند، و لیست مدل‌ها را به‌طور خودکار از /v1/models پر می‌کند. JanitorAI هیچ‌کدام از این‌ها را انجام نمی‌دهد، به همین دلیل URL ای که در /v1 متوقف می‌شود اینجا یک 404 برمی‌گرداند در حالی که در SillyTavern کاملاً درست کار می‌کند.
  • API key: فقط به عنوان header با فرمت Authorization: Bearer به proxy URL ارسال می‌شود. هرگز آن را در یک پیام چت یا اسکرین‌شات paste نکنید.
  • Custom prompt: یک دستورالعمل اختیاری در سطح system که کنار character card اضافه می‌شود، نه جایگزین آن. با هر پیام دوباره ارسال می‌شود، پس هر کلمه در کل طول عمر چت هزینه token ورودی دارد.

چه model name وارد کنید، و چرا

proxy URL و API key در همه config ها یکسان می‌مانند. تنها مقداری که به ازای هر مدل تغییر می‌کند model name است، پس حرکت عملی این است که یک پیکربندی ذخیره‌شده به ازای هر مدلی که واقعاً استفاده می‌کنید داشته باشید. برای roleplay، خانواده DeepSeek V4 تقریباً محبوب community در انجمن‌های JanitorAI است: پایبندی قوی به character-card با پایین‌ترین قیمت token در این جدول. GLM-5، Kimi K2.6 و MiMo انتخاب‌های مقرون‌به‌صرفه محکمی با سیاست‌هایی هستند که محتوای fiction را می‌پذیرند. Grok 4.5 یک انتخاب رایج برای تم‌های fiction تاریک‌تر یا بزرگسال است چون سیاست منتشرشده xAI صراحتاً آن‌ها را در fiction اجازه می‌دهد. Claude Sonnet 4.6 و Opus 4.7 بهترین نثر را در میان همه این‌ها می‌نویسند، اما سیاست استفاده Anthropic محتوای صریح را ممنوع می‌کند، پس Claude را به عنوان یک گزینه نویسندگی خلاقانه کاملاً SFW در نظر بگیرید. دو قانون پایه صرف‌نظر از مدل. JanitorAI یک پلتفرم 18+ است و ToS آن همچنان در حالت proxy اعمال می‌شود، و همین‌طور سیاست محتوای هر provider مدلی که به آن مسیردهی می‌کنید. انتخاب یک مدل با سیاست انعطاف‌پذیر برای fiction هیچ‌کدام از این‌ها را معلق نمی‌کند.

MiMo هم به عنوان یک انتخاب roleplay مقرون‌به‌صرفه در کاتالوگ هست؛ برای ID فعلی آن صفحه مدل‌ها را بررسی کنید.
Model name (دقیقاً paste کنید)نقاط قوت در JanitorAIیادداشت‌های سیاست محتوا
deepseek-v4-flashمحبوب community؛ بهترین ارزش برای چت‌های طولانیسیاست انعطاف‌پذیر برای محتوای fiction
deepseek-v4-proثبات و recall بهتر در چت‌های طولانیهمان خانواده، نرخ بالاتر
glm-5دیالوگ طبیعی با بودجه محدودمحتوای fiction را می‌پذیرد
kimi-k2.6context طولانی؛ انتخاب مقرون‌به‌صرفهمحتوای fiction را می‌پذیرد
grok-4.5صدای متمایز؛ context window با اندازه 500Kسیاست xAI تم‌های fiction بزرگسال را اجازه می‌دهد
claude-sonnet-4-6بهترین کیفیت نثر به ازای هر دلارطبق سیاست Anthropic فقط نویسندگی خلاقانه SFW
claude-opus-4-7عمیق‌ترین characterizationفقط نویسندگی خلاقانه SFW
gemini-3.5-flashگزینه همه‌کاره سریع رده میانیسیاست استاندارد Google اعمال می‌شود

ابتدا کلید را خارج از JanitorAI تست کنید

وقتی یک config شکست می‌خورد، سه مظنون دارید: URL، کلید و model name. سطح خطای JanitorAI نازک است، پس هر سه را یک‌جا با curl تست کنید قبل از اینکه دوباره به اپ برگردید:

curl https://api.apisrouter.com/v1/chat/completions \
  -H "Authorization: Bearer sk-YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "deepseek-v4-flash",
    "messages": [{"role": "user", "content": "Say ready."}],
    "max_tokens": 20
  }'

رفع خطاهای 401، 404 و model not found

اگر تست curl یک completion به فرمت JSON برمی‌گرداند، URL، کلید و model name شما همه معتبر هستند، و مشکل باقی‌مانده داخل JanitorAI است: معمولاً یک config ذخیره‌نشده، یک پیکربندی انتخاب‌شده قدیمی، یا یک افزونه مرورگر که درخواست را مسدود می‌کند. اگر curl شکست بخورد، status code به شما می‌گوید کدام فیلد را درست کنید.

خطادلیل معمولراه‌حل
401 Unauthorizedکلید با یک فاصله انتهایی یا line break paste شده، یک کلید ابطال‌شده، یا فیلدی که بعد از یک آپدیت اپ بی‌صدا خالی شدهکلید را بدون whitespace دوباره paste کنید، مطمئن شوید با sk- شروع می‌شود، config را دوباره ذخیره کنید
404 Not FoundProxy URL در /v1 متوقف می‌شود یا یک typo در مسیر دارداز endpoint کامل که به /chat/completions ختم می‌شود استفاده کنید
Model not found / invalid modeldisplay name به‌جای ID، حروف اشتباه، یا یک ID منسوخ‌شدهدقیقاً همان ID حروف کوچک را paste کنید، مثلاً deepseek-v4-flash؛ آن را با خروجی /v1/models بالا تطبیق دهید
Network error / no responseconfig ذخیره نشده، config اشتباه انتخاب‌شده، یا یک ad blocker که تداخل ایجاد می‌کنددوباره ذخیره کنید، hard-refresh بزنید، config فعال را تأیید کنید، یک browser profile تمیز امتحان کنید
پاسخ وسط جمله قطع می‌شودmax new tokens در تنظیمات generation در JanitorAI خیلی پایین تنظیم شدهmax new tokens را به 300 یا بیشتر افزایش دهید و regenerate کنید

یک ماه چت واقعاً چقدر هزینه دارد

JanitorAI با هر پیام دوباره character card به علاوه تاریخچه اخیر چت را ارسال می‌کند، پس token های ورودی بر صورت‌حساب غالب هستند. یک setup معمولی با یک card جزئی حدود 4,000 تا 6,000 token ورودی و 200 تا 400 token خروجی به ازای هر پیام دارد. جدول فرض می‌کند 5,000 ورودی و 300 خروجی در 1,000 پیام، که یک ماه سنگین برای بیشتر کاربران است. این‌ها را به عنوان تخمین در نظر بگیرید: اندازه card و عمق تاریخچه شما اعداد را جابه‌جا می‌کند. این‌ها نرخ‌های کاتالوگ APIsRouter هستند. APIsRouter یک gateway سازگار با OpenAI با صورت‌حساب پرداخت بر اساس مصرف و بدون اشتراک است؛ مدل‌های global با 20% تخفیف نسبت به قیمت رسمی فهرست شده‌اند و مدل‌های چینی زیر نرخ رسمی هستند. هیچ فرم ثبت‌نامی وجود ندارد: در صفحه top-up پرداخت کنید، کلید از طریق ایمیل می‌رسد، و اولین top-up شما یک بونوس 100% موجودی اضافه می‌کند. این باعث می‌شود یک تست $5 روی DeepSeek یا GLM یک آزمایش چند ماهه باشد نه یک تعهد ماهانه.

grok-4.5 بر اساس token با نرخ‌های flagship صورت‌حساب می‌شود؛ context window با اندازه 500K آن چت‌های خیلی طولانی را داخل یک پنجره نگه می‌دارد، اما حجم ورودی همچنان صورت‌حساب را هدایت می‌کند.
مدلقیمت به ازای 1M token (ورودی / خروجی)هزینه تخمینی به ازای 1,000 پیام
deepseek-v4-flash$0.126 / $0.252~$0.71
deepseek-v4-pro$0.3915 / $0.783~$2.19
glm-5$0.514 / $2.314~$3.26
gemini-3.5-flash$1.20 / $7.20~$8.16
grok-4.5$1.60 / $4.80~$9.44
claude-sonnet-4-6$2.40 / $12.00~$15.60
claude-opus-4-7$4.00 / $20.00~$26.00
gpt-5.5$4.00 / $24.00~$27.20

پرسش‌های پرتکرار

Janitor AI از چه API ای استفاده می‌کند؟

به طور پیش‌فرض JanitorAI روی مدل built-in خودش اجرا می‌شود. حالت Proxy اجازه می‌دهد به‌جای آن هر API چت completions سازگار با OpenAI را وصل کنید: شما endpoint URL کامل، یک model ID دقیق و یک API key ارائه می‌دهید، و JanitorAI چت‌های شما را به آنجا می‌فرستد.

چگونه یک API key برای Janitor AI بگیرم؟

از هر provider سازگار با OpenAI. کلیدها معمولاً شبیه sk- به همراه یک رشته طولانی هستند. کلید در فیلد API key قرار می‌گیرد و فقط به proxy URL ای که پیکربندی کرده‌اید ارسال می‌شود. برخی gateway ها کاملاً از ساخت حساب صرف‌نظر می‌کنند: شما اول پرداخت می‌کنید و کلید از طریق ایمیل می‌رسد.

چرا مدام خطای 401 در Janitor AI می‌گیرم؟

تقریباً همیشه خود کلید است: یک فاصله انتهایی یا line break ناشی از copy-paste، یک کلید ابطال‌شده یا تمام‌شده، یا یک config که بی‌صدا فیلد را از دست داده. بدون whitespace دوباره paste کنید و دوباره ذخیره کنید. اگر یک درخواست curl با همان کلید موفق شود، کلید مشکلی ندارد و config ذخیره‌شده قدیمی است.

بهترین مدل برای roleplay در Janitor AI چیست؟

اجماع community خانواده DeepSeek V4 را ترجیح می‌دهد: Flash برای ارزش، Pro برای ثبات چت طولانی. GLM-5 و Kimi K2.6 انتخاب‌های بودجه‌ای قوی هستند. Claude بهترین نثر را می‌نویسد اما سیاست Anthropic محتوای صریح را ممنوع می‌کند، پس فقط برای چت‌های خلاقانه SFW مناسب است.

آیا custom prompt جایگزین character card من می‌شود؟

خیر. یک دستورالعمل اضافی در سطح system است که کنار card در هر پیام ارسال می‌شود. چون مدام دوباره ارسال می‌شود، آن را زیر چند جمله نگه دارید: قوانین فرمت‌بندی، طول پاسخ، دیدگاه. custom prompt های طولانی هزینه ورودی را متورم می‌کنند و تاریخچه چت را کنار می‌زنند.

آیا استفاده از API در Janitor AI رایگان است؟

مدل built-in رایگان است با صف در ساعت‌های شلوغ. API های خارجی بر اساس token صورت‌حساب می‌شوند، اما مدل‌های سطح ورودی کسری از یک سنت به ازای هر پیام هزینه دارند، و برخی provider ها free tier هایی با rate limit سنگین ارائه می‌دهند. برای چت پایدار، مدل‌های ارزان پرداخت بر اساس مصرف از نظر قابلیت اطمینان از free tier ها بهتر هستند.