| Seleziona il tipo di modello: | Modelli lato client Modelli lato server |
Puoi pubblicare parametri e valori Remote Config da modelli specifici del server alle implementazioni Remote Config (tra cui Cloud Run e Cloud Functions for Firebase) che utilizzano i seguenti ambienti server:
- SDK Firebase Admin Node.js v12.1.0 e versioni successive
- SDK Firebase Admin per Python v6.7.0 e versioni successive
- SDK Firebase Admin Go v4.17.0 e versioni successive
- SDK Firebase Admin per Java v9.7.0 e versioni successive
Quando utilizzi la console Firebase o le API di backend di Remote Config, definisci uno o più parametri (coppie chiave-valore) e fornisci i valori predefiniti per questi parametri nel codice del server. Puoi eseguire l'override dei valori predefiniti definendo i valori parametro nel template Remote Config. Le chiavi e i valori parametro sono stringhe, ma i valori parametro possono essere convertiti in altri tipi di dati quando li utilizzi nell'app.
Utilizzando la console Firebase, Admin SDK o l'API REST Remote Config, puoi creare nuovi valori predefiniti per i parametri, nonché valori condizionali utilizzati per scegliere come target gruppi di richieste client. Ogni volta che aggiorni la configurazione nella console Firebase, Firebase crea e pubblica una nuova versione del modello Remote Config. La versione precedente viene archiviata, consentendoti di recuperarla o di eseguire il rollback in base alle tue esigenze. Queste operazioni sono disponibili nella console Firebase, in Firebase Admin SDK e nell'API REST e sono descritte in modo più dettagliato in Gestisci le versioni dei modelli Remote Config.
Questa guida spiega i parametri, le condizioni, le regole, i valori condizionali e il modo in cui i vari valori parametro vengono classificati in ordine di priorità nel backend Remote Config e nell'app server. Fornisce inoltre dettagli sui tipi di regole utilizzate per creare le condizioni.
Condizioni, regole e valori condizionali
Una condizione viene utilizzata per scegliere come target un gruppo di richieste client. Le condizioni sono costituite da una o più regole che devono essere tutte valutate come true affinché la condizione venga valutata come true per una determinata richiesta del client. Se il valore di una regola non è definito (ad esempio, quando non è disponibile alcun valore), la regola restituisce false.
Ad esempio, puoi creare un parametro che definisce una stringa di nome e versione di un modello linguistico di grandi dimensioni (LLM) e pubblicare risposte da modelli diversi in base alle regole degli indicatori personalizzati. In questo caso d'uso, potresti utilizzare una versione del modello stabile come valore predefinito per gestire la maggior parte delle richieste e utilizzare l'indicatore personalizzato per utilizzare un modello sperimentale per rispondere alle richieste dei client di test.
Un parametro può avere più valori condizionali che utilizzano condizioni diverse e i parametri possono condividere le condizioni all'interno di un progetto. Nella console Firebase, vai alla pagina DevOps e coinvolgimento > Remote Config > Parametri per visualizzare la percentuale di recupero per i valori condizionali di ciascun parametro. Questa metrica indica la percentuale di richieste nelle ultime 24 ore che hanno ricevuto ciascun valore.
Aggiungi, modifica, riordina o elimina le condizioni utilizzando la console Firebase
Puoi creare, modificare, riordinare ed eliminare le condizioni di targeting nella console Firebase. Le condizioni sono condivise tra i parametri all'interno di un progetto. Ecco come gestire le condizioni:
- Nella console Firebase, vai alla pagina DevOps e coinvolgimento > Remote Config > Condizioni (o seleziona Gestisci condizioni dalla pagina Parametri).
- Aggiungi una condizione: fai clic su Aggiungi condizione (o Crea la tua prima condizione), inserisci un nome che definisca l'obiettivo di targeting e seleziona una o più regole di targeting.
- Modifica una condizione: fai clic sul nome della condizione o sull'icona di modifica, modifica le regole in base alle tue esigenze e fai clic su Salva.
- Modifica la priorità delle condizioni: nella pagina Condizioni, trascina le condizioni utilizzando il punto di trascinamento per riordinarle. Le condizioni più in alto nell'elenco hanno la precedenza su quelle più in basso.
- Elimina una condizione: fai clic sull'icona Elimina accanto alla condizione da rimuovere. Se la condizione è indicata da un parametro, la sua rimozione comporta anche la rimozione dei valori condizionali associati.
Dopo aver salvato le modifiche alle condizioni, pubblica il modello utilizzando Pubblica modifiche.
Limitazione IPv6 con controllo degli accessi basato su IP
Remote Config offre un supporto limitato per IPv6 se utilizzato con policy di accesso basate su IP. Se la tua organizzazione limita l'accesso a intervalli di IP pubblici specifici, la connessione tramite una rete IPv6 può causare i seguenti problemi:
- Accesso alla console: potresti non essere in grado di utilizzare alcune funzionalità di Remote Config nella console Firebase, ad esempio il caricamento dei dati o la configurazione del targeting.
- Accesso client: le app client potrebbero riscontrare errori PERMISSION_DENIED.
Per evitare questi problemi, configura la rete in modo che utilizzi IPv4 o aggiungi gli intervalli IP di Firebase richiesti alla lista consentita della tua organizzazione.
Priorità valori parametro
Quando utilizzi Remote Config nelle app server utilizzando Firebase Admin SDK, recuperi e carichi l'intero template per estrarre i valori parametro appropriati on demand per ogni richiesta client. A un parametro potrebbero essere associati diversi valori condizionali.
Le seguenti regole determinano quale valore viene assegnato durante la valutazione del modello in un determinato momento:
Innanzitutto, i valori condizionali vengono applicati per tutte le condizioni che restituiscono
trueper una determinata richiesta del client. Se più condizioni restituisconotrue, la condizione principale mostrata nella UI della console Firebase ha la precedenza e i valori condizionali associati a questa condizione vengono forniti quando viene valutato il modello. Puoi modificare la priorità delle condizioni trascinandole nella pagina Condizioni.Se non sono presenti valori condizionali con condizioni che restituiscono
true, durante la valutazione del template viene fornito il valore predefinito di Remote Config. Se un parametro non esiste nel template o se il valore predefinito è impostato su Utilizza il valore predefinito in-app, non viene fornito alcun valore per quel parametro quando il template viene valutato.
Per saperne di più sul caricamento e sulla valutazione dei modelli Remote Config nelle app server, consulta Utilizza Remote Config negli ambienti server.
Tipi di dati dei valori dei parametri
Remote Config ti consente di selezionare un tipo di dati per ogni parametro e convalida tutti i valori Remote Config in base a quel tipo prima di un aggiornamento del modello. Il tipo di dati viene archiviato e restituito su una richiesta getRemoteConfig.
I tipi di dati supportati sono:
StringBooleanNumberJSON
Nella UI della console Firebase, il tipo di dati può essere selezionato da un menu a discesa accanto alla chiave del parametro. Nell'API REST, i tipi possono essere impostati utilizzando il campo value_type all'interno dell'oggetto parametro.
Gruppi di parametri
Remote Config ti consente di raggruppare i parametri per un'interfaccia utente più organizzata e una maggiore usabilità.
Ad esempio, supponiamo che tu debba attivare o disattivare tre diversi tipi di autenticazione durante l'implementazione di una nuova funzionalità di accesso. Con Remote Config, puoi creare i tre parametri per attivare i tipi che preferisci e poi organizzarli in un gruppo denominato "Nuovo accesso", senza dover aggiungere prefissi o un ordinamento speciale.
Puoi creare gruppi di parametri utilizzando la console Firebase o l'API REST Remote Config. Ogni gruppo di parametri che crei ha un nome univoco nel tuo modello Remote Config. Quando crei gruppi di parametri, tieni presente quanto segue:
- I parametri possono essere inclusi in un solo gruppo alla volta e una chiave di parametro deve comunque essere univoca per tutti i parametri.
- I nomi dei gruppi di parametri non possono superare i 256 caratteri.
- Se utilizzi sia l'API REST sia la console Firebase, assicurati che la logica dell'API REST sia aggiornata per gestire i gruppi di parametri al momento della pubblicazione.
Crea o modifica i gruppi di parametri utilizzando la console Firebase
Puoi raggruppare i parametri nella console Firebase. Ecco come creare o modificare un gruppo:
- Nella console Firebase, vai alla pagina DevOps e coinvolgimento > Remote Config > Parametri.
- Seleziona Gestisci gruppi.
- Seleziona le caselle di controllo dei parametri che vuoi aggiungere e seleziona Sposta nel gruppo.
- Seleziona un gruppo esistente o creane uno nuovo inserendo un nome e una descrizione e selezionando Crea nuovo gruppo. Dopo aver salvato un gruppo, questo è disponibile per la pubblicazione tramite il pulsante Pubblica modifiche.
Tipi di regole di condizione
I modelli Remote Config per le applicazioni server supportano i seguenti tipi di condizioni:
Utente in percentuale casuale
Utilizza questo campo per applicare una modifica a un campione casuale di istanze di app (con dimensioni del campione anche di appena lo 0,0001%), utilizzando il widget del cursore per segmentare gli utenti (istanze di app) mescolati in modo casuale in gruppi.
Ogni istanza dell'app viene mappata in modo permanente a un numero intero o frazionario casuale, in base a un seed definito nel progetto.
Una regola utilizzerà la chiave predefinita (mostrata come Modifica seed nella console Firebase), a meno che non modifichi il valore seed. Puoi ripristinare l'utilizzo della chiave predefinita per una regola cancellando il campo Seed.
Per indirizzare in modo coerente le stesse istanze di app all'interno di intervalli di percentuali specifici, utilizza lo stesso valore seed per tutte le condizioni. In alternativa, seleziona un nuovo gruppo di istanze di app assegnato in modo casuale per un determinato intervallo di percentuali specificando un nuovo seed.
Ad esempio, per creare due condizioni correlate che si applicano ciascuna a un 5% non sovrapposto degli utenti di un'app, puoi configurare una condizione in modo che corrisponda a una percentuale compresa tra lo 0% e il 5% e un'altra condizione in modo che corrisponda a un intervallo compreso tra il 5% e il 10%. Per consentire ad alcuni utenti di apparire in modo casuale in entrambi i gruppi, utilizza valori seed diversi per le regole all'interno di ogni condizione.
Per scoprire come aggiungere condizioni di percentuale casuale alla tua applicazione, consulta Configura l'applicazione server.
Condizioni degli indicatori personalizzati
Puoi utilizzare i valori condizionali Indicatore personalizzato per trovare corrispondenze con condizioni arbitrarie definite nella tua applicazione. In questo modo puoi personalizzare la risposta del server per ogni richiesta del client. Le condizioni degli indicatori personalizzati sono supportate dalle seguenti versioni degli ambienti server:
- SDK Firebase Admin Node.js v12.1.0 e versioni successive
- SDK Firebase Admin per Python v6.7.0 e versioni successive
- SDK Firebase Admin Go v4.17.0 e versioni successive
- SDK Firebase Admin per Java v9.7.0 e versioni successive
Ad esempio, se stai lavorando a un'app server che utilizza l'AI generativa per creare risposte con modelli diversi ottimizzati per piattaforme specifiche, puoi procedere nel seguente modo:
- Aggiungi i parametri
promptemodel_nameal tuo modello di server Remote Config. - Aggiungi condizioni degli indicatori personalizzati con un valore di
platformper ogni piattaforma che vuoi scegliere come target. - Aggiungi valori predefiniti al modello Remote Config specifico del server e valori condizionali per ogni condizione della piattaforma che hai definito.
- Aggiorna il codice dell'applicazione per impostare e utilizzare l'indicatore personalizzato
platform.
Ora la tua app può estrarre il prompt e il modello appropriati durante la valutazione del template e utilizzarli per restituire risposte personalizzate a ogni client.
Puoi utilizzare i seguenti tipi di regole per creare condizioni di indicatori personalizzati nella console Firebase.
| Categoria operatore | Operatori | Valore |
|---|---|---|
| Testo | corrisponde esattamente a, contiene, non contiene, contiene regex |
I confronti delle stringhe per questa regola sono sensibili alle maiuscole. Quando utilizzi l'operatore corrisponde esattamente, contiene, non contiene o contiene espressione regolare, puoi selezionare più valori. Quando utilizzi l'operatore contiene regex, puoi creare espressioni regolari nel formato RE2. L'espressione regolare può corrispondere a tutta o parte della stringa della versione di destinazione. Puoi anche utilizzare gli ancoraggi ^ e $ per trovare corrispondenze con l'inizio, la fine o l'intera stringa di destinazione. |
| Numeri | <, <=, =, !=, >, >= | Numero con un massimo di 10 cifre su ciascun lato del separatore decimale. |
| Versioni | <, <=, =, !=, >, >= | Numero che rappresenta i numeri di versione da trovare (ad esempio, 2.1.0). |
Per scoprire come aggiungere indicatori personalizzati alla tua applicazione, consulta Configura l'applicazione server.
Parametri e condizioni di ricerca
Puoi cercare le chiavi parametro, i valori parametro e le condizioni del tuo progetto dalla console Firebase utilizzando la casella di ricerca nella parte superiore della pagina DevOps e coinvolgimento > Remote Config > Parametri.
Limiti per parametri e condizioni
All'interno di un progetto Firebase, puoi avere fino a 3000 parametri e fino a 2000 condizioni. Le chiavi dei parametri possono contenere fino a 256 caratteri, devono iniziare con un trattino basso o una lettera dell'alfabeto latino (A-Z, a-z) e possono includere anche numeri. La lunghezza totale delle stringhe dei valori parametro all'interno di un progetto non può superare 1.000.000 di caratteri. Inoltre, le regole di condizione basate sulle proprietà utente possono includere fino a 100 valori delle proprietà utente. Per un elenco completo dei limiti, consulta Quote e limiti.
Visualizza le modifiche a parametri e condizioni
Puoi visualizzare le ultime modifiche ai tuoi modelli Remote Config dalla console Firebase. Per ogni singolo parametro e condizione, puoi:
Visualizza il nome dell'utente che ha modificato per ultimo il parametro o la condizione.
Se la modifica è avvenuta nello stesso giorno, visualizza il numero di minuti o ore trascorsi dalla pubblicazione della modifica nel modello Remote Config attivo.
Se la modifica è avvenuta uno o più giorni prima, visualizza la data in cui è stata pubblicata nel modello Remote Config attivo.
Cronologia delle modifiche per i parametri
Nella console Firebase, vai alla pagina DevOps e coinvolgimento > Remote Config > Parametri. La colonna Ultima pubblicazione mostra l'ultimo utente che ha modificato ogni parametro e l'ultima data di pubblicazione della modifica:
Per visualizzare i metadati delle modifiche per i parametri raggruppati, espandi il gruppo di parametri.
Per ordinare in ordine crescente o decrescente in base alla data di pubblicazione, fai clic sull'etichetta della colonna Ultima pubblicazione.
Cronologia delle modifiche per le condizioni
Nella console Firebase, vai alla pagina DevOps e coinvolgimento > Remote Config > Condizioni. Puoi visualizzare l'ultimo utente che ha modificato la condizione e la data di modifica accanto a Ultima modifica sotto ogni condizione.
Passaggi successivi
Per configurare il progetto Firebase e l'app server in modo da utilizzare Remote Config, consulta Utilizza Remote Config in ambienti server.