LangChain met een eigen base-URL

Maak ChatOpenAI aan met deze base_url en je sleutel, en LangChain draait Claude-, GPT- en Grok-modellen via je AIGROW-sleutel, zowel in chains als in agents.

Heb je al een code? Wissel hem in via API-toegang en maak daarna een sleutel aan.

Python, met langchain-openai

from langchain_openai import ChatOpenAI

llm = ChatOpenAI(
    model="claude-opus-5.5",
    base_url="https://aigrow.gg/v1",
    api_key="ag_your_key_here",
    use_responses_api=False,
)

print(llm.invoke("Reply with the word ready").content)

Vervang ag_your_key_here door een sleutel uit API-toegang.

Waar de instelling staat

Python, elk model
pip install -U langchain-openai
Python, Claude via ChatAnthropic
pip install -U langchain-anthropic
JavaScript
npm install @langchain/openai @langchain/anthropic @langchain/core

Claude via ChatAnthropic

ChatAnthropic voegt zelf /v1/messages toe, dus base_url is https://aigrow.gg zonder iets erachter. Stel max_tokens in op de lengte die je wilt; bij een id die LangChain niet kent, valt het terug op een eigen standaardwaarde.

from langchain_anthropic import ChatAnthropic

llm = ChatAnthropic(
    model="claude-opus-5.5",
    base_url="https://aigrow.gg",
    api_key="ag_your_key_here",
    max_tokens=1024,
)

In JavaScript

Dezelfde twee modellen in LangChain.js: configuration.baseURL bij ChatOpenAI, anthropicApiUrl bij ChatAnthropic.

import { ChatOpenAI } from '@langchain/openai';
import { ChatAnthropic } from '@langchain/anthropic';

const gpt = new ChatOpenAI({
  model: 'gpt-6-astra',
  apiKey: 'ag_your_key_here',
  configuration: { baseURL: 'https://aigrow.gg/v1' },
});

const claude = new ChatAnthropic({
  model: 'claude-opus-5.5',
  apiKey: 'ag_your_key_here',
  anthropicApiUrl: 'https://aigrow.gg',
});

Of met omgevingsvariabelen

ChatOpenAI leest OPENAI_API_BASE en daarna OPENAI_BASE_URL. ChatAnthropic leest ANTHROPIC_API_URL en daarna ANTHROPIC_BASE_URL. Een base_url in de code gaat boven al deze variabelen.

export OPENAI_API_BASE=https://aigrow.gg/v1
export OPENAI_API_KEY=ag_your_key_here
export ANTHROPIC_BASE_URL=https://aigrow.gg
export ANTHROPIC_API_KEY=ag_your_key_here

Welk model je gebruikt

Neem de id precies over zoals hier geschreven.

Claude Opus 5.5claude-opus-5.5
De standaard in elk blok op deze pagina en het goedkoopste Claude-model hier per verzonden en ontvangen token. Context: 1.000.000 tokens.
Grok 4.7grok-4.7
De laagste outputprijs hier. De context is half zo groot als die van de Claude-modellen. Context: 500.000 tokens.
GPT-6 Astragpt-6-astra
Voor een GPT-model. Het kost per token evenveel als Fable en meer dan Opus. Context: 1.050.000 tokens.
Claude Fable 5.1claude-fable-5.1
Kost meer per token dan Opus. Vergelijk de twee op het codeerklassement voordat je overstapt. Context: 1.000.000 tokens.

In de prijslijst staat elke id met het bijbehorende tegoedtarief, de prijzen van de Claude API bevatten de lijstprijzen en het codeerklassement vergelijkt de modellen op codeeropdrachten.

Controleer of het werkt

Eerst de sleutel zelf, daarna LangChain ermee.

De sleutel

Vraag de modellijst op. Daarvoor is een geldige sleutel nodig en het kost niets.

curl https://aigrow.gg/v1/models -H "Authorization: Bearer ag_your_key_here"

Bij een werkende sleutel krijg je de lijst terug:

