يمكنك إعداد النماذج لكلّ من حالات استخدام العميل والخادم. يتم عرض نماذج من جهة العميل على أي مثيلات للتطبيقات تستخدم حِزم تطوير البرامج (SDK) من جهة العميل في Firebase الخاصة بـ Remote Config، بما في ذلك تطبيقات Android وApple والويب وUnity وFlutter وC++. يتم عرض مَعلمات وقيم Remote Config من النماذج الخاصة بالخادم على عمليات تنفيذ Remote Config (بما في ذلك Cloud Run وCloud Functions) التي تستخدم بيئات الخادم التالية:
- الإصدار 12.1.0 أو إصدار أحدث من حزمة تطوير البرامج (SDK) لمنصة Firebase Admin Node.js
- الإصدار 6.7.0 أو إصدار أحدث من حزمة تطوير البرامج (SDK) الخاصة بـ Python في "مدير Firebase"
عند استخدام وحدة تحكّم Firebase أو واجهات برمجة التطبيقات الخلفية Remote Config، يمكنك تحديد مَعلمة واحدة أو أكثر (أزواج المفتاح-القيمة) وتوفير قيم تلقائية داخل التطبيق لهذه المَعلمات. يمكنك تجاهل القيم التلقائية داخل التطبيق من خلال تحديد قيم المَعلمات. مفاتيح المَعلمات وقيم المَعلمات هي سلاسل، ولكن يمكن تحويل قيم المَعلمات إلى أنواع بيانات أخرى عند استخدام هذه القيم في تطبيقك.
باستخدام Firebase في وحدة التحكّم، Admin SDK أو Remote Config واجهة برمجة تطبيقات REST، يمكنك إنشاء قيم تلقائية جديدة للمَعلمات، بالإضافة إلى قيم شرطية تُستخدَم لاستهداف مجموعات من مثيلات التطبيق. في كل مرة تعدّل فيها الإعدادات في وحدة تحكّم Firebase، ينشئ Firebase إصدارًا جديدًا من نموذج Remote Config وينشره. يتم تخزين الإصدار السابق، ما يتيح لك استرداده أو العودة إليه عند الحاجة. تتوفّر لك هذه العمليات في وحدة تحكّم Firebase وFirebase Admin SDK وREST API، ويتم وصفها بشكل أكثر تفصيلاً في إدارة إصدارات نموذج Remote Config.
يوضّح هذا الدليل المَعلمات والشروط والقواعد والقيم الشرطية وكيفية تحديد أولويات قيم المَعلمات المختلفة في الخلفية Remote Config وفي تطبيقك، كما يقدّم تفاصيل عن أنواع القواعد المستخدَمة لإنشاء الشروط.
الشروط والقواعد والقيم الشرطية
يتم استخدام شرط لاستهداف مجموعة من مثيلات التطبيق. تتألف الشروط من قاعدة واحدة أو أكثر يجب أن يتم تقييمها على أنّها true
لكي يتم تقييم الشرط على أنّه true
لمثيل تطبيق معيّن. إذا كانت قيمة القاعدة غير محدّدة (على سبيل المثال، عندما لا تتوفّر أي قيمة)، سيتم تقييم هذه القاعدة على أنّها false
.
على سبيل المثال، يمكنك إنشاء مَعلمة تحدّد اسم نموذج لغوي كبير (LLM) وسلسلة الإصدار، وعرض الردود من نماذج مختلفة استنادًا إلى قواعد الإشارات المخصّصة. في حالة الاستخدام هذه، يمكنك استخدام إصدار نموذج ثابت كقيمة تلقائية للتعامل مع معظم الطلبات، واستخدام الإشارة المخصّصة لاستخدام نموذج تجريبي للرد على طلبات العملاء التجريبية.
يمكن أن تتضمّن المَعلمة قيمًا شرطية متعددة تستخدم شروطًا مختلفة، ويمكن أن تتشارك المَعلمات في الشروط ضمن مشروع. في علامة التبويب "المَعلمات" ضمن وحدة تحكّم Firebase، يمكنك الاطّلاع على نسبة جلب القيم الشرطية لكل مَعلمة. يشير هذا المقياس إلى النسبة المئوية للطلبات التي تلقّت كل قيمة خلال آخر 24 ساعة.
أولوية قيمة المَعلمة
عند استخدام Remote Config في تطبيقات الخادم باستخدام Firebase Admin SDK، يمكنك جلب النموذج بأكمله وتحميله من أجل استخراج قيم المَعلمات المناسبة عند الطلب لكل طلب من العميل. قد تتضمّن المَعلمة عدة قيم شرطية مرتبطة بها.
تحدّد القواعد التالية القيمة التي يتم تعيينها أثناء تقييم النموذج في وقت معيّن:
أولاً، يتم تطبيق القيم الشرطية على أي شروط يتم تقييمها على أنّها
true
لطلب عميل معيّن. إذا تم تقييم شروط متعددة على أنّهاtrue
، ستكون الأولوية للشروط الأولى (الأعلى) المعروضة في واجهة مستخدم وحدة تحكّم Firebase، وسيتم تقديم القيم الشرطية المرتبطة بهذا الشرط عند تقييم النموذج. يمكنك تغيير أولوية الشروط من خلال سحب الشروط وإفلاتها في علامة التبويب الشروط.إذا لم تكن هناك قيم شرطية مع شروط يتم تقييمها على
true
، سيتم توفير القيمة التلقائية Remote Config أثناء تقييم النموذج. إذا لم تكن إحدى المَعلمات متوفّرة في النموذج، أو إذا تم ضبط القيمة التلقائية على استخدام القيمة التلقائية داخل التطبيق، لن يتم توفير أي قيمة لتلك المَعلمة عند تقييم النموذج.
لمزيد من المعلومات حول تحميل نماذج Remote Config وتقييمها في تطبيقات الخادم، يُرجى الاطّلاع على استخدام Remote Config في بيئات الخادم.
أنواع بيانات قيم المَعلمات
تتيح لك Remote Config اختيار نوع بيانات لكل مَعلمة، كما تتحقّق من صحة جميع قيم Remote Config مقارنةً بهذا النوع قبل تعديل النموذج. يتم تخزين نوع البيانات وعرضه عند تلقّي طلب getRemoteConfig
.
أنواع البيانات المتوافقة هي:
String
Boolean
Number
JSON
في واجهة مستخدم Firebase، يمكن اختيار نوع البيانات من قائمة منسدلة بجانب مفتاح المَعلمة. في واجهة REST API، يمكن ضبط الأنواع باستخدام الحقل value_type
ضمن عنصر المَعلمة.
مجموعات المَعلمات
تتيح لك Remote Config تجميع المَعلمات معًا للحصول على واجهة مستخدم أكثر تنظيمًا وتحسين سهولة الاستخدام.
على سبيل المثال، لنفترض أنّك بحاجة إلى تفعيل أو إيقاف ثلاثة أنواع مختلفة من المصادقة أثناء طرح ميزة تسجيل دخول جديدة. باستخدام Remote Config، يمكنك إنشاء المَعلمات الثلاث لتفعيل الأنواع التي تريدها، ثم تنظيمها في مجموعة باسم "تسجيل دخول جديد"، بدون الحاجة إلى إضافة بادئات أو ترتيب خاص.
يمكنك إنشاء مجموعات المَعلمات باستخدام وحدة تحكّم Firebase أو واجهة برمجة تطبيقات REST Remote Config. تحتوي كل مجموعة مَعلمات تنشئها على اسم فريد في نموذج Remote Config. عند إنشاء مجموعات المَعلمات، يُرجى مراعاة ما يلي:
- يمكن تضمين المَعلمات في مجموعة واحدة فقط في أي وقت، ويجب أن يظل مفتاح المَعلمة فريدًا في جميع المَعلمات.
- يقتصر عدد أحرف أسماء مجموعات المَعلمات على 256 حرفًا.
- إذا كنت تستخدم كلاً من REST API وFirebase، تأكَّد من تعديل أي منطق REST API للتعامل مع مجموعات المَعلمات عند النشر.
إنشاء مجموعات المَعلمات أو تعديلها باستخدام وحدة تحكّم Firebase
يمكنك تجميع المَعلمات في علامة التبويب المَعلمات ضمن وحدة تحكّم Firebase. لإنشاء مجموعة أو تعديلها:
- انقر على إدارة المجموعات.
- ضَع علامة في مربّعات الاختيار بجانب المَعلمات التي تريد إضافتها، ثم انقر على نقل إلى المجموعة.
- اختَر مجموعة حالية أو أنشئ مجموعة جديدة من خلال إدخال اسم ووصف، ثم انقر على إنشاء مجموعة جديدة. بعد حفظ مجموعة، يمكنك نشرها باستخدام الزر نشر التغييرات.
أنواع قواعد الشروط
تتيح نماذج Remote Config لتطبيقات الخادم أنواع الشروط التالية:
المستخدمون بنسبة عشوائية
استخدِم هذا الحقل لتطبيق تغيير على عيّنة عشوائية من مثيلات التطبيق (بأحجام عيّنات صغيرة تصل إلى 0 .0001%)، وذلك باستخدام أداة شريط التمرير لتقسيم المستخدمين (مثيلات التطبيق) الذين تم ترتيبهم عشوائيًا إلى مجموعات.
يتم ربط كل مثيل تطبيق بشكل دائم بعدد عشوائي صحيح أو كسري، وذلك وفقًا لقيمة أولية محدّدة في هذا المشروع.
ستستخدِم القاعدة المفتاح التلقائي (المعروض باسم تعديل القيمة الأولية في وحدة تحكّم Firebase) ما لم تعدِّل قيمة القيمة الأولية. يمكنك إعادة القاعدة إلى استخدام المفتاح التلقائي من خلال محو حقل المفتاح الأساسي.
للتوجّه بشكلٍ متّسق إلى مثيلات التطبيق نفسها ضمن نطاقات النسبة المئوية المحدّدة، استخدِم قيمة seed نفسها في جميع الشروط. يمكنك أيضًا اختيار مجموعة جديدة من مثيلات التطبيق تم تعيينها عشوائيًا لنطاق نسبة مئوية معيّن من خلال تحديد قيمة أولية جديدة.
على سبيل المثال، لإنشاء شرطَين مرتبطَين ينطبق كل منهما على% 5 من مستخدمي التطبيق غير المتداخلين، يمكنك ضبط أحد الشرطَين ليتطابق مع نسبة تتراوح بين% 0 و% 5، وضبط الشرط الآخر ليتطابق مع نطاق يتراوح بين% 5 و%10. للسماح لبعض المستخدمين بالظهور بشكل عشوائي في كلتا المجموعتين، استخدِم قيم أولية مختلفة للقواعد ضمن كل شرط.
للتعرّف على كيفية إضافة شروط النسبة المئوية العشوائية إلى تطبيقك، راجِع مقالة ضبط تطبيق الخادم.
شروط الإشارات المخصّصة
باستخدام الإصدار 12.5.0 من حزمة تطوير البرامج (SDK) للمشرف في Firebase Node.js أو إصدار أحدث، يمكنك استخدام القيم الشرطية للإشارة المخصّصة لمطابقة أي شروط تحدّدها في تطبيقك. يتيح لك ذلك تخصيص استجابة الخادم لكل طلب من العميل.
على سبيل المثال، إذا كنت تعمل على تطبيق خادم يستخدم الذكاء الاصطناعي التوليدي للمساعدة في صياغة الردود باستخدام نماذج مختلفة تم تحسينها لمنصات معيّنة، يمكنك إجراء ما يلي:
- أضِف المَعلمتَين
prompt
وmodel_name
إلى Remote Configنموذج الخادم. - أضِف شروط إشارات مخصّصة بقيمة
platform
لكل منصة تريد استهدافها. - أضِف قيمًا تلقائية إلى نموذج Remote Config الخاص بالخادم وقيمًا شرطية لكل شرط منصة حدّدته.
- عدِّل رمز تطبيقك لضبط الإشارة المخصّصة
platform
واستخدامها.
يمكن لتطبيقك الآن استخراج الطلب والنموذج المناسبَين أثناء تقييم النموذج، واستخدامهما لعرض ردود مخصّصة لكل عميل.
يمكنك استخدام أنواع القواعد التالية لإنشاء شروط إشارات مخصّصة في وحدة تحكّم Firebase.
فئة المشغّل | المشغِّلون | القيمة | ملاحظة |
---|---|---|---|
نص | تطابق تام، تحتوي على، لا تحتوي على، تحتوي على تعبير عادي |
مقارنات السلاسل لهذه القاعدة حساسة لحالة الأحرف. عند استخدام عامل التشغيل تطابق تام أو يحتوي على أو لا يحتوي على أو يحتوي على تعبير عادي، يمكنك اختيار قيم متعدّدة. عند استخدام عامل التشغيل يحتوي على تعبير عادي، يمكنك إنشاء تعبيرات عادية بتنسيق RE2. يمكن أن يتطابق التعبير العادي مع كل أو جزء من سلسلة إصدار التطبيق المستهدفة. يمكنك أيضًا استخدام الرمزين ^ و$ للمطابقة مع بداية السلسلة المستهدفة أو نهايتها أو السلسلة بأكملها. |
|
أرقام | <، <=، =، !=، >، >= | عدد لا يزيد عن عشرة أرقام على كل جانب من العلامة العشرية | |
الإصدارات | <، <=، =، !=، >، >= | رقم يمثّل أرقام الإصدارات التي يجب أن تتطابق (مثلاً، 2.1.0). |
للتعرّف على كيفية إضافة إشارات مخصّصة إلى تطبيقك، راجِع مقالة ضبط إعدادات تطبيق الخادم.
مَعلمات البحث وشروطه
يمكنك البحث عن مفاتيح المَعلمات وقيم المَعلمات والشروط في مشروعك من وحدة تحكّم Firebase باستخدام مربّع البحث في أعلى علامة التبويب Remote Config المَعلمات.
الحدود المفروضة على المَعلمات والشروط
يمكن أن يتضمّن مشروع Firebase ما يصل إلى 2,000 مَعلمة و500 شرط. يمكن أن يصل طول مفاتيح المَعلمات إلى 256 حرفًا، ويجب أن تبدأ بشرطة سفلية أو حرف إنجليزي (من A إلى Z ومن a إلى z)، ويمكن أن تتضمّن أيضًا أرقامًا. يجب ألا يتجاوز إجمالي طول سلاسل قيم المَعلمات في أحد المشاريع 1,000,000 حرف.
عرض التغييرات التي تم إجراؤها على المَعلمات والشروط
يمكنك الاطّلاع على آخر التغييرات التي تم إجراؤها على نماذج Remote Config من وحدة تحكّم Firebase. بالنسبة إلى كل مَعلمة وشرط على حدة، يمكنك إجراء ما يلي:
عرض اسم المستخدم الذي أجرى آخر تعديل على المَعلمة أو الشرط
إذا حدث التغيير في اليوم نفسه، اطّلِع على عدد الدقائق أو الساعات التي مرّت منذ نشر التغيير في النموذج النشط Remote Config.
إذا حدث التغيير قبل يوم واحد أو أكثر، اطّلِع على تاريخ نشر التغيير في نموذج Remote Config النشط.
سجلّ التغييرات الخاص بالمَعلمات
في صفحة Remote Config المَعلمات، يعرض عمود آخر نشر آخر مستخدم عدّل كل مَعلمة وتاريخ آخر نشر للتغيير:
لعرض بيانات التغيير الوصفية لمجموعة مَعلمات، وسِّع مجموعة المَعلمات.
لترتيب البيانات تصاعديًا أو تنازليًا حسب تاريخ النشر، انقر على تصنيف العمود تاريخ آخر نشر.
سجلّ التغييرات للشروط
في صفحة Remote Config الشروط، يمكنك الاطّلاع على آخر مستخدم عدّل الشرط وتاريخ تعديله بجانب آخر تعديل ضمن كل شرط.