AutoGPT را روی یک base URL سفارشی OpenAI اجرا کنید.

Updated 2026-07-30

AutoGPT Classic مقدار OPENAI_API_BASE_URL را از .env خود می‌خواند و مستقیم آن را به‌عنوان base_url به کلاینت OpenAI پاس می‌دهد. آن را به https://api.apisrouter.com/v1 اشاره دهید، یک کلید تنظیم کنید، و ترافیک SMART_LLM و FAST_LLM agent از طریق یک endpoint متری واحد مسیردهی می‌شود.

پاسخ سریع: دو خط در .env.

.env.template در AutoGPT Classic مقدار OPENAI_API_BASE_URL را به‌عنوان "URL سفارشی برای API OpenAI، مفید برای اتصال به backend های سفارشی" مستند می‌کند، و کد provider آن را مستقیم به کلاینت سیم‌کشی می‌کند: کلاس OpenAICredentials مقدار api_base را از آن متغیر می‌خواند و آن را به‌عنوان base_url پاس می‌دهد. پس override یعنی uncomment کردن یک خط و تنظیم کلید: OPENAI_API_BASE_URL روی https://api.apisrouter.com/v1 و OPENAI_API_KEY روی کلید gateway شما. یک نکته دامنه قبل از هر چیز: این روی AutoGPT Classic اعمال می‌شود، agent خودمختاری که زیر classic/original_autogpt در repo زندگی می‌کند. AutoGPT Platform جدیدتر repo (سازنده تصویری) credential های مدل را به ازای هر block از طریق backend خودش مدیریت می‌کند، و این متغیر محیطی روش پیکربندی آن نیست.

OPENAI_API_BASE_URL=https://api.apisrouter.com/v1
OPENAI_API_KEY=sk-APIsRouter-...
SMART_LLM=gpt-5.4
FAST_LLM=gpt-5.4-mini

چطور AutoGPT Classic فراخوانی‌های مدل را مسیردهی می‌کند.

AutoGPT (Significant-Gravitas در GitHub، حدود ۱۸۵ هزار ستاره، پرستاره‌ترین repo agent موجود) پیشگام حلقه خودمختار بود: agent برنامه‌ریزی می‌کند، یک اقدام انتخاب می‌کند، آن را اجرا می‌کند، نتیجه را ارزیابی می‌کند، و تکرار می‌کند تا هدف انجام شود یا بودجه نه. Classic مصرف مدل خود را در دو اسلات تقسیم می‌کند. SMART_LLM نوبت‌های استدلال اصلی agent را حمل می‌کند، و FAST_LLM کار سبک‌تر را انجام می‌دهد؛ پیش‌فرض‌ها در config به‌عنوان مقادیر enum زندگی می‌کنند، قابل‌override از محیط. مکانیک مسیردهی برای پروژه‌ای به این قدمت غیرمعمول تمیز است: OpenAICredentials.api_base از OPENAI_API_BASE_URL به‌صورت UserConfigurable است، و get_api_access_kwargs() آن را به‌عنوان base_url به کلاینت OpenAI می‌دهد. هر درخواست provider-OpenAI ای که agent می‌سازد، نوبت‌های برنامه‌ریزی، تصمیم‌های tool-use، خلاصه‌ها، به هر host ای که آن متغیر نام می‌برد می‌رود. محدودیتی که AutoGPT را از ابزارهای freeform جدا می‌کند: SMART_LLM و FAST_LLM به‌عنوان enum های ModelName تایپ شده‌اند، اعتبارسنجی‌شده در برابر رجیستری مدل کامپایل‌شده داخل agent، نه رشته‌های آزاد. رجیستری build های اخیر سری GPT-5 تا gpt-5.4 را در کنار خانواده‌های 4.1، 4o، و o-series پوشش می‌دهد، اما قانون عملی انتخاب از نام‌هایی است که enum چک‌اوت شما واقعاً حاوی آن است. سپس gateway دقیقاً همان id را دریافت می‌کند، پس id باید در کاتالوگ هم وجود داشته باشد؛ gpt-5.4 و gpt-5.4-mini امروز هر دو طرف را برآورده می‌کنند.

راه‌اندازی کامل: .env در دایرکتوری درست، مدل‌ها از رجیستری.

