Esegui la migrazione per utilizzare la versione GA di Vertex AI in Firebase


Vertex AI in Firebase è stato lanciato in disponibilità generale (GA) il 21 ottobre 2024.

Se hai utilizzato la versione di anteprima della libreria Vertex AI in Firebase (FirebaseVertexAI-Preview), devi apportare le seguenti modifiche per eseguire l'upgrade e utilizzare la versione GA della libreria (FirebaseVertexAI).

Ecco un elenco generale delle modifiche necessarie per la migrazione:

Abilita la nuova API richiesta nel tuo progetto Firebase (obbligatoria per tutti)

Devi attivare l'API Vertex AI in Firebase nel tuo progetto Firebase e aggiungerla alla lista consentita della chiave API Firebase. Si tratta di una nuova API necessaria per utilizzare la versione GA di Vertex AI in Firebase.

  1. Nella console Firebase, vai alla pagina Esegui il build con Gemini.

  2. Nella scheda Vertex AI in Firebase, fai clic su Inizia per avviare un flusso di lavoro che ti aiuti ad attivare questa API e aggiungerla alla lista consentita della tua chiave API Firebase.

  3. Puoi saltare il resto del flusso di lavoro nella console.

Eseguire l'aggiornamento alla versione GA della libreria (obbligatorio per tutti)

Segui queste istruzioni per aggiornare la base di codice dell'app in modo da utilizzare la versione GA della biblioteca:

  1. In Xcode, con il progetto dell'app aperto, aggiorna il pacchetto Firebase alla versione 11.4.0 o successiva utilizzando una delle seguenti opzioni:

    • Opzione 1: aggiorna tutti i pacchetti: vai a File > Pacchetti > Aggiorna alle versioni più recenti dei pacchetti.

    • Opzione 2: aggiorna Firebase singolarmente: vai al pacchetto Firebase nella sezione Dipendenze del pacchetto. Fai clic con il tasto destro del mouse sul package Firebase e seleziona Aggiorna package.

  2. Assicurati che il pacchetto Firebase ora mostri la versione 11.4.0 o successiva. In caso contrario, verifica che i Requisiti del pacchetto specificati consentano l'aggiornamento alla versione 11.7.0 o successive.

  3. Seleziona il target della tua app in Project Editor, quindi vai alla sezione Framework, librerie e contenuti incorporati.

  4. Seleziona il pulsante + e aggiungi FirebaseVertexAI dal pacchetto Firebase.

  5. Seleziona FirebaseVertexAI-Preview e premi il pulsante .

Modifiche aggiuntive (obbligatorie a seconda delle funzionalità utilizzate)

Sono state implementate diverse modifiche per le versioni GA degli SDK. Esamina i seguenti elenchi per verificare eventuali modifiche che potresti dover apportare al codice per supportare l'utilizzo della versione GA dell'SDK nella tua app.

  • Chiamata di funzioni
    Se hai implementato questa funzionalità prima del lancio ufficiale, dovrai apportare aggiornamenti alla modalità di definizione dello schema. Ti consigliamo di consultare la guida alle chiamate delle funzioni aggiornata per scoprire come scrivere le dichiarazioni delle funzioni.

  • Generare output strutturato (ad es. JSON) utilizzando responseSchema
    Se hai implementato questa funzionalità prima del lancio ufficiale, dovrai apportare aggiornamenti alla definizione dello schema. Ti consigliamo di consultare la nuova guida all'output strutturato per scoprire come scrivere schemi JSON.

  • Timeout

    • È stato modificato il timeout predefinito per le richieste in 180 secondi.
  • Enumerazioni

    • La maggior parte dei tipi enum è stata sostituita con struct con variabili statiche. Questa variazione consente una maggiore flessibilità per l'evoluzione dell'API in modo compatibile con le versioni precedenti. Quando utilizzi le istruzioni switch, ora devi includere un caso default: per coprire i valori sconosciuti o non gestiti, inclusi i nuovi valori aggiunti all'SDK in futuro.

    • L'enumerazione BlockThreshold è stata rinominata in HarmBlockThreshold. Ora questo tipo è un struct.

    • Sono state rimosse le richieste unknown e unspecified dalle seguenti enumerazioni (ora struct): HarmCategory, HarmBlockThreshold, HarmProbability, BlockReason e FinishReason.

    • È stata sostituita l'enumerazione ModelContent.Part con un protocollo denominato Part per consentire l'aggiunta di nuovi tipi in modo compatibile con le versioni precedenti. Questa variazione è descritta in maggiore dettaglio nella sezione Parti dei contenuti.

  • Parti dei contenuti

    • È stato rimosso il protocollo ThrowingPartsRepresentable e sono stati semplificati gli inizializzatori per ModelContent per evitare errori occasionali del compilatore. Le immagini che non vengono codificate correttamente continueranno a generare errori se vengono utilizzate in generateContent.

    • Le caselle ModelContent.Part sono state sostituite con i seguenti tipi struct conformi al protocollo Part:

      • Da .text a TextPart
      • Da .data a InlineDataPart
      • Da .fileData a FileDataPart
      • Da .functionCall a FunctionCallPart
      • Da .functionResponse a FunctionResponsePart
  • Categoria di danno

    • È stato modificato HarmCategory in modo che non sia più nidificato nel tipo SafetySetting. Se lo chiami SafetySetting.HarmCategory, questo valore può essere sostituito con HarmCategory.
  • Feedback sulla sicurezza

    • È stato rimosso il tipo SafetyFeedback, poiché non è stato utilizzato in nessuna delle risposte.
  • Metadati delle citazioni

    • La proprietà citationSources è stata rinominata in citations in CitationMetadata.
  • Caratteri fatturabili totali

    • La proprietà totalBillableCharacters in CountTokensResponse è stata modificata in modo da essere facoltativa per riflettere le situazioni in cui non vengono inviati caratteri.
  • Risposta del candidato

    • CandidateResponse è stato rinominato in Candidate per allinearsi alle altre piattaforme.
  • Configurazione della generazione

    • Le proprietà pubbliche di GenerationConfig sono state modificate in internal. Rimangono tutti configurabili nell'inizializzatore.

Possibili errori relativi alla migrazione

Durante la migrazione alla versione GA di Vertex AI in Firebase, potresti riscontrare errori se non hai completato tutte le modifiche richieste come descritto in questa guida alla migrazione.

Errore 403: Requests to this API firebasevertexai.googleapis.com ... are blocked.

Se ricevi un errore 403 con il messaggio Requests to this API firebasevertexai.googleapis.com ... are blocked., di solito significa che la chiave API nell'oggetto/nel file di configurazione di Firebase non ha un'API richiesta nella lista consentita per il prodotto che stai tentando di utilizzare.

Assicurati che la chiave API utilizzata dalla tua app includa tutte le API richieste incluse nella lista consentita "Restrizioni API" della chiave. Per Vertex AI in Firebase, la chiave API deve avere almeno l'API Vertex AI in Firebase nella lista consentita. Questa API dovrebbe essere stata aggiunta automaticamente alla lista consentita della chiave API quando hai attivato la nuova API tramite la console Firebase.

Puoi visualizzare tutte le tue chiavi API nel riquadro API e servizi > Credenziali della console Google Cloud.