Как перейти с общедоступной версии Vertex AI в Firebase SDK на Firebase AI Logic SDK


Firebase AI Logic и его клиентские SDK ранее назывались Vertex AI in Firebase. Чтобы лучше отразить расширение наших сервисов и функций (например, теперь мы поддерживаем Gemini Developer API!), мы переименовали и переупаковали наши сервисы в Firebase AI Logic.

Чтобы безопасно получать доступ к моделям генеративного ИИ от Google прямо из мобильных или веб-приложений, теперь вы можете выбрать поставщика Gemini API – давно доступный Agent Platform Gemini API (formerly Vertex AI) или новый Gemini Developer API. Это значит, что теперь вы можете использовать Gemini Developer API, в котором есть бесплатный уровень с разумными ограничениями частоты запросов и квотами.

Обзор шагов по переходу на SDK Firebase AI Logic

  • Шаг 1. Выберите поставщика Gemini API, который лучше всего подходит для вашего приложения и сценариев использования.

  • Шаг 2. Настройте проект Firebase, чтобы использовать Gemini Developer API.
    Применимо, только если вы переходите на Gemini Developer API вместо Agent Platform Gemini API (formerly Vertex AI).

  • Шаг 3. Обновите библиотеку, используемую в приложении.

  • Шаг 4. Обновите инициализацию в приложении.

  • Шаг 5. Обновите код в зависимости от используемых функций.

Шаг 1. Выберите поставщика Gemini API, который лучше всего подходит для вашего приложения

При переносе вы можете выбрать поставщика Gemini API:

  • Старые SDK Vertex AI in Firebase могли использовать только Agent Platform Gemini API (formerly Vertex AI).

  • Новые SDK Firebase AI Logic позволяют выбрать, к какому поставщику Gemini API вы хотите обращаться напрямую из мобильного или веб-приложения – Gemini Developer API или Agent Platform Gemini API (formerly Vertex AI).

Изучите различия между двумя поставщиками Gemini API, особенно в отношении поддерживаемых функций, цен и ограничений частоты запросов. Например, Gemini Developer API не поддерживает предоставление файлов с помощью URL Cloud Storage, но может быть хорошим выбором, если вы хотите воспользоваться его бесплатным уровнем и разумной квотой.

  • Если вы хотите продолжить использовать Agent Platform Gemini API (formerly Vertex AI),
    пропустите следующий шаг и перейдите к разделу Обновление библиотеки в приложении, а затем выполните остальные инструкции из этого руководства.

  • Если вы хотите перейти на Gemini Developer API, выполните следующие действия:
    Перейдите к следующему шагу, чтобы настроить проект Firebase для использования этого API, а затем выполните остальные инструкции из этого руководства.

Шаг 2. Настройте проект Firebase, чтобы использовать Gemini Developer API.

Этот шаг требуется, только если вы хотите перейти на использование Gemini Developer API с клиентскими SDK Firebase AI Logic. Если вы хотите продолжить использовать Agent Platform Gemini API (formerly Vertex AI), перейдите к следующему шагу.

Обратите внимание, что в проекте можно одновременно включить оба поставщика Gemini API.

  1. В консоли Firebase выберите AI Services (Сервисы ИИ) > AI Logic (Логика ИИ).

  2. Перейдите на вкладку Настройки и выберите Gemini Developer API.

  3. Включите Gemini Developer API.

    Консоль проверит, включены ли необходимые API, и сгенерирует ключ API Gemini в вашем проекте Firebase.
    Не добавляйте этот ключ API Gemini в базу кода приложения. Подробнее…

  4. Продолжайте следовать этому руководству по переносу данных, чтобы обновить библиотеку и инициализацию в приложении.

Шаг 3. Обновите библиотеку, используемую в приложении

Обновите базу кода приложения, чтобы использовать библиотеку Firebase AI Logic.

