Richte Continue auf einen benutzerdefinierten OpenAI-kompatiblen Endpoint aus.

Updated 2026-07-29

Continue konfiguriert Modelle deklarativ in config.yaml. Setze provider auf openai, richte apiBase auf https://api.apisrouter.com/v1 aus, und jeder Modellblock, den du hinzufügst, wird in der Extension auswählbar — mit chat-, edit- und apply-Rollen, die sich pro Modell unter einem Key zuweisen lassen.

Kurzantwort: ein Modellblock mit provider openai und apiBase.

Continues openai-Provider akzeptiert ein apiBase-Override, den dokumentierten Weg für jeden OpenAI-kompatiblen Server. Füge config.yaml einen Modellblock hinzu mit provider auf openai, apiBase auf https://api.apisrouter.com/v1, der exakten Modell-ID und deinem Key. Das Modell erscheint im Modell-Selector von Continue, und jede Anfrage, die es stellt, geht über Standard-/v1/chat/completions an das Gateway. Derselbe Mechanismus deckt so viele Modelle ab, wie du willst: ein Block pro ID, alle mit derselben apiBase und demselben Key. Weil Continue das model-Feld als reinen String behandelt, sitzen IDs verschiedener Anbieter, Claude neben GPT neben DeepSeek, nebeneinander in einer Config-Datei.

models:
  - name: Claude Sonnet 4.6
    provider: openai
    model: claude-sonnet-4-6
    apiBase: https://api.apisrouter.com/v1
    apiKey: sk-APIsRouter-...
    roles:
      - chat
      - edit
      - apply

Wie Continue Arbeit auf Modelle verteilt: Rollen.

Continue (continuedev auf GitHub, rund 34K Stars) ist ein IDE-Agent für VS Code und JetBrains, und seine prägende Konfigurationsidee sind Rollen (roles). Jeder Modellblock trägt eine roles-Liste, und Continue leitet jede Art von Arbeit an ein Modell mit dieser Rolle weiter: chat für das Konversations-Panel und Agent-Arbeit, edit für Inline-Code-Transformationen, apply für das Einfügen vorgeschlagener Änderungen in Dateien, dazu autocomplete, embed und rerank für ihre jeweiligen Subsysteme. Das ist der Hebel, der einen Multi-Vendor-Endpoint speziell in Continue interessant macht. Chat will das stärkste Modell, das du rechtfertigen kannst; edit und apply sind kürzere, mechanischere Aufrufe, bei denen eine schnelle Mid-Tier-ID reicht. Mit einer apiBase, die jeden Anbieter bedient, ist dieser Split reines YAML: eine Claude-ID hält chat, eine schnelle ID hält edit und apply, ein Key für alle zusammen. Eine ehrliche Grenze: autocomplete ist ein Fill-in-the-Middle-Workload, und Continues autocomplete-Rolle ist auf Modelle zugeschnitten, die für dieses Completion-Format trainiert wurden, nicht für Chat. Ein Chat-Completions-Gateway ist der richtige Ort für chat-, edit- und apply-Traffic; belasse autocomplete auf dem FIM-fähigen Setup, das du heute nutzt, statt diese Rolle einem Chat-Modell zuzuweisen und gute Vorschläge zu erwarten.

Vollständiges Setup: mehrere Modelle, aufgeteilte Rollen, deklarierter Kontext.

Die Config-Datei liegt unter ~/.continue/config.yaml. Der name jedes Blocks ist das im Selector angezeigte Label; model ist die exakte ID, die das Gateway bereitstellt. defaultCompletionOptions.contextLength deklariert das Kontextfenster des Modells, und Continue nutzt diesen Wert, um zu entscheiden, wie viel Konversations- und Dateikontext in eine Anfrage gepackt wird — bleibt er bei einem Long-Context-Modell auf einem konservativen Standard, wird früher abgeschnitten, als nötig wäre. Capabilities werden meist automatisch erkannt, aber für IDs, die Continue nicht kennt, kannst du sie explizit angeben: capabilities: [tool_use] teilt dem Agent-Modus mit, dass er mit diesem Modell Tools steuern darf. Zu Keys: Das YAML akzeptiert einen literalen apiKey, was für eine lokale Datei, die nie deine Maschine verlässt, in Ordnung ist. Continue unterstützt außerdem eine Secrets-Template-Syntax der Form ${{ secrets.APISROUTER_API_KEY }} für Configs, die über den Hub verwaltet werden, wodurch der literale Wert aus geteilten Dateien herausgehalten wird. Nutze die Form, die zu dem passt, wo deine Config liegt.