{
  "object": "list",
  "data": [
    { "id": "claude-opus-5.5", "object": "model", ... },
    { "id": "claude-fable-5.1", "object": "model", ... },
    { "id": "gpt-6-astra", "object": "model", ... },
    { "id": "claude-sonnet-5.5", "object": "model", ... },
    { "id": "gpt-6.1-sol", "object": "model", ... },
    { "id": "grok-4.7", "object": "model", ... },
    ...
  ],
  "has_more": false
}

LangChain

Sla het blok op als check.py, vul je sleutel in en voer het uit.

python check.py

Een werkende configuratie toont het antwoord:

ready

Als het misgaat

Eerst de foutmeldingen van LangChain, daarna de antwoorden die het endpoint aan elke tool geeft.

404 zodra tools of reasoning worden toegevoegd
ChatOpenAI heeft de aanroep naar de Responses API verplaatst, wat het uit zichzelf doet bij ingebouwde tools, reasoning-instellingen en sommige GPT-modellen. Met use_responses_api=False, zoals in het blok, blijft elke aanroep op chat completions.
404 bij ChatAnthropic
base_url eindigt op /v1. ChatAnthropic voegt zelf /v1/messages toe, dus het moet https://aigrow.gg zijn.
De sleutel wordt naar OpenAI of Anthropic gestuurd
De base-URL is niet bij het model aangekomen. Geef base_url rechtstreeks mee aan ChatOpenAI of ChatAnthropic; die gaat boven elke omgevingsvariabele.
Mijn tool meldt 401 of een authenticatiefout
De sleutel ontbreekt of is verkeerd getypt. Kopieer hem opnieuw via API-toegang op het dashboard en zorg dat hij als sleutel wordt verstuurd, niet als modelnaam. Een ingetrokken sleutel geeft dezelfde fout: maak een nieuwe aan en vervang hem.
Ik krijg 402 of een melding over tegoed
Je saldo is op. Open API-toegang op het dashboard, wissel een code in of koop een nieuw pakket, en het volgende verzoek gaat gewoon door. Verder hoeft er niets te veranderen.
Je ziet 404 of Unknown model
Het model moet er een zijn die het endpoint aanbiedt, bijvoorbeeld claude-opus-5.5. De eigen schrijfwijzen van de aanbieder werken ook (claude-opus-5-5, anthropic/claude-opus-5.5), maar een id met datum of een model buiten de catalogus wordt geweigerd voordat het verzoek wordt doorgestuurd, en er wordt niets in rekening gebracht. Vraag GET /v1/models op met je sleutel voor de actuele lijst, of lees de id's in de prijslijst.
Verzoeken worden geweigerd met 429
De capaciteit van het endpoint wordt door alle kopers gedeeld: ongeveer 20 verzoeken per minuut en 4 tegelijk. Elke 429 bevat een retry-after-header, en de SDK's van OpenAI en Anthropic wachten zo lang en proberen het daarna zelf opnieuw. Wacht in je eigen lus het aantal genoemde seconden of verlaag je gelijktijdigheid.
Het model is op dit moment niet beschikbaar
Een 404 met de melding dat het model nu niet beschikbaar is, betekent dat het even uitgevallen is bij de upstream-aanbieder. Het ligt dus niet aan je sleutel of saldo. Probeer het zo opnieuw of stuur het verzoek naar een ander model.
Ik krijg een 502 of 503
Een tijdelijke storing upstream of in de configuratie, die niet in rekening wordt gebracht op je saldo. Probeer het verzoek opnieuw; blijft het mislukken, neem dan via de winkel contact met ons op, dan zoeken we het uit.

