Перейдите на использование Vertex AI SDK вместо Google AI SDK.

На этой странице описывается, как перейти с клиентских SDK Google AI на клиентские SDK Vertex AI в Firebase в ваших мобильных или веб-приложениях. Vertex AI в пакетах SDK Firebase доступен для платформ Apple (Swift), Android (Kotlin и Java), Web (JavaScript) и Flutter (Dart).

Перейти непосредственно к инструкциям по миграции

Зачем переходить на использование Vertex AI ?

Возможно, вы опробовали альтернативную версию Gemini API с помощью Google AI Studio или клиентских SDK Google AI . Эти SDK полезны для начала работы с API Gemini и создания прототипов. Однако для мобильных и веб-приложений промышленного или корпоративного масштаба , которые напрямую вызывают клиентскую часть Gemini API , Firebase настоятельно рекомендует вызывать Vertex AI Gemini API с помощью наших Firebase SDK.

Функции безопасности для мобильных и веб-приложений

Для мобильных и веб-приложений безопасность имеет решающее значение и требует особого внимания, поскольку ваш код (включая вызовы API Gemini ) выполняется в незащищенной среде.

  • По умолчанию API Vertex AI Gemini авторизуется с помощью Google Cloud IAM (а не с помощью ключа API, как API Google AI Gemini ). Vertex AI в Firebase SDK создан для вызова более безопасного Vertex AI Gemini API .

  • Для мобильных и веб-приложений вам необходимо защитить API Gemini и ресурсы вашего проекта (например, настроенные модели) от злоупотреблений со стороны неавторизованных клиентов. Вы можете использовать Firebase App Check , чтобы убедиться, что все вызовы API происходят из вашего реального приложения. Эта функция доступна только в том случае, если вы используете Vertex AI в Firebase SDK.

Экосистема, созданная для мобильных и веб-приложений

Firebase — это платформа Google для разработки мобильных и веб-приложений. Использование Vertex AI в Firebase SDK означает, что ваши приложения находятся в экосистеме, ориентированной на потребности полнофункциональных приложений и разработчиков. Например, вы можете выполнять любое из следующих действий и многое другое:

  • Используйте Cloud Storage for Firebase , чтобы включать большие файлы в мультимодальные запросы. Кроме того, воспользуйтесь преимуществами клиентских SDK, которые обрабатывают загрузку и выгрузку файлов (даже в плохих условиях сети) и обеспечивают большую безопасность данных ваших конечных пользователей. Узнайте больше в нашем руководстве по использованию Cloud Storage for Firebase .

  • Управляйте структурированными данными с помощью SDK баз данных, созданных для мобильных и веб-приложений (например, Cloud Firestore ).

  • Динамически устанавливайте конфигурации времени выполнения (например, местоположение) или заменяйте значения в своем приложении (например, название модели) без выпуска новой версии приложения с помощью Firebase Remote Config .

Дополнительные преимущества использования Vertex AI из Google Cloud

По мере того, как вы будете использовать генеративный ИИ в своих приложениях и рабочих процессах, вам может понадобиться платформа, предлагающая комплексные решения для создания и развертывания приложений генеративного ИИ. Google Cloud предоставляет комплексную экосистему инструментов, позволяющую использовать возможности генеративного искусственного интеллекта — от начальных этапов разработки приложений до их развертывания, хостинга приложений и управления сложными данными в большом масштабе.

Платформа Vertex AI от Google Cloud предлагает набор инструментов MLOps, которые упрощают использование, развертывание и мониторинг моделей искусственного интеллекта для обеспечения эффективности и надежности. Кроме того, интеграция с базами данных, инструментами DevOps, журналированием, мониторингом и IAM обеспечивает целостный подход к управлению всем жизненным циклом генеративного ИИ.

Узнайте больше о вариантах использования Vertex AI в документации Google Cloud .

Переход на Vertex AI в Firebase SDK

Переход на Vertex AI в Firebase SDK требует трех основных шагов:

  1. Настройте новый или существующий проект Firebase и подключите свое приложение к Firebase.

  2. Перенесите свою кодовую базу, для чего потребуется лишь изменить SDK и код инициализации (включая имя модели). Никакой модификации кода, который фактически вызывает API Gemini, не требуется.

  3. Удалите все неиспользуемые ключи API и отключите неиспользуемые API.

Шаг 1. Настройте проект Firebase и подключите свое приложение к Firebase.

Даже если вы уже знакомы с Firebase, просмотрите этот раздел, чтобы убедиться, что ваш проект и приложение Firebase настроены на использование Vertex AI в Firebase SDK.