Swift

  1. Откройте проект приложения в Xcode и обновите пакет Firebase до версии 12.5.0 или более поздней, используя один из следующих вариантов:

    • Вариант 1. Обновите все пакеты. Для этого выберите File (Файл) > Packages (Пакеты) > Update to Latest Package Versions (Обновить до последних версий пакетов).

    • Вариант 2. Обновите Firebase отдельно. Для этого перейдите к пакету Firebase в разделе Package Dependencies (Зависимости пакетов). Нажмите правой кнопкой мыши на пакет Firebase и выберите Update Package (Обновить пакет).

  2. Убедитесь, что пакет Firebase теперь показывает версию 12.5.0 или более позднюю. Если нет, убедитесь, что указанные вами требования к пакету позволяют обновить его до версии 12.5.0 или более поздней.

  3. В редакторе проектов выберите цель приложения и перейдите в раздел Frameworks, Libraries, and Embedded Content (Фреймворки, библиотеки и встроенный контент).

  4. Добавьте новую библиотеку: нажмите кнопку + и выберите FirebaseAILogic из пакета Firebase.

  5. После переноса приложения (см. остальные разделы этого руководства) удалите старую библиотеку:
    Выберите FirebaseVertexAI и нажмите кнопку —.

Kotlin

  1. В файле Gradle на уровне модуля (приложения) (обычно <project>/<app-module>/build.gradle.kts или <project>/<app-module>/build.gradle) замените старые зависимости (если применимо) на указанные ниже.

    Обратите внимание, что перед удалением старой зависимости может быть проще перенести базу кода приложения (см. остальные разделы этого руководства).

    // BEFORE
    dependencies {
      implementation(platform("com.google.firebase:firebase-bom:33.x.y"))
      implementation("com.google.firebase:firebase-vertexai")
      // OR if not using the BoM
      implementation("com.google.firebase:firebase-vertexai:16.x.y")
    }
    
    
    // AFTER
    dependencies {
      // Import the BoM for the Firebase platform
      implementation(platform("com.google.firebase:firebase-bom:35.1.0"))
    
      // Add the dependency for the Firebase AI Logic library
      // When using the BoM, you don't specify versions in Firebase library dependencies
      implementation("com.google.firebase:firebase-ai")
    }
  2. Синхронизируйте проект для Android с файлами Gradle.

Если вы не хотите использовать Firebase Android BoM, просто добавьте зависимость для библиотеки firebase-ai и примите последнюю версию, предложенную Android Studio.

Java

  1. В файле Gradle на уровне модуля (приложения) (обычно <project>/<app-module>/build.gradle.kts или <project>/<app-module>/build.gradle) замените старые зависимости (если применимо) на указанные ниже.

    Обратите внимание, что перед удалением старой зависимости может быть проще перенести базу кода приложения (см. остальные разделы этого руководства).

    // BEFORE
    dependencies {
      implementation(platform("com.google.firebase:firebase-bom:33.x.y"))
      implementation("com.google.firebase:firebase-vertexai")
      // OR if not using the BoM
      implementation("com.google.firebase:firebase-vertexai:16.x.y")
    }
    
    
    // AFTER
    dependencies {
      // Import the BoM for the Firebase platform
      implementation(platform("com.google.firebase:firebase-bom:35.1.0"))
    
      // Add the dependency for the Firebase AI Logic library
      // When using the BoM, you don't specify versions in Firebase library dependencies
      implementation("com.google.firebase:firebase-ai")
    }
  2. Синхронизируйте проект для Android с файлами Gradle.

Если вы не хотите использовать Firebase Android BoM, просто добавьте зависимость для библиотеки firebase-ai и примите последнюю версию, предложенную Android Studio.

Web

  1. Получите последнюю версию Firebase JS SDK для Web с помощью npm:

    npm i firebase@latest

    ИЛИ

    yarn add firebase@latest
  2. Везде, где вы импортировали библиотеку, обновите операторы импорта, чтобы использовать firebase/ai.

    Обратите внимание, что перенести базу кода приложения (см. остальные разделы этого руководства) может быть проще до удаления старых импортов.

    // BEFORE
    import { initializeApp } from "firebase/app";
    import { getVertexAI, getGenerativeModel } from "firebase/vertexai";
    
    
    // AFTER
    import { initializeApp } from "firebase/app";
    import { getAI, getGenerativeModel } from "firebase/ai";

Dart

  1. Чтобы использовать пакет firebase_ai в файле pubspec.yaml, выполните следующую команду в каталоге проекта Flutter:

    flutter pub add firebase_ai
  2. Перезапустите проект Flutter.

    flutter run
  3. После переноса приложения (см. остальные разделы этого руководства) удалите старый пакет:

    flutter pub remove firebase_vertexai

Unity

Поддержка Unity недоступна в Vertex AI in Firebase.

Узнайте, как начать работу с SDK Firebase AI Logic для Unity.

Шаг 4. Обновите инициализацию в приложении

