Aider को एक OpenAI-compatible API base पर point करें।

Updated 2026-07-29

Aider दो environment variables और एक model prefix के साथ OpenAI-compatible endpoints से connect होता है। OPENAI_API_BASE को https://api.apisrouter.com/v1 पर set करें, aider --model openai/<model-id> run करें, और pair programming sessions एक key के through route होते हैं जिसमें हर catalog model addressable है।

Quick answer: दो env vars और एक model prefix।

Aider का documented OpenAI-compatible path बिल्कुल यही है: अपने endpoint के साथ OPENAI_API_BASE export करें, उसकी key के साथ OPENAI_API_KEY export करें, और model name को openai/ से prefix करें ताकि Aider उस base से chat-completions protocol बोले। Prefix के बाद वाली string endpoint को pass through होती है, तो जो भी id gateway serve करता है वह fair game है, Claude और DeepSeek ids सहित। यह पूरा connection इतना ही है। Mac और Linux पर export use करें; Windows पर setx use करें और एक नई shell खोलें, क्योंकि setx current session को affect नहीं करता। यही values Aider की config file या एक .env file में भी रह सकती हैं अगर आप shell state की बजाय per-project configuration पसंद करते हैं।

export OPENAI_API_BASE=https://api.apisrouter.com/v1
export OPENAI_API_KEY=sk-APIsRouter-...

aider --model openai/claude-sonnet-4-6

Aider models और providers कैसे resolve करता है।

Aider (GitHub पर Aider-AI, लगभग 47K stars) original terminal pair programmer है: यह आपका git repo map करता है, chat में change requests लेता है, files सीधे edit करता है, और result commit करता है। इसके under the hood यह model calls को litellm के through route करता है, यही वजह है कि openai/ prefix matter करता है: litellm provider protocol चुनने के लिए prefix पढ़ता है, और openai/ का मतलब है "OPENAI_API_BASE जो कहता है उसके against chat-completions"। एक prefixless model name को उसकी spelling से provider-inferred किया जाता है, जो एक Claude id को Anthropic की native API और आपके ANTHROPIC_API_KEY की तरफ route कर देता है, आपके gateway की तरफ नहीं। पहले session से पहले जानने लायक एक Aider-specific behavior है: यह models की capabilities की अपनी registry रखता है, और एक model जिसे यह नहीं पहचानता वह warning trigger करता है "Unknown context window size and costs, using sane defaults", जिसके बाद Aider एक unlimited context window और zero cost मान लेता है। Session फिर भी काम करता है, लेकिन दो useful subsystems degrade होते हैं: token budgeting आपको real context limit से पहले warn नहीं कर सकती, और in-session cost display zero दिखाती है। Fix एक छोटी metadata file है, नीचे covered, और यह दो मिनट के लायक है। Aider एक session में एक से ज़्यादा model भी चलाता है। Main model coding करता है; एक weak model commit messages और chat summarization handle करता है; और architect mode में, एक अलग editor model plan apply करता है। हर एक same openai/ prefix accept करता है, तो तीनों एक key पर gateway के through route हो सकते हैं।

पूरा setup: connection plus model metadata।

Connection ऊपर दिए गए दो variables हैं। Polish है metadata register करना ताकि Aider gateway models को known quantities की तरह treat करे। अपनी home directory, git repo root, या working directory में .aider.model.metadata.json बनाएं (या --model-metadata-file pass करें), openai/ prefix सहित fully qualified name से keyed; litellm_provider field उस prefix से match होना चाहिए। max_input_tokens registered होने के साथ, Aider की context budgeting model की infinite मान लेने की बजाय उसकी real window के against काम करती है। एक दूसरी optional file, .aider.model.settings.yml, प्रति model behavior tune करती है: edit_format control करता है कि Aider code changes कैसे मांगता है (diff variants उन models के लिए जो उन्हें handle कर सकते हैं, whole-file उनके लिए जो नहीं कर सकते), और use_repo_map repo-context inclusion control करता है। Aider एक ऐसे model के लिए best edit format infer नहीं कर सकता जिसे वह नहीं पहचानता, तो उसे declare करना ही फर्क है एक model के mediocre दिखने और अपने level पर perform करने के बीच।