Шаг 2. Перенесите свою кодовую базу

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

SDK Google AI и Vertex AI в SDK Firebase были созданы таким образом, чтобы миграция между двумя платформами была максимально простой.

Для миграции вам нужно всего лишь изменить, какой SDK вы интегрируете в кодовую базу вашего приложения, а также инициализировать службу и генеративную модель. Вам не нужно изменять какой-либо код, который фактически вызывает API Gemini !

Изменить SDK

Google ИИ

Kotlin

dependencies {
  // ... other androidx dependencies

  // add the dependency for the Google AI client SDK for Android
  implementation("com.google.ai.client.generativeai:generativeai:VERSION")
}

Java

dependencies {
  // ... other androidx dependencies

  // add the dependency for the Google AI client SDK for Android
  implementation("com.google.ai.client.generativeai:generativeai:VERSION")

  // Required for one-shot operations (to use `ListenableFuture` from Reactive Streams)
  implementation("com.google.guava:guava:31.0.1-android")

  // Required for streaming operations (to use `Publisher` from Guava Android)
  implementation("org.reactivestreams:reactive-streams:1.0.4")
}

Вершинный ИИ в Firebase

Kotlin

dependencies {
  // ... other androidx dependencies

  // add the dependency for the Vertex AI in Firebase SDK for Android
  implementation("com.google.firebase:firebase-vertexai:16.1.0")
}

Java

dependencies {
  // ... other androidx dependencies

  // add the dependency for the Vertex AI in Firebase SDK for Android
  implementation("com.google.firebase:firebase-vertexai:16.1.0")

  // Required for one-shot operations (to use `ListenableFuture` from Guava Android)
  implementation("com.google.guava:guava:31.0.1-android")

  // Required for streaming operations (to use `Publisher` from Reactive Streams)
  implementation("org.reactivestreams:reactive-streams:1.0.4")
}

Изменение инициализации

Google ИИ

Kotlin

val generativeModel = GenerativeModel(modelName = "MODEL_NAME",
    // Access your API key as a Build Configuration variable
    apiKey = BuildConfig.apiKey
)

Java

GenerativeModel gm = new GenerativeModel("MODEL_NAME",
    // Access your API key as a Build Configuration variable
    BuildConfig.apiKey
);

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

Вершинный ИИ в Firebase

Kotlin

val generativeModel = Firebase.vertexAI.generativeModel("MODEL_NAME")

Java

GenerativeModel gm = FirebaseVertexAI.getInstance()
        .generativeModel("MODEL_NAME");
GenerativeModelFutures model = GenerativeModelFutures.from(gm);

Обновить импорт

В следующих фрагментах кода в качестве примеров используются классы Chat , Content и GenerativeModelFutures , но то же самое следует применять и к другим классам с тем же именем пакета.

Google ИИ

Kotlin

import com.google.ai.client.generativeai.Chat
import com.google.ai.client.generativeai.type.Content
import com.google.ai.client.generativeai.java.GenerativeModuleFutures

Java

import com.google.ai.client.generativeai.Chat;
import com.google.ai.client.generativeai.type.Content;
import com.google.ai.client.generativeai.java.GenerativeModuleFutures;

Вершинный ИИ в Firebase

Kotlin

import com.google.firebase.vertexai.Chat
import com.google.firebase.vertexai.type.Content
import com.google.firebase.vertexai.java.GenerativeModuleFutures

Java

import com.google.firebase.vertexai.Chat;
import com.google.firebase.vertexai.type.Content;
import com.google.firebase.vertexai.java.GenerativeModuleFutures;

Шаг 3. Удалите все неиспользуемые ключи API и отключите неиспользуемые API.

Если вам больше не нужно использовать ключ Google AI API, следуйте рекомендациям по безопасности и удалите его. Вы можете просмотреть и удалить свои ключи API Google AI в разделе «Ключи API» Google AI Studio .

Кроме того, если вы больше не используете API Google AI Gemini , отключите его в своем проекте. Это можно сделать в консоли Google Cloud на странице Generative Language API ( generativelanguage.googleapis.com ) . («API генеративного языка» — официальное название API Google AI Gemini .)

Что еще вы можете сделать?

  • И Google AI , и Vertex AI предлагают «игровую площадку» веб-интерфейса под названием «AI Studio» для экспериментов с подсказками и параметрами модели. Узнайте, как перенести подсказки Google AI Studio в Vertex AI Studio, в документации Google Cloud .