Skip to content

Ollama oferece compatibilidade com a API de Mensagens do Anthropic para ajudar a conectar aplicativos existentes ao Ollama, incluindo ferramentas como o Claude Code.

Uso

Variáveis de ambiente

Para usar o Ollama com ferramentas que esperam a API do Anthropic (como o Claude Code), defina estas variáveis de ambiente:

shell
export ANTHROPIC_AUTH_TOKEN=ollama  # obrigatório, mas ignorado
export ANTHROPIC_BASE_URL=http://localhost:11434

Exemplo simples de /v1/messages

Exemplo de streaming

Exemplo de chamada de ferramentas

Usando com o Claude Code

Claude Code pode ser configurado para usar o Ollama como backend.

Modelos recomendados

Para casos de uso de programação, modelos como glm-4.7, minimax-m2.1 e qwen3-coder são recomendados.

Baixe um modelo antes de usar:

shell
ollama pull qwen3-coder

Nota: O Qwen 3 coder é um modelo de 30 bilhões de parâmetros que requer pelo menos 24GB de VRAM para funcionar sem problemas. Mais memória é necessária para comprimentos de contexto maiores.

shell
ollama pull glm-4.7:cloud

Configuração rápida

shell
ollama launch claude

Isso solicitará que você selecione um modelo, configure o Claude Code automaticamente e o inicie. Para configurar sem iniciar:

shell
ollama launch claude --config

Configuração manual

Defina as variáveis de ambiente e execute o Claude Code:

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

Ou defina as variáveis de ambiente no perfil do seu shell:

shell
export ANTHROPIC_AUTH_TOKEN=ollama
export ANTHROPIC_BASE_URL=http://localhost:11434

Depois execute o Claude Code com qualquer modelo do Ollama:

shell
claude --model qwen3-coder

Endpoints

/v1/messages

Recursos suportados

  • [x] Mensagens
  • [x] Streaming
  • [x] Prompts de sistema
  • [x] Conversas multiturno
  • [x] Visão (imagens)
  • [x] Ferramentas (chamada de função)
  • [x] Resultados de ferramenta
  • [x] Pensamento/pensamento estendido

Campos de solicitação suportados

  • [x] model
  • [x] max_tokens
  • [x] messages
    • [x] Conteúdo de texto content
    • [x] Conteúdo de imagem content (base64)
    • [x] Array de blocos de conteúdo
    • [x] Blocos tool_use
    • [x] Blocos tool_result
    • [x] Blocos thinking
  • [x] system (string ou array)
  • [x] stream
  • [x] temperature
  • [x] top_p
  • [x] top_k
  • [x] stop_sequences
  • [x] tools
  • [x] thinking
  • [ ] tool_choice
  • [ ] metadata

Campos de resposta suportados

  • [x] id
  • [x] type
  • [x] role
  • [x] model
  • [x] content (blocos de texto, tool_use, thinking)
  • [x] stop_reason (end_turn, max_tokens, tool_use)
  • [x] usage (input_tokens, output_tokens)

Eventos de streaming

  • [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

Modelos

Ollama suporta modelos locais e de nuvem.

Modelos locais

Baixe um modelo local antes de usar:

shell
ollama pull qwen3-coder

Modelos locais recomendados:

  • qwen3-coder - Excelente para tarefas de programação
  • gpt-oss:20b - Modelo geral potente

Modelos de nuvem

Modelos de nuvem estão disponíveis imediatamente sem necessidade de download:

  • glm-4.7:cloud - Modelo de nuvem de alta performance
  • minimax-m2.1:cloud - Modelo de nuvem rápido

Nomes de modelo padrão

Para ferramentas que dependem de nomes de modelo padrão do Anthropic, como claude-3-5-sonnet, use ollama cp para copiar um nome de modelo existente:

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

Depois, este novo nome de modelo pode ser especificado no campo model:

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!"
            }
        ]
    }'

Diferenças em relação à API do Anthropic

Diferenças de comportamento

  • A chave de API é aceita, mas não validada
  • O cabeçalho anthropic-version é aceito, mas não utilizado
  • As contagens de tokens são aproximações baseadas no tokenizador do modelo subjacente

Não suportado

Os seguintes recursos da API do Anthropic não são suportados no momento:

RecursoDescrição
/v1/messages/count_tokensEndpoint de contagem de tokens
tool_choiceForçar o uso de uma ferramenta específica ou desativar ferramentas
metadataMetadados de solicitação (user_id)
Cache de promptBlocos cache_control para armazenar prefixos em cache
API de lotes/v1/messages/batches para processamento de lotes assíncrono
CitaçõesBlocos de conteúdo citations
Suporte a PDFBlocos de conteúdo document com arquivos PDF
Erros enviados pelo servidorEventos error durante o streaming (erros retornam status HTTP)

Suporte parcial

RecursoStatus
Conteúdo de imagemImagens base64 suportadas; imagens via URL não suportadas
Pensamento estendidoSuporte básico; budget_tokens é aceito, mas não aplicado