models:
  - name: Claude Sonnet 4.6
    provider: openai
    model: claude-sonnet-4-6
    apiBase: https://api.apisrouter.com/v1
    apiKey: ${{ secrets.APISROUTER_API_KEY }}
    roles: [chat, edit]
    capabilities: [tool_use]
    defaultCompletionOptions:
      contextLength: 200000

  - name: Claude Haiku 4.5
    provider: openai
    model: claude-haiku-4-5-20251001
    apiBase: https://api.apisrouter.com/v1
    apiKey: ${{ secrets.APISROUTER_API_KEY }}
    roles: [edit, apply]

  - name: GPT-5.5
    provider: openai
    model: gpt-5.5
    apiBase: https://api.apisrouter.com/v1
    apiKey: ${{ secrets.APISROUTER_API_KEY }}
    roles: [chat]

Modelle pro Rolle wählen.

Die Rollenzuweisung ist zugleich der Vergleichsmechanismus. Halte edit und apply fest, tausche den chat-Block eine Woche lang zwischen zwei Kandidaten-IDs, und lass die Per-Key-Nutzungsansicht den Unterschied an deiner echten Arbeitslast bepreisen. Jeder Kandidat ist drei Zeilen YAML gegen denselben Endpoint.

  • chat trägt die Agent-Loop und die langen Konversationen: Dateien lesen, Edits planen, Fragen über echten Kontext beantworten. Ein Spitzenmodell (claude-sonnet-4-6, gpt-5.5) gehört hierhin, und hier fließen die meisten deiner Token.
  • edit übernimmt Transformationen von markiertem Code. Aufrufe sind kürzer und mechanischer als bei chat, sodass eine schnelle ID wie claude-haiku-4-5-20251001 oder gpt-5.4-mini die Edit-Loop zügig hält, ohne die Ergebnisse zu verschlechtern.
  • apply fügt vorgeschlagene Änderungen in Dateien ein. Es ist die mechanischste der drei Rollen und der klarste Kandidat für das günstigste noch taugliche Modell, deepseek-v4-flash eingeschlossen.
  • embed und rerank treiben das Codebase-Retrieval an und sind eigenständige Subsysteme mit eigenen Modellformen; den Chat-Traffic auf ein Gateway zu verlagern erfordert nicht, sie anzufassen.

Nutzungsbasiert · unter offiziellem Preis

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

ModellOffizieller PreisUnser Preis
Claude Sonnet 4.6$3.00 / $15.00 per M$2.40 / $12.00 per M
Claude Haiku 4.5 20251001$1.00 / $5.00 per M$0.80 / $4.00 per M
GPT-5.5$5.00 / $30.00 per M$4.00 / $24.00 per M
GPT-5.4 mini$0.75 / $4.50 per M$0.60 / $3.60 per M
DeepSeek V4 Flash$0.14 / $0.28 per M$0.10 / $0.30 per M

Die Fehlerbilder, die speziell bei Continue auftreten.

apiBase ohne /v1. Continue hängt Routenpfade wie /chat/completions an die von dir angegebene Basis an, also ist https://api.apisrouter.com/v1 korrekt und der nackte Host nicht. Ein 404-artiger Fehler bei der ersten Nutzung ist fast immer das. YAML-Einrückung verformt die Config lautlos. models ist eine Liste von Blöcken, und eine falsch eingerückte apiBase hängt sich an den falschen Eintrag oder an gar keinen. Wenn ein Modell funktioniert und sein Nachbar nicht authentifizieren kann, vergleiche zuerst deren Einrückung, bevor du das Gateway verdächtigst. Der Legacy-Completions-Schalter. Der openai-Provider nutzt standardmäßig /chat/completions, was das Gateway bereitstellt. useLegacyCompletionsEndpoint: true leitet einen Block auf die alte /completions-Route um; ist das bei einem Block gesetzt, funktionieren chat-förmige Anfragen für dieses Modell nicht mehr. Responses-API-Erwartungen bei GPT-Serien-IDs. Manche Continue-Pfade können bei bestimmten OpenAI-Modellnamen versuchen, OpenAIs neueres Responses-Protokoll zu nutzen. Ein Chat-Completions-Gateway bedient dieses Protokoll nicht; wenn ein GPT-Serien-Block routenförmig fehlschlägt, setze useResponsesApi: false auf diesem Block, damit er bei /chat/completions bleibt. Veraltete contextLength. Continue packt Kontext gemäß defaultCompletionOptions.contextLength, nicht gemäß dem, was das Modell akzeptieren könnte. 32k bei einem 200k-Modell zu deklarieren, bricht nichts sichtbar; es verwirft nur lautlos Kontext, den du bezahlt hast. Deklariere, was das Modell tatsächlich unterstützt.