.env.template را داخل classic/original_autogpt به .env کپی کنید، چهار مقدار را uncomment و تنظیم کنید، و agent را از آن دایرکتوری اجرا کنید. .env نسبت به چیدمان کاری agent کلاسیک لود می‌شود، پس یک فایل زیبا پیکربندی‌شده در ریشه repo هیچ کاری برای آن نمی‌کند. انتخاب مدل یک جست‌وجوی رجیستری است، نه یک passthrough. تنظیم SMART_LLM روی یک id که enum حاوی آن نیست، اعتبارسنجی را در startup شکست می‌دهد، قبل از هر درخواستی، که دست‌کم با صدای بلند شکست می‌خورد. نتیجه این است که id های Claude اصلاً از این مسیر قابل‌آدرس‌دهی نیستند: Classic یک provider native جدای Anthropic (ANTHROPIC_API_KEY) برای آن نام‌های enum دارد، و آن provider OPENAI_API_BASE_URL را نمی‌خواند. اگر هدف شما یک کلید از طریق یک endpoint است، هر دو اسلات را روی نام‌های رجیستری OpenAI که gateway سرویس می‌دهد نگه دارید. انضباط بودجه همچنان اعمال می‌شود. حلقه خودمختار به مصرف token در burst های بدون‌ناظر مشهور است، و مسیردهی مجدد آن این را تغییر نمی‌دهد؛ آن را قابل‌اندازه‌گیری می‌کند. تنظیمات بودجه خود Classic همچنان ارزش تنظیم دارند، و نمای usage هر-کلید دفتر بیرونی به ازای هر اجرا را به شما می‌دهد.

cd classic/original_autogpt
cp .env.template .env
# edit .env:
#   OPENAI_API_BASE_URL=https://api.apisrouter.com/v1
#   OPENAI_API_KEY=sk-APIsRouter-...
#   SMART_LLM=gpt-5.4
#   FAST_LLM=gpt-5.4-mini
./autogpt.sh run   # or: poetry run autogpt run

انتخاب SMART_LLM و FAST_LLM.

مقایسه صادقانه به‌ازای-هر-هدف است، نه هر فراخوانی: به agent همان هدف را زیر دو انتخاب SMART_LLM بدهید و کل token و کیفیت نتیجه را در usage log مقایسه کنید. agent های خودمختار تنها workload ای هستند که مدل قوی‌تر مرتباً در هزینه کل برنده می‌شود.

  • SMART_LLM قضاوت agent است. تصمیم می‌گیرد در هر تکرار حلقه بعد چه کند، و یک تصمیم بد فقط یک فراخوانی را هدر نمی‌دهد، یک زیردرخت از فراخوانی‌های هدررفته می‌زاید. gpt-5.4 امروز قوی‌ترین تطابق رجیستری-و-کاتالوگ برای این اسلات است.
  • FAST_LLM حجم مکانیکی را جذب می‌کند. gpt-5.4-mini فراخوانی‌های پشتیبان حلقه را در بخش کوچکی از قیمت اسلات smart نگه می‌دارد، که اهمیت دارد چون اجراهای خودمختار همه‌چیز را ضرب می‌کنند.
  • وسوسه اجرای FAST_LLM به‌عنوان اسلات smart برای صرفه‌جویی پول را مقاومت کنید: حلقه خودمختار کیفیت تصمیم را انباشته می‌کند، پس یک برنامه‌ریز ضعیف‌تر معمولاً در کل token بیشتر از آنچه در هر فراخوانی صرفه‌جویی می‌کند هزینه دارد.
  • نام‌های رجیستری با چک‌اوت تغییر می‌کنند. بعد از pull کردن یک نسخه جدید، دوباره چک کنید نام‌های پیکربندی‌شده شما هنوز اعتبارسنجی می‌شوند؛ تغییرنام enum در startup با یک خطای واضح شکست می‌خورد، که بهتر از یک fallback بی‌صدا است.

پرداخت بر اساس مصرف · پایین‌تر از قیمت رسمی

Selected models are priced below official list prices. Exact input, output, cache, and per-request prices are shown for each model.