Wat niet werkt via AIGROW

  • Ingebouwde OpenAI-tools zoals webzoeken, bestanden doorzoeken en code interpreter, die ChatOpenAI naar de Responses API stuurt. Tools die je koppelt met bind_tools draaien in je eigen code en werken wel.

  • Live zoeken op het web binnen het model. Een websearchtool die met een verzoek wordt meegestuurd, wordt beantwoord vanuit wat het model al weet, zonder live resultaten. Een tool die pagina's ophaalt op je eigen machine werkt nog wel.

  • Elk endpoint buiten deze drie: /v1/messages, /v1/chat/completions en /v1/models. De Responses API, embeddings en tokentelling geven 404.

  • Routervelden zoals models, route, provider en plugins. Ze worden weggelaten, zodat een verzoek altijd naar het ene model gaat dat erin staat.

Wat een maand LangChain kost

LangChain wordt per token gefactureerd tegen de tegoedtarieven in de prijslijst. Een agent stuurt bij elke stap het hele gesprek opnieuw mee, dus een lange taak kost meer dan het laatste bericht doet vermoeden. Het activiteitenlogboek bij API-toegang laat zien wat elk verzoek kostte.

Vragen over LangChain en een eigen API

Hoe stel ik base_url in bij LangChain ChatOpenAI?
Geef base_url="https://aigrow.gg/v1" en api_key met je sleutel mee wanneer je ChatOpenAI aanmaakt. openai_api_base is een andere naam voor dezelfde instelling, en OPENAI_API_BASE of OPENAI_BASE_URL in de omgeving werken ook.
Hoe stel ik een base-URL in voor ChatAnthropic?
Geef base_url="https://aigrow.gg" mee in Python, of anthropicApiUrl in JavaScript. Laat /v1 weg, want de client voegt zelf /v1/messages toe. ANTHROPIC_BASE_URL in de omgeving werkt ook.
Waarom use_responses_api=False instellen?
ChatOpenAI schakelt uit zichzelf over op de Responses API bij ingebouwde tools, reasoning-instellingen en sommige GPT-modellen, terwijl het endpoint alleen chat completions aanbiedt. Met False blijft elke aanroep daarop.
Kan ChatOpenAI Claude-modellen draaien?
Ja. Het endpoint biedt Claude-modellen ook aan via het OpenAI-protocol, dus model="claude-opus-5.5" werkt in ChatOpenAI met dezelfde base_url. Met ChatAnthropic stuur je ze via het Anthropic-protocol.

Bronnen: LangChain ChatOpenAI · LangChain ChatAnthropic reference · LangChain ChatOpenAI for JavaScript. Geraadpleegd op 21 oktober 2026.

Een andere tool instellen

  • Claude CodeAnthropic-protocol

    Vier omgevingsvariabelen, in de shell of in settings.json.

  • ClineOpenAI-protocol

    De OpenAI Compatible-provider, vier velden in het instellingenscherm.

  • Roo CodeOpenAI-protocol

    De OpenAI Compatible-provider, dezelfde velden als bij Cline.

  • Kilo CodeOpenAI-protocol

    Een eigen provider op het tabblad Providers; de modellijst vult zichzelf.

  • ContinueOpenAI-protocol

    Een models-item in config.yaml, met provider openai en een apiBase.

  • AiderOpenAI-protocol

    OPENAI_API_BASE en OPENAI_API_KEY, daarna openai/ vóór de model-ID.

  • OpenCodeOpenAI-protocol

    Een provider-blok in opencode.json en de sleutel via /connect.

  • ZedAnthropic- en OpenAI-protocollen

    Een Anthropic-compatibele provider voor Claude, een OpenAI-compatibele voor GPT en Grok.

  • GooseOpenAI-protocol

    De OpenAI-provider met OPENAI_HOST, of een eigen providerbestand.

  • Vercel AI SDKAnthropic- en OpenAI-protocollen

    De OpenAI Compatible-provider voor elk model, of de Anthropic-provider voor Claude.

  • OpenAI Agents SDKOpenAI-protocol

    Je eigen AsyncOpenAI-client, omgezet naar chat completions, met tracing uit.

In de API-gids vind je de SDK's, curl, de endpoints en de limieten.

Plak het blok en LangChain draait op je tegoed.

Koop een tegoedpakket, wissel de code uit je e-mail in via API-toegang, maak een sleutel aan en zet die op de plek van ag_your_key_here.