إنشاء محادثات متعددة الأدوار (الدردشة) باستخدام Gemini API


باستخدام واجهة برمجة تطبيقات Gemini، يمكنك إنشاء محادثات حرة عبر منعطفات متعدّدة. وتعمل حزمة تطوير البرامج (SDK) الخاصة بأداة Vertex AI for Firebase على تبسيط العملية من خلال إدارة حالة المحادثة. ولذلك، على عكس generateContentStream() أو generateContent()، لن تحتاج إلى تخزين سجلّ المحادثات بنفسك.

قبل البدء

ننصحك بالاطّلاع على دليل البدء لحِزم تطوير البرامج (SDK) الخاصة بأداة Vertex AI for Firebase، إذا لم يسبق لك إجراء ذلك. تأكَّد من تنفيذ جميع الإجراءات التالية:

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

  • اربط تطبيقك بمنصة Firebase، بما في ذلك تسجيل تطبيقك وإضافة إعدادات Firebase إلى تطبيقك.

  • أضِف حزمة تطوير البرامج (SDK) وأعِد إعداد خدمة Vertex AI والنموذج التوليدي في تطبيقك.

بعد ربط تطبيقك بمنصة Firebase وإضافة حزمة تطوير البرامج (SDK) وإعداد خدمة Vertex AI والنموذج التوليدي، تصبح جاهزًا لاستدعاء Gemini API.

إرسال طلب محادثة

لإنشاء محادثة متعددة الأدوار (مثل الدردشة)، ابدأ بإعداد المحادثة من خلال طلب الرقم startChat(). بعد ذلك، استخدِم sendMessageStream() (أو sendMessage()) لإرسال رسالة جديدة للمستخدم، ما يؤدي أيضًا إلى إلحاق الرسالة والردّ بسجلّ المحادثات.

هناك خياران محتملان لـ role مرتبط بالمحتوى في المحادثة:

  • user: الدور الذي يقدّم الطلبات هذه القيمة هي القيمة التلقائية لاستدعاءات sendMessageStream() (أو sendMessage())، وتطرح الدالة استثناءً في حال تمرير دور مختلف.

  • model: الدور الذي يقدّم الردود يمكن استخدام هذا الدور عند استدعاء "startChat()" مع "history" الحالي.

اختَر ما إذا كنت تريد بث الرد (sendMessageStream) أو انتظار الرد حتى يتم إنشاء النتيجة بأكملها (sendMessage).

البث

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

يوضح هذا المثال كيفية استخدام sendMessageStream() لبث الردود من النموذج:

بدون بث

أو يمكنك انتظار النتيجة بأكملها بدلاً من البث، ولا يتم عرض النتيجة إلا بعد أن ينتهي النموذج من عملية الإنشاء بالكامل.

يوضّح هذا المثال كيفية استخدام sendMessage() لإرسال رسالة جديدة لمستخدم:

تعرَّف على كيفية اختيار نموذج Gemini واختيار موقع جغرافي مناسب لحالة الاستخدام والتطبيق.

ما هي الإجراءات الإضافية التي يمكنك اتخاذها؟

  • تعرَّف على كيفية احتساب الرموز المميّزة قبل إرسال طلبات طويلة إلى النموذج.
  • إعداد Cloud Storage for Firebase لكي تتمكن من تضمين ملفات كبيرة في الطلبات المتعدّدة الوسائط باستخدام عناوين URL لخدمة Cloud Storage. يمكن أن تتضمّن الملفات صورًا وملفات PDF وفيديو وصوتًا.
  • ابدأ بالتفكير في كيفية الاستعداد للإنتاج، بما في ذلك إعداد ميزة "فحص التطبيقات من Firebase" لحماية واجهة Gemini API من إساءة استخدام العملاء غير المصرّح لهم.

تجربة إمكانات أخرى في Gemini API

التعرّف على كيفية التحكّم في إنشاء المحتوى

يمكنك أيضًا تجربة الطلبات وإعدادات النماذج باستخدام Vertex AI Studio.

مزيد من المعلومات حول طُرز Gemini

تعرَّف على النماذج المتاحة لحالات الاستخدام المختلفة والحصص وأسعارها.


تقديم ملاحظات حول تجربتك مع Vertex AI for Firebase