Wijs Aider naar een OpenAI-compatibele API-base.

Updated 2026-07-29

Aider maakt verbinding met OpenAI-compatibele endpoints via twee omgevingsvariabelen en een modelvoorvoegsel. Zet OPENAI_API_BASE op https://api.apisrouter.com/v1, voer aider --model openai/<model-id> uit, en pair-programmingsessies routeren via één sleutel met elk catalogusmodel aanspreekbaar.

Snel antwoord: twee omgevingsvariabelen en een modelvoorvoegsel.

Het gedocumenteerde OpenAI-compatibele pad van Aider is precies dit: exporteer OPENAI_API_BASE met je endpoint, exporteer OPENAI_API_KEY met de bijbehorende sleutel, en zet openai/ vóór de modelnaam zodat Aider het chat-completions-protocol spreekt tegen die base. De string na het voorvoegsel wordt doorgegeven aan het endpoint, dus elk ID dat de gateway bedient is toegestaan, Claude- en DeepSeek-ID's inbegrepen. Dat is de hele verbinding. Gebruik op Mac en Linux export; gebruik op Windows setx en open een nieuwe shell, aangezien setx de huidige sessie niet beïnvloedt. Dezelfde waarden kunnen ook in het configuratiebestand van Aider of een .env-bestand staan, als je configuratie per project verkiest boven shellstatus.

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

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

Hoe Aider modellen en providers oplost.

Aider (Aider-AI op GitHub, ruim 47K sterren) is de originele terminal-pairprogrammer: het brengt je git-repo in kaart, neemt wijzigingsverzoeken op in de chat, bewerkt bestanden rechtstreeks en committeert het resultaat. Onder de motorkap routeert het modelaanroepen via litellm, en daarom telt het voorvoegsel openai/: litellm leest het voorvoegsel om een providerprotocol te kiezen, en openai/ betekent "chat completions tegen wat OPENAI_API_BASE ook zegt." Een modelnaam zonder voorvoegsel wordt in plaats daarvan providertechnisch afgeleid uit de spelling, wat een claude-ID naar de native API van Anthropic en je ANTHROPIC_API_KEY routeert in plaats van naar jouw gateway. Er is één Aider-specifiek gedrag dat het waard is om te kennen vóór je eerste sessie: het houdt een eigen register bij van modelmogelijkheden, en een model dat het niet herkent, triggert de waarschuwing "Unknown context window size and costs, using sane defaults", waarna Aider een onbeperkt contextvenster en nulkosten aanneemt. De sessie werkt nog steeds, maar twee nuttige subsystemen verslechteren: tokenbudgettering kan je niet waarschuwen voordat je de echte contextlimiet doorschiet, en de kostenweergave in de sessie toont nul. De oplossing is een klein metadatabestand, hieronder behandeld, en het is de twee minuten waard. Aider draait bovendien meer dan één model per sessie. Het main-model doet het coderen; een weak-model verzorgt commitberichten en het samenvatten van de chat; en in architect-modus past een apart editor-model het plan toe. Elk accepteert hetzelfde voorvoegsel openai/, zodat alle drie via de gateway op één sleutel kunnen routeren.

Volledige instelling: verbinding plus modelmetadata.

De verbinding is de twee bovenstaande variabelen. De verfijning is het registreren van metadata zodat Aider gateway-modellen als bekende grootheden behandelt. Maak .aider.model.metadata.json aan in je home-directory, de root van de git-repo, of de werkdirectory (of geef --model-metadata-file mee), met als sleutel de volledig gekwalificeerde naam inclusief het voorvoegsel openai/; het veld litellm_provider moet overeenkomen met dat voorvoegsel. Met max_input_tokens geregistreerd, werkt de contextbudgettering van Aider tegen het echte venster van het model in plaats van aan te nemen dat het oneindig is. Een tweede optioneel bestand, .aider.model.settings.yml, stemt gedrag per model af: edit_format bepaalt hoe Aider om codewijzigingen vraagt (diff-varianten voor modellen die daarmee overweg kunnen, whole-file voor modellen die dat niet kunnen), en use_repo_map bepaalt de opname van repo-context. Aider kan het beste edit-formaat niet afleiden voor een model dat het niet herkent, dus het declareren ervan is het verschil tussen een model dat middelmatig oogt en een model dat op zijn niveau presteert.

