দূরবর্তী কনফিগার পরামিতি এবং শর্তাবলী


আপনি উভয় ক্লায়েন্ট এবং সার্ভার ব্যবহারের ক্ষেত্রে টেমপ্লেট কনফিগার করতে পারেন। ক্লায়েন্ট টেমপ্লেটগুলি Android, Apple, Web, Unity, Flutter, এবং C++ অ্যাপ সহ Remote Config জন্য Firebase ক্লায়েন্ট SDK প্রয়োগ করে এমন যেকোনো অ্যাপের ক্ষেত্রে পরিবেশন করা হয়। Remote Config প্যারামিটার এবং সার্ভার-নির্দিষ্ট টেমপ্লেট থেকে মানগুলি Remote Config বাস্তবায়নে (ক্লাউড রান এবং ক্লাউড ফাংশন সহ) পরিবেশন করা হয় যা Firebase অ্যাডমিন Node.js SDK v12.1.0+ ব্যবহার করে।

Firebase কনসোল বা Remote Config ব্যাকএন্ড API ব্যবহার করার সময়, আপনি এক বা একাধিক প্যারামিটার (কী-মান জোড়া) সংজ্ঞায়িত করেন এবং সেই প্যারামিটারগুলির জন্য অ্যাপ-মধ্যস্থ ডিফল্ট মান প্রদান করেন। আপনি প্যারামিটার মান সংজ্ঞায়িত করে অ্যাপ-মধ্যস্থ ডিফল্ট মান ওভাররাইড করতে পারেন। প্যারামিটার কী এবং প্যারামিটার মানগুলি হল স্ট্রিং, কিন্তু আপনি যখন আপনার অ্যাপে এই মানগুলি ব্যবহার করেন তখন প্যারামিটার মানগুলি অন্যান্য ডেটা প্রকার হিসাবে কাস্ট করা যেতে পারে৷

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 ঘন্টার অনুরোধের শতাংশ নির্দেশ করে যা প্রতিটি মান পেয়েছে।

প্যারামিটার মান অগ্রাধিকার

আপনি যখন Firebase Admin SDK ব্যবহার করে সার্ভার অ্যাপে Remote Config ব্যবহার করেন, তখন আপনি প্রতিটি ক্লায়েন্টের অনুরোধের জন্য চাহিদা অনুযায়ী উপযুক্ত প্যারামিটার মান বের করার জন্য সমগ্র টেমপ্লেটটি আনেন এবং লোড করেন। একটি পরামিতি এর সাথে যুক্ত একাধিক শর্তাধীন মান থাকতে পারে।

নিম্নলিখিত নিয়মগুলি নির্দিষ্ট সময়ে নির্দিষ্ট সময়ে টেমপ্লেট মূল্যায়নের সময় কোন মান নির্ধারণ করে তা নির্ধারণ করে:

  1. প্রথমত, শর্তসাপেক্ষ মানগুলি প্রদত্ত ক্লায়েন্ট অনুরোধের জন্য true হিসাবে মূল্যায়ন করা যেকোনো শর্তের জন্য প্রয়োগ করা হয়। যদি একাধিক শর্ত true মূল্যায়ন করা হয়, Firebase কনসোল UI-তে দেখানো প্রথম (শীর্ষ)টি অগ্রাধিকার নেয় এবং টেমপ্লেটটি মূল্যায়ন করার সময় সেই শর্তের সাথে সম্পর্কিত শর্তযুক্ত মানগুলি প্রদান করা হয়। আপনি শর্ত ট্যাবে শর্ত টেনে এবং ড্রপ করে শর্তের অগ্রাধিকার পরিবর্তন করতে পারেন।

  2. যদি true মূল্যায়ন করা শর্তগুলির সাথে কোন শর্তাধীন মান না থাকে, তাহলে টেমপ্লেট মূল্যায়নের সময় Remote Config ডিফল্ট মান প্রদান করা হয়। যদি একটি প্যারামিটার টেমপ্লেটে বিদ্যমান না থাকে, অথবা যদি ডিফল্ট মানটি অ্যাপ-মধ্যস্থ ডিফল্ট ব্যবহারে সেট করা থাকে, তাহলে টেমপ্লেটটি মূল্যায়ন করার সময় সেই প্যারামিটারের জন্য কোনো মান প্রদান করা হয় না।

