Vi använder cookies. Cookies och webbläsarlagring håller dig inloggad och kommer ihåg dina preferenser. Med ditt tillstånd mäter vi också hur webbplatsen används. Du kan när som helst. Läs vår cookiepolicy.

Reasoning

Endpoints

Reasoning

Styr resonemangsbudget, ansträngning och resonemangsutdata för resonerande modeller med parametern reasoning i api14, med exempel och svarsfält.

Testa i playground

Resonerande modeller tänker igenom saker innan de svarar: OpenAI GPT-5 och o-serien, Claude med utökat tänkande, Gemini 2.5, DeepSeek R1, Qwen och andra. api14 tar emot en enda parameter reasoning och översätter den till varje leverantörs egen inställning. Resonemangstokens faktureras som utdatatokens.

Förfrågningsparametrar

ParameterTypBeskrivning
reasoning.effortstring"minimal", "low", "medium" eller "high". Används av OpenAI- och Grok-modeller och översätts till en tokenbudget för övriga.
reasoning.max_tokensintegerEn exakt tokenbudget för resonemanget. Används av Anthropic, Gemini och Qwen. Använd antingen denna eller effort, inte båda.
reasoning.excludebooleanModellen resonerar fortfarande, men resonemangstexten tas inte med i svaret.
reasoning.enabledbooleanSlår på resonemang med standardinställningarna.
include_reasoningbooleanÄldre reglage, samma som reasoning: {} eller reasoning.exclude: false.
{
  "model": "anthropic/claude-sonnet-4.5",
  "messages": [{ "role": "user", "content": "How many r's are in 'strawberry'? Think carefully." }],
  "reasoning": { "max_tokens": 2000 },
  "max_tokens": 4000
}

max_tokens måste vara större än resonemangsbudgeten, eftersom den omfattar både tänkandet och svaret.

import OpenAI from "openai";

const client = new OpenAI({
  baseURL: "https://api14.com/api/v1",
  apiKey: process.env.API14_API_KEY,
});

const result = await client.chat.completions.create({
  "model": "openai/gpt-5-mini",
  "messages": [
    {
      "role": "user",
      "content": "Explain vector databases in two sentences."
    }
  ],
  "reasoning": {
    "effort": "high"
  }
});
console.log(result.choices[0].message.content);

Svar

Resonemangstexten returneras i message.reasoning, separat från svaret. Vissa modeller returnerar även strukturerade reasoning_details:

{
  "id": "gen-1760000000-think",
  "model": "anthropic/claude-sonnet-4.5",
  "choices": [
    {
      "index": 0,
      "finish_reason": "stop",
      "message": {
        "role": "assistant",
        "content": "There are 3 r's in \"strawberry\".",
        "reasoning": "s-t-r-a-w-b-e-r-r-y: r at position 3, 8 and 9..."
      }
    }
  ],
  "usage": {
    "prompt_tokens": 22,
    "completion_tokens": 312,
    "total_tokens": 334,
    "completion_tokens_details": { "reasoning_tokens": 290 },
    "cost": 0.004746
  }
}

Vid strömning kommer resonemanget i delta.reasoning-delar före delta.content-delarna.

Anteckningar

  • Modeller ur OpenAI:s o-serie och GPT-5 returnerar inte sin resonemangstext, men du betalar ändå för reasoning_tokens.
  • Vid verktygsanvändning över flera steg med Claude ska du skicka tillbaka reasoning_details oförändrade i assistentmeddelandet, så att modellen kan fortsätta resonera.
  • Vissa modeller (till exempel deepseek/deepseek-r1) resonerar alltid. För dem har effort ingen effekt.
  • Högre ansträngning kostar mer och tar längre tid. Håll koll på completion_tokens_details.reasoning_tokens.

Fel

Samma som för Chat completions. En budget som är för liten eller för stor för en modell kan ge ett 400 från uppströmsleverantören. Se Fel.