نستخدم ملفات تعريف الارتباط. تُبقيك ملفات تعريف الارتباط وتخزين المتصفح مسجّلًا للدخول وتتذكر تفضيلاتك. وبإذنك نقيس أيضًا كيفية استخدام الموقع. يمكنك في أي وقت. راجع سياسة ملفات تعريف الارتباط.

الاستدلال (Reasoning)

نقاط النهاية

الاستدلال (Reasoning)

تحكّم في ميزانية الاستدلال ومستوى الجهد ومخرجات التفكير لنماذج الاستدلال عبر المعامل reasoning الموحّد في chat completions.

جرّبه في ساحة التجربة

تفكّر نماذج الاستدلال قبل أن تجيب: OpenAI GPT-5 وسلسلة o، وClaude مع التفكير الموسّع، وGemini 2.5، وDeepSeek R1، وQwen وغيرها. تقبل api14 معاملاً واحداً هو reasoning وتحوّله إلى الإعداد الأصلي لكل مزوّد. تُحتسب رموز الاستدلال كرموز مخرجات.

معاملات الطلب

المعاملالنوعالوصف
reasoning.effortstring"minimal" أو "low" أو "medium" أو "high". تستخدمه نماذج OpenAI وGrok، وتُحوَّل في النماذج الأخرى إلى ميزانية رموز.
reasoning.max_tokensintegerميزانية رموز دقيقة للتفكير. تستخدمها Anthropic وGemini وQwen. استخدم أحدهما فقط، لا كليهما.
reasoning.excludebooleanيستمر النموذج في الاستدلال، لكن نص الاستدلال لا يُدرج في الاستجابة.
reasoning.enabledbooleanيفعّل الاستدلال بالإعدادات الافتراضية.
include_reasoningbooleanمفتاح قديم، ويعادل reasoning: {} أو 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 أكبر من ميزانية الاستدلال، لأنه يشمل التفكير والإجابة معاً.

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);

الاستجابة

يُعاد نص الاستدلال في message.reasoning، منفصلاً عن الإجابة. وتعيد بعض النماذج أيضاً كائنات 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
  }
}

عند البث، يصل الاستدلال في أجزاء delta.reasoning قبل أجزاء delta.content.

ملاحظات

  • لا تعيد نماذج سلسلة o ونماذج GPT-5 من OpenAI نص استدلالها، لكنك تدفع مقابل reasoning_tokens على أي حال.
  • عند استخدام الأدوات عبر عدة أدوار مع Claude، أعد reasoning_details دون تعديل في رسالة المساعد حتى يتمكن النموذج من متابعة استدلاله.
  • بعض النماذج (مثل deepseek/deepseek-r1) تستدل دائماً. لا يؤثر effort فيها.
  • يكلّف الجهد الأعلى أكثر ويستغرق وقتاً أطول. راقب completion_tokens_details.reasoning_tokens.

الأخطاء

هي نفسها الواردة في Chat completions. قد تعيد ميزانية صغيرة جداً أو كبيرة جداً لنموذج ما الخطأ 400 من المزوّد. راجع الأخطاء.