সার্ভার অ্যাপ্লিকেশানগুলিতে Remote Config টেমপ্লেটগুলি লোড এবং মূল্যায়ন সম্পর্কে আরও তথ্যের জন্য, সার্ভার পরিবেশে Remote Config ব্যবহার করুন দেখুন৷

প্যারামিটার মান ডেটা প্রকার

Remote Config আপনাকে প্রতিটি প্যারামিটারের জন্য একটি ডেটা টাইপ নির্বাচন করতে দেয় এবং একটি টেমপ্লেট আপডেটের আগে সেই ধরণের বিরুদ্ধে সমস্ত Remote Config মান যাচাই করে। ডেটা টাইপ সংরক্ষণ করা হয় এবং একটি getRemoteConfig অনুরোধে ফেরত দেওয়া হয়।

সমর্থিত ডেটা প্রকারগুলি হল:

  • String
  • Boolean
  • Number
  • JSON

Firebase কনসোল UI-তে, প্যারামিটার কী-এর পাশের একটি ড্রপ-ডাউন থেকে ডেটা টাইপ নির্বাচন করা যেতে পারে। REST API-এ, প্যারামিটার অবজেক্টের মধ্যে value_type ক্ষেত্র ব্যবহার করে প্রকারগুলি সেট করা যেতে পারে।

প্যারামিটার গ্রুপ

Remote Config আপনাকে আরও সংগঠিত UI এর জন্য প্যারামিটারগুলিকে একত্রে গোষ্ঠীবদ্ধ করতে এবং ব্যবহারযোগ্যতা বাড়াতে দেয়।

উদাহরণস্বরূপ, বলুন যে একটি নতুন লগইন বৈশিষ্ট্য চালু করার সময় আপনাকে তিনটি ভিন্ন প্রমাণীকরণ প্রকার সক্ষম বা নিষ্ক্রিয় করতে হবে৷ Remote Config সাহায্যে, আপনি যে ধরনের ধরন চান তা সক্ষম করতে আপনি তিনটি পরামিতি তৈরি করতে পারেন, এবং তারপরে সেগুলিকে "নতুন লগইন" নামে একটি গোষ্ঠীতে সংগঠিত করতে পারেন, কোনো উপসর্গ বা বিশেষ সাজানোর প্রয়োজন নেই৷

আপনি Firebase কনসোল বা Remote Config REST API ব্যবহার করে প্যারামিটার গ্রুপ তৈরি করতে পারেন। আপনার তৈরি করা প্রতিটি প্যারামিটার গ্রুপের আপনার Remote Config টেমপ্লেটে একটি অনন্য নাম রয়েছে। প্যারামিটার গ্রুপ তৈরি করার সময়, মনে রাখবেন:

  • পরামিতিগুলি যে কোনও সময়ে শুধুমাত্র একটি গ্রুপে অন্তর্ভুক্ত করা যেতে পারে এবং একটি প্যারামিটার কী এখনও সমস্ত প্যারামিটার জুড়ে অনন্য হতে হবে।
  • প্যারামিটার গ্রুপের নাম 256 অক্ষরের মধ্যে সীমাবদ্ধ।
  • আপনি যদি REST API এবং Firebase কনসোল উভয়ই ব্যবহার করেন, তাহলে নিশ্চিত করুন যে কোনো REST API লজিক প্রকাশের সময় প্যারামিটার গ্রুপগুলি পরিচালনা করতে আপডেট করা হয়েছে।

Firebase কনসোল ব্যবহার করে প্যারামিটার গ্রুপ তৈরি বা পরিবর্তন করুন

