Raciocínio
Use modelos -think para raciocínio explícito com cadeia de pensamento (chain-of-thought).
Visão Geral
Os modelos Urso possuem variantes Think que exibem raciocínio explícito antes de responder. Ao usar um modelo -think, o modelo mostra seu processo de pensamento passo a passo, permitindo maior transparência, precisão em tarefas complexas e facilidade de depuração.
Modelos Think Disponíveis
| Modelo | Parâmetros | Melhor Para |
|---|---|---|
urso-lite-think | 3B | Raciocínio rápido, tarefas simples |
urso-base-think | 30B MoE | Raciocínio geral, uso cotidiano |
urso-pro-think | 70B MoE | Raciocínio avançado, problemas complexos |
urso-ultra-think | 200B+ MoE | Raciocínio frontier, máxima qualidade |
Como Funciona
Quando você usa um modelo -think, a resposta contém duas partes:
- Thinking — o processo de raciocínio interno do modelo (cadeia de pensamento)
- Response — a resposta final após o raciocínio
O modelo analisa o problema, considera diferentes abordagens, verifica sua lógica e só então fornece a resposta final.
Parâmetro reasoning_effort
Controle a profundidade do raciocínio com o parâmetro reasoning_effort:
| Valor | Descrição |
|---|---|
low | Raciocínio rápido, menos tokens de pensamento |
medium | Equilíbrio entre velocidade e profundidade |
high | Raciocínio profundo, mais tokens de pensamento (padrão) |
Exemplos
Python
from openai import OpenAI
client = OpenAI(
base_url="https://api.polar-ai.com/v1",
api_key="pk-your-key-here"
)
# Raciocínio básico
response = client.chat.completions.create(
model="urso-base-think",
messages=[
{
"role": "user",
"content": "Uma empresa tem 3 filiais. A filial A fatura R$500mil/mês, a B fatura 40% a mais que A, e a C fatura a média das outras duas. Qual o faturamento total trimestral?"
}
],
max_tokens=2048
)
print(response.choices[0].message.content)# Com controle de reasoning_effort
response = client.chat.completions.create(
model="urso-pro-think",
messages=[
{
"role": "system",
"content": "Você é um advogado especialista em direito tributário brasileiro."
},
{
"role": "user",
"content": "Analise se uma empresa de software pode se enquadrar no Simples Nacional considerando que ela exporta 60% dos serviços e fatura R$3.8 milhões por ano."
}
],
max_tokens=4096,
extra_body={"reasoning_effort": "high"}
)
print(response.choices[0].message.content)TypeScript
import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://api.polar-ai.com/v1",
apiKey: "pk-your-key-here",
});
const response = await client.chat.completions.create({
model: "urso-base-think",
messages: [
{
role: "user",
content:
"Uma empresa tem 3 filiais. A filial A fatura R$500mil/mês, a B fatura 40% a mais que A, e a C fatura a média das outras duas. Qual o faturamento total trimestral?",
},
],
max_tokens: 2048,
});
console.log(response.choices[0].message.content);curl
curl -X POST https://api.polar-ai.com/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer pk-your-key-here" \
-d '{
"model": "urso-pro-think",
"messages": [
{
"role": "user",
"content": "Analise se uma empresa de software pode se enquadrar no Simples Nacional considerando que ela exporta 60% dos serviços e fatura R$3.8 milhões por ano."
}
],
"max_tokens": 4096,
"reasoning_effort": "high"
}'Formato da Resposta
A resposta inclui o pensamento e a resposta final:
{
"id": "chatcmpl-abc123",
"object": "chat.completion",
"model": "urso-base-think",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "<think>\nVamos resolver passo a passo:\n\n1. Filial A: R$500.000/mês\n2. Filial B: 40% a mais que A = R$500.000 * 1.4 = R$700.000/mês\n3. Filial C: média de A e B = (R$500.000 + R$700.000) / 2 = R$600.000/mês\n\nFaturamento mensal total: R$500.000 + R$700.000 + R$600.000 = R$1.800.000\nFaturamento trimestral: R$1.800.000 * 3 = R$5.400.000\n</think>\n\nO faturamento total trimestral da empresa é de **R$5.400.000** (cinco milhões e quatrocentos mil reais).\n\nDetalhamento mensal:\n- Filial A: R$500.000\n- Filial B: R$700.000 (40% acima de A)\n- Filial C: R$600.000 (média de A e B)\n- Total mensal: R$1.800.000\n- Total trimestral: R$1.800.000 x 3 = R$5.400.000"
},
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 45,
"completion_tokens": 280,
"total_tokens": 325,
"completion_tokens_details": {
"reasoning_tokens": 120
}
}
}Tokens de Pensamento
Os tokens de pensamento (dentro de <think>...</think>) são contabilizados no uso de tokens, mas podem ser identificados separadamente no campo usage.completion_tokens_details.reasoning_tokens.
Quando Usar Think vs Regular
| Cenário | Modelo Recomendado |
|---|---|
| Perguntas simples, chat geral | urso-base (regular) |
| Cálculos matemáticos | urso-base-think |
| Análise jurídica complexa | urso-pro-think |
| Resolução de problemas lógicos | urso-base-think ou urso-pro-think |
| Código com lógica complexa | urso-pro-think |
| Tarefas que exigem explicação passo a passo | Qualquer modelo -think |
| Respostas rápidas e curtas | urso-lite (regular) |
| Pesquisa e análise profunda | urso-ultra-think |
Dicas de Uso
- Use modelos
-thinkquando precisar de transparência no raciocínio - O parâmetro
reasoning_effortpermite equilibrar velocidade e profundidade - Tokens de pensamento consomem contexto, considere
max_tokensadequado - Para streaming, os tokens de pensamento são enviados primeiro, seguidos da resposta
Próximos Passos
- Chat Completions — referência completa da API
- Streaming — veja o raciocínio em tempo real
- Structured Output — combine raciocínio com saída estruturada