مدلقیمت رسمیقیمت ما
GPT-5.4$2.50 / $15.00 per M$2.00 / $12.00 per M
GPT-5.4 mini$0.75 / $4.50 per M$0.60 / $3.60 per M
GPT-5.5$5.00 / $30.00 per M$4.00 / $24.00 per M
GPT-5.6 Sol$5.00 / $30.00 per M$4.00 / $24.00 per M

حالت‌های شکست مختص AutoGPT.

تله نام-متغیر. سه ابزار مختلف سه املای مختلف استفاده می‌کنند: mem0 مقدار OPENAI_BASE_URL را می‌خواند، Aider مقدار OPENAI_API_BASE را می‌خواند، و AutoGPT Classic مقدار OPENAI_API_BASE_URL را می‌خواند. حافظه عضلانی از ابزار دیگر متغیر اشتباه را تنظیم‌شده رها می‌کند، AutoGPT آن را بی‌صدا نادیده می‌گیرد، و درخواست‌ها همچنان به api.openai.com روی هر چیزی که OPENAI_API_KEY نگه می‌دارد جریان می‌یابند. ظاهرنشدن درخواست‌ها در usage log gateway شما یعنی اول این را چک کنید. رد enum در startup. SMART_LLM یا FAST_LLM تنظیم‌شده روی یک id خارج از رجیستری کامپایل‌شده اعتبارسنجی را قبل از اجرای agent شکست می‌دهد. این رفتار درست است، اما افرادی که از ابزارهای freeform می‌آیند جایی که هر رشته‌ای فوروارد می‌شود را غافلگیر می‌کند؛ خطا یعنی «یک نام رجیستری انتخاب کن»، نه «endpoint خراب است». نام‌های Claude به‌صورت native مسیردهی می‌شوند. نام‌های enum مربوط به Anthropic از طریق provider خود Anthropic و ANTHROPIC_API_KEY می‌روند، و OPENAI_API_BASE_URL را دور می‌زنند. اگر انتظار داشتید هر درخواست در یک usage log باشد و فقط بخشی را می‌بینید، ترافیک گمشده روی یک مسیر provider native است. .env اشتباه. agent کلاسیک .env دایرکتوری خودش را لود می‌کند. یک فایل در ریشه repo، یا یک export شل که توسط یک مقدار .env کهنه سایه‌دار شده، حالت‌های نیمه-پیکربندی‌شده گیج‌کننده تولید می‌کند. چهار مقدار را در یک جا نگه دارید: classic/original_autogpt/.env. انتظارات Platform. block های AutoGPT Platform credential ها را در backend خودشان مدیریت می‌کنند؛ تنظیم این متغیر محیطی آن‌ها را مسیردهی مجدد نمی‌کند. مسیر این صفحه مربوط به Classic است.

چه کسانی AutoGPT را از طریق یک gateway مسیردهی می‌کنند.

  • توسعه‌دهندگانی که Classic را برای آزمایش‌های خودمختار زنده می‌کنند و اشتهای token بدنام حلقه را از همان اجرای اول روی یک دفتر متری و هر-کلید می‌خواهند.
  • اهل‌فن‌هایی که اهداف طولانی بدون‌ناظر اجرا می‌کنند، جایی که دید هر-درخواست به اینکه agent واقعاً با بودجه‌اش چه کرده به‌اندازه کل اهمیت دارد.
  • تیم‌هایی که یک endpoint را در سرتاسر ابزارهای زیاد استاندارد می‌کنند، جایی که AutoGPT یک .env دیگر اشاره‌کرده به همان کلید است نه یک حساب جدا.
  • کاربرانی که قضاوت gpt-5.4 را با حجم gpt-5.4-mini جفت می‌کنند، قیمت‌گذاری‌شده به ازای هر token بدون اشتراکی متصل به هیچ‌کدام از اسلات‌ها.
  • توسعه‌دهندگان بدون دسترسی به صورت‌حساب یک vendor خاص. دسترسی مبتنی بر شارژ بدون الزام کارت وابستگی ثبت‌نام هر-provider را حذف می‌کند.

endpoint را تأیید کنید و اولین اجرا را عیب‌یابی کنید.

