DEV Community

Cover image for ما هو GPT-Realtime-2 وكيفية استخدام واجهة برمجة التطبيقات GPT-Realtime-2
Yusuf Khalidd
Yusuf Khalidd

Posted on • Originally published at apidog.com

ما هو GPT-Realtime-2 وكيفية استخدام واجهة برمجة التطبيقات GPT-Realtime-2

أصدرت OpenAI جيلًا جديدًا من النماذج الصوتية في 6 نوفمبر 2026، وأبرزها gpt-realtime-2: نموذج كلام-إلى-كلام يعمل عبر واجهة Realtime الحالية، مع استدلال من فئة GPT-5، ونافذة سياق 128,000 رمز، ومستوى استدلال قابل للتكوين للموازنة بين زمن الاستجابة وجودة الإجابة. إذا كنت تستخدم gpt-realtime بالفعل، فالترحيل غالبًا يبدأ بتغيير اسم النموذج وإضافة بعض إعدادات الجلسة الجديدة.

جرّب Apidog اليوم

في هذا الدليل سنحوّل المعلومات الأساسية إلى خطوات تنفيذية: ما هو GPT-Realtime-2، ما الذي تغيّر، كيف تُنشئ اتصال WebSocket، كيف تضبط الصوت والاستدلال والأدوات، وكيف تختبر الجلسات في Apidog بدون إعادة تسجيل الصوت في كل تشغيل.

للاطلاع على سياق خط نماذج OpenAI الأوسع لعام 2026، راجع ما هو GPT-5.5. وللنسخة متعددة الوسائط، راجع كيفية استخدام واجهة برمجة تطبيقات GPT-Image-2.

ملخص سريع

  • معرف النموذج: gpt-realtime-2.
  • الاستخدام الأساسي: وكيل صوتي مباشر يستقبل الصوت ويُنتج الصوت عبر WebSocket.
  • نافذة السياق: 128,000 رمز.
  • الحد الأقصى للإخراج: 32,000 رمز.
  • المدخلات: نص، صوت، صورة.
  • المخرجات: نص، صوت.
  • الصوت: 32 دولارًا لكل مليون رمز إدخال، و64 دولارًا لكل مليون رمز إخراج.
  • الإدخال المخزن مؤقتًا: 0.40 دولار لكل مليون رمز للصوت.
  • الأصوات الجديدة: cedar و marin.
  • مستويات الاستدلال: minimal، low، medium، high، xhigh.
  • الاتصال: wss://api.openai.com/v1/realtime?model=gpt-realtime-2
  • النماذج المرافقة:
    • GPT-Realtime-Translate للترجمة المباشرة.
    • GPT-Realtime-Whisper للنسخ المباشر.
  • يمكنك استخدام Apidog لحفظ جلسات WebSocket، إعادة تشغيل الرسائل، ومقارنة أحداث الصوت بين التجارب.

ما هو GPT-Realtime-2؟

GPT-Realtime-2 هو نموذج واحد لتحويل الكلام إلى كلام. بدل بناء خط أنابيب من:

  1. تحويل الكلام إلى نص.
  2. تمرير النص إلى نموذج لغة.
  3. تحويل النص الناتج إلى صوت.

يرسل العميل الصوت مباشرة إلى النموذج، ويتولى النموذج النسخ، والاستدلال، واستدعاء الأدوات، وتوليد الصوت ضمن جلسة واحدة.

GPT-Realtime-2

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

المواصفات الأساسية:

الخاصية القيمة
معرف النموذج gpt-realtime-2
نافذة السياق 128,000 رمز
الحد الأقصى للإخراج 32,000 رمز
وسائط الإدخال نص، صوت، صورة
وسائط الإخراج نص، صوت
تاريخ قطع المعرفة 2024-09-30
مستويات الاستدلال minimal, low, medium, high, xhigh
استدعاء الوظائف نعم
خوادم MCP عن بعد نعم
إدخال الصور نعم
الاتصال الهاتفي عبر SIP نعم

