Published: May 20, 2025
لتلبية احتياجات المستخدمين، بغض النظر عن النظام الأساسي أو الأجهزة التي يستخدمونها، يمكنك إعداد خيار احتياطي للوصول إلى السحابة الإلكترونية باستخدام Firebase AI Logic من أجل Prompt API المضمّنة .
إنشاء تجربة ذكاء اصطناعي مختلطة
يوفّر الذكاء الاصطناعي المضمّن عددًا من المزايا، وأهمها:
- المعالجة المحلية للبيانات الحسّاسة: إذا كنت تتعامل مع بيانات حسّاسة، يمكنك توفير ميزات الذكاء الاصطناعي للمستخدمين مع التشفير التام بين الأطراف.
- استخدام الذكاء الاصطناعي بلا إنترنت: يمكن للمستخدمين الوصول إلى ميزات الذكاء الاصطناعي، حتى عندما يكونون غير متصلين بالإنترنت أو عندما تنقطع إمكانية الاتصال
على الرغم من أنّ هذه المزايا لا تنطبق على التطبيقات السحابية، يمكنك ضمان تجربة سلسة للمستخدمين الذين لا يمكنهم الوصول إلى الذكاء الاصطناعي المضمّن.
البدء باستخدام Firebase
تعرَّف على كيفية إنشاء مشروع على Firebase وإضافة Firebase إلى تطبيق الويب.
مشاريع Firebase هي مشاريع Google Cloud، مع إعدادات وخدمات خاصة بـ Firebase. مزيد من المعلومات حول Google Cloud وFirebase.
تثبيت حزمة تطوير البرامج (SDK)
يستخدم سير العمل هذا npm ويتطلب أدوات تجميع الوحدات أو أدوات إطار عمل JavaScript. تم تحسين Firebase AI Logic للعمل مع أدوات تجميع الوحدات لإزالة الرمز غير المستخدَم وتقليل حجم حزمة تطوير البرامج (SDK).
ثبِّت حزمة Firebase JS SDK:
npm install firebase
إعداد Firebase AI Logic وتأمينه
في "وحدة تحكّم Firebase"، انتقِل إلى خدمات الذكاء الاصطناعي > Firebase AI Logic.
انقر على البدء لتشغيل سير عمل الإعداد.
عندما يُطلب منك اختيار "مزوّد Gemini API"، ننصحك باختيار الـ Gemini Developer API، ما يتيح لك البدء بسرعة بدون أي تكلفة.
في أي وقت لاحقًا، يمكنك دائمًا إعداد Vertex AI Gemini API (ومتطلبات الفوترة الخاصة به).
تابِع في سير عمل وحدة التحكّم لإعداد واجهات برمجة التطبيقات المطلوبة والخدمات المرتبطة بها لـ Firebase AI Logic.
بدءًا من أوائل يوليو 2026، ستفرض هذه المرحلة من سير العمل تلقائيًا خدمة "التحقّق من التطبيق" في Firebase لـ Firebase AI Logic، وهي خدمة مهمة للمساعدة في حماية Gemini API عند الوصول إليها مباشرةً من تطبيقك. كجزء من البدء (راجِع الخطوات لاحقًا في هذا الدليل)، عليك إعداد مزوّد تصحيح الأخطاء في "التحقّق من التطبيق" للتطوير المحلي عند فرض "التحقّق من التطبيق".
تابِع إلى الأقسام التالية في هذا الدليل لإعداد مزوّد تصحيح الأخطاء في "التحقّق من التطبيق" للتطوير المحلي، ثم أرسِل طلبك الأول إلى Gemini API.
إعداد مزوّد تصحيح الأخطاء في "التحقّق من التطبيق" للتطوير المحلي
إليك كيفية استخدام مزوّد تصحيح الأخطاء أثناء تشغيل تطبيقك من localhost بشكل تفاعلي (على سبيل المثال، أثناء التطوير المحلي):
في إصدار تصحيح الأخطاء، فعِّل وضع تصحيح الأخطاء من خلال ضبط
self.FIREBASE_APPCHECK_DEBUG_TOKENعلىtrueقبل بدء استخدام "التحقّق من التطبيق". على سبيل المثال:self.FIREBASE_APPCHECK_DEBUG_TOKEN = true; initializeAppCheck(app, { /* App Check options */ });انتقِل إلى تطبيق الويب محليًا وافتح أدوات مطوّري البرامج في المتصفّح. في وحدة تحكّم تصحيح الأخطاء، سيظهر لك رمز تصحيح الأخطاء:
AppCheck debug token: "123a4567-b89c-12d3-e456-789012345678". You will need to safelist it in the Firebase console for it to work.سجِّل رمز تصحيح الأخطاء في "التحقّق من التطبيق":
في "وحدة تحكّم Firebase"، انتقِل إلى الأمان > التحقّق من التطبيق > علامة التبويب التطبيقات.
ابحث عن تطبيقك، وانقر على قائمة الخيارات الإضافية ()، ثم اختَر إدارة رموز تصحيح الأخطاء.
اتّبِع التعليمات الظاهرة على الشاشة لتسجيل رمز تصحيح الأخطاء.
للحصول على تفاصيل حول مزوّد تصحيح الأخطاء (بما في ذلك كيفية الحصول على رمز تصحيح أخطاء جديد)، اطّلِع على مستندات "التحقّق من التطبيق" الرسمية.
إرسال طلب إلى Gemini API
اطلب من النموذج معالجة نص أو إدخال متعدد الوسائط. راجِع الأمثلة في الأقسام الفرعية التالية من هذا الدليل.
الطلبات النصية
يمكنك استخدام نص عادي لتقديم التعليمات إلى النموذج. على سبيل المثال، يمكنك أن تطلب من النموذج أن يخبرك بنكتة.
تتوفّر بعض الخيارات لكيفية توجيه الطلب:
استخدِم الذكاء الاصطناعي المضمّن تلقائيًا عندما يكون متاحًا من خلال ضبط
modeعلى'prefer_on_device'في الدالةgetGenerativeModel(). إذا لم يكن النموذج المضمّن متاحًا، سيتم الرجوع بسلاسة إلى استخدام النموذج السحابي (إذا كنت متصلاً بالإنترنت).استخدِم النموذج السحابي تلقائيًا عندما تكون متصلاً بالإنترنت من خلال ضبط
modeعلى'prefer_in_cloud'في الدالةgetGenerativeModel(). إذا كنت غير متصل بالإنترنت، سيتم الرجوع بسلاسة إلى استخدام الذكاء الاصطناعي المضمّن عندما يكون متاحًا.
// Initialize the Google AI service.
const googleAI = getAI(firebaseApp);
// Create a `GenerativeModel` instance with a model that supports your use case.
const model = getGenerativeModel(googleAI, { mode: 'prefer_on_device' });
const prompt = 'Tell me a joke';
const result = await model.generateContentStream(prompt);
for await (const chunk of result.stream) {
const chunkText = chunk.text();
console.log(chunkText);
}
console.log('Complete response', await result.response);
الطلبات المتعددة الوسائط
يمكنك أيضًا تقديم طلبات باستخدام الصور أو الصوت، بالإضافة إلى النص. يمكنك أن تطلب من النموذج وصف محتويات صورة أو تحويل ملف صوتي إلى نص.
يجب تمرير الصور كسلسلة base64 مرمّزة ككائن FileDataPart في Firebase، ويمكنك إجراء ذلك باستخدام الدالة المساعدة fileToGenerativePart().
// Converts a File object to a `FileDataPart` object.
// https://firebase.google.com/docs/reference/js/vertexai.filedatapart
async function fileToGenerativePart(file) {
const base64EncodedDataPromise = new Promise((resolve) => {
const reader = new FileReader();
reader.onload = () => resolve(reader.result.split(',')[1]);
reader.readAsDataURL(file);
});
return {
inlineData: { data: await base64EncodedDataPromise, mimeType: file.type },
};
}
const fileInputEl = document.querySelector('input[type=file]');
fileInputEl.addEventListener('change', async () => {
const prompt = 'Describe the contents of this image.';
const imagePart = await fileToGenerativePart(fileInputEl.files[0]);
// To generate text output, call generateContent with the text and image
const result = await model.generateContentStream([prompt, imagePart]);
for await (const chunk of result.stream) {
const chunkText = chunk.text();
console.log(chunkText);
}
console.log(Complete response: ', await result.response);
});
عرض توضيحي
انتقِل إلى العرض التوضيحي لـ Firebase AI Logic على أجهزة ومتصفّحات مختلفة. يمكنك الاطّلاع على كيفية الحصول على ردّ النموذج من نموذج الذكاء الاصطناعي المضمّن أو من السحابة الإلكترونية.
عند استخدام أجهزة متوافقة في Chrome، يستخدِم العرض التوضيحي Prompt API وGemini Nano. لا يتم إجراء سوى 3 طلبات للمستند الرئيسي وملف JavaScript وملف CSS.

عند استخدام متصفّح آخر أو نظام تشغيل لا يتوافق مع الذكاء الاصطناعي المضمّن، يتم إجراء طلب إضافي إلى نقطة نهاية Firebase، وهي https://firebasevertexai.googleapis.com.

المشاركة ومشاركة الملاحظات
يمكن أن يكون Firebase AI Logic خيارًا رائعًا لدمج إمكانات الذكاء الاصطناعي في تطبيقات الويب. من خلال توفير خيار احتياطي للوصول إلى السحابة الإلكترونية عندما لا تتوفّر Prompt API، تضمن حزمة تطوير البرامج (SDK) إمكانية الوصول إلى ميزات الذكاء الاصطناعي وموثوقيتها على نطاق أوسع.
ضَع في اعتبارك أنّ التطبيقات السحابية تفرض توقعات جديدة بشأن الخصوصية والوظائف، لذا من المهم إعلام المستخدمين بمكان معالجة بياناتهم.
- لإرسال ملاحظات حول تنفيذ Chrome، أرسِل تقريرًا عن خطأ أو طلب ميزة.
- لإرسال ملاحظات حول Firebase AI Logic، أرسِل تقريرًا عن خطأ .