আপনি Firebase কনসোলের প্যারামিটার ট্যাবে পরামিতিগুলিকে গোষ্ঠীভুক্ত করতে পারেন৷ একটি গ্রুপ তৈরি বা সংশোধন করতে:

  1. গ্রুপ পরিচালনা নির্বাচন করুন।
  2. আপনি যে প্যারামিটার যোগ করতে চান তার জন্য চেকবক্স নির্বাচন করুন এবং গ্রুপে সরান নির্বাচন করুন।
  3. একটি বিদ্যমান গোষ্ঠী নির্বাচন করুন, বা একটি নাম এবং বিবরণ লিখুন এবং নতুন গোষ্ঠী তৈরি করুন নির্বাচন করে একটি নতুন গোষ্ঠী তৈরি করুন । আপনি একটি গোষ্ঠী সংরক্ষণ করার পরে, পরিবর্তনগুলি প্রকাশ করুন বোতাম ব্যবহার করে এটি প্রকাশের জন্য উপলব্ধ।

শর্ত নিয়মের ধরন

সার্ভার অ্যাপ্লিকেশনের জন্য Remote Config টেমপ্লেট নিম্নলিখিত শর্ত প্রকারগুলি সমর্থন করে:

এলোমেলো শতাংশে ব্যবহারকারী

স্লাইডার উইজেট ব্যবহার করে এলোমেলোভাবে এলোমেলোভাবে পরিবর্তন করা ব্যবহারকারীদের (অ্যাপ ইনস্ট্যান্স) গ্রুপে ভাগ করতে অ্যাপের দৃষ্টান্তগুলির (.0001% এর মতো ছোট নমুনার আকার সহ) একটি র্যান্ডম নমুনায় একটি পরিবর্তন প্রয়োগ করতে এই ক্ষেত্রটি ব্যবহার করুন৷

প্রতিটি অ্যাপ ইনস্ট্যান্স ক্রমাগতভাবে একটি র্যান্ডম পূর্ণ বা ভগ্নাংশ সংখ্যার সাথে ম্যাপ করা হয়, সেই প্রকল্পে সংজ্ঞায়িত একটি বীজ অনুসারে।

একটি নিয়ম ডিফল্ট কী ব্যবহার করবে ( Firebase কনসোলে সম্পাদনা বীজ হিসাবে দেখানো হয়েছে) যদি না আপনি বীজের মান পরিবর্তন করেন। আপনি বীজ ক্ষেত্র সাফ করে ডিফল্ট কী ব্যবহার করার জন্য একটি নিয়ম ফিরিয়ে দিতে পারেন।

প্রদত্ত শতাংশ সীমার মধ্যে ধারাবাহিকভাবে একই অ্যাপের দৃষ্টান্তগুলিকে সম্বোধন করতে, শর্ত জুড়ে একই বীজ মান ব্যবহার করুন। অথবা, একটি নতুন বীজ নির্দিষ্ট করে প্রদত্ত শতাংশ পরিসরের জন্য অ্যাপ দৃষ্টান্তের একটি নতুন এলোমেলোভাবে-অর্পণ করা গ্রুপ নির্বাচন করুন।

উদাহরণ স্বরূপ, দুটি সম্পর্কিত শর্ত তৈরি করতে যা প্রতিটি একটি অ্যাপের 5% ব্যবহারকারীর ক্ষেত্রে প্রযোজ্য নয়, আপনি একটি শর্ত কনফিগার করতে পারেন যাতে 0% এবং 5% এর মধ্যে শতাংশ মেলে এবং অন্য শর্তটি 5% এবং এর মধ্যে একটি সীমার সাথে মেলে। 10%। কিছু ব্যবহারকারীকে এলোমেলোভাবে উভয় গ্রুপে উপস্থিত হওয়ার অনুমতি দিতে, প্রতিটি শর্তের মধ্যে নিয়মের জন্য বিভিন্ন বীজের মান ব্যবহার করুন।

কিভাবে আপনার অ্যাপ্লিকেশনে র্যান্ডম শতাংশ শর্ত যোগ করতে হয় তা জানতে, আপনার সার্ভার অ্যাপ্লিকেশন কনফিগার করুন দেখুন।