ما الذي تغير مقارنة بـ gpt-realtime؟

مقارنة بـ gpt-realtime-1.5، يحقق gpt-realtime-2 نتائج أعلى في اختبارات الصوت:

  • Big Bench Audio: من 81.4% إلى 96.6%.
  • Audio MultiChallenge: من 34.7% إلى 48.5%.

هذه النتائج شُغّلت بمستويات استدلال high و xhigh. في الإنتاج، الإعداد الافتراضي هو low لتقليل زمن الاستجابة.

أهم التغييرات العملية:

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

مقارنة GPT-Realtime

أهم تغيير معماري هو نمو السياق من 32 ألف رمز إلى 128 ألف رمز، ما يجعل الجلسات الصوتية الطويلة أكثر قابلية للتطبيق.

التسعير

يتم احتساب GPT-Realtime-2 حسب الرموز، مع أسعار منفصلة للنص والصوت والصورة.

نوع الرمز الإدخال الإدخال المخزن مؤقتًا الإخراج
نص $4.00 / 1M $0.40 / 1M $24.00 / 1M
صوت $32.00 / 1M $0.40 / 1M $64.00 / 1M
صورة $5.00 / 1M $0.50 / 1M غير متوفر

الإدخال المخزن مؤقتًا مهم جدًا إذا كان لديك موجه نظام ثابت أو مستندات تُعاد إضافتها في كل جلسة. في هذه الحالة، حاول الحفاظ على قابلية إعادة استخدام السياق لتقليل التكلفة.

للمقارنة مع بقية خط OpenAI، راجع تسعير GPT-5.5.

أسعار النماذج المرافقة تُحسب بالدقيقة:

  • GPT-Realtime-Translate: ‏0.034 دولار/دقيقة. يدعم 70 لغة إدخال و13 لغة إخراج.
  • GPT-Realtime-Whisper: ‏0.017 دولار/دقيقة. مناسب للنسخ المباشر والمستمر.

استخدم:

  • gpt-realtime-2 عندما تحتاج إلى استدلال + كلام مباشر.
  • GPT-Realtime-Translate للترجمة الحية.
  • GPT-Realtime-Whisper عندما تحتاج إلى النسخ فقط.

نقاط النهاية والمصادقة

نقاط النهاية المتاحة:

POST https://api.openai.com/v1/chat/completions
POST https://api.openai.com/v1/responses
WSS  wss://api.openai.com/v1/realtime?model=gpt-realtime-2
WSS  wss://api.openai.com/v1/realtime?call_id={call_id}   # for SIP
POST https://api.openai.com/v1/realtime/translations
POST https://api.openai.com/v1/realtime/transcription_sessions
Enter fullscreen mode Exit fullscreen mode

لوكلاء الصوت المباشر، استخدم WebSocket:

wss://api.openai.com/v1/realtime?model=gpt-realtime-2
Enter fullscreen mode Exit fullscreen mode

الرؤوس المطلوبة:

Authorization: Bearer $OPENAI_API_KEY
OpenAI-Beta: realtime=v1
Enter fullscreen mode Exit fullscreen mode

اضبط المفتاح في بيئة التشغيل:

export OPENAI_API_KEY="sk-proj-..."
Enter fullscreen mode Exit fullscreen mode

الاتصال عبر WebSocket باستخدام Node.js

مثال عميل بسيط:

import WebSocket from "ws";

const ws = new WebSocket(
  "wss://api.openai.com/v1/realtime?model=gpt-realtime-2",
  {
    headers: {
      Authorization: `Bearer ${process.env.OPENAI_API_KEY}`,
      "OpenAI-Beta": "realtime=v1",
    },
  }
);

ws.on("open", () => {
  ws.send(JSON.stringify({
    type: "session.update",
    session: {
      voice: "cedar",
      instructions: "You are a friendly support agent for a fintech app.",
      input_audio_format: "pcm16",
      output_audio_format: "pcm16",
      turn_detection: { type: "server_vad" },
      reasoning: { effort: "low" },
    },
  }));
});

