Как перейти с общедоступной версии 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, но может быть хорошим вариантом, если вы хотите воспользоваться бесплатным уровнем и разумной квотой.

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

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

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

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

  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.0.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.0.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 для сайта, используйте 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".

Подробнее о том, как начать работу с Firebase AI Logic SDK для Unity…

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

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

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

Swift


import FirebaseAILogic

// Initialize the Agent Platform Gemini API backend service (fomerly Vertex AI).
let ai = FirebaseAI.firebaseAI(backend: .agentPlatform())

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

Kotlin


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

Java


// Initialize the Agent Platform Gemini API backend service (formerly Vertex AI).
// Create a `GenerativeModel` instance with a model that supports your use case.
GenerativeModel ai = FirebaseAI.getInstance(GenerativeBackend.agentPlatform())
        .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, AgentPlatformBackend } 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 Agent Platform Gemini API backend service (formerly Vertex AI).
const ai = getAI(firebaseApp, { backend: new AgentPlatformBackend() });

// 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 Agent Platform Gemini API backend service (formerly Vertex AI).
// Create a `GenerativeModel` instance with a model that supports your use case.
final model =
      FirebaseAI.agentPlatform().generativeModel(model: 'gemini-3.8-flash');

Unity

Поддержка Unity была недоступна с "Vertex AI in Firebase".

Подробнее о том, как начать работу с Firebase AI Logic SDK для 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, чтобы они правильно возвращали экземпляр своего класса, а не пустое значение.

Web

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

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

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

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

Dart

Других изменений нет.

Unity

Поддержка Unity была недоступна с "Vertex AI in Firebase".

Подробнее о том, как начать работу с Firebase AI Logic SDK для Unity…


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