استدعاء الأدوات البرمجي في GPT-5.6: النموذج يكتب كود التنسيق تلقائيًا

تتيح ميزة الاستدعاء البرمجي للأدوات في GPT-5.6 للنموذج كتابة جافاسكريبت التي تنسق أدواتك ضمن بيئة تشغيل V8 معزولة. ما تم إصداره، القيود، كيفية الاختبار.

Ashley Innocent

Ashley Innocent

10 يوليو 2026

استدعاء الأدوات البرمجي في GPT-5.6: النموذج يكتب كود التنسيق تلقائيًا

Apidog للمؤسسات

النشر على الخوادم المحلية

SSO و RBAC

متوافق مع SOC 2

استكشف Apidog للمؤسسات

الاستدعاء التقليدي للدوال له شكل يعرفه كل منشئ وكيل عن ظهر قلب. يطلب النموذج استدعاء أداة واحدة، يقوم تطبيقك بتنفيذها، تقوم بإلحاق النتيجة، ويطلب النموذج الأداة التالية. أربع أدوات، أربع رحلات ذهاب وعودة. أربعون أداة، أربعون. كل مرور يضيف زمن انتقال للشبكة وسياقًا معاد الفوترة. عندما أطلقت OpenAI GPT-5.6 للتوفر العام في 9 يوليو 2026، قدمت طريقة للخروج من هذا الروتين: استدعاء الأدوات البرمجي في واجهة برمجة تطبيقات Responses.

الفكرة مباشرة. بدلاً من إرجاع استدعاءات الأدوات واحدة تلو الأخرى لكي يقوم رمزك بتشغيلها في حلقة، يكتب النموذج جافاسكريبت تقوم بتنظيم استدعاءات أدوات متعددة بنفسها. يتم تنفيذ هذا الرمز في بيئة تشغيل V8 معزولة بدون وصول للشبكة. تظل أدواتك هي الطريقة الوحيدة التي يمكن للرمز من خلالها لمس العالم الخارجي، لذلك فإن الحدود الأمنية التي تتعامل معها بالفعل مع استدعاء دوال OpenAI تبقى كما هي. ما يتغير هو التنسيق: الحلقات، الشروط، والتجميع التي كانت تعيش في تطبيقك.

زر

يصل هذا التغيير إلى جانبك من واجهة برمجة التطبيقات أيضًا. كل أداة تعرضها هي الآن عقد يمكن للنموذج استدعاؤه في دفعات من العشرات بدلاً من استدعاء واحد حذر في كل دور. أصبحت دقة المخطط، وأشكال الأخطاء، وسلوك المعدل أهم مما كانت عليه الأسبوع الماضي. يغطي هذا المقال ما تم إصداره، ولماذا تؤذي الحلقة القديمة، وما يبقى كما هو، وكيفية تجهيز نقاط نهاية أدواتك باستخدام Apidog قبل تسليمها للنموذج.

زر

باختصار

ما تم إصداره في 9 يوليو

وصل GPT-5.6 كعائلة ثلاثية المستويات: gpt-5.6-sol للاستدلال الأعمق، و gpt-5.6-terra للعمل المتوازن، و gpt-5.6-luna للعمل السريع والفعال من حيث التكلفة. يتم توجيه الاسم المستعار gpt-5.6 إلى Sol. الثلاثة جميعًا ذاتية الخدمة عبر واجهة برمجة التطبيقات بدون تحديد خطة، بعد معاينة محدودة لمدة أسبوعين انتهت عندما رُفعت القيود على الوصول في 8 يوليو.

حظيت عائلة النماذج بمعظم الاهتمام في يوم الإطلاق، لكن السطح الجديد لواجهة برمجة التطبيقات هو القصة الأكبر لمنشئي الوكلاء. وفقًا لتغطية إطلاق MarkTechPost ووثائق OpenAI الخاصة، اكتسبت واجهة برمجة تطبيقات Responses أربعة أشياء عند الإطلاق العام: استدعاء الأدوات البرمجي، نسخة تجريبية متعددة الوكلاء، استدلال مستمر عبر الأدوار، وإعدادات تفاصيل الرؤية التي تحافظ على الأبعاد الأصلية للصورة.