{
  "openai/claude-sonnet-4-6": {
    "max_input_tokens": 200000,
    "max_output_tokens": 64000,
    "litellm_provider": "openai",
    "mode": "chat"
  },
  "openai/deepseek-v4-pro": {
    "max_input_tokens": 128000,
    "max_output_tokens": 16000,
    "litellm_provider": "openai",
    "mode": "chat"
  }
}

Main, weak, और editor models चुनना।

Aider sessions लंबे और iterative होते हैं, जो यहां model comparison को असामान्य रूप से honest बनाता है: same feature branch को अलग-अलग दिनों दो main models के साथ run करें और फर्क इसमें दिखता है कि आप कितनी बार /undo type करते हैं। एक endpoint हर candidate को एक flag change बना देता है, और per-key usage हर experiment को price करता है।

  • Main model हर edit carry करता है। यह repo map पढ़ता है, आपकी files पर reason करता है, और diffs produce करता है, तो यहीं claude-sonnet-4-6 या gpt-5.5 belong करते हैं; diff syntax में गड़बड़ करने वाला model हर change पर आपका review time cost करता है।
  • Weak model (--weak-model) commit messages लिखता है और chat history summarize करता है। यह लगातार fire होता है और कभी code नहीं छूता, तो इसे कहीं और default होने देने की बजाय same gateway के through एक fast, low-priced id पर route करें।
  • Architect mode planning को editing से split करता है: main model plan करता है, editor model (--editor-model) apply करता है। एक strong reasoner planning करते हुए और kimi-k2.7-code जैसी coding-tuned id apply करते हुए एक ऐसी pairing है जिसे single-vendor keys express नहीं कर सकतीं।
  • deepseek-v4-pro और gpt-5.4 refactor-heavy work पर daily-driver main models के तौर पर benchmark करने लायक हैं, जहां प्रति-session token volume price difference को compound कर देता है।

जितना उपयोग उतना भुगतान · आधिकारिक मूल्य से कम

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

मॉडलआधिकारिक मूल्यहमारा मूल्य
Claude Sonnet 4.6$3.00 / $15.00 per M$2.40 / $12.00 per M
GPT-5.5$5.00 / $30.00 per M$4.00 / $24.00 per M
GPT-5.4$2.50 / $15.00 per M$2.00 / $12.00 per M
DeepSeek V4 Pro$0.43 / $0.87 per M$0.40 / $0.90 per M
Kimi K2.7 Code$0.95 / $4.00 per M$1.00 / $4.00 per M

Aider के लिए specific failure modes।

"Sane defaults" पर भरोसा करना। Unknown-model fallback unlimited context और zero cost मान लेता है। Practically, इसका मतलब है Aider एक लंबे session को model की real window से आगे तब तक बढ़ने देगा जब तक gateway request reject न कर दे या model चुपचाप early context खो न दे, और cost tracker पूरे समय कुछ नहीं दिखाता। Metadata register करें; दोनों problems गायब हो जाती हैं। openai/ prefix drop करना। इसके बिना, litellm model name से provider infer करता है। Claude ids Anthropic की API की तरफ route होती हैं और एक missing ANTHROPIC_API_KEY पर fail होती हैं, जो key problem जैसा लगता है जबकि यह prefix problem है। Metadata जो match नहीं करती। .aider.model.metadata.json में entries prefix सहित fully qualified name से keyed होती हैं, और litellm_provider को उस prefix से agree करना चाहिए। एक bare-id key या mismatched provider field silently apply नहीं होता, और आप बिना किसी error के defaults पर वापस आ जाते हैं। Windows shell state। setx variable केवल future shells के लिए लिखता है। जिस terminal में आपने अभी setx run किया वहीं aider run करना old environment use करता है, और resulting 401 एक shell-lifecycle issue है, credentials issue नहीं। गलत edit format। एक unregistered model को एक default edit format मिलता है जो शायद वह न हो जो वह सबसे अच्छा handle करता है। अगर एक strong model लगातार ऐसे edits produce करता है जिन्हें Aider reject करता है, तो model को code न कर पाने का निष्कर्ष निकालने से पहले .aider.model.settings.yml में edit_format explicitly set करें।

