Ollama API vs OpenAI API: Welke past bij jouw project
Ollama draait modellen op jouw eigen machine, terwijl OpenAI zijn modellen op zijn servers draait. Deze pagina vergelijkt de twee op het gebied van hosting, verzoekindeling, kosten, limieten en inhoudsregels, en toont daarnaast een derde optie ertussen.
Bijgewerkt

Belangrijkste punten
- Ollama is een lokale runtime die je zelf hostt; de OpenAI API is een gehoste service die per token wordt gefactureerd.
- Beide accepteren OpenAI-stijl chatverzoeken, dus één client kan met beiden communiceren door de base URL aan te passen.
- Lokale runs kosten hardware en tijd, gehoste runs kosten tokens; het break-even punt hangt af van je volume.
- Een gehoste OpenAI-compatible endpoint met een open-weight model geeft je pay-as-you-go zonder dat je een GPU hoeft te bezitten.
Het korte antwoord
De vraag naar de Ollama API vs OpenAI API gaat vooral over waar het model draait. Met Ollama leeft het model op een computer die jij beheert, en roept je code localhost aan. Met OpenAI leeft het model in het datacenter van iemand anders, en roept je code een openbaar HTTPS-adres aan met een sleutel en een rekening aan het einde van de maand.
Alles anders volgt uit dat ene verschil: kostenstructuur, latentie die je kunt afstemmen, wie je prompts ziet, welke modellen je kunt kiezen, en wat er gebeurt als je honderd verzoeken tegelijk verstuurt. De tabel geeft de feiten die voor beide gelden.
| Onderwerp | Ollama | OpenAI API |
|---|---|---|
| Waar het draait | Jouw laptop, workstation of server | De servers van OpenAI |
| Wie het model instelt | Je haalt en update gewichten zelf | OpenAI kiest en update zijn modellen |
| Facturatie | Geen per-token kosten van de lokale runtime; je betaalt voor hardware en stroom | Per token, van een account met facturering |
| Request-formaat | Natieve routes plus een OpenAI-stijl /v1 laag | De originele OpenAI-indeling |
| Doorvoer | Beperkt door je hardware | Beperkt door account rate limits |
Als je een middenweg wilt, een gehost endpoint dat dezelfde OpenAI-indeling spreekt maar een open-weight model serveert, wordt aan het einde van deze pagina besproken.
Wat elke API precies is
Ollama
Ollama is een programma dat open-weight modellen downloadt en via HTTP op je machine serveert. Het luistert standaard op poort 11434. Het heeft eigen routes zoals /api/chat en /api/generate, en het exposeert ook een OpenAI-laag onder /v1 zodat bestaande OpenAI-clientcode erop kan wijzen. Er is geen account en geen API-sleutel in de gebruikelijke lokale configuratie. Clients die een API-sleutel-veld eisen, krijgen een placeholder-tekenreeks.
Jij kiest het model, de kwantisatie en de contextinstellingen. Die vrijheid is de belangrijkste aantrekkingskracht, en ook de kosten: als het model niet in je geheugen past, is het langzaam of laadt het helemaal niet.
De OpenAI API
De OpenAI API is een gehoste service. Je maakt een account aan, voegt facturering toe, genereert een sleutel en verstuurt verzoeken naar het adres van OpenAI. Je krijgt de modellen die OpenAI aanbiedt, onder de gebruiksvoorwaarden van OpenAI, met de limieten die jouw accountniveau toestaat. Capaciteit, upgrades en uptime zijn hun taak, niet die van jou. Het verzoekformaat dat je in de meeste tutorials ziet, met een messages array en een choices array in het antwoord, komt van deze API.
Waarom mensen ze met elkaar vergelijken
De vergelijking bestaat omdat beide met dezelfde clientcode bereikbaar zijn. De officiële OpenAI SDK's stellen je in staat de base URL te overschrijven, en de /v1-laag van Ollama begrijpt chat-completies. Dus een script dat voor de ene is geschreven, kan vaak in één regel op de andere worden gericht. Dat is handig, maar het verbergt ook echte verschillen, die in de volgende secties worden belicht.
Dezelfde clientcode, twee basis-URLs
Dit is het onderdeel dat het wisselen makkelijk maakt. De onderstaande Python-snippet communiceert met een lokale Ollama-server. Alleen de base URL, de API-sleutel en de modelnaam zijn specifiek voor het doel.
from openai import OpenAI
# Local Ollama through its OpenAI-style layer
client = OpenAI(base_url="http://localhost:11434/v1", api_key="ollama")
reply = client.chat.completions.create(
model="llama3.2", # whatever model you pulled locally
messages=[{"role": "user", "content": "Summarize what a base URL is."}],
)
print(reply.choices[0].message.content)Om hetzelfde verzoek naar een gehoste OpenAI-compatible endpoint te sturen, pas je drie waarden aan. Hier is de versie voor deze site, met model ID uncensored.
from openai import OpenAI
client = OpenAI(base_url="https://api.ollamaapi.com/v1", api_key="YOUR_KEY")
reply = client.chat.completions.create(
model="uncensored",
messages=[{"role": "user", "content": "Summarize what a base URL is."}],
)
print(reply.choices[0].message.content)Hetzelfde verzoek werkt met curl, wat handig is voor een snelle test voordat je aan applicatiecode komt.
curl https://api.ollamaapi.com/v1/chat/completions \
-H "Authorization: Bearer YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"uncensored","messages":[{"role":"user","content":"Hello"}]}'Er geldt een waarschuwing bij elk wisselen tussen deze targets. Compatibiliteit dekt de vorm van het verzoek en antwoord, niet het gedrag. Verschillende modellen volgen instructies anders, gaan anders om met tool_calls en produceren andere opmaak. Voer je eigen prompts door de nieuwe target voordat je erop vertrouwt.
Kosten: hardware die je bezit versus tokens die je koopt
Lokale inferentie ziet er gratis uit omdat er geen factuur arriveert. Het is niet gratis. Je betaalt voor een GPU of een machine met veel geheugen, voor elektriciteit, en voor de uren die je kwijt bent aan het installeren van drivers, het kiezen van kwantisaties en het opnieuw opstarten van een server die het geheugen vol had. Als je al beschikt over geschikte hardware en een paar prompts per dag uitvoert, is die kosten in de praktijk dicht bij nul. Als je een kaart zou moeten kopen alleen maar om het model te draaien dat je wilt, verandert de rekensom.
Gehoste prijzen hebben de tegenovergestelde vorm: niets vooraf, en een kosten die groeien met gebruik. Op deze site is de prijs $0,15 per 1M input tokens en $0,50 per 1M output tokens, van prepaid credit zonder abonnement. Voor OpenAI, check hun huidige prijslijst, omdat deze per model verschilt en verandert in de loop van de tijd.
Hier is hoe de gehoste rekensom werkt voor een realistische taak op dit endpoint. Stel dat een applicatie 40.000 verzoeken verstuurt in een maand, elk met 1.500 input tokens en 400 output tokens.
- Input: 40.000 x 1.500 = 60.000.000 tokens, oftewel 60M. Bij $0,15 per 1M is dat $9,00.
- Output: 40.000 x 400 = 16.000.000 tokens, oftewel 16M. Bij $0,50 per 1M is dat $8,00.
- Totaal: $17,00 voor de maand.
Je kunt dat getal afzetten tegen wat een geschikte machine jou zou kosten om te kopen, stroom te verbruiken en te onderhouden. Voor licht of bursty verkeer wint betalen per token meestal. Voor constant zwaar verkeer op hardware die je al bezit, wint lokaal meestal. Zie de prijspagina voor top-up-bedragen en bonussen.
Modellen, inhoudsregels en privacy
Met Ollama beslis je welk open-weight model je draait, en niemand zit tussen je prompt en de weights. Het inhoudsgedrag is wat dat model doet. Sommige community-modellen zijn afgestemd om minder te weigeren, sommige niet, en je kunt ze vrij wisselen.
Een gehoste leverancier past zijn eigen gebruiksvoorwaarden en eigen filtering toe. Dat is een redelijke positie voor een algemene dienst, en dat is ook waarom sommige schrijvers, roleplay-ontwikkelaars en onderzoekers die werken met volwassen fictie merken dat gehoste antwoorden afgekap worden. Lees het beleid van elke provider waarop je wilt vertrouwen, en controleer hun huidige regels in plaats van aan te nemen.
Deze site staat op een andere plek. Het serveert één open-weight model, gedraaid door een onafhankelijke leverancier en afgestemd om te antwoorden zonder inhoudsweigeringen voor wettelijk toegestaan volwassen gebruik. Het is niet de officiële API van OpenAI, Meta, Mistral of een andere leverancier, en het is geen router tussen leveranciers. Er is één harde limiet: geen seksuele inhoud met minderjarigen. Prompts worden niet gebruikt voor training. Mislukte of geweigerde verzoeken worden niet in rekening gebracht.
Wat betreft privacy: bij lokale Ollama blijven prompts op jouw machine, wat geen enkele gehoste service kan evenaren. Als jouw gegevens het gebouw nooit mogen verlaten, draai het lokaal en stop met vergelijken. Als je tekst naar een gehoste service kunt sturen, lees dan eerst de privacyverklaring van de aanbieder. Die vind je op /privacy/.
Limieten, concurrency en functies
Lokale limieten zijn fysiek. Eén GPU bedient een paar gelijktijdige verzoeken voordat elk van hen langzamer wordt, en een lange context verbruikt snel geheugen. Hosted limieten zijn beleid. Op dit endpoint staat een volledige key 8 gelijktijdige verzoeken en 300 verzoeken per minuut toe, en een trial key staat 2 gelijktijdige en 60 per minuut toe. Het contextvenster is 100.000 tokens, tellend prompt plus completion, en de request body kan maximaal 8 MB zijn.
Als je een limiet overschrijdt, krijg je HTTP 429. De foutcode is rate_limited voor verzoeken per minuut en concurrency voor te veel verzoeken tegelijk. Een 429 met een Retry-After: 5 header betekent tijdelijke overbelasting, dus wacht vijf seconden en probeer het opnieuw. Een gestreamd verzoek houdt zijn concurrency-slot vast tot de stream eindigt, wat belangrijk is als je veel streams parallel opent.
Functieondersteuning aan de gehoste kant is chatgericht. Je krijgt streaming via SSE met verbruik aan het einde, tool calling, JSON-modus, en doorsturing van temperature, top_p, stop, seed en de penalties. Er is geen beeld-, audio- of videogeneratie, geen embeddings en geen fine-tuning. Als je die nodig hebt, plan ze dan elders in. Onze docs vermelden de exacte requestvelden.
Response-headers bevatten X-Request-Id en X-Balance-USD, zodat je een verzoek kunt loggen en je resterende tegoed kunt zien zonder een aparte call.
Hoe te kiezen
Kies op basis van de beperking die het meest pijn doet.
- Prompts moeten op jouw hardware blijven. Gebruik Ollama lokaal.
- Je hebt al een capabele GPU en wilt experimenteren. Gebruik Ollama lokaal, en verhuis later als het verkeer de capaciteit te boven gaat.
- Je hebt een specifiek model van een bepaalde leverancier of zijn ecosysteem nodig. Gebruik de API van die leverancier. Een andere aanbieder is geen vervanging voor een specifiek model.
- Je wilt gehoste, pay-as-you-go-toegang tot een open-weight model zonder weigeringen voor wettelijk volwassen gebruik, en geen hardware om te babysitten. Gebruik een gehost OpenAI-compatible endpoint zoals deze.
Veel teams gebruiken er twee: Ollama op een laptop voor ontwikkeling, en een gehost endpoint voor alles wat bereikbaar moet zijn vanaf een server of de browser van een klant. Omdat beide dezelfde request-indeling spreken, is de switch een configuratiewaarde, geen herschrijving. Als je de gehoste kant wilt proberen, kunnen nieuwe gebruikers $0,50 aan proeftegoed claimen met één klik op de API-sleutelpagina na registratie. Het vereist geen creditcard en is 7 dagen geldig. Betaalde top-ups beginnen bij $20 en accepteren creditcard of crypto.
Meer handleidingen
Vragen en antwoorden
Is de Ollama API compatibel met de OpenAI SDK?
Ollama exposeert een OpenAI-stijl laag onder /v1 die chat completions afhandelt, dus de officiële OpenAI SDKs kunnen erop wijzen door de base URL te wijzigen. Controleer de Ollama-documentatie voor welke velden jouw versie ondersteunt.
Is Ollama goedkoper dan de OpenAI API?
Het hangt af van jouw hardware en volume. De lokale runtime heeft geen per-token kosten, maar je betaalt voor de machine en het onderhoud. Voor licht of onregelmatig gebruik is per-token facturatie vaak goedkoper dan een GPU kopen.
Kan ik het endpoint van deze site gebruiken in plaats van lokale Ollama?
Ja, als je een gehost OpenAI-compatible endpoint wilt. Stel de basis-URL in op https://api.ollamaapi.com/v1 en het model op uncensored. Het is geen Ollama en draait niet op jouw machine.
Ondersteunt het gehoste endpoint tool calling en streaming?
Ja. Het ondersteunt streaming via SSE, tool calling en JSON-modus, met een contextvenster van 100.000 tokens.
Je sleutel is nog maar één formulier verwijderd
Maak een account aan, kopieer de sleutel, pas de base URL aan. Dat is de hele setup.