استدعاء الأدوات البرمجي هو العنوان الرئيسي. تصفه OpenAI بأنه النموذج يكتب جافاسكريبت لتنسيق استدعاءات الأدوات، يتم تنفيذها في بيئة تشغيل V8 معزولة بدون وصول للشبكة. يتوقف النموذج عن كونه طالبًا خطوة بخطوة ويصبح مؤلف طبقة التنسيق.

الحلقة التي يحل محلها استدعاء الأدوات البرمجي

إليكم الاستدعاء الكلاسيكي للدوال مقابل واجهة برمجة تطبيقات Responses، وهو الشكل الذي تستخدمه كل وكيل إنتاجي تقريبًا اليوم:

import OpenAI from "openai";
const client = new OpenAI();

const tools = [
  {
    type: "function",
    name: "get_flight_status",
    description: "Return live status for a flight by IATA flight number.",
    parameters: {
      type: "object",
      properties: {
        flight_number: {
          type: "string",
          description: "IATA flight number, for example SQ317"
        }
      },
      required: ["flight_number"]
    }
  }
];

let response = await client.responses.create({
  model: "gpt-5.6",
  input: "Which of these 12 flights are delayed: SQ317, BA15, UA857...",
  tools
});

لا يمكن للنموذج الإجابة بدون بيانات، لذلك فإنه يصدر استدعاء دالة. يقوم الكود الخاص بك بتشغيل البحث، ويضيف عنصر function_call_output، ويستدعي واجهة برمجة التطبيقات مرة أخرى:

// رحلة ذهاب وعودة واحدة لكل استدعاء أداة. هذه الحلقة هي الضريبة.
while (hasFunctionCalls(response)) {
  const outputs = await executeToolCalls(response); // الكود الخاص بك، البنية التحتية الخاصة بك
  response = await client.responses.create({
    model: "gpt-5.6",
    previous_response_id: response.id,
    input: outputs,
    tools
  });
}

بالنسبة لـ 12 رحلة طيران، يمكن أن تعمل هذه الحلقة 12 مرة، وكل تكرار يدفع مرتين. أولاً في زمن الاستجابة: رحلة شبكة كاملة ذهابًا وإيابًا إلى OpenAI بالإضافة إلى وقت النموذج، متسلسلة، لأن الاستدعاء N+1 يعتمد على رؤية النموذج للنتيجة N. ثانيًا في الرموز المميزة: تتراكم نتائج الأدوات في السياق، لذا فإن التكرارات المتأخرة تعيد معالجة كل ما أنتجته التكرارات المبكرة. اربط الوكلاء معًا ويزداد التراكم سوءًا: وكيل مكون من خمس خطوات حيث كل خطوة تغلف حلقة من عشرة استدعاءات هو خمسون استدعاءً محسوبًا للنموذج.

لا شيء من تلك الحلقة هو ذكاء. إنها سباكة، وحتى هذا الأسبوع لم يكن لدى النموذج طريقة لكتابة السباكة نفسها.

كيف يغير الوضع البرمجي الشكل

باستخدام استدعاء الأدوات البرمجي، يجيب النموذج على سؤال الرحلة بشكل مختلف: يكتب برنامج جافاسكريبت قصيرًا يتكرر على أرقام الرحلات الاثني عشر، ويستدعي get_flight_status لكل منها، ويقوم بالتصفية للحالات المتأخرة، ويصنف حسب مدة التأخير، ويعيد المجموع. تقوم البيئة المعزولة بتنفيذ هذا البرنامج. لا تزال أدواتك تقوم بالعمل الحقيقي؛ التحكم في التدفق حولها أصبح الآن ملكًا للنموذج.

ثلاث خصائص تجعل هذا قابلاً للتطبيق بدلاً من أن يكون مقلقًا:

استدعاء الدالة الكلاسيكي استدعاء الأداة البرمجي
من يكتب التحكم في التدفق تطبيقك النموذج، بصيغة جافاسكريبت
رحلات الذهاب والإياب لاستدعاء N أداة N، متسلسلة دورة استجابة واحدة
أين يتم تشغيل التنسيق البنية التحتية الخاصة بك بيئة V8 معزولة، لا يوجد شبكة
كيف يتم تنفيذ الأدوات الكود الخاص بك يستدعيهم لا يزال من خلال سطح الأداة المعلن الخاص بك
الحدود الأمنية تعريفات الأدوات تعريفات الأدوات، لم تتغير

