Szablony możesz skonfigurować pod kątem przypadków użycia zarówno klienta, jak i serwera. Szablony klienta są dostarczane do wszystkich instancji aplikacji, które implementują pakiety SDK klienta Firebase dla Remote Config, w tym do aplikacji na Androida, Apple, w przeglądarce, w Unity, Flutter i C++. Parametry i wartości Remote Config z szablonów związanych z serwerem są dostarczane do implementacji Remote Config (w tym Cloud Run i Cloud Functions), które korzystają z pakietu Firebase Admin Node.js SDK w wersji 12.1.0 lub nowszej.
Korzystając z konsoli Firebase lub Remote Configinterfejsów API backendu, definiujesz co najmniej 1 parametr (pary klucz-wartość) i podajesz dla niego domyślne wartości w aplikacji. Wartości domyślne w aplikacji możesz zastąpić, definiując wartości parametrów. Klucze i wartości parametrów są ciągami, ale wartości parametrów można przekształcić w inne typy danych, gdy używasz ich w aplikacji.
Za pomocą konsoli Firebase, Admin SDK lub Remote Config interfejsu API REST możesz tworzyć nowe wartości domyślne parametrów, a także wartości warunkowe, które służą do kierowania na grupy instancji aplikacji. Za każdym razem, gdy aktualizujesz konfigurację w konsoli Firebase, Firebase tworzy i publikuje nową wersję szablonu Remote Config. Poprzednia wersja jest przechowywana, dzięki czemu w razie potrzeby możesz ją odzyskać lub przywrócić. Te operacje są dostępne w konsoli Firebase, w Firebase Admin SDK i interfejsie API REST. Zostały one szczegółowo opisane w artykule Zarządzanie wersjami szablonów Remote Config.
W tym przewodniku znajdziesz informacje o parametrach, warunkach, regułach, wartościach warunkowych oraz sposobie ustalania priorytetów różnych wartości parametrów na zapleczu Remote Config i w aplikacji. Znajdziesz tu też szczegółowe informacje o typach reguł używanych do tworzenia warunków.
Warunki, reguły i wartości warunkowe
Warunek służy do kierowania na grupę instancji aplikacji. Warunki składają się z co najmniej 1 reguły, która musi zwracać wartość true
, aby warunek zwracał wartość true
w przypadku danego wystąpienia aplikacji. Jeśli wartość reguły jest nieokreślona (np. gdy nie ma dostępnej wartości), zwraca ona wartość false
.
Możesz na przykład utworzyć parametr definiujący nazwę i ciąg znaków wersji dużego modelu językowego (LLM) oraz wyświetlać odpowiedzi z różnych modeli na podstawie reguł sygnałów niestandardowych. W tym przypadku do obsługi większości żądań możesz użyć stabilnej wersji modelu jako wartości domyślnej, a z sygnału niestandardowego – używać eksperymentalnego modelu do odpowiadania na testowe żądania klientów.
Parametr może mieć wiele wartości warunkowych, które korzystają z różnych warunków, a parametry mogą udostępniać warunki w ramach projektu. Na karcie Parametry w konsoli Firebase możesz sprawdzić odsetek pobierania dla wartości warunkowych każdego parametru. Te dane wskazują odsetek żądań z ostatnich 24 godzin, które otrzymały poszczególne wartości.
Priorytet wartości parametru
Gdy używasz Remote Config w aplikacjach serwerowych za pomocą Firebase Admin SDK, pobierasz i wczytujesz cały szablon, aby wyodrębnić odpowiednie wartości parametrów na żądanie dla każdego żądania klienta. Z parametrem może być powiązanych kilka wartości warunkowych.
Te reguły określają, która wartość jest przypisywana w określonym momencie podczas oceny szablonu:
Najpierw wartości warunkowe są stosowane do wszystkich warunków, które dla danego żądania klienta mają wartość
true
. Jeślitrue
spełnia się w przypadku wielu warunków, pierwsza (górna) wartość wyświetlana w interfejsie konsoli Firebase ma pierwszeństwo, a wartości warunkowe powiązane z tym warunkiem są uwzględniane podczas oceny szablonu. Priorytet warunków możesz zmienić, przeciągając je i upuszczając na karcie Warunki.Jeśli nie ma wartości warunkowych z warunkami, które mają wartość
true
, podczas przetwarzania szablonu jest podawana wartość domyślna Remote Config. Jeśli parametr nie istnieje w szablonie lub jeśli jego wartość domyślna została ustawiona na Użyj wartości domyślnej w aplikacji, podczas przetwarzania szablonu nie jest podawana żadna wartość tego parametru.
Więcej informacji o wczytywaniu i weryfikowaniu szablonów Remote Config w aplikacjach serwerowych znajdziesz w artykule Korzystanie z elementów Remote Config w środowiskach serwerowych.
Typy danych wartości parametru
Remote Config umożliwia wybranie typu danych dla każdego parametru i sprawdza wszystkie wartości Remote Config pod kątem tego typu przed aktualizacją szablonu. Typ danych jest przechowywany i zwracany w odpowiedzi na getRemoteConfig
prośbę.
Obsługiwane typy danych:
String
Boolean
Number
JSON
W interfejsie konsoli Firebase typ danych można wybrać z menu obok klucza parametru. W interfejsie API REST typy można ustawiać za pomocą pola value_type
w obiekcie parametru.
Grupy parametrów
Remote Config umożliwia grupowanie parametrów w celu uporządkowania interfejsu użytkownika i zwiększenia jego użyteczności.
Załóżmy na przykład, że podczas wdrażania nowej funkcji logowania musisz włączyć lub wyłączyć 3 różne typy uwierzytelniania. Za pomocą Remote Config możesz utworzyć 3 parametry, aby włączyć odpowiednie typy, a następnie uporządkować je w grupie o nazwie „Nowe logowanie”, bez konieczności dodawania prefiksów ani specjalnego sortowania.
Grupy parametrów możesz tworzyć za pomocą konsoli Firebase lub interfejsu API REST Remote Config. Każda utworzona przez Ciebie grupa parametrów ma w szablonie Remote Config unikalną nazwę. Podczas tworzenia grup parametrów pamiętaj o tych kwestiach:
- Parametry można w danej chwili uwzględnić tylko w jednej grupie, a klucz parametru musi być niepowtarzalny wśród wszystkich parametrów.
- Nazwy grup parametrów mogą mieć maksymalnie 256 znaków.
- Jeśli używasz zarówno interfejsu API REST, jak i konsoli Firebase, sprawdź, czy logika interfejsu API REST została zaktualizowana, aby obsługiwać grupy parametrów po opublikowaniu.
Tworzenie i modyfikowanie grup parametrów za pomocą konsoli Firebase
Parametry możesz grupować na karcie Parametry w konsoli Firebase. Aby utworzyć lub zmodyfikować grupę:
- Kliknij Zarządzaj grupami.
- Zaznacz pola wyboru obok parametrów, które chcesz dodać, i kliknij Przenieś do grupy.
- Wybierz istniejącą grupę lub utwórz nową, wpisując jej nazwę i opis oraz klikając Utwórz nową grupę. Po zapisaniu grupy możesz ją opublikować, klikając przycisk Opublikuj zmiany.
Typy reguł warunków
Remote ConfigSzablony dla aplikacji serwerowych obsługują te typy warunków:
Losowy odsetek użytkowników
Za pomocą tego pola możesz zastosować zmianę na losowej próbie instancji aplikacji (z próbami o tak małej wielkości jak 0,0001%), używając suwaka do podziału losowo wybranych użytkowników (instancji aplikacji) na grupy.
Każda instancja aplikacji jest stale mapowana na losową liczbę całkowitą lub ułamkową zgodnie z wartością zaczynu zdefiniowaną w tym projekcie.
Reguła będzie używać klucza domyślnego (wyświetlanego jako Edytuj nasiono w konsoli Firebase), chyba że zmodyfikujesz wartość nasienia. Aby przywrócić regułę do używania klucza domyślnego, opróżnij pole Nasienie.
Aby konsekwentnie odnieść się do tych samych instancji aplikacji w określonych zakresach procentowych, użyj tej samej wartości wyjściowej w różnych warunkach. Możesz też wybrać nową losowo przypisaną grupę instancji aplikacji dla danego zakresu procentowego, podając nowy ciąg losowy.
Aby na przykład utworzyć 2 powiązane warunki, z których każdy będzie dotyczyć nienakładających się na siebie 5% użytkowników aplikacji, możesz skonfigurować 1 warunek tak, aby pasował do wartości procentowej między 0% a 5%, a drugi – tak, aby pasował do zakresu między 5% a 10%. Aby niektórzy użytkownicy mogli losowo pojawiać się w obu grupach, użyj różnych wartości początkowych dla reguł w każdym z warunków.
Aby dowiedzieć się, jak dodać do aplikacji warunki dotyczące losowej wartości procentowej, przeczytaj artykuł Konfigurowanie aplikacji serwera.
Sygnały niestandardowe
W pakiecie SDK Firebase Admin dla Node.js w wersji 12.5.0 lub nowszej możesz używać typu warunku Custom signal (niestandardowy sygnał) do dopasowywania dowolnych warunków zdefiniowanych w aplikacji. Dzięki temu możesz dostosować odpowiedź serwera do każdego żądania klienta.
Jeśli np. pracujesz nad aplikacją serwerową, która korzysta z generatywnej AI, aby tworzyć odpowiedzi za pomocą różnych modeli dostosowanych do konkretnych platform, możesz wykonać te czynności:
- Dodaj parametry
prompt
imodel_name
do szablonu serwera Remote Config. - Dodaj sygnały niestandardowe o wartości
platform
na każdej platformie, na którą chcesz kierować reklamy. - Dodaj do szablonu Remote Config wartości domyślne dla serwera oraz wartości warunkowe dla każdego zdefiniowanego przez Ciebie warunku platformy.
- Zaktualizuj kod aplikacji, aby ustawić i używać sygnału niestandardowego
platform
.
Teraz podczas oceny szablonu aplikacja może wyodrębnić odpowiedni prompt i model, a następnie wykorzystać je do zwracania spersonalizowanych odpowiedzi dla każdego klienta.
Do tworzenia sygnałów niestandardowych w konsoli Firebase możesz używać tych typów reguł.
Kategoria operatora | Operatory | Wartość | Uwaga |
---|---|---|---|
Tekst | dokładnie pasuje, zawiera, nie zawiera, zawiera wyrażenie regularne |
W porównaniach ciągów znaków w ramach tej reguły wielkość liter ma znaczenie. Gdy używasz operatora ściśle pasuje do, zawiera, nie zawiera lub zawiera wyrażenie regularne, możesz wybrać większą liczbę wartości. Jeśli używasz operatora zawiera wyrażenie regularne, możesz tworzyć wyrażenia regularne w formacie RE2. Wyrażenie regularne może pasować do całości lub części docelowego ciągu wersji. Możesz też użyć kotwic ^ i $, aby dopasować początek, koniec lub całość docelowego ciągu znaków. |
|
Numbers | <, <=, =, !=, >, >= | Liczebnik zawierający nie więcej niż 10 cyfr po każdej stronie przecinka dziesiętnego. | |
Wersje | <, <=, =, !=, >, >= | Liczba reprezentująca numery wersji, które mają być dopasowane (np. 2.1.0). |
Aby dowiedzieć się, jak dodać sygnały niestandardowe do aplikacji, przeczytaj artykuł Konfigurowanie aplikacji serwera.
Parametry i warunki wyszukiwania
W konsoli Firebase możesz wyszukiwać klucze parametrów, wartości parametrów i warunki w projekcie za pomocą pola wyszukiwania u góry karty Remote Config Parametry.
Limity dotyczące parametrów i warunków
W projekcie Firebase możesz mieć maksymalnie 2000 parametrów i 500 warunków. Klucze parametrów mogą mieć maksymalnie 256 znaków, muszą zaczynać się od podkreślenia lub litery alfabetu języka angielskiego (A–Z, a–z) i mogą zawierać cyfry. Łączna długość ciągów znaków wartości parametrów w projekcie nie może przekraczać 1 mln znaków.
Wyświetlanie zmian parametrów i warunków
Najnowsze zmiany w szablonach Remote Config możesz wyświetlić w konsoli Firebase. W przypadku każdego parametru i każdego warunku możesz:
Wyświetl nazwę użytkownika, który ostatnio zmodyfikował parametr lub warunek.
Jeśli zmiana nastąpiła tego samego dnia, sprawdź, ile minut lub godzin minęło od opublikowania zmiany w aktywnej wersji szablonu Remote Config.
Jeśli zmiana miała miejsce co najmniej 1 dzień temu, sprawdź, kiedy została opublikowana w aktywnym szablonie Remote Config.
Historia zmian parametrów
Na stronie Remote Config Parametry kolumna Ostatnia publikacja zawiera informacje o ostatnim użytkowniku, który zmodyfikował każdy parametr, oraz datę ostatniej publikacji zmiany:
Aby wyświetlić metadane zmian dla zgrupowanych parametrów, rozwiń grupę parametrów.
Aby posortować według daty publikacji w kolejności rosnącej lub malejącej, kliknij etykietę kolumny Ostatnia publikacja.
Historia zmian warunków
Na stronie Remote Config Warunki możesz wyświetlić użytkownika, który ostatnio zmodyfikował warunek, oraz datę jego modyfikacji. Obok każdego z warunków obok pola Ostatnia modyfikacja jest widoczna.