> ## Documentation Index
> Fetch the complete documentation index at: https://docs.acedata.cloud/llms.txt
> Use this file to discover all available pages before exploring further.

# GPT-Live محادثة صوتية فورية

> OpenAI generation API guide - Ace Data Cloud

يدعم GPT-Live الاستماع والتحدث في الوقت نفسه، والترجمات الثنائية، والمهام الخلفية. تستخدم مكالمات ChatGPT الصوتية في Studio ‏`gpt-live-1` لمعالجة الصوت، بينما تستمر الأسئلة المعقدة في المعالجة بواسطة نموذج الدردشة المحدد حاليًا.

## الاتصال

استخدم Platform API Token للاتصال بـ `wss://realtime.acedata.cloud/v1/live/sessions`. تستخدم بيانات اعتماد Studio أو خدمة الدردشة `wss://realtime.acedata.cloud/aichat2/live`. يقوم الخادم بالمصادقة عبر `Authorization: Bearer <token>`؛ ويمرر المتصفح بيانات الاعتماد عبر بروتوكول WebSocket الفرعي لتجنب كتابتها في URL:

```javascript theme={null}
const socket = new WebSocket('wss://realtime.acedata.cloud/aichat2/live', [
  'live', `acedata-token.${token}`
]);
socket.onopen = () => socket.send(JSON.stringify({
  type: 'session.start',
  session: {
    model: 'gpt-live-1',
    instructions: '简洁友好地回答，使用用户的语言。复杂问题交给后台处理。',
    audio: { format: { type: 'audio/pcm', rate: 24000 }, output: { voice: 'marin' } },
    delegation: { type: 'client' },
    store: false
  }
}));
```

بعد انتظار `session.started`، أرسل `session.input_audio.append` بشكل متواصل، حيث يكون `audio` هو Base64 للصوت الخام PCM أحادي القناة، بمعدل 24 kHz، و16 بت little-endian، من دون ترويسة ملف WAV. أرسل الصوت وفقًا لمعدل أخذ العينات الفعلي، ويجب أن تبقى المقاطع الصامتة متواصلة أيضًا.

شغّل `session.output_audio.delta.delta` بالترتيب. تأتي ترجمات المستخدم والمساعد من `session.input_transcript.delta` و`session.output_transcript.delta` على التوالي، مع الاحتفاظ بـ `delta` و`start_ms` و`end_ms` لكل مقطع؛ وقد تنمو ترجمات الطرفين في الوقت نفسه. لا يحتوي Live على حدث انتهاء لكل رد صوتي، ويجب تحديث حالة «جارٍ الرد» وفقًا لقائمة التشغيل المحلية.

## المهام الخلفية

يدعم حاليًا وضع التفويض `client`. بعد تلقي `session.delegation.created`، يستدعي التطبيق الخلفية الخاصة به بناءً على الترجمات الصوتية والسياق المحفوظ، ويعيد النتائج عبر `session.thinking.append` أو `session.commentary.append`، مع تضمين `delegation_id` المقابل و`content` نصيًا خالصًا بحد أقصى 500 token. يجب أن تأتي النتائج من عمليات خلفية مكتملة؛ ولا يعني انقطاع الصوت أن المهمة الخلفية قد أُلغيت.

لا يتم دعم تفويض Responses المُدار، أو تخزين التسجيلات، أو `session.update`، أو استئناف الجلسة، أو إعادة الاتصال التلقائية في الوقت الحالي. النموذج ثابت على `gpt-live-1`، والصوت ثابت على PCM16 بمعدل 24 kHz، ويتم اختيار الصوت عند بدء المكالمة. لا يزال بإمكانك استخدام Realtime API القديم.

## الفوترة وإنهاء المكالمة

تُحتسب تكلفة الصوت بحسب مدة الجلسة النشطة: **0.01 Credits/ثانية، أي 0.6 Credits/دقيقة**، ولا يتم التقريب إلى أعلى بالدقائق الكاملة. تُحتسب تكلفة وقت تحدث المستخدم، وتحدث المساعد، والصمت، وصمت الطرفين، وانتظار المهام الخلفية. تُحتسب تكلفة استدعاءات النموذج أو الأدوات الخلفية بشكل منفصل وفقًا للـ API المقابل. يعتمد السعر بالدولار المقابل لـ Credits على باقة الشحن، ويُعتد بالسعر الحالي في وحدة التحكم.

`session.usage.updated.usage.seconds` هو الاستخدام التراكمي. على سبيل المثال، إذا تم تلقي 12 ثانية أولًا ثم 15 ثانية، فالإجمالي هو 15 ثانية. لا تقوم المنصة بتسوية سوى المدة الجديدة، ولا تجمع اللقطات بشكل مكرر.

عند الانتهاء، أرسل `session.close`، واستمر في الاستقبال حتى تلقي `session.closed`، ثم أغلق الاتصال وحرر الميكروفون. قد يؤدي الفصل القسري إلى عدم تأكيد الاستخدام النهائي، ويجب أن تعرض الواجهة ذلك بوضوح. سينتهي الاتصال عند عدم كفاية الرصيد، أو فشل الفوترة، أو بلوغ حد الجلسة. الحد الافتراضي للمكالمة الواحدة هو 30 دقيقة.

تُعاد أخطاء المعلمات عبر حدث `error`؛ ويطابق `error.client_event_id` الأمر الفاشل. يجب عند فشل البدء إيقاف التسجيل وعرض الخطأ، من دون تبديل النموذج تلقائيًا أو إعادة المحاولة بما يولد رسومًا جديدة.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.