ما الذي يبقى كما هو

ما زلت تُعرّف الأدوات بأسماء وأوصاف ومعلمات JSON Schema، تمامًا كما في الكود أعلاه. يمكن للنموذج فقط تأليف استدعاءات للأدوات التي أعلنت عنها، مما يعني أن السؤال "ماذا يمكن لهذا الوكيل أن يفعله لأنظمتي" له نفس الإجابة التي كانت عليه من قبل: كل ما يسمح به سطح أداتك، ولا شيء غير ذلك.

أصبحت جودة المخطط أكثر أهمية الآن، وليس أقل. في الحلقة الكلاسيكية، أنتج وصف المعلمة الغامض استدعاءً سيئًا واحدًا يمكنك اكتشافه وتصحيحه قبل الرحلة التالية. في الوضع البرمجي، يمكن دمج نفس الغموض في حلقة وتكراره عبر كل تكرار قبل أن ترى نتيجة واحدة. العادات التي بنيتها من أجل المخرجات المنظمة تنتقل مباشرة: أنواع صارمة، تعدادات للمجموعات المغلقة، أوصاف تحدد الوحدات والتنسيقات، وحقول مطلوبة هي مطلوبة بصدق.

القيود والأسئلة المفتوحة

هذه القدرة عمرها أيام قليلة. بعض التحذيرات قبل أن تعيد بناء حزمة الوكيل الخاصة بك حولها:

أصبحت أدواتك الآن واجهة برمجة تطبيقات (API) يستدعيها كود شخص آخر

في ظل الاستدعاء الكلاسيكي للدوال، كانت الأداة تُستدعى مرة واحدة لكل رحلة ذهاب وعودة، مع حلقة مكتوبة بواسطة الإنسان تحدد الوتيرة والترتيب. في ظل استدعاء الأدوات البرمجي، يستدعي الكود المُولَّد أدواتك بشكل متقطع، ويتفرع بناءً على استجاباتها، ويجمع مخرجاتها. كل أداة هي عقد واجهة برمجة تطبيقات يستهلكه عميل مكتوب آليًا لا تراجعه أبدًا قبل تشغيله.

وهذا يرفع مستوى أربعة أشياء:

هنا حيث يكسب منضدة عمل API حقيقية مكانتها. حدد أو استورد مواصفات كل نقطة نهاية أداة، أرسل طلبات اختبار مقابلها، وتأكد من أن مخطط الاستجابة يطابق ما تعد به تعريف أداتك. ثم اذهب خطوة أبعد: قم بمحاكاة واجهة برمجة تطبيقات الأداة حتى تتمكن من ممارسة التنسيق مقابل بيانات وهمية يمكن التنبؤ بها دون لمس الإنتاج. قم بتنزيل Apidog وسيخدم خادم المحاكاة المدمج به استجابات ذات شكل مخطط لكل نقطة نهاية قمت بتعريفها، بحيث يمكنك تسليم النموذج سطح أداة كامل ومشاهدة كيفية تنسيقه قبل لمس سجل حقيقي واحد.

زر

الميزات الأخرى المتاحة للجمهور باختصار

لم يتم إطلاق استدعاء الأدوات البرمجي وحده. هناك إضافتان متجاورتان لواجهة برمجة تطبيقات Responses مهمتان هنا:

كلاهما يتراكم مع استدعاء الأدوات البرمجي: وكيل يحافظ على استدلاله عبر الأدوار ويكتب تنسيقه الخاص يقوم بعمل أقل تكرارًا بكثير لكل مهمة.

استدعاء الأدوات البرمجي مقابل وضع Ultra

أتى الإطلاق أيضًا بوضع "Ultra"، ويختلط الأمر بين الاثنين لأن كلاهما يقوم بالمزيد لكل طلب. لكنهما يحلان مشاكل مختلفة في الأداء.

