Responses
Markdownصيغة OpenAI الجديدة: إدخال واحد، ومخرجات ذات أنواع محددة، وأدوات واستدلال. يستخدمها Codex CLI.
الدليل الكامل
https://api.ailoot.ai/v1/responsescurl https://api.ailoot.ai/v1/responses \
-H "Authorization: Bearer $AILOOT_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-6.1-sol",
"instructions": "أجب بإيجاز.",
"input": "ما الفرق بين TCP و UDP؟"
}' from openai import OpenAI
import os
client = OpenAI(max_retries=0, base_url="https://api.ailoot.ai/v1", api_key=os.environ["AILOOT_API_KEY"])
resp = client.responses.create(
model="gpt-6.1-sol",
instructions="أجب بإيجاز.",
input="ما الفرق بين TCP و UDP؟",
)
print(resp.output_text)import OpenAI from "openai";
const client = new OpenAI({ maxRetries: 0, baseURL: "https://api.ailoot.ai/v1", apiKey: process.env.AILOOT_API_KEY });
const resp = await client.responses.create({
model: "gpt-6.1-sol",
instructions: "أجب بإيجاز.",
input: "ما الفرق بين TCP و UDP؟",
});
console.log(resp.output_text);{
"id": "resp_67f1…",
"object": "response",
"status": "completed",
"model": "gpt-6.1-sol",
"output": [
{
"type": "message",
"role": "assistant",
"content": [
{ "type": "output_text", "text": "يضمن TCP التسليم والترتيب، أما UDP فلا يضمنهما، لكنه أسرع…" }
]
}
],
"usage": { "input_tokens": 24, "output_tokens": 61, "total_tokens": 85 }
}المصادقة
- Authorizationheaderمطلوب
المفتاح بصيغة
Bearer sk-…. يمكن أيضاً استخدام الترويساتx-api-keyأوx-goog-api-key.
جسم الطلب
- modelstringمطلوب
معرّف نموذج يدعم صيغة Responses. يضم الكتالوج 53 منها: GPT وClaude وDeepSeek وQwen وKimi وGLM وMiniMax وGrok. نماذج Gemini غير متاحة بهذه الصيغة.
- inputstring | arrayمطلوب
نص الطلب أو مصفوفة رسائل وأجزاء (نصوص وصور).
- instructionsstringاختياري
تعليمات النظام.
- streambooleanاختياري
تدفق أحداث SSE؛ الحدث الأخير هو
response.completed. يأتي النص المدفوع دفعة واحدة بعد احتساب التكلفة. - max_output_tokensintegerاختياري
الحد الأقصى لتوكنات الرد، بما فيها الاستدلال. إذا لم يُحدد، يضع Ailoot القيمة 4096 (أو أقل إذا كان حد رد النموذج أقل). للردود الطويلة، حدد الحد صراحةً. الطلبات التي تتضمن
previous_response_idوالأدوات المدمجةweb_searchأوcode_interpreterتأخذ في الحسبان، في الطلبات النصية الجديدة، تقديرات منفصلة للسياق المحفوظ وعمل الأدوات؛ ولا تنتقل تلقائيًا إلى احتساب تكلفة نافذة الإدخال كاملة. وتحتفظ الحجوزات المقبولة سابقًا بشروطها الأصلية. أما الصور والفيديو والصوت في المخرجات، فتُحجز تكلفة النتيجة كاملة. إذا تجاوز المبلغ المحجوز المحسوب الرصيد المتاح أو حد المفتاح، فقد يخفض Ailoot، في النموذج والطريقة المدعومين، قيمةmax_tokens(max_output_tokensفي Responses) إلى مقدار يمكن دفع تكلفته، ولكن دون النزول عن 256 توكن أو عن الحد الأدنى للطريقة إن كان أعلى من ذلك، ويعلن هذا في الترويسةX-Ailoot-Max-Tokens-Capped. ويُتحقق من إمكانية الخفض للنموذج النصي المحدد والطريقة المحددة. وتُطبق على مسارات Gemini النصية المدعومة بصيغة Gemini الأصلية وبصيغة Anthropic Messages؛deepseek-ai/deepseek-v4.1-flash,meta/llama-3.2-11b-vision-instruct,meta/muse-glimmer-30b,nvidia/ising-calibration-1.5-31b,nvidia/nemotron-3-nano-omni-30b-a3b-reasoning,nvidia/nemotron-3-super-120b-a12b,nvidia/nemotron-3-ultra-550b-a55b,nvidia/nemotron-3.5-content-safety,nvidia/nemotron-3.5-lightning-30b-a3b,nvidia/riva-translate-4b-instruct-v1.1,nvidia/riva-translate-4b-instruct-v2,poolside/laguna-xs-2.1,z-ai/glm-5.3-flash— بصيغتي Chat Completions وMessages (حيث يدعمهما النموذج). المخرجات — يُقدَّر مبلغ حجزها للطلب النصي الجديد وفق طول الرد المعتاد والشروط المتفق عليها. ويُحدد الحد المطلوب عبرmax_tokens(max_output_tokensفي Responses). لا يساوي الحد المطلوب تلقائيًا عدد التوكنات الذي استُخدم لحساب المبلغ المحجوز، ولا يضمن طول الرد الفعلي في نموذج لا يفرض قيدًا موثوقًا عليه. ولا تُستخدم القيمة الأولية 4096 إلا في المسارات المعنية؛ فالقاعدة المحددة تعتمد على النموذج والطريقة. - reasoningobjectاختياري
{"effort": "low" | "medium" | "high"}لنماذج الاستدلال. - toolsarrayاختياري
الدوال التي يمكن للنموذج استدعاؤها.
- textobjectاختياري
صيغة الرد، مثل
{"format": {"type": "json_schema", ...}}. - temperaturenumberاختياري
درجة عشوائية الرد، إذا كان النموذج يدعمها.
الرد
- outputarray
عناصر الرد: رسائل (
message)، واستدلال، واستدعاءات دوال. من الملائم استخدامoutput_text. - statusstring
completed,incomplete(بلغ الحد) أوfailed. - usageobject
input_tokens,output_tokens,total_tokens.