ws.on("message", (raw) => {
  const event = JSON.parse(raw.toString());

  if (event.type === "response.audio.delta") {
    // event.delta يحتوي على مقطع صوت PCM16 مشفر base64
    process.stdout.write(Buffer.from(event.delta, "base64"));
  }
});
Enter fullscreen mode Exit fullscreen mode

تعمل الجلسة بنمط أحداث:

  • ترسل session.update لضبط الصوت، التعليمات، الصيغ، ومستوى الاستدلال.
  • ترسل input_audio_buffer.append أثناء كلام المستخدم.
  • يرسل الخادم response.audio.delta أثناء رد النموذج.
  • تستخدم response.create لطلب استجابة عند الحاجة.

صيغة pcm16 بتردد 24 كيلوهرتز هي خيار آمن. يدعم النموذج أيضًا G.711 mu-law وA-law، وهي مهمة عند الربط مع أنظمة الهاتف.

للمقارنة بين Realtime وResponses API، راجع كيفية استخدام واجهة برمجة تطبيقات GPT-5.5.

إرسال الصوت إلى الجلسة

الهيكل العام لإرسال الصوت يكون كالتالي:

function appendAudioChunk(base64Audio) {
  ws.send(JSON.stringify({
    type: "input_audio_buffer.append",
    audio: base64Audio,
  }));
}

function commitAudio() {
  ws.send(JSON.stringify({
    type: "input_audio_buffer.commit",
  }));

  ws.send(JSON.stringify({
    type: "response.create",
  }));
}
Enter fullscreen mode Exit fullscreen mode

في تطبيق إنتاجي، ستقرأ الصوت من:

  • متصفح عبر Web Audio API.
  • جهاز محلي عبر Node.js.
  • مزود اتصالات عبر SIP أو WebRTC bridge.
  • ملف صوتي أثناء الاختبار.

الأصوات المتاحة

الصوتان الجديدان:

  • cedar: صوت ذكوري دافئ ومتوسط النبرة، مناسب للوكلاء العامين.
  • marin: صوت أنثوي واضح، مناسب للترجمة والإعلانات.

الأصوات السابقة ما زالت متاحة:

alloy
ash
ballad
coral
echo
sage
shimmer
verse
Enter fullscreen mode Exit fullscreen mode

لتغيير الصوت أثناء الجلسة، أرسل session.update جديدًا:

ws.send(JSON.stringify({
  type: "session.update",
  session: {
    voice: "marin",
  },
}));
Enter fullscreen mode Exit fullscreen mode

إدخال الصور

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

ws.send(JSON.stringify({
  type: "conversation.item.create",
  item: {
    type: "message",
    role: "user",
    content: [
      {
        type: "input_image",
        image_url: "https://example.com/screenshot.png",
      },
      {
        type: "input_text",
        text: "What does this error mean?",
      },
    ],
  },
}));

ws.send(JSON.stringify({ type: "response.create" }));
Enter fullscreen mode Exit fullscreen mode

أنماط استخدام عملية:

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

للتعمق في مكدس الصور، راجع كيفية استخدام واجهة برمجة تطبيقات GPT-Image-2.

استدعاء الوظائف و MCP

يدعم GPT-Realtime-2:

  1. أدوات الوظائف التقليدية.
  2. خوادم MCP عن بعد.

في استدعاء الوظائف التقليدي:

  • تعرّف الأدوات داخل الجلسة.
  • يرسل النموذج أحداثًا مثل response.function_call_arguments.delta.
  • ينفذ تطبيقك الوظيفة.
  • تعيد النتيجة كعنصر function_call_output.

الميزة الجديدة المهمة هي أن النموذج يمكنه تشغيل استدعاءات متوازية مع استمرار السرد الصوتي.