تأیید کنید gateway دقیقاً id هایی که در SMART_LLM و FAST_LLM گذاشته‌اید را سرویس می‌دهد؛ agent آن رشته‌ها را عیناً می‌فرستد. نردبان اجرای اول: یک خطای اعتبارسنجی که مدل شما را در startup نام می‌برد یعنی id در رجیستری build شما نیست، پس یک نام رجیستری دیگر انتخاب کنید. یک ۴۰۱ یعنی OPENAI_API_KEY در .env خود agent کلاسیک کلید gateway نیست. یک خطای model-not-found از gateway یعنی نامی که از رجیستری انتخاب کردید در کاتالوگ نیست؛ دو طرف را هم‌تراز کنید. و اجرایی که کار می‌کند اما هرگز در usage log ظاهر نمی‌شود یعنی متغیر base URL غلط‌املا شده یا در فایل اشتباه است، و ترافیک به host پیش‌فرض می‌رود. وقتی حلقه در حال اجراست، نمای هر-درخواست را در طول هدف اول تماشا کنید نه بعد از آن. agent های خودمختار رفتار token خود را در چند دقیقه اول آشکار می‌کنند، و گرفتن یک حلقه فراری زودهنگام بیشتر از هر تفاوت قیمت هر-token می‌ارزد.

curl -s https://api.apisrouter.com/v1/models \
  -H "Authorization: Bearer $OPENAI_API_KEY" | head -50

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

کدام متغیر محیطی یک base URL سفارشی برای AutoGPT تنظیم می‌کند؟

OPENAI_API_BASE_URL، در .env خود agent کلاسیک. در .env.template به‌عنوان یک URL سفارشی برای اتصال به backend های سازگار با OpenAI مستند شده، و provider آن را به‌عنوان base_url به کلاینت OpenAI پاس می‌دهد. به املا توجه کنید: با متغیرهایی که ابزارهای دیگر استفاده می‌کنند فرق دارد.

آیا AutoGPT Classic می‌تواند مدل‌های Claude را از طریق این base URL اجرا کند؟

خیر. SMART_LLM و FAST_LLM در برابر رجیستری مدل کامپایل‌شده AutoGPT اعتبارسنجی می‌شوند، و نام‌های Anthropic از طریق provider جدای native Anthropic مسیردهی می‌شوند، که OPENAI_API_BASE_URL را نمی‌خواند. برای یک کلید از طریق یک endpoint، هر دو اسلات را روی نام‌های رجیستری OpenAI که gateway سرویس می‌دهد نگه دارید.

SMART_LLM و FAST_LLM را می‌توان روی چه چیزی تنظیم کرد؟

نام‌هایی از enum ModelName در چک‌اوت شما: build های اخیر سری GPT-5 تا gpt-5.4 به‌علاوه خانواده‌های 4.1، 4o، و o-series را پوشش می‌دهند. رشته‌های ناشناخته اعتبارسنجی را در startup شکست می‌دهند. gpt-5.4 و gpt-5.4-mini انتخاب‌های محکمی هستند که هم در رجیستری و هم در کاتالوگ وجود دارند.

آیا این پیکربندی روی AutoGPT Platform هم اعمال می‌شود؟

خیر. Platform (نیمه سازنده تصویری repo) credential های مدل را به ازای هر block در backend خودش مدیریت می‌کند. OPENAI_API_BASE_URL مربوط به پیکربندی AutoGPT Classic است، agent خودمختار زیر classic/original_autogpt.

آیا وقتی base URL تنظیم شد هنوز به یک حساب OpenAI نیاز دارم؟

خیر. با OPENAI_API_BASE_URL اشاره‌کرده به gateway، OPENAI_API_KEY کلید gateway شما را نگه می‌دارد و هیچ درخواستی به host های OpenAI نمی‌رود. نام‌های متغیر تاریخی‌اند؛ credential ها هر چیزی است که endpoint پشت base URL می‌پذیرد.

یک اجرای AutoGPT چقدر هزینه دارد؟

کم‌پیش‌بینی‌پذیرترین workload در این فهرست است: حلقه تعداد فراخوانی خودش را تصمیم می‌گیرد، پس هزینه با دشواری هدف و اینکه agent چقدر برنامه‌اش را بازبینی می‌کند مقیاس می‌گیرد. کنترل‌های بودجه agent را تنظیم کنید، نمای usage هر-کلید را زنده در طول اجراهای اولیه تماشا کنید، و کل token هر-هدف را به‌عنوان معیار در نظر بگیرید.