{
  "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- en editor-modellen kiezen.

Aider-sessies zijn lang en iteratief, wat modelvergelijking hier ongewoon eerlijk maakt: draai dezelfde featurebranch met twee main-modellen op verschillende dagen, en het verschil komt tot uiting in hoe vaak je /undo typt. Eén endpoint maakt van elke kandidaat een flag-wijziging, en gebruik per sleutel prijst elk experiment.

  • Het main-model draagt elke wijziging. Het leest de repo map, redeneert over je bestanden en produceert diffs, dus hier hoort claude-sonnet-4-6 of gpt-5.5 thuis; een model dat de diff-syntax verknoeit, kost je reviewtijd bij elke wijziging.
  • Het weak-model (--weak-model) schrijft commitberichten en vat de chatgeschiedenis samen. Het vuurt constant af en raakt nooit code aan, dus route het via dezelfde gateway naar een snel, laagdrempelig geprijsd ID in plaats van het elders te laten terugvallen op de standaard.
  • Architect-modus splitst plannen van bewerken: het main-model plant, het editor-model (--editor-model) past toe. Een sterke redeneerder die plant terwijl een codeergestemd ID zoals kimi-k2.7-code toepast, is een koppeling die sleutels van één enkele leverancier niet kunnen uitdrukken.
  • deepseek-v4-pro en gpt-5.4 zijn het waard om te benchmarken als dagelijkse main-modellen bij refactor-zwaar werk, waar het tokenvolume per sessie het prijsverschil laat oplopen.

Betaal naar gebruik · onder officiële prijzen

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

ModelOfficiële prijsOnze prijs
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

De faalmodi specifiek voor Aider.

Vertrouwen op de "sane defaults." De fallback voor onbekende modellen neemt onbeperkte context en nulkosten aan. In de praktijk betekent dat dat Aider een lange sessie gewillig laat doorgroeien voorbij het echte venster van het model, totdat de gateway het verzoek weigert of het model stilletjes de vroege context verliest, terwijl de kostentracker de hele tijd niets toont. Registreer metadata; beide problemen verdwijnen. Het voorvoegsel openai/ weglaten. Zonder dat leidt litellm de provider af uit de modelnaam. Claude-ID's routeren naar de API van Anthropic en falen bij een ontbrekende ANTHROPIC_API_KEY, wat aanvoelt als een sleutelprobleem terwijl het een voorvoegselprobleem is. Metadata die niet overeenkomt. Vermeldingen in .aider.model.metadata.json zijn gesleuteld op de volledig gekwalificeerde naam, inclusief voorvoegsel, en litellm_provider moet overeenstemmen met dat voorvoegsel. Een kale ID-sleutel of een niet-overeenkomend providerveld wordt stilletjes niet toegepast, en je zit weer op de standaardwaarden zonder dat een foutmelding dat zegt. Windows-shellstatus. setx schrijft de variabele alleen voor toekomstige shells. Aider draaien in dezelfde terminal waarin je zojuist setx hebt uitgevoerd, gebruikt de oude omgeving, en de resulterende 401 is een shell-levenscyclusprobleem, geen credentialsprobleem. Het verkeerde edit-formaat. Een niet-geregistreerd model krijgt een standaard edit-formaat dat misschien niet is wat het het beste aankan. Als een sterk model steeds wijzigingen produceert die Aider weigert, stel dan edit_format expliciet in .aider.model.settings.yml in voordat je concludeert dat het model niet kan coderen.

Wie routeert Aider via een gateway.

  • Dagelijkse Aider-gebruikers die Claude, GPT en DeepSeek per sessie wisselbaar willen met --model, zonder een leveranciersaccount per modelfamilie te onderhouden.
  • Developers die een frontier-main-model koppelen aan een snel weak-model voor commitberichten, allebei gefactureerd op één sleutel met zichtbaarheid per sessie.
  • Architect-modusgebruikers die een planningsmodel en een bewerkingsmodel van verschillende leveranciers mixen in dezelfde sessie.
  • Teams die engineers onboarden met één secret in plaats van een checklist met leverancierssleutels, met gebruik per sleutel als uitgavenrapport.
  • Developers zonder toegang tot de facturering van een bepaalde leverancier. Toegang op basis van opwaarderen zonder kaartvereiste verwijdert de afhankelijkheid van aanmelding per provider.

Verifieer het endpoint en debug de eerste sessie.

Lijst de modellen van de gateway op voordat je begint; het ID na openai/ moet exact overeenkomen met een bediend ID, versiesuffixen inbegrepen. Mislukkingen bij de eerste sessie zijn snel te ordenen. Een 401 betekent dat OPENAI_API_KEY niet zichtbaar is voor de shell die aider heeft gestart (op Windows alleen nieuwe shells na setx; controleer met echo in dezelfde terminal). Een model-not-found-fout van de gateway is een tikfout in het ID. Een foutmelding die de sleutel van een andere leverancier noemt, betekent dat een modelnaam zonder voorvoegsel native is gerouteerd. En de waarschuwing over een onbekend model bij het opstarten is geen fout, maar wel je signaal om het metadatabestand toe te voegen vóór een lange sessie, niet nadat er een de echte contextlimiet raakt. In de sessie wordt de eigen token- en kostenweergave van Aider accuraat zodra de metadata is geregistreerd, en de APIsRouter-console toont dezelfde sessies vanaf de endpointkant: model per verzoek, tokenaantallen en uitgaven. Voor een pairprogrammer die de hele dag draait, is die weergave per sleutel het eerlijke antwoord op wat een week Aider daadwerkelijk kost.

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

Veelgestelde vragen

Hoe verbind ik Aider met een OpenAI-compatibel endpoint?

Exporteer OPENAI_API_BASE met de endpoint-URL en OPENAI_API_KEY met de bijbehorende sleutel, en voer dan aider --model openai/<model-id> uit. Dit is het gedocumenteerde openai-compat-pad van Aider; het voorvoegsel openai/ vertelt de litellm-laag om chat completions te spreken tegen je base URL.

Kan Aider Claude- of DeepSeek-modellen draaien via deze instelling?

Ja. Het ID na openai/ wordt als platte string doorgegeven aan het endpoint, dus elk model dat de gateway bedient werkt: aider --model openai/claude-sonnet-4-6 of openai/deepseek-v4-pro. Houd het voorvoegsel aan, anders wordt het ID providertechnisch afgeleid en weg van je base gerouteerd.

Wat betekent de waarschuwing "Unknown context window size and costs"?

Aider herkent het model niet, dus neemt het een onbeperkt contextvenster en nulkosten aan. Sessies werken, maar de contextbudgettering en de kostenweergave kloppen niet. Registreer het model in .aider.model.metadata.json, gesleuteld op zijn volledig gekwalificeerde openai/-naam, en de waarschuwing en beide problemen verdwijnen.

Routeren het weak-model en het editor-model ook via de gateway?

Ja, als je ze daarnaartoe wijst: --weak-model openai/<fast-id> voor commitberichten en samenvatten, en --editor-model openai/<id> in architect-modus. Alle drie de slots accepteren het voorvoegsel, dus één sleutel kan een main/weak/editor-mix van verschillende leveranciers dekken.

Waarom vraagt Aider nog steeds om een Anthropic-sleutel?

Er is een modelnaam ingevoerd zonder het voorvoegsel openai/. litellm leidde de leverancier af uit de naam en probeerde de native Anthropic-route, die om ANTHROPIC_API_KEY vraagt. Voeg het voorvoegsel toe en het verzoek gaat in plaats daarvan naar OPENAI_API_BASE met je gatewaysleutel.

Moet ik edit_format instellen voor gateway-modellen?

Voor modellen die Aider niet herkent, ja. edit_format in .aider.model.settings.yml bepaalt hoe Aider om codewijzigingen vraagt, en frontier-modellen presteren over het algemeen het beste met een diff-formaat. Een onbekend model op de standaardwaarden laten, kan een sterk model slechter doen lijken dan het is.