مثال إعداد خادم MCP:

ws.send(JSON.stringify({
  type: "session.update",
  session: {
    tools: [
      {
        type: "mcp",
        server_url: "https://mcp.example.com/sse",
        allowed_tools: [
          "lookup_account",
          "list_transactions",
        ],
      },
    ],
  },
}));
Enter fullscreen mode Exit fullscreen mode

في هذا النمط، تُنفذ واجهة Realtime استدعاءات MCP نفسها، بدل أن يمر كل استدعاء عبر حلقة أحداث تطبيقك.

إذا كنت تختبر MCP قبل ربطه بوكيل صوتي، راجع اختبار خادم MCP في Apidog.

الاتصال الهاتفي عبر SIP

يدعم GPT-Realtime-2 استقبال مكالمات هاتفية حقيقية عبر SIP.

النمط العام:

  1. توجّه خط SIP إلى بوابة SIP الخاصة بـ OpenAI.
  2. المكالمة الواردة تفتح جلسة WebSocket.
  3. يتصل تطبيقك بـ:
wss://api.openai.com/v1/realtime?call_id={call_id}
Enter fullscreen mode Exit fullscreen mode

يدعم النموذج G.711 mu-law وA-law مباشرة، لذلك لا تحتاج إلى تحويل ترميز في الجسر عند استخدام هذه الصيغ.

هذا يجعل النموذج مناسبًا لوكلاء مراكز الاتصال الذين يحتاجون إلى:

  • التحدث مباشرة مع المستخدم.
  • استدعاء أدوات داخلية.
  • جلب بيانات من أنظمة متعددة.
  • التعامل مع مكالمة طويلة دون مغادرة جلسة Realtime.

مستويات الاستدلال

اختر مستوى الاستدلال حسب نوع المهمة وزمن الاستجابة المقبول.

المستوى حالة الاستخدام تكلفة التأخير التقريبية
minimal إجابات قصيرة جدًا أو نعم/لا شبه معدومة
low الإعداد الافتراضي للدعم والمحادثة صغيرة
medium إزالة الغموض واستدعاءات أدوات أكثر تعقيدًا معتدلة
high استدلال متعدد الخطوات أو مراجعة كود صوتيًا عالية
xhigh أسئلة تحليلية صعبة أو قياسات الأعلى

ابدأ دائمًا بـ:

reasoning: { effort: "low" }
Enter fullscreen mode Exit fullscreen mode

ثم ارفع المستوى فقط إذا أثبتت القياسات أن الجودة غير كافية.

مثال تغيير المستوى:

ws.send(JSON.stringify({
  type: "session.update",
  session: {
    reasoning: {
      effort: "medium",
    },
  },
}));
Enter fullscreen mode Exit fullscreen mode

اختبار واجهة Realtime في Apidog

تصحيح WebSocket من الطرفية صعب لأن الجلسة ذات حالة وتنتج أحداثًا كثيرة. في Apidog يمكنك حفظ السيناريو كاملًا وإعادة تشغيله.

اختبار Realtime في Apidog

خطوات عملية:

  1. أنشئ طلب WebSocket جديدًا.
  2. استخدم عنوان الاتصال:
wss://api.openai.com/v1/realtime?model=gpt-realtime-2
Enter fullscreen mode Exit fullscreen mode
  1. أضف الرؤوس:
Authorization: Bearer {{OPENAI_API_KEY}}
OpenAI-Beta: realtime=v1
Enter fullscreen mode Exit fullscreen mode
  1. احفظ رسالة session.update.
  2. أضف رسائل input_audio_buffer.append.
  3. أرسل response.create.
  4. راقب أحداث الخادم مثل:
    • response.audio.delta
    • response.done
    • response.function_call_arguments.delta

يمكنك تنزيل Apidog، إنشاء بيئة تحتوي على OPENAI_API_KEY، ثم إعادة تشغيل نفس جلسة WebSocket مع أصوات أو مستويات استدلال مختلفة.