Ultra هو إعداد متعدد الوكلاء يشغل أربعة وكلاء بالتوازي افتراضيًا، وينفق المزيد من الرموز المميزة عمدًا لتقليل الوقت الفعلي؛ وفقًا لـ OpenAI، فإنه يرفع أداء Terminal-Bench 2.1 من 88.8% إلى 91.9%. وهو متاح في ChatGPT Work على خطط Pro و Enterprise، وفي Codex من Plus فما فوق. استدعاء الأدوات البرمجي هو قدرة في واجهة برمجة التطبيقات حيث يقوم وكيل واحد بتنسيق أدواته في الكود. Ultra يوازي التفكير؛ بينما استدعاء الأدوات البرمجي يختصر رحلات التنفيذ ذهابًا وإيابًا. يتوفر التفصيل الكامل في مقالنا وضع Ultra في GPT-5.6، ولكن باختصار: إذا كان عنق الزجاجة لديك هو زمن انتقال استدعاء الأداة، فأنت تريد استدعاء الأدوات البرمجي؛ وإذا كان وقت التفكير في المشاكل الصعبة، فأنت تريد Ultra.

زر

الأسئلة الشائعة

هل أحتاج إلى إعادة كتابة تعريفات أدواتي الحالية؟

لا. تحتفظ الأدوات بنفس شكل JSON Schema الموضح في الكود أعلاه، وتُحمل التعريفات المكتوبة للاستدعاء التقليدي للدوال. العمل الجدير بالاهتمام هو تشديدها: إضافة تعدادات، تحديد التنسيقات، وجعل الأوصاف دقيقة بما يكفي لكي لا يسيء الكود المُولَّد قراءتها.

هل يمكن لجافاسكريبت المُولَّدة الوصول إلى الإنترنت؟

لا. يتم تشغيل الكود في بيئة تشغيل V8 معزولة بدون وصول للشبكة، وأدواتك المعلنة هي السبيل الوحيد للتأثير على أي شيء خارج البيئة المعزولة. وهذا يجعل سطح أداتك هو نموذج المخاطر بأكمله، لذا راجع الأدوات التي تعرضها بنفس العناية التي توليها لواجهة برمجة تطبيقات عامة.

ما هي نماذج GPT-5.6 التي تدعم استدعاء الأدوات البرمجي؟

توثقها OpenAI كواجهة برمجة تطبيقات Responses لعائلة GPT-5.6، وجميع المستويات الثلاثة (gpt-5.6-sol، gpt-5.6-terra، gpt-5.6-luna) متاحة للخدمة الذاتية لأي حساب API. تحقق من مرجع واجهة برمجة التطبيقات للحصول على تفاصيل على مستوى المستوى قبل الالتزام بواحد. للحصول على الإعدادات الرئيسية ومعرفة كيفية تنفيذ الطلب الأول، راجع كيفية استخدام واجهة برمجة تطبيقات GPT-5.6.

كيف يختلف هذا عن مترجم الكود؟

مترجم الكود يقوم بتشغيل الكود كناتج: تحليل، رسوم بيانية، تحويلات ملفات. استدعاء الأدوات البرمجي يولد كودًا وظيفته الوحيدة هي تنسيق أدواتك المعلنة؛ النتيجة هي نتائج الأداة المجمعة، وليس الكود نفسه.

إلى أين يقودك هذا

كانت حلقة الذهاب والإياب هي الجزء الأقل إثارة للاهتمام في كل وكيل قمت بنشره، وقد جعلها GPT-5.6 اختيارية. انتقلت عملية التنسيق إلى النموذج؛ وانتقلت مسؤولية واجهات برمجة تطبيقات (API) للأدوات النظيفة والدقيقة وذات الأداء الجيد إليك، بوزن أكبر من ذي قبل.

الخطوة التالية ملموسة. اختر سير عمل واحدًا يعتمد بشكل كبير على القراءة، واكتب أو شدد مخططات الأدوات التي يحتاجها، وضع كل نقطة نهاية عبر عميل وخادم محاكاة Apidog API حتى يظل العقد ثابتًا تحت الاستدعاءات المتدفقة والمدخلات السيئة. عندما يبدأ النموذج في كتابة التعليمات البرمجية مقابل أدواتك، فأنت تريد أن يقرأ هذا الكود من سطح قمت باختباره بالفعل.

ممارسة تصميم API في Apidog

اكتشف طريقة أسهل لبناء واستخدام واجهات برمجة التطبيقات