Wer Continue über ein Gateway routet.

  • IDE-first-Entwickler, die Claude, GPT und DeepSeek in VS Code oder JetBrains auswählbar wollen, ohne einen Credential-Satz pro Anbieter zu pflegen.
  • Teams, die Rollen nach Kostenprofil aufteilen: Spitzen-chat, schnelles edit und apply, jede Rolle mit der passenden ID, alles über eine Oberfläche abgerechnet.
  • Engineers, die Chat-Modelle an echter Arbeit vergleichen. Jeder Kandidat ist ein YAML-Block gegen dieselbe apiBase, keine neue Provider-Integration.
  • Team-Leads, die das Onboarding standardisieren: eine config.yaml-Vorlage plus ein APISROUTER_API_KEY ersetzt eine Pro-Vendor-Key-Checkliste, und die Per-Key-Nutzung zeigt, was jeder Platz ausgibt.
  • Entwickler ohne Zugang zur Abrechnung eines bestimmten Anbieters. Guthabenbasierter Zugang ohne Kartenpflicht entfernt die Sign-up-Abhängigkeit pro Provider.

Den Endpoint verifizieren und die erste Anfrage debuggen.

Liste auf, was das Gateway bereitstellt, bevor du das YAML bearbeitest; die von /v1/models zurückgegebenen IDs sind exakt die Strings, zu denen deine model-Felder passen müssen. Fehler bei der ersten Anfrage folgen einem Muster. Ein 401 bedeutet, dass der Key in diesem konkreten Block falsch ist oder eine Secrets-Referenz nicht aufgelöst wurde; prüfe den fehlgeschlagenen Block statt der Datei im Allgemeinen, denn Keys pro Block bedeuten Fehler pro Block. Ein „Model not found"-Fehler ist ein Tippfehler in der ID, Versions-Suffix eingeschlossen. Ein routenförmiger Fehler bei einer GPT-Serien-ID deutet auf den oben behandelten Responses-API-Schalter hin. Und wenn die Extension gar keine benutzerdefinierten Modelle zeigt, wurde das YAML nicht geparst; validiere zuerst die Dateistruktur. Sobald Anfragen fließen, zeigt die APIsRouter-Konsole Modell, Token-Zahlen und Ausgaben pro Anfrage. Weil Continue Arbeit auf Rollen aufteilt, ist die Nutzungsansicht auch die erste Stelle, an der du das Verhältnis von Chat- zu Edit-Traffic bei deiner echten Arbeitslast siehst — die Zahl, die dir sagt, wo die Modellwahl wirklich zählt.

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

Häufige Fragen

Kann Continue Claude- und DeepSeek-Modelle über den openai-Provider nutzen?

Ja. Der openai-Provider mit gesetzter apiBase ist der dokumentierte Weg für jeden OpenAI-kompatiblen Server, und Continue leitet das model-Feld als reinen String weiter. Jede vom Endpoint bereitgestellte ID funktioniert, Claude- und DeepSeek-IDs eingeschlossen, ein Modellblock pro ID.

Teilen sich alle meine Modellblöcke eine apiBase und einen Key?

Jeder Block deklariert seine eigene apiBase und seinen eigenen apiKey, sie können also Werte teilen oder nicht. Mehrere Blöcke auf denselben Endpoint mit demselben Key auszurichten ist normal, und YAML-Anker lassen dich das Paar einmal deklarieren und pro Block referenzieren.

Welche Rollen sollten über das Gateway geroutet werden?

chat, edit und apply, die alle /v1/chat/completions sprechen. Autocomplete ist ein Fill-in-the-Middle-Workload, der auf Completion-Format-Modellen aufbaut, also belasse diese Rolle auf deinem bestehenden FIM-Setup. embed und rerank sind eigenständige Subsysteme und brauchen keine Änderungen.

Warum funktioniert ein Modellblock, während ein anderer 401 zurückgibt?

Keys sind in Continue pro Block, ein funktionierender Nachbar beweist also nichts über den fehlschlagenden Block. Prüfe den apiKey-Wert oder die Secrets-Referenz des fehlschlagenden Blocks sowie seine Einrückung: ein falsch eingerückter Key hängt sich an den falschen Listen-Eintrag.

Was macht useLegacyCompletionsEndpoint und brauche ich es?

Es leitet einen Modellblock von /chat/completions auf die alte /completions-Route um. Für ein Chat-Completions-Gateway willst du das nicht; lass es ungesetzt. Es existiert für ältere, reine Completion-Server.

Verändert contextLength das Verhalten tatsächlich?

Ja. Continue packt Konversations- und Dateikontext gemäß defaultCompletionOptions.contextLength. Wird es bei einem Long-Context-Modell zu niedrig angesetzt, verwirft das lautlos Kontext; setze es auf das, was das Modell tatsächlich unterstützt.