هذا مفيد خصوصًا عند مقارنة:

  • low مقابل medium.
  • cedar مقابل marin.
  • إخراج الجلسة مع أدوات وبدون أدوات.
  • عدد رموز الصوت الناتجة بين تشغيلين.

للمقارنة مع نموذج سريع متعدد الوسائط، راجع كيفية استخدام واجهة برمجة تطبيقات Gemini 3 Flash Preview.

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

ما معرف النموذج الذي يجب تمريره؟

استخدم:

gpt-realtime-2
Enter fullscreen mode Exit fullscreen mode

لا يزال النموذج السابق متاحًا باسم:

gpt-realtime
Enter fullscreen mode Exit fullscreen mode

كما يتوفر الإصدار الخفيف:

gpt-realtime-2-mini
Enter fullscreen mode Exit fullscreen mode

هل يمكن بث صوت المستخدم أثناء تشغيل صوت النموذج؟

نعم. تستخدم واجهة Realtime اكتشاف النشاط الصوتي من جانب الخادم، أو server_vad، افتراضيًا. عندما يبدأ المستخدم بالكلام، يمكن للنموذج التوقف أو التعامل مع المقاطعة حسب إعدادات الجلسة.

هل تتضمن نافذة 128 ألف رمز رموز الصوت؟

نعم. الصوت يُرمّز أيضًا. ثانية واحدة من الصوت تعادل تقريبًا 50 رمزًا حسب التنسيق، لذلك يمكن لمكالمة دعم طويلة أن تستهلك السياق أسرع من محادثة نصية طويلة.

هل التعديل الدقيق مدعوم؟

ليس بعد. وفقًا لبطاقة النموذج، لا يدعم GPT-Realtime-2 حاليًا التعديل الدقيق، أو المخرجات المتوقعة، أو بث النص على Chat Completions. نقطة نهاية Realtime تبث الصوت بطبيعتها.

كيف يقارن هذا بـ GPT-5.5 مع TTS؟

استخدام نموذج نصي مع TTS يفقد جزءًا من معلومات الصوت، مثل النبرة، التردد، والتركيز. إذا كان الوكيل يحتاج إلى فهم كيفية كلام المستخدم وليس فقط الكلمات، فـ GPT-Realtime-2 هو الخيار الأنسب. للاستدلال النصي البحت، راجع كيفية استخدام واجهة برمجة تطبيقات GPT-5.5.

ما حدود المعدل؟

يبدأ المستوى 1 بـ 40,000 رمز في الدقيقة، ويتوسع حتى 15 مليون رمز في الدقيقة في المستوى 5. حدود المعدل لكل نموذج، لذلك لا تنتقل حصة GPT-5 الحالية تلقائيًا إلى GPT-Realtime-2.

خاتمة

GPT-Realtime-2 يجعل بناء وكيل صوتي مباشر أبسط: اتصال WebSocket واحد، سياق 128 ألف رمز، إدخال صوت وصورة، إخراج صوت، استدعاء أدوات، MCP، ودعم SIP.

ابدأ بالتنفيذ كالتالي:

  1. أنشئ جلسة WebSocket على gpt-realtime-2.
  2. اضبط voice على cedar أو marin.
  3. استخدم reasoning.effort = "low" كبداية.
  4. أضف الأدوات أو MCP عند الحاجة.
  5. اختبر الجلسات في Apidog قبل إدخالها في الإنتاج.
  6. ارفع مستوى الاستدلال فقط عند وجود قياس واضح لفجوة الجودة.

html
<div style="position: relative; width: 100%; padding-top: 56.25%;">
  <iframe src="https://www.youtube.com/embed/UMl4Vo_RwkU?si=NcqL2Sz2ckCxX4iX" title="كيفية إنشاء توثيق API عام باستخدام APIDog" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen="" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%;">
  </iframe>
</div>
Enter fullscreen mode Exit fullscreen mode

Top comments (0)