Hem istemci hem de sunucu kullanım alanları için şablonlar yapılandırabilirsiniz. İstemci şablonları; Android, Apple, Web, Unity, Flutter ve C++ uygulamaları dahil olmak üzere Remote Config için Firebase istemci SDK'larını uygulayan tüm uygulama örneklerine sunulur. Sunucuya özgü şablonlardaki Remote Config parametreleri ve değerleri, Firebase Admin Node.js SDK v12.1.0 veya sonraki sürümleri kullanan Remote Config uygulamalarına (Cloud Run ve Cloud Functions dahil) yayınlanır.
Firebase konsolunu veya Remote Config arka uç API'lerini kullanırken bir veya daha fazla parametre (anahtar/değer çiftleri) tanımlar ve bu parametreler için uygulama içi varsayılan değerler sağlarsınız. Parametre değerlerini tanımlayarak uygulama içi varsayılan değerleri geçersiz kılabilirsiniz. Parametre anahtarları ve parametre değerleri dizedir ancak parametre değerleri, uygulamanızda kullandığınızda diğer veri türleri olarak yayınlanabilir.
Firebase Konsolu, Admin SDK veya Remote Config REST API'yi kullanarak parametreleriniz için yeni varsayılan değerler ve uygulama örneği gruplarını hedeflemek için kullanılan koşullu değerler oluşturabilirsiniz. Firebase konsolunda yapılandırmanızı her güncellediğinizde Firebase, Remote Config şablonunuzun yeni bir sürümünü oluşturup yayınlar. Önceki sürüm depolanır. Böylece, gerektiğinde bu sürüme geri dönebilir veya sürümleri geri alabilirsiniz. Bu işlemleri Firebase konsolunda, Firebase Admin SDK'da ve REST API'de kullanabilirsiniz. Bu işlemler Remote Config şablon sürümlerini yönetme başlıklı makalede daha ayrıntılı olarak açıklanmıştır.
Bu kılavuzda parametreler, koşullar, kurallar, koşullu değerler ve çeşitli parametre değerlerinin Remote Config arka ucunda ve uygulamanızda nasıl önceliklendirildiği açıklanmaktadır. Ayrıca, koşul oluşturmak için kullanılan kural türleri hakkında ayrıntılı bilgi verilmektedir.
Koşullar, kurallar ve koşullu değerler
Koşul, bir uygulama örneği grubunu hedeflemek için kullanılır. Koşullar, belirli bir uygulama örneği için koşulun true
olarak değerlendirilmesi amacıyla true
olarak değerlendirilmesi gereken bir veya daha fazla kuraldan oluşur. Bir kuralın değeri tanımlanmamışsa (örneğin, hiçbir değer mevcut değilse) bu kural false
olarak değerlendirilir.
Örneğin, büyük dil modeli (LLM) model adını ve sürüm dizesini tanımlayan bir parametre oluşturabilir ve özel sinyal kurallarına göre farklı modellerden yanıtlar yayınlayabilirsiniz. Bu kullanım alanında, çoğu isteği yayınlamak için varsayılan değer olarak kararlı bir model sürümü kullanabilir ve istemci isteklerine yanıt vermek üzere deneysel bir model kullanmak için özel sinyali kullanabilirsiniz.
Bir parametrenin farklı koşullar kullanan birden fazla koşullu değeri olabilir ve parametreler bir projedeki koşulları paylaşabilir. Firebase konsolunun Parametreler sekmesinde, her parametrenin koşullu değerleri için getirme yüzdesini görüntüleyebilirsiniz. Bu metrik, son 24 saat içinde her bir değeri alan isteklerin yüzdesini gösterir.
Parametre değeri önceliği
Sunucu uygulamalarında Firebase Admin SDK kullanarak Remote Config'ü kullandığınızda, her istemci isteği için uygun parametre değerlerini isteğe bağlı olarak ayıklamak amacıyla şablonun tamamını getirip yüklersiniz. Bir parametrenin ilişkili birkaç koşullu değeri olabilir.
Aşağıdaki kurallar, şablon değerlendirmesi sırasında belirli bir zamanda hangi değerin atanacağını belirler:
Öncelikle, belirli bir istemci isteği için
true
olarak değerlendirilen tüm koşullara koşullu değerler uygulanır. Birden fazla koşultrue
olarak değerlendirilirse Firebase konsol kullanıcı arayüzünde gösterilen ilk (üstteki) koşul öncelik alır ve şablon değerlendirilirken bu koşulla ilişkili koşullu değerler sağlanır. Koşullar sekmesinde koşulları sürükleyip bırakarak koşulların önceliğini değiştirebilirsiniz.true
olarak değerlendirilen koşullara sahip koşullu değer yoksa şablon değerlendirmesi sırasında Remote Config'un varsayılan değeri sağlanır. Bir parametre şablonda yoksa veya varsayılan değer Uygulama içi varsayılan kullan şeklinde ayarlanmışsa şablon değerlendirilirken bu parametre için herhangi bir değer sağlanmaz.
Sunucu uygulamalarında Remote Config şablonlarını yükleme ve değerlendirme hakkında daha fazla bilgi için Remote Config'ü sunucu ortamlarında kullanma başlıklı makaleyi inceleyin.
Parametre değeri veri türleri
Remote Config, her parametre için bir veri türü seçmenize olanak tanır ve şablon güncellemesinden önce tüm Remote Config değerlerini ilgili veri türüne göre doğrular. Veri türü depolanır ve getRemoteConfig
isteğinde döndürülür.
Desteklenen veri türleri şunlardır:
String
Boolean
Number
JSON
Firebase konsol kullanıcı arayüzünde, veri türü parametre anahtarının yanındaki açılır listeden seçilebilir. REST API'de türler, parametre nesnesi içindeki value_type
alanı kullanılarak ayarlanabilir.
Parametre grupları
Remote Config, daha düzenli bir kullanıcı arayüzü ve daha iyi kullanılabilirlik için parametreleri gruplandırmanıza olanak tanır.
Örneğin, yeni bir giriş özelliğini kullanıma sunarken üç farklı kimlik doğrulama türünü etkinleştirmeniz veya devre dışı bırakmanız gerektiğini varsayalım. Remote Config ile, istediğiniz türleri etkinleştirmek için üç parametre oluşturabilir ve ardından ön ek veya özel sıralama eklemenize gerek kalmadan bunları "Yeni giriş" adlı bir grupta düzenleyebilirsiniz.
Firebase konsolunu veya Remote Config REST API'yi kullanarak parametre grupları oluşturabilirsiniz. Oluşturduğunuz her parametre grubunun Remote Config şablonunuzda benzersiz bir adı vardır. Parametre grupları oluştururken aşağıdakileri göz önünde bulundurun:
- Parametreler herhangi bir zamanda yalnızca bir gruba dahil edilebilir ve parametre anahtarı tüm parametreler için benzersiz olmalıdır.
- Parametre grubu adları 256 karakterle sınırlıdır.
- Hem REST API hem de Firebase konsolunu kullanıyorsanız tüm REST API mantığının, parametre gruplarını yayınlama sırasında işleyecek şekilde güncellendiğinden emin olun.
Firebase konsolunu kullanarak parametre grupları oluşturma veya değiştirme
Parametreleri Firebase konsolunun Parametreler sekmesinde gruplandırabilirsiniz. Grup oluşturmak veya mevcut bir grubu değiştirmek için:
- Grupları yönet'i seçin.
- Eklemek istediğiniz parametrelerin onay kutularını işaretleyin ve Gruba taşı'yı seçin.
- Mevcut bir grubu seçin veya ad ve açıklama girip Yeni grup oluştur'u seçerek yeni bir grup oluşturun. Bir grubu kaydettikten sonra, Değişiklikleri yayınla düğmesiyle yayınlayabilirsiniz.
Koşul kuralı türleri
Sunucu uygulamaları için Remote Config şablonları aşağıdaki koşul türlerini destekler:
Rastgele yüzdelik dilimde kullanıcı
Rastgele karıştırılan kullanıcıları (uygulama örnekleri) gruplara ayırmak için kaydırma çubuğu widget'ını kullanarak rastgele bir uygulama örneğine (örnek boyutları %0,0001 kadar küçük olabilir) değişiklik uygulamak için bu alanı kullanın.
Her uygulama örneği, ilgili projede tanımlanan bir tohum değerine göre rastgele bir tam veya kesirli sayı ile sürekli olarak eşlenir.
Tohum değerini değiştirmediğiniz sürece bir kural varsayılan anahtarı (Firebase konsolunda Tohumu düzenle olarak gösterilir) kullanır. Tohum alanını temizleyerek bir kuralı varsayılan anahtarı kullanmaya döndürebilirsiniz.
Belirli yüzde aralıkları içindeki aynı uygulama örneklerini tutarlı bir şekilde ele almak için koşullarda aynı başlangıç değerini kullanın. Alternatif olarak, yeni bir başlangıç değeri belirterek belirli bir yüzde aralığı için rastgele atanan yeni bir uygulama örneği grubu seçebilirsiniz.
Örneğin, bir uygulamanın kullanıcılarının her biri çakışmayan% 5'i için geçerli olacak iki ilgili koşul oluşturmak amacıyla bir koşulu% 0 ile% 5 arasındaki bir yüzdeyle eşleşecek şekilde, başka bir koşulu ise% 5 ile %10 arasındaki bir aralıkla eşleşecek şekilde yapılandırabilirsiniz. Bazı kullanıcıların her iki grupta da rastgele görünmesine izin vermek için her koşuldaki kurallar için farklı başlangıç değerleri kullanın.
Uygulamanıza rastgele yüzde koşulları nasıl ekleyeceğinizi öğrenmek için Sunucu uygulamanızı yapılandırma başlıklı makaleyi inceleyin.
Özel sinyaller
Firebase Admin Node.js SDK 12.5.0 ve sonraki sürümlerde, uygulamanızda tanımladığınız rastgele koşulları eşleştirmek için Özel sinyal koşul türünü kullanabilirsiniz. Bu sayede sunucu yanıtını her istemci isteği için özelleştirebilirsiniz.
Örneğin, belirli platformlara göre ayarlanmış farklı modellerle yanıtlar oluşturmaya yardımcı olmak için üretken yapay zeka kullanan bir sunucu uygulaması üzerinde çalışıyorsanız aşağıdakileri yapabilirsiniz:
- Remote Config sunucu şablonunuza
prompt
vemodel_name
parametrelerini ekleyin. - Hedeflemek istediğiniz her platform için
platform
değerine sahip özel sinyaller ekleyin. - Sunucuya özel Remote Config şablonunuza varsayılan değerler, tanımladığınız her platform koşulu için ise koşullu değerler ekleyin.
platform
özel sinyalini ayarlamak ve kullanmak için uygulama kodunuzu güncelleyin.
Artık uygulamanız, şablon değerlendirmesi sırasında uygun istemi ve modeli ayıklayabilir ve bunları her müşteriye özelleştirilmiş yanıtlar döndürmek için kullanabilir.
Firebase konsolunda özel sinyaller oluşturmak için aşağıdaki kural türlerini kullanabilirsiniz.
Operatör kategorisi | Operatörler | Değer | Not |
---|---|---|---|
Metin | tam olarak eşleşir, içerir, içermez, normal ifadeyi içerir |
Bu kural için yapılan dize karşılaştırmaları büyük/küçük harfe duyarlıdır. Tam olarak eşleşir, içerir, içermez veya normal ifade içerir operatörünü kullanırken birden fazla değer seçebilirsiniz. Şu normal ifadeyi içerir operatörünü kullanırken RE2 biçiminde normal ifadeler oluşturabilirsiniz. Normal ifadeniz, hedef sürüm dizenin tamamını veya bir kısmını eşleştirebilir. Bir hedef dizenin başını, sonunu veya tamamını eşleştirmek için ^ ve $ çapalarını da kullanabilirsiniz. |
|
Numbers | <, <=, =, !=, >, >= | Ondalık işaretinin her iki yanında en fazla on basamak bulunan sayı. | |
Sürümler | <, <=, =, !=, >, >= | Eşleşecek sürüm numaralarını temsil eden sayı (örneğin, 2.1.0). |
Uygulamanıza nasıl özel sinyal ekleyeceğinizi öğrenmek için Sunucu uygulamanızı yapılandırma başlıklı makaleyi inceleyin.
Arama parametreleri ve koşulları
Projenizin parametre anahtarlarını, parametre değerlerini ve koşullarını Remote Config Parametreler sekmesinin üst kısmındaki arama kutusunu kullanarak Firebase konsolundan arayabilirsiniz.
Parametreler ve koşullarla ilgili sınırlar
Bir Firebase projesinde en fazla 2.000 parametre ve 500 koşul olabilir. Parametre anahtarları en fazla 256 karakter uzunluğunda olabilir, alt çizgiyle veya İngiliz alfabesinden bir karakterle (A-Z, a-z) başlamalıdır ve sayı içerebilir. Bir projedeki parametre değeri dizelerinin toplam uzunluğu 1.000.000 karakteri aşamaz.
Parametrelerde ve koşullarda yapılan değişiklikleri görüntüleme
Remote Config şablonlarınızda yapılan son değişiklikleri Firebase konsolundan görüntüleyebilirsiniz. Her parametre ve koşul için şunları yapabilirsiniz:
Parametreyi veya koşulu en son değiştiren kullanıcının adını görüntüleyin.
Değişiklik aynı gün içinde gerçekleştiyse değişikliğin etkin Remote Config şablonunda yayınlanmasından bu yana geçen dakika veya saat sayısını görüntüleyin.
Değişiklik bir veya daha fazla gün önce gerçekleştiyse değişikliğin etkin Remote Config şablonunda yayınlandığı tarihi görüntüleyin.
Parametrelerin değişiklik geçmişi
Remote Config Parametreler sayfasındaki Son yayınlanma tarihi sütununda, her parametreyi değiştiren son kullanıcı ve değişikliğin son yayınlanma tarihi gösterilir:
Gruplandırılmış parametrelerle ilgili değişiklik meta verilerini görüntülemek için parametre grubunu genişletin.
Yayınlanma tarihine göre artan veya azalan düzende sıralamak için Son yayınlanma tarihi sütun etiketini tıklayın.
Koşullar için değişiklik geçmişi
Remote Config Koşullar sayfasında, her koşulun altındaki Son değiştirilme ifadesinin yanında koşulu değiştiren son kullanıcıyı ve koşulu değiştirdiği tarihi görebilirsiniz.