تضمين الملفات الكبيرة في الطلبات المتعدّدة الوسائط وإدارة الملفات باستخدام Cloud Storage for Firebase

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

بالنسبة للأجزاء غير النصية من الإدخال (مثل ملفات الوسائط)، يمكنك اختياريًا استخدام Cloud Storage for Firebase لتضمين الملفات في الطلب. في عالي المستوى، إليك ما تحتاج إلى معرفته عن هذه الميزة:

  • يمكنك استخدام Cloud Storage for Firebase مع أي طلبات متعددة الوسائط (مثل كليهما). إنشاء النصوص والدردشة). الأمثلة في يعرض هذا الدليل الإدخال الأساسي للنصوص والصور.

  • عليك تحديد نوع MIME للملف وعنوان URL الخاص بخدمة Cloud Storage for Firebase. (التي تبدأ دائمًا بـ gs://) في إدخال الطلب. هذه القيم البيانات الوصفية التي تم تخصيصها تلقائيًا لأي ملف تم تحميله على Cloud Storage دُلو.

  • يجب استخدام نوع ملف وعنوان URL متوافقَين.


يوضِّح دليل الحلول هذا كيفية إعداد Cloud Storage لبرنامج Firebase في Google Cloud، عليك تحميل ملف إلى حزمة Cloud Storage for Firebase من تطبيقك ثم تضمين نوع MIME للملف وعنوان URL لخدمة Cloud Storage for Firebase في طلب متعدد الوسائط لواجهة Gemini API

هل تريد الاطّلاع على أمثلة الرموز؟ أو هل سبق لك إعداد يمكنك استخدام Cloud Storage لـ Firebase، وبذلك يمكنك بدء استخدامه مع الطلبات المتعدّدة الوسائط؟

الانتقال إلى أمثلة الرموز

مزايا استخدام Cloud Storage for Firebase في تطبيقك

تستخدم خدمة Cloud Storage for Firebase نفس الميزات مثل Google Cloud Storage لتخزين البيانات الثنائية الكبيرة والملفات وحِزم تطوير البرامج (SDK) للعميل الخاصة بها مصمّمة خصيصًا لتطبيقات الويب والتطبيقات المتوافقة مع الأجهزة الجوّالة.

بالنسبة إلى حِزم تطوير البرامج (SDK) لحزمة Vertex AI for Firebase، يكون الحدّ الأقصى لحجم الطلب هو 20 ميغابايت. إذا كان الطلب كبيرًا جدًا، تظهر لك رسالة خطأ HTTP 413. إذا كان حجم الملف اجعل إجمالي حجم الطلب يتجاوز 20 ميغابايت، ثم استخدم عنوان URL الخاص بخدمة Cloud Storage for Firebase لإدراج الملف في طلبك المتعدّد الوسائط. ومع ذلك، إذا كان الملف صغيرًا، يمكنك غالبًا تمريره مباشرةً كبيانات مضمّنة (يُرجى العلم أنّ الملف المقدَّم كبيانات مضمّنة تم ترميزه إلى base64 في النقل العام، مما يزيد من حجم الطلب).

في ما يلي بعض المزايا الإضافية لاستخدام Cloud Storage for Firebase:

  • يمكنك السماح للمستخدمين النهائيين بتحميل الصور مباشرةً من تطبيقك إلى Cloud Storage لحزمة Firebase، وبعد ذلك يمكنك تضمين هذه الصور في الطلبات متعددة الوسائط فقط من خلال تحديد نوع MIME للملف عنوان URL لخدمة Cloud Storage for Firebase (وهو معرِّف للملف)

  • يمكنك توفير الوقت ومعدل نقل البيانات للمستخدمين النهائيين إذا كانوا بحاجة إلى توفير صور، وخاصةً إذا كانت جودة الشبكة رديئة أو غير مستقرة.

    • في حال توقُّف عملية تحميل أو تنزيل أي ملف، يتم استخدام Cloud Storage for Firebase تعمل حِزم SDK على إعادة تشغيل العملية تلقائيًا من حيث توقفت.
    • يمكن استخدام الملف نفسه عدة مرات بدون حساب المستخدم النهائي. الاضطرار إلى تحميل الملف نفسه في كل مرة مطلوبة في تطبيقك (كما هو الحال في طلب جديد متعدد الوسائط).
  • يمكنك حظر وصول المستخدم النهائي إلى الملفات المخزَّنة في خدمة Cloud Storage لبرنامج Firebase من خلال استخدام قواعد أمان Firebase التي تتيح للمستخدم المصرّح له فقط تحميل الملفات أو تنزيلها أو حذفها.

  • يمكنك الوصول إلى الملفات في الحزمة من Firebase أو من Google Cloud. مما يمنحك المرونة لإجراء معالجة من جهة الخادم، مثل معالجة الصور الفلترة أو تحويل ترميز الفيديو باستخدام واجهات برمجة التطبيقات في Google Cloud Storage.

ما هي أنواع الملفات وعناوين URL المتوافقة؟

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

  • يجب أن يستوفي الملف متطلبات ملفات الإدخال للطلبات المتعددة الوسائط عند استخدام حِزم تطوير البرامج (SDK) الخاصة بـ Vertex AI for Firebase يشمل ذلك المتطلّبات مثل نوع MIME وحجم الملف.

  • يجب تخزين الملف في حزمة Cloud Storage for Firebase. (يعني ذلك أنّه يمكن لخدمات Firebase الوصول إلى الحزمة، مثل قواعد أمان Firebase). إذا كان بإمكانك الاطّلاع على الحزمة في وحدة تحكُّم Firebase ستكون حزمة Cloud Storage for Firebase

  • يجب أن تكون حزمة Cloud Storage for Firebase في مشروع Firebase نفسه ضمن الذي سجّلت فيه تطبيقك

  • يجب أن يبدأ عنوان URL الخاص بخدمة Cloud Storage for Firebase في الملف بـ gs://، وهو طريقة إنشاء جميع عناوين URL لخدمة Google Cloud Storage.

  • لا يمكن أن يكون عنوان URL للملف "متصفحًا" عنوان URL (على سبيل المثال، عنوان URL لصورة التي تعثر عليها على الإنترنت).

بالإضافة إلى ذلك، يجب أن تتيح قواعد أمان Firebase لحزمتك الوصول المناسب إلى الملف. على سبيل المثال:

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

  • إذا كانت لديك قواعد فعّالة (ننصح بذلك بشدة)، سيتحقّق Firebase بعد ذلك من وصول المستخدم الذي سجّل الدخول أو العميل لديه أذونات كافية للوصول إلى الملف قبل السماح بانتقال المكالمة. باستخدام عنوان URL المقدم.

استخدام Cloud Storage لعناوين URL في Firebase مع Vertex AI for Firebase

الخطوة 1: إعداد Cloud Storage لمنصّة Firebase

إليك المهام عالية المستوى التي ستحتاج إلى القيام بها:

  1. أنشِئ حزمة Cloud Storage for Firebase في مشروعك على Firebase.

  2. طبِّق قواعد أمان Firebase على هذه الحزمة. تساعدك "قواعد أمان Firebase" تأمين ملفاتك عن طريق تقييد الوصول إلى المستخدمين النهائيين المصرّح لهم.

  3. أضِف مكتبة البرامج الخاصة بخدمة Cloud Storage for Firebase إلى تطبيقك.

    تجدر الإشارة إلى أنّه يمكنك تخطّي هذه المَهمّة، ولكن عليك تنفيذ ذلك دائمًا. تضمين نوع MIME وقيم عناوين URL في Cloud Storage for Firebase بشكل صريح في طلباتك المتعددة الوسائط.

الخطوة 2: تحميل ملف إلى حزمة

عند تحميل ملف إلى حزمة، يتم تطبيق Cloud Storage تلقائيًا الجزأين التاليين من المعلومات إلى الملف. ستحتاج إلى تضمين هذه القيم في الطلب متعدد الوسائط (كما هو موضح في الخطوة التالية من هذا .

  • نوع MIME: هذا هو نوع وسائط الملف (على سبيل المثال، image/png). ستحاول خدمة Cloud Storage for Firebase تلقائيًا رصد نوع MIME أثناء التحميل وتطبيق تلك البيانات الوصفية على العنصر في الحزمة ومع ذلك، يمكنك تحديد نوع MIME أثناء التحميل اختياريًا.

  • عنوان URL الخاص بـ Cloud Storage for Firebase: وهو معرّف فريد للملف. يجب أن يبدأ عنوان URL بـ gs://.

الخطوة 3: تضمين نوع MIME للملف وعنوان URL في طلب متعدد الوسائط

بعد تخزين ملف في حزمة Cloud Storage for Firebase، يمكنك تنفيذ ما يلي: يجب تضمين نوع MIME وعنوان URL الخاص بخدمة Cloud Storage for Firebase في طلب متعدد الوسائط. يُرجى العلم أنّ هذه الأمثلة تعرض طلب generateContent لا يتم بثه، ولكن يمكنك أيضًا استخدام Cloud Storage لعناوين URL لمنصة Firebase مع ميزات البث والمحادثة.

لتضمين الملف في الطلب، يمكنك استخدام أي من الخيارَين التاليَين:

الخيار 1: تضمين نوع MIME وعنوان URL باستخدام مرجع مساحة تخزين

يمكنك استخدام هذا الخيار إذا كنت قد حمّلت الملف للتو إلى الحزمة وتريد تضمين الملف على الفور (عبر مرجع مساحة التخزين) في الوسائط المتعددة الوسائط طلبك. يتطلب الاستدعاء كلاً من نوع MIME عنوان URL لخدمة Cloud Storage لمنصّة Firebase

الخيار 2: تضمين نوع MIME وعنوان URL بشكل صريح

استخدم هذا الخيار إذا كنت تعرف قيم نوع MIME عنوان URL لخدمة Cloud Storage لمنصّة Firebase، وكنت تريد تضمينها صراحةً في طلب متعدد الوسائط. يتطلب الاستدعاء كلاً من نوع MIME وعنوان URL.