Published: May 20, 2025
إنشاء تجربة ذكاء اصطناعي مختلطة
يوفّر الذكاء الاصطناعي المضمّن عددًا من المزايا، وأهمها:
- المعالجة المحلية للبيانات الحسّاسة: إذا كنت تتعامل مع بيانات حسّاسة، يمكنك توفير ميزات الذكاء الاصطناعي للمستخدمين مع التشفير التام بين الأطراف.
- استخدام الذكاء الاصطناعي بلا اتصال بالإنترنت: يمكن للمستخدمين الوصول إلى ميزات الذكاء الاصطناعي، حتى عندما يكونون غير متصلين بالإنترنت أو عندما يكون الاتصال ضعيفًا.
على الرغم من أنّ هذه المزايا لا تنطبق على التطبيقات السحابية، يمكنك ضمان تجربة سلسة للمستخدمين الذين لا يمكنهم الوصول إلى الذكاء الاصطناعي المضمّن.
البدء باستخدام Firebase
- أنشئ مشروع Firebase وسجِّل تطبيق الويب.
- اقرأ مستندات حزمة Firebase JavaScript SDK لمتابعة إعداد تطبيق الويب.
تنشئ مشاريع Firebase مشروعًا على Google Cloud، مع إعدادات وخدمات خاصة بـ Firebase. مزيد من المعلومات عن Google Cloud وFirebase
تثبيت حزمة تطوير البرامج (SDK)
يستخدم سير العمل هذا npm ويتطلّب أدوات تجميع الوحدات أو أدوات إطار عمل JavaScript. تم تحسين Firebase AI Logic للعمل مع أدوات تجميع الوحدات لإزالة الرمز غير المستخدَم وتقليل حجم حزمة تطوير البرامج (SDK).
npm install firebase
بعد التثبيت، عليك إعداد Firebase في تطبيقك.
استخدام Firebase AI Logic
بعد تثبيت Firebase وإعداده، اختَر إما Gemini Developer API أو 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، يمكنك تسجيل تقرير عن خطأ .