OpenAI-compatible API: wissel je client in drie regels
Wissel je client in drie regels: wijzig de base URL en API-sleutel en behoud je bestaande code. Deze drop-in openai compatible api biedt een ongecensureerde llm api-ervaring met transparante prijsstelling per token.
- Basis-URL
- https://api.openaicompatibleapi.com/v1
- Model
- ongecensureerd
Vereisten: OpenAI SDK installeren
Zorg ervoor dat je ontwikkelomgeving de officiële OpenAI SDK heeft geïnstalleerd voor je voorkeurstaal voordat je verzoeken doet. Dit is de standaardmanier waarop ontwikkelaars communiceren met een openai compatible api, wat zorgt voor consistente typen en foutafhandeling. Voor Python gebruik je pip install openai. Voor Node.js voer je uit npm install openai. Deze bibliotheken verwerken de onderliggende HTTP-details, zodat jij je kunt concentreren op het doorgeven van prompts en het ontvangen van tekstuitvoer.
Base URL en API-sleutel configureren
Het voordeel is dat je slechts twee configuratiewaarden hoeft aan te passen. Wijs je client aan op onze base URL: https://api.openaicompatibleapi.com/v1. Genereer je API-sleutel op de aanmeldpagina; deze wordt direct na registratie getoond zonder creditcard. Stel de base_url en api_key in bij je clientinitialisatie. Dit maakt ons een directe gpt-api-alternatief voor je bestaande projecten zonder logica te herschrijven.
Maak je eerste verzoek
Stuur een standaard chat completion-verzoek met de model-ID uncensored. Dit model is een open-weight large language model dat is afgestemd op het geven van antwoorden zonder inhoudelijke weigeringen voor wettelijk volwassen gebruik. Het is geen GPT, Claude of een ander model van een andere leverancier. Je kunt de connectiviteit onmiddellijk testen met een eenvoudige tekstprompt. De respons retourneert de gegenereerde tekst in het veld content.
curl https://api.openaicompatibleapi.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Write a blunt product review of a cheap VPN."}]
}'
Streaming responses inschakelen
Voor een betere gebruikerservaring kun je streaming inschakelen om tokens te ontvangen zodra ze worden gegenereerd. Stel stream=True in in je verzoek. De SDK zal chunks opleveren zodra ze aankomen, waardoor je partiële resultaten direct kunt weergeven. Dit is vooral nuttig voor lange contextvensters tot 100.000 tokens. Streaming werkt identiek aan standaard OpenAI-clients, waardoor compatibiliteit met je bestaande foutafhandelingslogica behouden blijft.
stream = client.chat.completions.create(
model="uncensored",
messages=[{"role": "user", "content": "Tell the story in second person."}],
stream=True,
)
for chunk in stream:
if chunk.choices and chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="", flush=True)
Tool calling gebruiken (function calling)
Onze API ondersteunt gestructureerde tool calling. Definieer je functies in de parameter tools, en het model zal tool calls retourneren in de respons. Je kunt deze tools vervolgens uitvoeren en de resultaten terugsturen naar het model voor verder redeneren. Deze functie werkt met elke OpenAI-compatible client die de standaard tool calling-formaat ondersteunt. Het is ideaal voor het bouwen van agents of het automatiseren van workflows zonder een complexe llm proxy te beheren.
from openai import OpenAI
client = OpenAI(base_url="https://api.openaicompatibleapi.com/v1", api_key="YOUR_KEY")
resp = client.chat.completions.create(
model="uncensored",
messages=[{"role": "user", "content": "Summarise this thread without softening it."}],
)
print(resp.choices[0].message.content)
Beschikbare modellen controleren
Query het GET /v1/models endpoint om beschikbare modellen te controleren. Je ziet het uncensored model in de lijst staan. Dit bevestigt dat je API-sleutel en base URL correct zijn geconfigureerd. Je kunt dit endpoint ook gebruiken om authenticatieproblemen te debuggen. Als het endpoint een lijst teruggeeft, is je verbinding met de ai api voor ontwikkelaars actief. Er worden geen andere modellen aangeboden, wat de configuratie eenvoudig houdt.
Node.js
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.openaicompatibleapi.com/v1", apiKey: process.env.API_KEY });
const resp = await client.chat.completions.create({
model: "uncensored",
messages: [{ role: "user", content: "Draft a villain monologue for my game." }],
});
console.log(resp.choices[0].message.content);Technische specificaties
Alle echte limieten en functies van de API op één plek — controleer ze voordat je opwaardeert.
| Onderdeel | Waarde |
|---|---|
| API-formaat | OpenAI-compatibel: elke OpenAI-SDK werkt — vervang alleen base URL en sleutel |
| Endpoints | POST /v1/chat/completions · GET /v1/models |
| Model-ID | uncensored |
| Authenticatie | Authorization: Bearer YOUR_KEY |
| Base URL | https://api.openaicompatibleapi.com/v1 |
| Streaming | ja — server-sent events; het laatste deel bevat het tokenverbruik |
| JSON-modus | response_format: {"type": "json_object"} |
| Function calling | ja — tools, tool_choice; antwoorden bevatten tool_calls, ook bij streaming; resultaten als role: tool |
| Parameters | temperature, top_p, stop, seed, presence_penalty, frequency_penalty |
| Max. uitvoer | tot de rest van het venster van 100.000 tokens; max_tokens optioneel (geen aparte limiet) |
| Contextvenster | 100.000 tokens (invoer + uitvoer) |
| Responsheaders | X-Request-Id, X-Balance-USD, X-RateLimit-Limit-Requests, X-RateLimit-Limit-Concurrency |
| Rate limit | 300 verzoeken per minuut per sleutel |
| Verzoekgrootte | tot 8 MB |
| Gelijktijdige verzoeken | tot 8 tegelijk per sleutel |
| Prijs | $0,25 per 1 mln invoertokens · $1,00 per 1 mln uitvoertokens |
| Bonus | +5% vanaf $50, +10% vanaf $100 |
| Afrekening | prepaid tegoed op basis van echt verbruik; fouten en weigeringen zijn gratis |
| Geldigheid | betaald tegoed verloopt niet, geen abonnement |
| Opwaarderen | USDT (TRC20) of USDC (Base), elk heel bedrag van $10 tot $500 |
| Gratis proeftegoed | $0,50 voor 7 dagen, zonder kaart · Proefsleutel: 2 parallelle verzoeken, 60 per minuut; volledige limieten (8 en 300) na eerste opwaardering |
| Inhoud | inhoud voor volwassenen toegestaan; seksuele inhoud met minderjarigen wordt geweigerd |
| Sleutels | één actieve sleutel per account; een nieuwe vervangt de oude |
| Inloggen | Google of e-mail en wachtwoord |
Foutcodes
Fouten komen als JSON met een vaste type; mislukte of geweigerde verzoeken kosten niets.
| Code | Type | Betekenis |
|---|---|---|
400 | bad_request | ongeldige JSON, lege berichten, verkeerde parameter of context te lang |
401 | missing_key · invalid_key · key_revoked | sleutel ontbreekt, is onjuist of is vervangen |
402 | no_credit | geen tegoed — waardeer op en ga direct verder |
403 | content_blocked | seksuele inhoud met minderjarigen — geweigerd, niet gerekend |
404 | not_found | onbekend endpoint |
413 | request_too_large | body groter dan 8 MB |
429 | rate_limited · concurrency | meer dan 300/min of 8 tegelijk — wacht en probeer opnieuw |
503 | upstream_busy | model bezet — probeer het over enkele seconden opnieuw |
Vragen en antwoorden
Wat zijn de rate limits?
Je bent beperkt tot 300 verzoeken per minuut per API-sleutel. De grootte van de request body is beperkt tot 8 MB. Als je de limiet overschrijdt, ontvang je een 429-fout. Je kunt je sleutel op elk moment opnieuw genereren om de koppeling te resetten, hoewel de rate limit voor de sleutel zelf geldt.
Waarom krijg ik een 401- of 402-fout?
Een 401-fout geeft aan dat je API-sleutel ongeldig of verlopen is. Een 402-fout betekent dat je prepaid tegoed op is. We bieden geen gratis onbeperkte tier; je moet opwaarderen om de ongecensureerde llm api te blijven gebruiken. Credits verlopen nooit, dus je kunt vanaf $10 opwaarderen via crypto (USDT of USDC).
Is het contextvenster echt 100k?
Ja, het model ondersteunt een strikt contextvenster van 100.000 tokens voor zowel prompt als completion samen. Dit maakt uitgebreide documentverwerking of lange gesprekken mogelijk. Zorg dat je inputs binnen deze limiet blijven om truncatie of fouten te voorkomen.
Je sleutel is nog maar één formulier verwijderd
Maak een account aan, kopieer de sleutel, wijzig de base URL. Dat is de hele setup.