Skip to main content
Alguns modelos pensam em voz alta antes de responder. Eles resolvem problemas passo a passo e então dão a resposta final. Isso os torna mais fortes em matemática, código e tarefas intensivas em lógica.
Veja a lista completa de modelos, preços e limites de contexto na página de modelos. Nem todos os modelos de raciocínio suportam o parâmetro reasoning_effort. Veja suporte por modelo para detalhes.

Lendo a saída

Modelos de raciocínio retornam seu pensamento em um campo separado reasoning_content, mantendo content limpo:
Alguns provedores (Anthropic, Google, OpenAI, Qwen) retornam tokens de raciocínio criptografados ou resumidos. Quando isso acontece, reasoning_content contém um placeholder "[Some reasoning content is encrypted]".

Streaming

Ao fazer streaming, reasoning_content chega no delta antes da resposta final:

Esforço de raciocínio

O parâmetro reasoning_effort controla quanto pensamento um modelo faz antes de responder. Maior esforço significa raciocínio mais profundo, mas mais tokens e latência.

Valores aceitos

Nem todos os modelos suportam todos os valores. A Venice não mapeia automaticamente para o nível compatível mais próximo. Valores não suportados retornam um erro 400 do provedor upstream. Por exemplo, enviar xhigh para o Claude ou max para o GPT-5.2 falhará.Em caso de dúvida, use low, medium ou high. Esses são os valores mais amplamente suportados.

Suporte por modelo

As tabelas abaixo listam os modelos com suporte conhecido a reasoning_effort. Outros modelos ainda podem gerar tokens de raciocínio (visíveis em usage.completion_tokens_details.reasoning_tokens) sem expor um controle de esforço. Para verificar se um modelo específico suporta raciocínio ou o parâmetro reasoning_effort, leia os campos supportsReasoning e supportsReasoningEffort no endpoint /v1/models.

OpenAI

Anthropic

Google

xAI

Modelos Grok (Grok 4.1 Fast, Grok Code Fast) não suportam reasoning_effort. Especificá-lo resultará em erro.

Outros modelos

Uso

Passe reasoning_effort como parâmetro de nível superior ou use o formato aninhado reasoning.effort:
O formato plano "reasoning_effort": "high" também é aceito.

Desabilitando o raciocínio

Há duas formas de desabilitar o raciocínio: Para modelos que suportam, reasoning.enabled: false é a opção mais confiável:

Limites de tokens

Modelos de raciocínio geram tokens de resposta visível (em content) e tokens de raciocínio (em reasoning_content). Ambos contam para seu orçamento de tokens.

Definindo um limite de tokens

Use max_completion_tokens para limitar o número total de tokens que o modelo gera, incluindo o raciocínio:
max_tokens também é aceito e se comporta da mesma forma. Se ambos forem definidos, max_completion_tokens tem precedência. Para obter mais saída visível, aumente o limite, reduza reasoning_effort ou desabilite o raciocínio.

Lendo o detalhamento

O objeto usage mostra como seu orçamento foi gasto:
Neste exemplo, 169 tokens foram gastos em raciocínio e 332 na resposta visível. Quando o limite é atingido, finish_reason é length. O limite superior de cada modelo está disponível como maxCompletionTokens no endpoint /v1/models.

Modelos sem raciocínio

max_tokens e max_completion_tokens se comportam da mesma forma em modelos sem raciocínio, limitando diretamente a saída visível.

Descoberta de capacidades

Verifique o que um modelo suporta pelo endpoint /v1/models:

Melhores práticas

  • Use medium como padrão para uso geral
  • Use high ou xhigh para tarefas complexas (matemática, código, análise)
  • Use low para aplicações sensíveis à latência
  • Use reasoning.enabled: false ou defina effort como none para desabilitar o raciocínio
  • Em caso de dúvida, use low, medium ou high. Esses são os valores mais amplamente suportados.