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