أصدرت OpenAI جيلًا جديدًا من النماذج الصوتية في 6 نوفمبر 2026، وأبرزها gpt-realtime-2: نموذج كلام-إلى-كلام يعمل عبر واجهة Realtime الحالية، مع استدلال من فئة GPT-5، ونافذة سياق 128,000 رمز، ومستوى استدلال قابل للتكوين للموازنة بين زمن الاستجابة وجودة الإجابة. إذا كنت تستخدم gpt-realtime بالفعل، فالترحيل غالبًا يبدأ بتغيير اسم النموذج وإضافة بعض إعدادات الجلسة الجديدة.
في هذا الدليل سنحوّل المعلومات الأساسية إلى خطوات تنفيذية: ما هو 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 هو نموذج واحد لتحويل الكلام إلى كلام. بدل بناء خط أنابيب من:
- تحويل الكلام إلى نص.
- تمرير النص إلى نموذج لغة.
- تحويل النص الناتج إلى صوت.
يرسل العميل الصوت مباشرة إلى النموذج، ويتولى النموذج النسخ، والاستدلال، واستدعاء الأدوات، وتوليد الصوت ضمن جلسة واحدة.
يدعم النموذج أيضًا إدخال الصور. يمكنك مثلًا إرسال لقطة شاشة أثناء مكالمة دعم، ثم يصف الوكيل المشكلة ويتابع الحوار صوتيًا.
المواصفات الأساسية:
| الخاصية | القيمة |
|---|---|
| معرف النموذج | 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 لتقليل زمن الاستجابة.
أهم التغييرات العملية:
- مقدمات صوتية قصيرة: يمكن للنموذج قول عبارات مثل "دعني أتحقق من ذلك" أثناء تنفيذ الاستدلال أو الأدوات.
- استدعاء أدوات متوازٍ: يمكنه تشغيل أكثر من أداة في الوقت نفسه بدل الانتظار التسلسلي.
- تعافٍ أفضل من المنعطفات الغامضة: لا يحتاج دائمًا إلى إعادة بدء الحوار عند فشل جزئي.
- تحكم أفضل في النبرة والمصطلحات: مفيد لوكلاء الدعم، البنوك، التعليم، والرعاية.
أهم تغيير معماري هو نمو السياق من 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
لوكلاء الصوت المباشر، استخدم WebSocket:
wss://api.openai.com/v1/realtime?model=gpt-realtime-2
الرؤوس المطلوبة:
Authorization: Bearer $OPENAI_API_KEY
OpenAI-Beta: realtime=v1
اضبط المفتاح في بيئة التشغيل:
export OPENAI_API_KEY="sk-proj-..."
الاتصال عبر 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"));
}
});
تعمل الجلسة بنمط أحداث:
- ترسل
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",
}));
}
في تطبيق إنتاجي، ستقرأ الصوت من:
- متصفح عبر Web Audio API.
- جهاز محلي عبر Node.js.
- مزود اتصالات عبر SIP أو WebRTC bridge.
- ملف صوتي أثناء الاختبار.
الأصوات المتاحة
الصوتان الجديدان:
-
cedar: صوت ذكوري دافئ ومتوسط النبرة، مناسب للوكلاء العامين. -
marin: صوت أنثوي واضح، مناسب للترجمة والإعلانات.
الأصوات السابقة ما زالت متاحة:
alloy
ash
ballad
coral
echo
sage
shimmer
verse
لتغيير الصوت أثناء الجلسة، أرسل session.update جديدًا:
ws.send(JSON.stringify({
type: "session.update",
session: {
voice: "marin",
},
}));
إدخال الصور
يمكنك إرفاق صورة ضمن رسالة المستخدم. هذا مفيد لوكلاء الدعم الذين يحتاجون إلى رؤية لقطة شاشة أو صورة من المستخدم.
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" }));
أنماط استخدام عملية:
- اختبار واجهات المستخدم بالصوت: يلتقط المختبر صورة للشاشة، ويُملي النموذج تقرير الخطأ.
- الدعم الميداني: يرسل الفني صورة للوحة أو جهاز، ويقوده الوكيل خلال التشخيص.
- إمكانية الوصول: يصف الوكيل الشاشة الحالية للمستخدم أثناء مكالمة دعم.
للتعمق في مكدس الصور، راجع كيفية استخدام واجهة برمجة تطبيقات GPT-Image-2.
استدعاء الوظائف و MCP
يدعم GPT-Realtime-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",
],
},
],
},
}));
في هذا النمط، تُنفذ واجهة Realtime استدعاءات MCP نفسها، بدل أن يمر كل استدعاء عبر حلقة أحداث تطبيقك.
إذا كنت تختبر MCP قبل ربطه بوكيل صوتي، راجع اختبار خادم MCP في Apidog.
الاتصال الهاتفي عبر SIP
يدعم GPT-Realtime-2 استقبال مكالمات هاتفية حقيقية عبر SIP.
النمط العام:
- توجّه خط SIP إلى بوابة SIP الخاصة بـ OpenAI.
- المكالمة الواردة تفتح جلسة WebSocket.
- يتصل تطبيقك بـ:
wss://api.openai.com/v1/realtime?call_id={call_id}
يدعم النموذج G.711 mu-law وA-law مباشرة، لذلك لا تحتاج إلى تحويل ترميز في الجسر عند استخدام هذه الصيغ.
هذا يجعل النموذج مناسبًا لوكلاء مراكز الاتصال الذين يحتاجون إلى:
- التحدث مباشرة مع المستخدم.
- استدعاء أدوات داخلية.
- جلب بيانات من أنظمة متعددة.
- التعامل مع مكالمة طويلة دون مغادرة جلسة Realtime.
مستويات الاستدلال
اختر مستوى الاستدلال حسب نوع المهمة وزمن الاستجابة المقبول.
| المستوى | حالة الاستخدام | تكلفة التأخير التقريبية |
|---|---|---|
minimal |
إجابات قصيرة جدًا أو نعم/لا | شبه معدومة |
low |
الإعداد الافتراضي للدعم والمحادثة | صغيرة |
medium |
إزالة الغموض واستدعاءات أدوات أكثر تعقيدًا | معتدلة |
high |
استدلال متعدد الخطوات أو مراجعة كود صوتيًا | عالية |
xhigh |
أسئلة تحليلية صعبة أو قياسات | الأعلى |
ابدأ دائمًا بـ:
reasoning: { effort: "low" }
ثم ارفع المستوى فقط إذا أثبتت القياسات أن الجودة غير كافية.
مثال تغيير المستوى:
ws.send(JSON.stringify({
type: "session.update",
session: {
reasoning: {
effort: "medium",
},
},
}));
اختبار واجهة Realtime في Apidog
تصحيح WebSocket من الطرفية صعب لأن الجلسة ذات حالة وتنتج أحداثًا كثيرة. في Apidog يمكنك حفظ السيناريو كاملًا وإعادة تشغيله.
خطوات عملية:
- أنشئ طلب WebSocket جديدًا.
- استخدم عنوان الاتصال:
wss://api.openai.com/v1/realtime?model=gpt-realtime-2
- أضف الرؤوس:
Authorization: Bearer {{OPENAI_API_KEY}}
OpenAI-Beta: realtime=v1
- احفظ رسالة
session.update. - أضف رسائل
input_audio_buffer.append. - أرسل
response.create. - راقب أحداث الخادم مثل:
response.audio.deltaresponse.doneresponse.function_call_arguments.delta
يمكنك تنزيل Apidog، إنشاء بيئة تحتوي على OPENAI_API_KEY، ثم إعادة تشغيل نفس جلسة WebSocket مع أصوات أو مستويات استدلال مختلفة.
هذا مفيد خصوصًا عند مقارنة:
-
lowمقابلmedium. -
cedarمقابلmarin. - إخراج الجلسة مع أدوات وبدون أدوات.
- عدد رموز الصوت الناتجة بين تشغيلين.
للمقارنة مع نموذج سريع متعدد الوسائط، راجع كيفية استخدام واجهة برمجة تطبيقات Gemini 3 Flash Preview.
الأسئلة الشائعة
ما معرف النموذج الذي يجب تمريره؟
استخدم:
gpt-realtime-2
لا يزال النموذج السابق متاحًا باسم:
gpt-realtime
كما يتوفر الإصدار الخفيف:
gpt-realtime-2-mini
هل يمكن بث صوت المستخدم أثناء تشغيل صوت النموذج؟
نعم. تستخدم واجهة 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.
ابدأ بالتنفيذ كالتالي:
- أنشئ جلسة WebSocket على
gpt-realtime-2. - اضبط
voiceعلىcedarأوmarin. - استخدم
reasoning.effort = "low"كبداية. - أضف الأدوات أو MCP عند الحاجة.
- اختبر الجلسات في Apidog قبل إدخالها في الإنتاج.
- ارفع مستوى الاستدلال فقط عند وجود قياس واضح لفجوة الجودة.
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>



Top comments (0)