কাস্টম সংকেত

Firebase Admin Node.js SDK 12.5.0 এবং উচ্চতর, আপনি কাস্টম সিগন্যাল অবস্থার ধরন ব্যবহার করতে পারেন যাতে আপনি আপনার অ্যাপ্লিকেশনে সংজ্ঞায়িত নির্বিচারী অবস্থার সাথে মেলে। এটি আপনাকে প্রতিটি ক্লায়েন্ট অনুরোধের জন্য সার্ভারের প্রতিক্রিয়া তৈরি করতে দেয়।

উদাহরণস্বরূপ, আপনি যদি একটি সার্ভার অ্যাপে কাজ করছেন যা নির্দিষ্ট প্ল্যাটফর্মের জন্য টিউন করা বিভিন্ন মডেলের সাথে ক্রাফ্ট প্রতিক্রিয়াগুলিকে সাহায্য করার জন্য জেনারেটিভ এআই ব্যবহার করে, আপনি নিম্নলিখিতগুলি করতে পারেন:

  1. আপনার Remote Config সার্ভার টেমপ্লেটে prompt এবং model_name প্যারামিটার যোগ করুন।
  2. আপনি লক্ষ্য করতে চান প্রতিটি প্ল্যাটফর্মের জন্য platform মান সহ কাস্টম সংকেত যোগ করুন।
  3. আপনার সার্ভার-নির্দিষ্ট Remote Config টেমপ্লেটে ডিফল্ট মান যোগ করুন এবং আপনার সংজ্ঞায়িত প্রতিটি প্ল্যাটফর্ম অবস্থার জন্য শর্তসাপেক্ষ মানগুলি যোগ করুন।
  4. platform কাস্টম সংকেত সেট করতে এবং ব্যবহার করতে আপনার অ্যাপ্লিকেশন কোড আপডেট করুন।

এখন, আপনার অ্যাপটি টেমপ্লেট মূল্যায়নের সময় উপযুক্ত প্রম্পট এবং মডেল বের করতে পারে এবং প্রতিটি ক্লায়েন্টকে কাস্টমাইজড প্রতিক্রিয়া ফেরাতে সেগুলি ব্যবহার করতে পারে।

Firebase কনসোলে কাস্টম সংকেত তৈরি করতে আপনি নিম্নলিখিত নিয়ম প্রকারগুলি ব্যবহার করতে পারেন৷

অপারেটর বিভাগ অপারেটর(গুলি) মান দ্রষ্টব্য
পাঠ্য ঠিক মেলে, ধারণ করে, ধারণ করে না, regex ধারণ করে

এই নিয়মের জন্য স্ট্রিং তুলনা কেস-সংবেদনশীল। ঠিক মেলে , ধারণ করে , ধারণ করে না , বা regex অপারেটর ধারণ করে , আপনি একাধিক মান নির্বাচন করতে পারেন।

Cons regex অপারেটর ব্যবহার করার সময়, আপনি RE2 ফরম্যাটে রেগুলার এক্সপ্রেশন তৈরি করতে পারেন। আপনার রেগুলার এক্সপ্রেশন টার্গেট ভার্সন স্ট্রিং এর সমস্ত বা অংশের সাথে মেলে। আপনি একটি টার্গেট স্ট্রিং এর শুরু, শেষ বা সম্পূর্ণতার সাথে মেলাতে ^ এবং $ অ্যাঙ্কর ব্যবহার করতে পারেন।

সংখ্যা <, <=, =, !=, >, >= দশমিক বিন্দুর প্রতিটি পাশে দশটি সংখ্যার বেশি নয় এমন সংখ্যা৷
সংস্করণ <, <=, =, !=, >, >= সংখ্যা যা মিলের সংস্করণ সংখ্যা(গুলি) প্রতিনিধিত্ব করে (উদাহরণস্বরূপ, 2.1.0)।

কীভাবে আপনার অ্যাপ্লিকেশনে কাস্টম সংকেত যুক্ত করবেন তা জানতে, আপনার সার্ভার অ্যাপ্লিকেশন কনফিগার করুন দেখুন।

