Migre para a versão de disponibilidade geral da Vertex AI no Firebase


O Vertex AI in Firebase foi lançado em disponibilidade geral (GA) em 21 de outubro de 2024.

Se você usou a versão de acesso antecipado da biblioteca Vertex AI in Firebase (FirebaseVertexAI-Preview), faça as seguintes mudanças para fazer upgrade e usar a versão GA da biblioteca (FirebaseVertexAI).

Confira uma lista geral das mudanças necessárias para a migração:

Ative a nova API necessária no seu projeto do Firebase (obrigatória para todos)

É necessário ativar a API Vertex AI in Firebase no seu projeto do Firebase e adicioná-la à lista de permissões da chave da API do Firebase. Essa é uma nova API necessária para usar a versão GA de Vertex AI in Firebase.

  1. No console do Firebase, acesse a página Criar com o Gemini.

  2. No card Vertex AI in Firebase, clique em Começar para iniciar um fluxo de trabalho que ajuda a ativar essa API e adicioná-la à lista de permissões da chave de API do Firebase.

  3. Você pode pular o restante do fluxo de trabalho no console.

Atualização para a versão GA da biblioteca (obrigatória para todos)

Siga estas instruções para atualizar a base de código do app e usar a versão GA da biblioteca:

  1. No Xcode, com o projeto do app aberto, atualize o pacote do Firebase para a versão 11.4.0 ou mais recente usando uma das seguintes opções:

    • Opção 1: atualizar todos os pacotes: navegue até File > Packages > Update to Latest Package Versions.

    • Opção 2: atualizar o Firebase individualmente: navegue até o pacote do Firebase na seção Dependências do pacote. Clique com o botão direito do mouse no pacote do Firebase e selecione Update Package.

  2. Verifique se o pacote do Firebase agora mostra a versão 11.4.0 ou mais recente. Caso contrário, verifique se os requisitos do pacote permitem a atualização para a versão 11.8.0 ou mais recente.

  3. Selecione o destino do app no Project Editor e navegue até a seção Frameworks, Libraries, and Embedded Content.

  4. Selecione o botão + e adicione FirebaseVertexAI do pacote do Firebase.

  5. Selecione FirebaseVertexAI-Preview e pressione o botão .

Outras mudanças (obrigatórias dependendo dos recursos usados)

Várias mudanças foram implementadas nas versões GA dos SDKs. Analise as listas a seguir para conferir se há mudanças que você precisa fazer no código para usar a versão GA do SDK no seu app.

  • Chamada de função
    Se você implementou esse recurso antes do GA, será necessário fazer atualizações na maneira como define seu esquema. Recomendamos que você revise o guia atualizado de chamadas de função para saber como escrever as declarações de função.

  • Como gerar saída estruturada (como JSON) usando responseSchema
    Se você implementou esse recurso antes do lançamento oficial, será necessário fazer atualizações na maneira como o esquema é definido. Recomendamos que você revise o novo guia de saída estruturada para saber como escrever esquemas JSON.

  • Tempo limite

    • O tempo limite padrão para solicitações foi alterado para 180 segundos.
  • Enumerações

    • A maioria dos tipos enum foi substituída por structs com variáveis estáticas. Essa mudança permite mais flexibilidade para a evolução da API de uma forma compatível com versões anteriores. Ao usar instruções switch, agora é necessário incluir um caso default: para cobrir valores desconhecidos ou não processados, incluindo novos valores que serão adicionados ao SDK no futuro.

    • A enumeração BlockThreshold foi renomeada como HarmBlockThreshold. Esse tipo agora é um struct.

    • Os casos unknown e unspecified foram removidos das seguintes enumerações (agora structs): HarmCategory, HarmBlockThreshold, HarmProbability, BlockReason e FinishReason.

    • A enumeração ModelContent.Part foi substituída por um protocolo chamado Part para permitir que novos tipos sejam adicionados de forma compatível com versões anteriores. Essa mudança é descrita em mais detalhes na seção Partes do conteúdo.

  • Partes do conteúdo

    • O protocolo ThrowingPartsRepresentable foi removido, e os inicializadores de ModelContent foram simplificados para evitar erros ocasionais do compilador. As imagens que não são codificadas corretamente ainda vão gerar erros quando usadas em generateContent.

    • Os casos ModelContent.Part foram substituídos pelos seguintes tipos de struct em conformidade com o protocolo Part:

      • .text a TextPart
      • De .data para InlineDataPart
      • De .fileData para FileDataPart
      • De .functionCall para FunctionCallPart
      • .functionResponse a FunctionResponsePart
  • Categoria de dano

    • O HarmCategory foi alterado para não ser mais aninhado no tipo SafetySetting. Se você estiver se referindo a ele como SafetySetting.HarmCategory, ele poderá ser substituído por HarmCategory.
  • Feedback de segurança

    • O tipo SafetyFeedback foi removido, já que não foi usado em nenhuma das respostas.
  • Metadados de citação

    • A propriedade citationSources foi renomeada como citations em CitationMetadata.
  • Total de caracteres faturáveis

    • A propriedade totalBillableCharacters em CountTokensResponse foi alterada para ser opcional e refletir situações em que nenhum caractere é enviado.
  • Resposta do candidato

    • CandidateResponse foi renomeado como Candidate para corresponder a outras plataformas.
  • Configuração de geração

    • As propriedades públicas de GenerationConfig foram alteradas para internal. Elas continuam configuráveis no inicializador.

Possíveis erros relacionados à migração

Ao migrar para a versão GA do Vertex AI in Firebase, você pode encontrar erros se não tiver concluído todas as mudanças necessárias, conforme descrito neste guia de migração.

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

Se você receber um erro 403 com a mensagem Requests to this API firebasevertexai.googleapis.com ... are blocked., geralmente significa que a chave de API no arquivo/objeto de configuração do Firebase não tem uma API necessária na lista de permissões para o produto que você está tentando usar.

Verifique se a chave de API usada pelo app tem todas as APIs necessárias incluídas na lista de permissões "Restrições de API". Para Vertex AI in Firebase, a chave de API precisa ter pelo menos a API Vertex AI in Firebase na lista de permissões. Essa API precisa ter sido adicionada automaticamente à lista de permissões da chave de API quando você ativou a nova API pelo console Firebase.

É possível conferir todas as chaves de API no painel APIs e serviços > Credenciais no console Google Cloud.