تتيح Gemini Live API تفاعلات ثنائية الاتجاه منخفضة الاستجابة مع Gemini من خلال النص والصوت. باستخدام Live API، يمكنك منح العميل المنتهي تجربتَي محادثات صوتية طبيعية تشبه المحادثات بين البشر، مع إمكانية مقاطعة ردود النموذج باستخدام أوامر نصية أو صوتية. يمكن للنموذج معالجة الإدخال النصي والصوتي (سيكون الفيديو متاحًا قريبًا)، ويمكنه تقديم إخراج نصي وصوتي.
يمكنك إنشاء نماذج أولية باستخدام الطلبات والرمز Live API في Vertex AI Studio.
Live API هي واجهة برمجة تطبيقات تستند إلى الحالة، وهي تُنشئ اتصالاً عبر WebSocket لتأسيس جلسة بين العميل وخادم Gemini. للاطّلاع على التفاصيل، يُرجى الاطّلاع على مستندات مرجعية حول Live API.
قبل البدء
إذا لم يسبق لك ذلك، أكمِل قراءة
دليل البدء،
الذي يوضّح كيفية إعداد مشروعك على Firebase وربط تطبيقك بأحد مشاريع Firebase وإضافة حزمة تطوير البرامج (SDK) وبدء خدمة Vertex AI وإنشاء مثيل
LiveModel
.
يُرجى العلم أنّه لاستخدام Live API:
تأكَّد من استخدام على الأقل إصدارات مكتبة Firebase التالية:
iOS والإصدارات الأحدث: غير متاحة بعد | Android: الإصدار 16.3.0 والإصدارات الأحدث (BoM: الإصدار 33.12.0 والإصدارات الأحدث) | الويب: غير متاحة بعد | Flutter: الإصدار 1.5.0 والإصدارات الأحدث (BoM: الإصدار 3.9.0 والإصدارات الأحدث)أنشئ مثيل
LiveModel
(وليس مثيلGenerativeModel
).
الطُرز التي تتيح هذه الميزة
تتوفّر سمة Live API في gemini-2.0-flash-live-preview-04-09
فقط (وليس gemini-2.0-flash
).
استخدام الميزات العادية في Live API
يوضّح هذا القسم كيفية استخدام الميزات العادية لتطبيق Live API، وعلى وجه التحديد لبث أنواع مختلفة من الإدخالات والمخرجات:
- إرسال الرسائل النصية واستلامها
- إرسال ملف صوتي واستلامه
- إرسال محتوى صوتي واستلام نص
- إرسال نص واستلام ملف صوتي
إرسال الرسائل النصية واستلامها
يمكنك إرسال إدخال نصي يتم بثه وتلقّي إخراج نصي يتم بثه. احرص على
إنشاء مثيل liveModel
وضبط طريقة الردّ على Text
.
تعرَّف على كيفية اختيار نموذج وموقع جغرافي اختياريًا مناسبَين لحالة الاستخدام والتطبيق.
إرسال محتوى صوتي واستلامه
يمكنك إرسال إدخال صوتي يتم بثه وتلقّي إخراج صوتي يتم بثه. تأكَّد من
إنشاء مثيل LiveModel
وضبط طريقة الردّ على Audio
.
تعرَّف على كيفية ضبط وتعديل صوت الردّ (أدناه في هذه الصفحة).
تعرَّف على كيفية اختيار نموذج وموقع جغرافي اختياريًا مناسبَين لحالة الاستخدام والتطبيق.
إنشاء تجارب أكثر تفاعلاً وجذبًا
يوضّح هذا القسم كيفية إنشاء وإدارة ميزات Live API التي تجذب المستخدمين أو تتفاعل معهم بشكلٍ أكبر.
تغيير صوت الردّ
يستخدم Live API تقنية Chirp 3 لتقديم ردود من إنشاء الذكاء الاصطناعي. عند استخدام Vertex AI in Firebase، يمكنك إرسال محتوى صوتي بـ 5 أصوات عالية الدقة و31 لغة.
إذا لم تحدِّد صوتًا، ستكون القيمة التلقائية هي Puck
. بدلاً من ذلك، يمكنك
ضبط النموذج للردّ بأي من الأصوات التالية:
Aoede (أنثى)Charon (ذكر) |
Fenrir (ذكر)Kore (أنثى) |
Puck (ذكر) |
للاطّلاع على نماذج صوتية لهذه الأصوات وعلى القائمة الكاملة للغات المتاحة، يمكنك الاطّلاع على مقالة Chirp 3: أصوات بجودة عالية.
لتحديد صوت، اضبط اسم الصوت ضمن عنصر speechConfig
كجزء
من إعدادات النموذج:
للحصول على أفضل النتائج عند طلب النموذج الردّ بلغة غير الإنجليزية، يجب تضمين ما يلي كجزء من تعليمات النظام:
RESPOND IN LANGUAGE. YOU MUST RESPOND UNMISTAKABLY IN LANGUAGE.
الحفاظ على السياق في جميع الجلسات والطلبات
يمكنك استخدام بنية محادثة للحفاظ على السياق في جميع الجلسات والطلبات. يُرجى العِلم أنّ هذه الميزة لا تعمل إلا لإدخال النص وإخراجه.
هذه الطريقة هي الأفضل للسياقات القصيرة، ويمكنك إرسال تفاعلات خطوة بخطوة لتمثيل تسلسل الأحداث بدقة . بالنسبة إلى السياقات الأطول، ننصحك بتقديم ملخّص رسالة واحد لإخلاء مساحة نافذة السياق للتفاعلات اللاحقة.
التعامل مع المقاطعات
لا تتيح Vertex AI in Firebase حتى الآن معالجة الانقطاعات. يرجى معاودة التحقق بعد قليل.
استخدام وظائف الاتصال (الأدوات)
يمكنك تحديد أدوات، مثل الدوالّ المتاحة، لاستخدامها مع Live API تمامًا كما يمكنك استخدام طرق إنشاء المحتوى العادية. يصف هذا القسم بعض الاختلافات عند استخدام Live API مع استدعاء الدوالّ. للحصول على وصف كامل وأمثلة على استدعاء الدوال، اطّلِع على دليل استدعاء الدوال.
من طلب واحد، يمكن للنموذج إنشاء طلبات دالة متعددة والتعليمات البرمجية اللازمة لربط نواتج هذه الطلبات. يتم تنفيذ هذه التعليمة البرمجية في بيئة مجرّبة
، ما يؤدي إلى إنشاء رسائل BidiGenerateContentToolCall
لاحقة. يتم إيقاف التنفيذ مؤقتًا إلى أن تصبح نتائج كلّ طلب دالة متاحة، ما يضمن المعالجة التسلسلية.
بالإضافة إلى ذلك، فإنّ استخدام Live API مع طلب البيانات من واجهة برمجة التطبيقات مفيد بشكلٍ خاص لأنّ النموذج يمكنه طلب معلومات متابعة أو توضيح من المستخدم. على سبيل المثال، إذا لم يكن لدى النموذج معلومات كافية لتقديم قيمة مَعلمة لدالّة يريد استدعاؤها، يمكن للنموذج أن يطلب من المستخدم تقديم معلومات إضافية أو توضيحية.
من المفترض أن يردّ العميل باستخدام الرمز التالي:
BidiGenerateContentToolResponse
.
القيود والمتطلبات
يُرجى مراعاة القيود والمتطلبات التالية المتعلّقة بالملف الشخصي Live API.
النسخ
لا تتيح Vertex AI in Firebase حتى الآن تحويل الصوت إلى نص. يرجى معاودة التحقق بعد قليل.
اللغات
- لغات الإدخال: يمكنك الاطّلاع على القائمة الكاملة للغات الإدخال المتاحة لطُرز Gemini.
- لغات الإخراج: يمكنك الاطّلاع على القائمة الكاملة للغات الإخراج المتاحة في Chirp 3: أصوات بدقة عالية.
تنسيقات الصوت
تتوافق Live API مع التنسيقات الصوتية التالية:
- تنسيق الصوت الذي يتم إدخاله: ملف صوتي PCM بترميز 16 بت بتنسيق little-endian بمعدّل 16 كيلوهرتز
- تنسيق الصوت الذي يتم إخراجه: صوت PCM ذي 16 بت بتنسيق little-endian بمعدّل 24 كيلوهرتز
حدود معدّل الاستخدام
تنطبق حدود المعدّلات التالية:
- 10 جلسات متزامنة لكل مشروع على Firebase
- 4 مليون رمز مميّز في الدقيقة
مدة الجلسة
المدة التلقائية للجلسة هي 30 دقيقة. عند تجاوز مدة الجلسة الحدّ الأقصى، يتم إنهاء الاتصال.
يعتمد النموذج أيضًا على حجم السياق. قد يؤدي إرسال أجزاء كبيرة من الإدخال إلى إنهاء الجلسة في وقت أبكر.
ميزة "رصد النشاط الصوتي" (VAD)
يُجري النموذج تلقائيًا عملية رصد النشاط الصوتي (VAD) على بث إدخال صوتي باستمرار. يتم تفعيل ميزة "توقُّف الصوت أثناء الصمت" تلقائيًا.
احتساب الرموز المميّزة
لا يمكنك استخدام واجهة برمجة التطبيقات CountTokens
مع Live API.