অনুসন্ধান পরামিতি এবং শর্তাবলী

আপনি Remote Config প্যারামিটার ট্যাবের শীর্ষে থাকা অনুসন্ধান বাক্সটি ব্যবহার করে Firebase কনসোল থেকে আপনার প্রকল্পের প্যারামিটার কী, প্যারামিটারের মান এবং শর্তগুলি অনুসন্ধান করতে পারেন।

পরামিতি এবং শর্তাবলীর সীমাবদ্ধতা

একটি ফায়ারবেস প্রকল্পের মধ্যে, আপনার 2000টি প্যারামিটার এবং 500টি পর্যন্ত শর্ত থাকতে পারে। প্যারামিটার কী 256 অক্ষর পর্যন্ত লম্বা হতে পারে, একটি আন্ডারস্কোর বা ইংরেজি অক্ষর অক্ষর (AZ, az) দিয়ে শুরু হওয়া আবশ্যক এবং সংখ্যাগুলিও অন্তর্ভুক্ত থাকতে পারে। একটি প্রকল্পের মধ্যে প্যারামিটার মান স্ট্রিংগুলির মোট দৈর্ঘ্য 1,000,000 অক্ষরের বেশি হতে পারে না৷

পরামিতি এবং শর্তাবলী পরিবর্তন দেখুন

আপনি Firebase কনসোল থেকে আপনার Remote Config টেমপ্লেটের সর্বশেষ পরিবর্তনগুলি দেখতে পারেন৷ প্রতিটি পৃথক প্যারামিটার এবং শর্তের জন্য, আপনি করতে পারেন:

  • পরামিতি বা শর্ত সর্বশেষ পরিবর্তনকারী ব্যবহারকারীর নাম দেখুন।

  • যদি পরিবর্তনটি একই দিনের মধ্যে ঘটে থাকে, তাহলে সক্রিয় Remote Config টেমপ্লেটে পরিবর্তনটি প্রকাশিত হওয়ার পর থেকে কত মিনিট বা ঘন্টা অতিবাহিত হয়েছে তা দেখুন।

  • যদি পরিবর্তনটি অতীতে এক বা একাধিক দিন ঘটে থাকে, তাহলে সক্রিয় Remote Config টেমপ্লেটে পরিবর্তনটি প্রকাশিত হওয়ার তারিখটি দেখুন।

পরামিতিগুলির জন্য ইতিহাস পরিবর্তন করুন

Remote Config পরামিতি পৃষ্ঠায়, সর্বশেষ প্রকাশিত কলামটি সর্বশেষ ব্যবহারকারীকে দেখায় যিনি প্রতিটি পরামিতি সংশোধন করেছেন এবং পরিবর্তনের জন্য শেষ প্রকাশের তারিখ:

  • গোষ্ঠীবদ্ধ পরামিতির জন্য পরিবর্তন মেটাডেটা দেখতে, প্যারামিটার গ্রুপ প্রসারিত করুন।

  • প্রকাশের তারিখ অনুসারে ঊর্ধ্বগতি বা অবরোহ ক্রমে সাজাতে, সর্বশেষ প্রকাশিত কলাম লেবেলে ক্লিক করুন।

অবস্থার জন্য ইতিহাস পরিবর্তন করুন

Remote Config কন্ডিশন পৃষ্ঠায়, আপনি সর্বশেষ ব্যবহারকারীকে দেখতে পারেন যিনি শর্তটি পরিবর্তন করেছেন এবং প্রতিটি শর্তের অধীনে সর্বশেষ পরিবর্তনের পাশে তারা এটি পরিবর্তন করার তারিখটি দেখতে পাবেন।

পরবর্তী পদক্ষেপ

Remote Config ব্যবহার করার জন্য আপনার ফায়ারবেস প্রোজেক্ট এবং সার্ভার অ্যাপ কনফিগার করতে, সার্ভার পরিবেশে Remote Config ব্যবহার দেখুন।