Skip to content

Ollama biedt compatibiliteit met de Anthropic Messages API om bestaande applicaties te koppelen aan Ollama, inclusief tools zoals Claude Code.

Gebruik

Omgevingsvariabelen

Om Ollama te gebruiken met tools die de Anthropic API verwachten (zoals Claude Code), stel je deze omgevingsvariabelen in:

shell
export ANTHROPIC_AUTH_TOKEN=ollama  # vereist maar wordt genegeerd
export ANTHROPIC_BASE_URL=http://localhost:11434

Eenvoudig /v1/messages voorbeeld

Streamingvoorbeeld

Tool-aanroepvoorbeeld

Gebruik met Claude Code

Claude Code kan worden geconfigureerd om Ollama als backend te gebruiken.

Aanbevolen modellen

Voor gebruiksscenario's rond coderen zijn modellen zoals glm-4.7, minimax-m2.1 en qwen3-coder aanbevolen.

Download een model voordat je het gebruikt:

shell
ollama pull qwen3-coder

Let op: Qwen 3 coder is een model met 30B parameters dat minimaal 24GB VRAM nodig heeft om soepel te draaien. Voor langere contextlengtes is meer VRAM nodig.

shell
ollama pull glm-4.7:cloud

Snelle installatie

shell
ollama launch claude

Dit zal je vragen een model te selecteren, Claude Code automatisch te configureren en te starten. Om te configureren zonder te starten:

shell
ollama launch claude --config

Handmatige installatie

Stel de omgevingsvariabelen in en voer Claude Code uit:

shell
ANTHROPIC_AUTH_TOKEN=ollama ANTHROPIC_BASE_URL=http://localhost:11434 claude --model qwen3-coder

Of stel de omgevingsvariabelen in in je shellprofiel:

shell
export ANTHROPIC_AUTH_TOKEN=ollama  # vereist maar wordt genegeerd
export ANTHROPIC_BASE_URL=http://localhost:11434

Voer daarna Claude Code uit met een willekeurig Ollama-model:

shell
claude --model qwen3-coder

Eindpunten

/v1/messages

Ondersteunde functies

  • [x] Berichten
  • [x] Streaming
  • [x] Systeemprompts
  • [x] Multi-turn conversaties
  • [x] Visie (afbeeldingen)
  • [x] Tools (functieaanroepen)
  • [x] Toolresultaten
  • [x] Denken/uitgebreid denken

Ondersteunde aanvraagvelden

  • [x] model
  • [x] max_tokens
  • [x] messages
    • [x] Tekst content
    • [x] Afbeeldingscontent (base64)
    • [x] Array van contentblokken
    • [x] tool_use-blokken
    • [x] tool_result-blokken
    • [x] thinking-blokken
  • [x] system (tekenreeks of array)
  • [x] stream
  • [x] temperature
  • [x] top_p
  • [x] top_k
  • [x] stop_sequences
  • [x] tools
  • [x] thinking
  • [ ] tool_choice
  • [ ] metadata

Ondersteunde responsvelden

  • [x] id
  • [x] type
  • [x] role
  • [x] model
  • [x] content (tekst, tool_use, thinking-blokken)
  • [x] stop_reason (end_turn, max_tokens, tool_use)
  • [x] usage (input_tokens, output_tokens)

Streaminggebeurtenissen

  • [x] message_start
  • [x] content_block_start
  • [x] content_block_delta (text_delta, input_json_delta, thinking_delta)
  • [x] content_block_stop
  • [x] message_delta
  • [x] message_stop
  • [x] ping
  • [x] error

Modellen

Ollama ondersteunt zowel lokale als cloudmodellen.

Lokale modellen

Pull een lokaal model voordat je het gebruikt:

shell
ollama pull qwen3-coder

Aanbevolen lokale modellen:

  • qwen3-coder - Uitstekend voor coderingsopgaven
  • gpt-oss:20b - Sterk algemeen doelmodel

Cloudmodellen

Cloudmodellen zijn direct beschikbaar zonder te hoeven pullen:

  • glm-4.7:cloud - High-performance cloudmodel
  • minimax-m2.1:cloud - Snel cloudmodel

Standaard modelnamen

Voor tools die vertrouwen op standaard Anthropic modelnamen zoals claude-3-5-sonnet, gebruik je ollama cp om een bestaande modelnaam te kopiëren:

shell
ollama cp qwen3-coder claude-3-5-sonnet

Daarna kan deze nieuwe modelnaam worden opgegeven in het model-veld:

shell
curl http://localhost:11434/v1/messages \
    -H "Content-Type: application/json" \
    -d '{
        "model": "claude-3-5-sonnet",
        "max_tokens": 1024,
        "messages": [
            {
                "role": "user",
                "content": "Hello!"
            }
        ]
    }'

Verschillen met de Anthropic API

Gedragsverschillen

  • API-sleutel wordt geaccepteerd maar niet gevalideerd
  • De anthropic-version-header wordt geaccepteerd maar niet gebruikt
  • Tokenaantallen zijn benaderingen gebaseerd op de tokenizer van het onderliggende model

Niet ondersteund

De volgende Anthropic API-functies worden momenteel niet ondersteund:

FunctieBeschrijving
/v1/messages/count_tokensEindpunt voor het tellen van tokens
tool_choiceGeforceerd gebruik van een specifieke tool of het uitschakelen van tools
metadataAanvraagmetadata (user_id)
Promptcachingcache_control-blokken voor het cachen van prefixen
Batches API/v1/messages/batches voor asynchrone batchverwerking
Citatencitations-contentblokken
PDF-ondersteuningdocument-contentblokken met PDF-bestanden
Server-verzonden foutenerror-gebeurtenissen tijdens streaming (fouten retourneren een HTTP-status)

Gedeeltelijke ondersteuning

FunctieStatus
AfbeeldingscontentBase64-afbeeldingen worden ondersteund; URL-afbeeldingen niet
Uitgebreid denkenBasale ondersteuning; budget_tokens wordt geaccepteerd maar niet afgedwongen