Нажмите на название своего поставщика Gemini API, чтобы посмотреть контент и код, относящиеся к нему.

Обновите способ инициализации сервиса для выбранного поставщика API и создайте экземпляр GenerativeModel.

Swift


import FirebaseAILogic

// Initialize the Gemini Developer API backend service
let ai = FirebaseAI.firebaseAI(backend: .googleAI())

// Create a `GenerativeModel` instance with a model that supports your use case
let model = ai.generativeModel(modelName: "gemini-3.8-flash")

Kotlin


// Initialize the Gemini Developer API backend service.
// Create a `GenerativeModel` instance with a model that supports your use case.
val model = Firebase.ai(backend = GenerativeBackend.googleAI())
                        .generativeModel("gemini-3.8-flash")

Java


// Initialize the Gemini Developer API backend service.
// Create a `GenerativeModel` instance with a model that supports your use case.
GenerativeModel ai = FirebaseAI.getInstance(GenerativeBackend.googleAI())
        .generativeModel("gemini-3.8-flash");

// Use the GenerativeModelFutures Java compatibility layer which offers
// support for ListenableFuture and Publisher APIs
GenerativeModelFutures model = GenerativeModelFutures.from(ai);

Web


import { initializeApp } from "firebase/app";
import { getAI, getGenerativeModel, GoogleAIBackend } from "firebase/ai";

// TODO(developer): Replace the following with your app's Firebase configuration
// See: https://firebase.google.com/docs/web/learn-more#config-object
const firebaseConfig = {
  // ...
};

// Initialize FirebaseApp
const firebaseApp = initializeApp(firebaseConfig);

// Initialize the Gemini Developer API backend service.
const ai = getAI(firebaseApp, { backend: new GoogleAIBackend() });

// Create a `GenerativeModel` instance with a model that supports your use case.
const model = getGenerativeModel(ai, { model: "gemini-3.8-flash" });

Dart


import 'package:firebase_ai/firebase_ai.dart';
import 'package:firebase_core/firebase_core.dart';
import 'firebase_options.dart';

// Initialize FirebaseApp
await Firebase.initializeApp(
  options: DefaultFirebaseOptions.currentPlatform,
);

// Initialize the Gemini Developer API backend service
// Create a `GenerativeModel` instance with a model that supports your use case
final model =
      FirebaseAI.googleAI().generativeModel(model: 'gemini-3.8-flash');

Unity

Поддержка Unity недоступна в регионе "Vertex AI in Firebase".

Узнайте, как начать работу с SDK Firebase AI Logic для Unity.

Обратите внимание, что в зависимости от используемой функции вы не всегда можете создать экземпляр GenerativeModel. Чтобы передавать входные и выходные данные в потоковом режиме с помощью Gemini Live API, создайте экземпляр LiveModel.

Шаг 5. Обновите код в зависимости от используемых функций

В этом разделе описаны изменения, которые могут потребоваться в зависимости от того, какие функции вы используете.

  • Если вы используете URL Cloud Storage и перешли на использование Gemini Developer API в рамках этого переноса, вам нужно обновить мультимодальные запросы, чтобы включать файлы как встроенные данные (или использовать URL YouTube для видео).

  • Ознакомьтесь с приведенными ниже списками, чтобы узнать, какие изменения вам может потребоваться внести в код для перехода на SDK Firebase AI Logic.

Swift

Никаких дополнительных изменений.

Kotlin

  • Live API

    • Удалено значение UNSPECIFIED для класса перечисления ResponseModality. Вместо этого используйте null.

Java

  • Live API

    • Удалено значение UNSPECIFIED для класса перечисления ResponseModality. Вместо этого используйте null.
  • Изменены различные методы Java builder, чтобы теперь правильно возвращать экземпляр своего класса вместо void.

Web

Изменения требуются, только если вы начинаете использовать Gemini Developer API (вместо Agent Platform Gemini API (formerly Vertex AI)):

  • Настройки безопасности

    • Удалены случаи использования неподдерживаемого метода SafetySetting.method.
  • Встроенные данные

    • Удалены случаи использования неподдерживаемого метода InlineDataPart.videoMetadata.

Dart

Никаких дополнительных изменений.

Unity

Поддержка Unity недоступна в регионе "Vertex AI in Firebase".

Узнайте, как начать работу с SDK Firebase AI Logic для Unity.


Оставить отзыв о работе с Firebase AI Logic