कौन Aider को एक gateway के through route करता है।

  • Daily Aider users जो चाहते हैं Claude, GPT, और DeepSeek --model के साथ प्रति session switchable हों, बिना per-model-family vendor account maintain किए।
  • Developers जो commit messages के लिए एक frontier main model को एक fast weak model के साथ pair करते हैं, दोनों एक key पर बिल्ड होते हुए प्रति-session visibility के साथ।
  • Architect-mode users जो same session में अलग-अलग vendors से एक planning model और एक editing model mix करते हैं।
  • Teams जो vendor-key checklist की बजाय engineers को एक secret के साथ onboard करती हैं, per-key usage को spend report के रूप में।
  • Developers जिनके पास किसी given vendor की billing तक access नहीं है। बिना card requirement वाला top-up based access per-provider sign-up dependency हटा देता है।

Endpoint verify करें और पहले session को debug करें।

Session शुरू करने से पहले gateway के models list करें; openai/ के बाद वाली id एक served id से exactly match होनी चाहिए, version suffixes सहित। पहले-session failures जल्दी sort हो जाती हैं। एक 401 का मतलब है OPENAI_API_KEY उस shell को visible नहीं है जिसने aider launch किया (Windows पर setx के बाद केवल नई shells; same terminal में echo check करें)। Gateway से एक model-not-found error एक id typo है। एक अलग vendor की key mention करने वाला error का मतलब है एक prefixless model name natively route हो गया। और startup पर unknown-model warning कोई error नहीं है, लेकिन यह आपका cue है कि metadata file एक लंबे session से पहले add करें, real context limit hit होने के बाद नहीं। Session में, Aider का अपना token और cost readout metadata registered होने के बाद accurate हो जाता है, और APIsRouter console endpoint side से same sessions दिखाता है: प्रति-request model, token counts, और spend। एक all-day pair programmer के लिए, वह per-key view इस बात का honest जवाब है कि Aider का एक हफ्ता actually कितना cost करता है।

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

अक्सर पूछे जाने वाले प्रश्न

मैं Aider को एक OpenAI-compatible endpoint से कैसे connect करूं?

OPENAI_API_BASE को endpoint URL के साथ और OPENAI_API_KEY को उसकी key के साथ export करें, फिर aider --model openai/<model-id> run करें। यह Aider का documented openai-compat path है; openai/ prefix इसके litellm layer को आपके base URL से chat-completions बोलने के लिए कहता है।

क्या Aider इस setup के through Claude या DeepSeek models run कर सकता है?

हां। openai/ के बाद वाली id endpoint को एक plain string के तौर पर pass through होती है, तो जो भी model gateway serve करता है वह काम करता है: aider --model openai/claude-sonnet-4-6 या openai/deepseek-v4-pro। Prefix रखें, वरना id provider-inferred हो जाती है और आपके base से दूर route हो जाती है।

"Unknown context window size and costs" warning का मतलब क्या है?

Aider model को नहीं पहचानता, तो यह एक unlimited context window और zero cost मान लेता है। Sessions काम करते हैं, लेकिन context budgeting और cost display गलत होती है। Model को .aider.model.metadata.json में register करें, इसके fully qualified openai/ name से keyed, और warning व दोनों problems चली जाती हैं।

क्या weak model और editor model भी gateway के through route होते हैं?

हां, अगर आप उन्हें वहां point करें: commit messages और summarization के लिए --weak-model openai/<fast-id>, और architect mode में --editor-model openai/<id>। तीनों slots prefix accept करते हैं, तो एक key एक cross-vendor main/weak/editor mix cover कर सकती है।

Aider अभी भी Anthropic key क्यों मांग रहा है?

एक model name बिना openai/ prefix के गया। litellm ने name से vendor infer किया और native Anthropic route try किया, जो ANTHROPIC_API_KEY चाहता है। Prefix add करें और request इसकी बजाय आपकी gateway key के साथ OPENAI_API_BASE पर जाती है।

क्या मुझे gateway models के लिए edit_format set करना चाहिए?

उन models के लिए जिन्हें Aider नहीं पहचानता, हां। .aider.model.settings.yml में edit_format control करता है कि Aider code changes कैसे request करता है, और frontier models आमतौर पर diff format के साथ अपना best काम करते हैं। एक unknown model को defaults पर छोड़ना एक strong model को असल से कमज़ोर दिखा सकता है।